? ??ノームクックのシミュレーション? ♂ ♂️
ファンタジー環境の確率と管理を組み合わせた数学的なシミュレーションであるGnomes Chefsのシミュレーションへようこそ。このプロジェクトは、ミッションを満たさなければならない5人のゴノームシェフのユニークなスキルをシミュレートしようとしています。それは、偉大な人々のパーティーのために宴会を準備します。時間管理、まれな成分の取得、最終結果を変える可能性のあるランダムイベントの制御などの課題に直面します。
プロジェクト目標
目的は、5つのノーム料理の動作をモデル化する自動シミュレーションを作成することです。パン屋、スープシェフ、ペストリーシェフ、肉屋、見習いです。各GNOMEには特定のスキルがあり、その行動は高度な確率的アルゴリズムとランダムイベントによって支配されます。シミュレーションの最後に、宴会の結果と各GNOMEのパフォーマンスとともに詳細なレポートが表示されます。
現在の状態
プロジェクトは初期段階にあり、機能はまだ実装されていません。計画は進歩しており、システムの各部分のアーキテクチャと目的の明確なビジョンがあります。
重要な機能
?主な機能
- 自動シミュレーション:開始すると、シミュレーションはユーザー介入なしで自動的に実行されます。
- 特定の役割を持つ5つのノーム:ベイカー、スープシェフ、ペストリーシェフ、肉屋、見習い、それぞれがユニークなスキルと行動を備えています。
- 確率と時間管理:シミュレーションのロジックは、ランダムな確率とイベントに基づいており、各タスクの成功率はGNOMOのスキルに基づいています。
- 外部イベント:調理を妨げる希少または予期しない成分を取得するなどのランダムなイベントが導入されます。
- アダプティブ:各GNOMEは、ゲームイベントに適応するクラシック(パックマンの幽霊など)に触発された行動のパターンに従います。
- 最終レポート:シミュレーションの最後に、各GNOMEのパフォーマンスと宴会の結果とともにレポートが生成されます。
プラットフォームとテクノロジー
- 境界線: Vue.jsで構築されたシミュレーションを開始し、結果を視覚化するためのシンプルなインターフェイスを提供します。視覚化ボードには、ピクセルスタイルアートのスプライトが含まれます。
- バックエンド:シミュレーションエンジンは、 Djangoを使用したPythonによって処理されます。これにより、複雑な計算と確率的アルゴリズムが可能になります。
- リアルタイム:FRONNDは、シミュレーションの進行状況と発生するイベントの実際の視覚化を可能にします。
- データベース: PostGreSQLは、各シミュレーションの結果とGNOMEのパフォーマンスを保存するデータベースになります。
?将来の機能
? §モードとオプション
- 高度なシミュレーション:ゲームをより予測不可能にするために、ノームのロジックに外部イベントと複雑さを追加することが計画されています。
- シミュレーションエディター:将来、ユーザーはパーソナライズされたスキルを備えた独自のノームを作成し、成功の確率を調整することが許可されます。
?視覚化とアニメーション
- アニメーションボード:ノーム料理のアニメーションや材料を探しているなど、シミュレーションの進行を示すフロントエンドに境界線を実装します。
- ピクセルアートスタイルのスプライト:レトロスタイルのグラフィックが追加され、視覚化に楽しくノスタルジックなタッチを提供します。
?確率アルゴリズムとIA
- Advanced Gnomes :各Gnomeには、パックマンの幽霊の動きパターンに触発された、その役割とスキルに基づいて行動を管理するユニークなアルゴリズムがあります。
- 複雑な外部イベント:天候、追加の材料の入手可能性、宴会へのゲストなどの外部要因を含むランダムイベントのシステムを導入します。
パフォーマンスとスケーラビリティ
- クラウドのスケーラビリティ:AWSやHerokuなどのサーバー環境で複数の同時実行を可能にするために、シミュレーションを最適化することが計画されています。
- 並列処理:より複雑なシミュレーションでは、エンジンは並列処理を使用して計算時間を短縮できます。
システムアーキテクチャ
アプリケーションは、バックエンドフレームワークなどのDjangoを使用して、ボーダー、バックエンド、およびデータベースの3層アーキテクチャに従います。
@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コンポーネントの説明
Border(vue.js)
- 機能:シミュレーションを開始し、進捗と結果を確認するための簡単なインターフェイスを提供します。
- 視覚化:ピクセルアートのノームスプライトを使用したボード。各GNOMEが行っているタスクをリアルタイムで示します。
バックエンド(django)
- API :エンドポイントのRESTを公開して、シミュレーションを開始し、結果を相談し、レポートを取得します。
- シミュレーションモーター:シミュレーションのための確率論的ロジックの実行。
- 永続性:結果をデータベースに保存し、レポートを生成します。
シミュレーションエンジン
- シミュレーションロジック:確率モデルとランダムイベントに基づいて、Pythonで実装されています。
- GNOMES :各GNOMEは、パーソナライズされた動作アルゴリズムに従います。
データベース(postgresql)
- 構造:
- GNOMOSテーブル:各GNOMEに関する情報(名前、役割、スキル)。
- テーブルシミュレーション:各シミュレーションの登録。
- 表の結果:各シミュレーションの各GNOMEの個々の結果。
貢献する方法は?
- クロナリポジトリと貢献のためのブランチを作成します。
- オープンな問題を確認するか、改善を提案してください。
- 新しい機能を実装するか、バグを解決します。
- レビューのプルリクエストを送信します。
?プロジェクトのロードマップ
- 基本的なシミュレーションロジックを実装します。
- 実際の視覚化とともに境界線を開発します。
- ランダムイベントと複雑なアルゴリズムを追加します。
- クラウド内の複数の同時シミュレーションの最適化。
- コミュニティテスト用のベータ版の発売。
このプロジェクトに興味を持ってくれてありがとう!シミュレーションと確率管理が好きなら、これがあなたのためのプロジェクトです! ?