X

2048-api

Information

# 2048-api A 2048 game api for training supervised learning (imitation learning) or reinforcement learning agents ## Code structure * [\`game2048/\`](game2048/): the main package. * [\`game.py\`](game2048/game.py): the core 2048 \`Game\` class. * [\`agents.py\`](game2048/agents.py): the \`Agent\` class with instances. * [\`displays.py\`](game2048/displays.py): the \`Display\` class with instances, to show the \`Game\` state. * [\`expectimax/\`](game2048/expectimax): a powerful ExpectiMax agent by [here](https://github.com/nneonneo/2048-ai). * [\`explore.ipynb\`](explore.ipynb): introduce how to use the \`Agent\`, \`Display\` and \`Game\`. * [\`static/\`](static/): frontend assets (based on Vue.js) for web app. * [\`webapp.py\`](webapp.py): run the web app (backend) demo. * [\`evaluate.py\`](evaluate.py): evaluate your self-defined agent. ## Requirements * code only tested on linux system (ubuntu 16.04) * Python 3 (Anaconda 3.6.3 specifically) with numpy and flask ## To define your own agents \`\`\`python from game2048.agents import Agent class YourOwnAgent(Agent): def step(self): '''To define the agent's 1-step behavior given the \`game\`. You can find more instance in [\`agents.py\`](game2048/agents.py). :return direction: 0: left, 1: down, 2: right, 3: up ''' direction = some_function(self.game) return direction \`\`\` ## To compile the pre-defined [ExpectiMax](https://github.com/nneonneo/2048-ai) agent \`\`\`bash cd game2048/expectimax bash configure make \`\`\` ## To run the web app \`\`\`bash python webapp.py \`\`\` ![demo](preview2048.gif) ## LICENSE The code is under Apache-2.0 License. ## For EE369 / EE228 students from SJTU Please read course project [requirements](EE369.md) and [description](https://docs.qq.com/slide/DS05hVGVFY1BuRVp5). ## Acknowledgement The wrapped ExpectiMax agent is based on [nneonneo/2048-ai](https://github.com/nneonneo/2048-ai).

Prompts

Reviews

Tags

Write Your Review

Detailed Ratings

ALL
Correctness
Helpfulness
Interesting
Upload Pictures and Videos

Name
Size
Type
Download
Last Modified
  • Community

Add Discussion

Upload Pictures and Videos