https://github.com/cheanus/classbeans
模拟选课投意愿值的博弈过程,并分析结果
https://github.com/cheanus/classbeans
Last synced: about 1 year ago
JSON representation
模拟选课投意愿值的博弈过程,并分析结果
- Host: GitHub
- URL: https://github.com/cheanus/classbeans
- Owner: cheanus
- License: mit
- Created: 2024-06-26T02:03:41.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-06-27T11:12:37.000Z (about 2 years ago)
- Last Synced: 2025-02-14T19:51:25.131Z (over 1 year ago)
- Language: Python
- Size: 4.88 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ClassBeans
模拟选课投意愿值的博弈过程,并分析结果
## 原理
思路:建立一个选课投豆博弈模型,通过程序模拟来得到纳什均衡。
博弈过程:
1. 确定每门课的(大概)预选课人数
2. 使用随机采样确定所有学生的选课列表
3. 所有学生根据k-豆曲线确定投豆数目
4. 计算每门课的入选豆子下限
5. 根据豆子下限,计算每个学生多投和少投的loss和,更新k-豆曲线
详细可参考[文章-选课投豆的数学原理](https://caveallegory.cn/2024/06/%E9%80%89%E8%AF%BE%E6%8A%95%E8%B1%86%E7%9A%84%E6%95%B0%E5%AD%A6%E5%8E%9F%E7%90%86/)。
## 依赖库
安装依赖库:
- pytorch
- matplotlib
## 运行
1. 调整`game.py`中`train.py`里的初始化参数
2. 执行命令
```bash
python game.py
```