# 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.
* main.py: 主函数,包括从训练集中载入数据,模型的搭建以及模型训练。
* model文件夹中存储训练时产生的多个版本的model的pkl文件。
* 由于traindata.csv大小为237MB,无法上传。
* 代码运行:
* 想要训练模型,运行python main.py。
* 想要查看已训练模型结果,运行python evaluate.py。
* 想要查看其他版本的模型结果,可以在game2048/agents.py中修改加载模型的路径,再运行python evaluate.py即可。
# 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 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 students from SJTU only
Please read course project [requirements](EE369.md) and [description](Project2048.pdf).
没有合适的资源?快使用搜索试试~ 我知道了~
机器学习大作业-用于训练监督学习(模仿学习)或强化学习代理的2048游戏api+源代码+文档说明
共40个文件
py:9个
pkl:3个
md:3个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 2 下载量 47 浏览量
2023-12-23
04:22:39
上传
评论
收藏 48.33MB ZIP 举报
温馨提示
1、资源内容:机器学习大作业-用于训练监督学习(模仿学习)或强化学习代理的2048游戏api+源代码+文档说明 2、代码特点:内含运行结果,不会运行可私信,参数化编程、参数可方便更改、代码编程思路清晰、注释明细,都经过测试运行成功,功能ok的情况下才上传的。 3、适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 4、作者介绍:某大厂资深算法工程师,从事Matlab、Python、C/C++、Java、YOLO算法仿真工作10年;擅长计算机视觉、 目标检测模型、智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、智能控制、路径规划、无人机等多种领域的算法仿真实验,更多源码,请上博主主页搜索。 -------------------------------------------------------------------------- -
资源推荐
资源详情
资源评论
收起资源包目录
My2048-master.zip (40个子文件)
My2048-master
generate_fingerprint.py 985B
board_cases.json 968KB
evaluate.py 781B
main.py 2KB
LICENSE 11KB
game2048
game.py 4KB
displays.py 2KB
expectimax
__init__.py 59B
configure 175KB
config.h.in 3KB
Makefile 632B
config.status 27KB
platdefs.h 3KB
config.h 3KB
2048.h 2KB
bin
2048 188KB
2048.so 188KB
Makefile.in 644B
_ext.py 2KB
install-sh 14KB
config.log 25KB
README.md 124B
2048.cpp 15KB
agents.py 2KB
explore.ipynb 4KB
model
RNN_model_2.pkl 17.17MB
RNN_model_1.pkl 17.17MB
RNN_model.pkl 17.17MB
EE369.md 1KB
webapp.py 2KB
EE369_fingerprint.json 7KB
static
style.css 2KB
board.html 2KB
app.js 1KB
vue-resource.js 34KB
bootstrap.css 143KB
favicon.ico 17KB
vue.js 218KB
EE369_evaluation.log 899KB
README.md 2KB
共 40 条
- 1
资源评论
- m0_734701962024-11-03资源很受用,资源主总结的很全面,内容与描述一致,解决了我当下的问题。
- 愿风吹向你2024-04-07内容与描述一致,超赞的资源,值得借鉴的内容很多,支持!机器学习的喵2024-04-08感谢下载,不懂的可以私聊
机器学习的喵
- 粉丝: 1946
- 资源: 2067
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功