{"adoption": {"forks": 240, "observed_at": "2026-08-28T04:04:17.340418+00:00", "stars": 1299}, "canonical_url": "https://ross.abutalabs.com/products/super-mario-bros-ppo-pytorch", "card": {"archived": false, "artifact_type": "application", "description": "Proximal Policy Optimization (PPO) algorithm for Super Mario Bros", "domain": ["reinforcement-learning", "artificial-intelligence"], "enriched": true, "function": ["reinforcement-learning", "deep-learning", "machine-learning"], "health_score": 20, "homepage": null, "language": "Python", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["vietnh1009/Super-mario-bros-PPO-pytorch"], "name": "vietnh1009/Super-mario-bros-PPO-pytorch", "platform": ["python", "windows"], "pushed_at": "2021-07-24T11:19:21+00:00", "repo": "vietnh1009/Super-mario-bros-PPO-pytorch", "stars": 1299, "tags": ["ppo", "pytorch", "openai-gym", "super-mario-bros", "game-playing-agent", "policy-gradient", "game-development", "linux", "macos"], "topics": ["reinforcement-learning", "ppo", "ppo2", "pytorch", "gym", "python3", "python", "deep-learning", "super-mario-bros", "mario", "ai", "proximal-policy-optimization", "openai", "openai-gym"], "urls": [], "use_cases": ["train an AI agent to play Super Mario Bros", "learn how PPO works with a concrete PyTorch example", "compare PPO against A3C/A2C on a game environment", "get a starting point for reinforcement learning on OpenAI Gym games", "study policy gradient methods with real training code", "reproduce a high-performing game-playing RL agent"], "what_it_is": "A PyTorch implementation of the Proximal Policy Optimization (PPO) algorithm that trains an agent to play Super Mario Bros via OpenAI Gym. The trained agent completes 31 of 32 levels, and the repo serves as a reference implementation of PPO for game environments.", "when_to_avoid": ["you need a general-purpose RL library with many algorithms", "you want production-ready or actively maintained RL tooling", "you need multi-agent or non-Atari/non-Mario environment support"], "when_to_choose": ["you want a clear, working PPO reference implementation in PyTorch", "you're learning deep RL and want a complete, well-documented example", "you need a baseline for RL agents on classic NES game environments"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/super-mario-bros-ppo-pytorch", "repo": "vietnh1009/Super-mario-bros-PPO-pytorch", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.340418+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:53:28.189761+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "362a0995d2c1bac0fcf955570704723d3503a055de9e1f4717b59374af835f35", "fetched_at": "2026-08-28T04:04:17.340418+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vietnh1009/Super-mario-bros-PPO-pytorch"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.340418+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:53:28.189761+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "362a0995d2c1bac0fcf955570704723d3503a055de9e1f4717b59374af835f35", "fetched_at": "2026-08-28T04:04:17.340418+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vietnh1009/Super-mario-bros-PPO-pytorch"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:53:28.189761+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "362a0995d2c1bac0fcf955570704723d3503a055de9e1f4717b59374af835f35", "fetched_at": "2026-08-28T04:04:17.340418+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vietnh1009/Super-mario-bros-PPO-pytorch"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.340418+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.340418+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.340418+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:53:28.189761+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "362a0995d2c1bac0fcf955570704723d3503a055de9e1f4717b59374af835f35", "fetched_at": "2026-08-28T04:04:17.340418+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vietnh1009/Super-mario-bros-PPO-pytorch"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.340418+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.340418+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:53:28.189761+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "362a0995d2c1bac0fcf955570704723d3503a055de9e1f4717b59374af835f35", "fetched_at": "2026-08-28T04:04:17.340418+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vietnh1009/Super-mario-bros-PPO-pytorch"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.340418+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.340418+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.340418+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:53:28.189761+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "362a0995d2c1bac0fcf955570704723d3503a055de9e1f4717b59374af835f35", "fetched_at": "2026-08-28T04:04:17.340418+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vietnh1009/Super-mario-bros-PPO-pytorch"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.340418+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.340418+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:53:28.189761+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "362a0995d2c1bac0fcf955570704723d3503a055de9e1f4717b59374af835f35", "fetched_at": "2026-08-28T04:04:17.340418+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vietnh1009/Super-mario-bros-PPO-pytorch"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:53:28.189761+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "362a0995d2c1bac0fcf955570704723d3503a055de9e1f4717b59374af835f35", "fetched_at": "2026-08-28T04:04:17.340418+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vietnh1009/Super-mario-bros-PPO-pytorch"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:53:28.189761+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "362a0995d2c1bac0fcf955570704723d3503a055de9e1f4717b59374af835f35", "fetched_at": "2026-08-28T04:04:17.340418+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vietnh1009/Super-mario-bros-PPO-pytorch"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:53:28.189761+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "362a0995d2c1bac0fcf955570704723d3503a055de9e1f4717b59374af835f35", "fetched_at": "2026-08-28T04:04:17.340418+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vietnh1009/Super-mario-bros-PPO-pytorch"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2527, "days_push": 1866, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}