{"id":23780623,"url":"https://github.com/spartan-71/pocket-tanks","last_synced_at":"2025-07-12T16:33:41.602Z","repository":{"id":270258781,"uuid":"788054135","full_name":"Spartan-71/Pocket-Tanks","owner":"Spartan-71","description":"Reinforcement Learning Agent for the ultimate AI War (Credenz '24)","archived":false,"fork":false,"pushed_at":"2024-12-31T10:08:08.000Z","size":265,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-21T09:17:23.007Z","etag":null,"topics":["pocket-tanks","reinforcement-learning-agent","stable-baselines3"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/Xodia24/","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Spartan-71.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-17T17:32:43.000Z","updated_at":"2024-12-31T10:08:11.000Z","dependencies_parsed_at":"2024-12-29T20:28:51.658Z","dependency_job_id":null,"html_url":"https://github.com/Spartan-71/Pocket-Tanks","commit_stats":null,"previous_names":["spartan-71/pocket-tanks"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Spartan-71/Pocket-Tanks","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Spartan-71%2FPocket-Tanks","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Spartan-71%2FPocket-Tanks/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Spartan-71%2FPocket-Tanks/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Spartan-71%2FPocket-Tanks/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Spartan-71","download_url":"https://codeload.github.com/Spartan-71/Pocket-Tanks/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Spartan-71%2FPocket-Tanks/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265023829,"owners_count":23699584,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["pocket-tanks","reinforcement-learning-agent","stable-baselines3"],"created_at":"2025-01-01T11:13:51.452Z","updated_at":"2025-07-12T16:33:41.569Z","avatar_url":"https://github.com/Spartan-71.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/user-attachments/assets/00155445-09a3-4f7c-8e8f-68d876f6cbf0\" alt=\"XODIA Competition Logo\"\u003e\n  \u003ch1 align=\"center\"\u003eXODIA Reinforcement Learning Competition\u003c/h1\u003e\n  \u003cp align=\"center\"\u003e\n    🏆 3rd Place Winner | April 2024 | Pocket Tanks AI Competition\n  \u003c/p\u003e\n\u003c/p\u003e\n\n## 🎮 About The Project\n\nThis repository showcases my solution for the **XODIA Reinforcement Learning Competition**, where I secured **3rd place** among 30+ participants. The challenge involved developing an AI agent capable of mastering *Pocket Tanks* through optimized reward function engineering and reinforcement learning techniques.\n\n### 🎯 Competition Objectives\n- Design an intelligent AI bot for Pocket Tanks\n- Implement an optimized reward function\n- Compete against other AI agents in various scenarios\n- Maximize performance and strategic decision-making\n\n## 🛠️ Technical Stack\n\n### Core Technologies\n```\n🐍 Python 3.8+\n🤖 Xodia24 (Competition Framework)\n🧠 stable-baselines3\n🔥 PyTorch\n📊 TensorBoard (Monitoring \u0026 Visualization)\n☁️ Google Colab (Training Environment)\n```\n\n\n## 🧮 Reward Function Architecture\n\nOur sophisticated reward system employs advanced mathematical modeling to optimize agent behavior:\n\n1. **Advanced Mathematics**\n   - Quadratic equations for precision control\n   - Linear decay patterns for predictable behavior\n   - Hyperbolic functions for specialized scenarios\n\n2. **Distance-Based Scaling**\n   - Dynamic reward adjustment based on target distance\n   - Optimized range effectiveness calculations\n   - Strategic positioning incentives\n\n3. **Seven Bullet Types**\n   - Standard Shell: Close combat specialist\n   - Triple Threat: Multi-range effectiveness\n   - Long Shot: Distance warfare\n   - Heavy Impact: Maximum damage potential\n   - Blast Radius: Area control\n   - Healing Halo: Support capabilities\n   - Boomerang Blast: Tactical specialty\n\n4. **Strategic Design**\n   - Engineered for tactical diversity\n   - Balanced risk-reward mechanics\n   - Situation-aware decision making\n\n## 🏆 Competition Results\n\n### Achievements\n- 🥉 **3rd Place** Overall Ranking\n- 📈 Consistent High-Performance Metrics\n- 🎯 Superior Strategic Decision Making\n\n### Watch the Competition\n▶️ [AI Wars Showcase](https://youtu.be/fUzpJypN_Hg?si=EIBE7uiDjvoIliQ_)\n\n\n## 🙏 Acknowledgments\n\n- The XODIA organizing team for creating this challenging competition\n- Fellow participants for pushing the boundaries of AI gaming\n- The reinforcement learning community for valuable resources\n\n## 📬 Contact\n\nFor questions or collaboration opportunities, feel free to reach out!\n\n---\n\u003cp align=\"center\"\u003e\n  Made with 🤖 and ❤️ for the XODIA Competition\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspartan-71%2Fpocket-tanks","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspartan-71%2Fpocket-tanks","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspartan-71%2Fpocket-tanks/lists"}