? ?侏儒厨师的模拟? ♂️
欢迎使用GNOMES厨师的模拟,这是一种数学模拟,结合了幻想环境中的概率和管理。该项目旨在模拟必须符合任务的五个侏儒厨师的独特技能:为伟大的人民党准备宴会。面对诸如时间管理,获得稀有成分的挑战以及可以改变最终结果的随机事件的控制。
项目目标
目的是创建一个自动模拟,以建模五个侏儒厨师的行为:贝克,汤厨师,糕点厨师,屠夫和学徒。每个侏儒都有特定的技能,其行为将由先进的概率算法和随机事件支配。在模拟结束时,将显示详细的报告,并显示每个侏儒的宴会的结果。
当前状态
该项目处于初始阶段,尚未实施任何功能。该计划是先进的,我们对系统每个部分的架构和目标都有清晰的愿景。
关键功能
?主要功能
- 自动仿真:启动后,将自动执行模拟而无需用户干预。
- 五个具有特定角色的侏儒:面包师,汤厨师,糕点厨师,屠夫和学徒,每个人都有独特的技能和行为。
- 概率和时间管理:仿真的逻辑基于随机概率和事件,每个任务都根据GNOMO的技能具有成功百分比。
- 外部事件:随机事件,例如引入稀有或不可预见的成分阻碍烹饪的成分。
- 自适应:每个侏儒都遵循受古典(例如Pacman's Ghosts)启发的行为模式,以适应游戏事件。
- 最终报告:在模拟结束时,每个侏儒的性能和宴会的结果都会生成报告。
平台和技术
- 边框:使用vue.js构建,将提供一个简单的接口来启动模拟并可视化结果。可视化板将包括像素式艺术的精灵。
- 后端:仿真引擎将由Django使用Python处理,这将允许复杂的计算和概率算法。
- 实时:FRONND将允许对模拟进度和发生的事件进行实时可视化。
- 数据库: PostgreSQL将是负责存储每个模拟结果以及GNOMES的性能的数据库。
?未来的功能
? 模式和选项
- 高级模拟:计划在侏儒的逻辑中添加更多的外部事件和复杂性,以使游戏更加不可预测。
- 仿真编辑器:将来,将允许用户以个性化技能创建自己的侏儒并调整成功的概率。
?可视化和动画
- 动画板:我们将在前端实现一个边框,以显示模拟的进度,包括侏儒烹饪的动画和寻找成分。
- 像素艺术风格精灵:将添加复古风格的图形,以使可视化具有有趣而怀旧的风格。
?概率算法和IA
- 高级侏儒:每个侏儒都会有一种独特的算法,该算法将根据其角色和技能来控制其行为,灵感来自Pacman鬼魂的运动模式。
- 复杂的外部事件:我们将引入一个随机事件系统,其中包括外部因素,例如天气,其他成分或嘉宾参加宴会。
性能和可扩展性
- 云可伸缩性:计划优化仿真,以在AWS或Heroku等服务器环境中进行多次同时执行。
- 并行处理:在更复杂的模拟中,发动机可以使用并行处理来减少计算时间。
系统体系结构
该应用程序遵循三层架构:边框,后端和数据库,以及诸如后端框架之类的Django。
@startuml
skinparam style strictuml
actor User
node "Cliente" {
[ Frontend ( Vue . js )]
}
node "Servidor" {
[ API Backend ( Django )] --> [ Motor de Simulaci ó n ]
[ Motor de Simulaci ó n ] --> [ Base de Datos ( PostgreSQL )]
}
User --> [ Frontend ( Vue . js )]
[ Frontend ( Vue . js )] --> [ API Backend ( Django )]
@enduml组件的描述
边界(vue.js)
- 功能:提供一个简单的接口来启动模拟并查看进度和结果。
- 可视化:带有像素艺术中的侏儒精灵的板,实时显示每个侏儒正在执行的任务。
后端(Django)
- API :暴露端点休息以开始模拟,咨询结果并获得报告。
- 仿真电机:执行概率逻辑以进行模拟。
- 持久性:将结果保存在数据库中并生成报告。
仿真引擎
- 仿真逻辑:基于概率模型和随机事件在Python中实现。
- 侏儒:每个侏儒都遵循一个个性化的行为算法。
数据库(PostgreSQL)
- 结构:
- GNOMOS表:有关每个侏儒(名称,角色,技能)的信息。
- 表模拟:每个模拟的注册。
- 表结果:每个模拟中每个侏儒的个别结果。
如何做出贡献?
- Clona存储库并为您的贡献创建一个分支。
- 检查开放问题或建议改进。
- 实现新功能或解决错误。
- 发送拉动请求进行审核。
?该项目的路线图
- 实施基本的仿真逻辑。
- 通过实时可视化开发边界。
- 添加随机事件和复杂的算法。
- 对云中多个同时模拟的优化。
- 启动用于社区测试的Beta版本。
感谢您对这个项目感兴趣!如果您喜欢仿真和概率管理,这就是您的项目! ?