gamedevの多くのように、都市シムゲームがこの一見不可能と思われる偉業をどのように達成するかに対する答えは、おそらく実現しないということです。彼らはちょうどそれをうまく偽っています。;)
このようなシムは通常、「チャンク」レベルで動作し、数千または数百万の居住者ごとにAIを処理するのではなく、人々、地域、交通回廊、またはその他の都市ダイナミクス全体をモデル化します。
これに取り組む方法はいくつかあります。
「スパース」ボトムアップ:ここでは、個々の都市の住民をシミュレートしますが、「多すぎる」わけではなく、すべてのフレームをシミュレーションするわけではありません。これは、毎週無作為に抽出された人々に出された世論調査や国勢調査のように考えることができます。結果を補間して、より広い仮想人口の推定値(それらが居住する場所、職業、収入、人口統計など)を導き出します。
たとえば、都市の100人の居住者のみをシミュレートし、そのうちの5人が学生である場合、都市の人口の約5%が学生であると推定でき、それに応じて学校の需要をモデル化できます。
過剰なクラスタリング/スパース性を回避するために、時々、都市の人口分布からランダムサンプルを再生成する必要がある場合があります(たとえば、近隣が不人気になり、国勢調査の居住者全員が離れた場合、完全に離れずに脱出に注意する必要があります)あなたのシムでの表現がない!)
トップダウン:ここでは、あなたの街を見て、全体としてそのダイナミクスをモデル化するマスター式を考え出します。マクロ経済学に似たスタイルでは、個々のエージェントの詳細を無視するか、原則ベースの法則に従って流れる一種の継続的に分割可能な経済活動の「流体」と見なします。
ゲームルールは、個人の好みや人々の多様性について考えるのではなく、アメニティの近接性と税率と生産性と資産価値と犯罪率に関する微分方程式のように見えるかもしれません。
ミドルアウト: 2つの間のさまざまなハイブリッドが可能です。たとえば、都市の各「派閥」、「産業」、または人口統計セグメントを独自のメタパーソンとしてシミュレートし、独自の個別の決定を行いますが、ヒートマップに分散します。または、一体となって存在するのではなく、都市全体の波動関数。または、街を近隣地域に分割し、近隣地域との相互作用でそれぞれが独自の小規模ルールを処理します。
プレーヤーが十分にズームインして個々の人が見えるようになったとき、または個人の数を引用している統計のレポートを見てみると、それらは必ずしもシミュレーションの実行に使用されている根本的な真実ではありません。むしろ、それらはそれの推論された製品でありえます。
特定の街区を拡大するとします。私たちの全体的な都市シムから、私たちは町のこの部分の大まかな人口、そこで行われる活動のタイプ、活動している時間帯を知っています。したがって、必要に応じて、適切な数の適切な人口統計を持つ人々をそこで発生させ、そのような種類の活動を行うことができます。彼らのAIは単純なものである可能性があり、多分、所定の場所でアニメーションを再生するか、ウェイポイントをたどって、デスポーンできる最も近いドア/スクリーンの端に到達するだけです。
つまり、通常、すべてのエージェントに対してパスファインディングを実行する必要はありません。代わりに、道路ネットワーク全体で1つのマスターフローマッピングパスを実行して、各セグメントに沿ったさまざまな種類のトラフィックの全体的なボリュームを特定できます。次に、それらのセグメントで適切なタイプの車両を十分に生成して、その密度を反映できます。スポーンされたエージェントは、ローカルステアリングまたは事前に生成されたウェイポイントを使用して、スポーン解除ポイントに到達できます。各セグメントに沿ってスポーンクローゼットをスポーン解除率と正しくバランスさせることで、必要なトラフィック量を安定して維持できます。
このように、プレイヤーが見る人と乗り物は、すべての蒸気の分子の完全な流体力学を実際に計算することなく、現実的な雲の印象を与える粒子のシステムのように、具現化されています。;)シミュレーションを駆動するのではなく、シミュレーションの状態を伝えるために、それらをセットのドレッシングとして配置します。
多くのゲームではこれで十分です。多くの場合、プレーヤーは個々のエージェントを選択して、彼らがそこで何をしているのか、どこへ向かっているのかを問い合わせることができないため、継ぎ目を見つけてエージェントが意味のないことを行っているかどうかを知ることは困難です。同じブロックを3回ドライブするようなものです。
しかし、人口が密集した環境で完全に一貫したエージェントが必要な場合は、「アリバイ 世代」と呼ばれるきちんとした手法を検討することができます。これは、特定の状況で見つかると予想されるエージェントを生成できる高度なサンプリング手法です。次に、プレーヤーが1つをより詳細に調査しようとする場合、プレーヤーがこれまでに観察したものと一致する方法で、プレーヤーが何をしているかについてより詳細に遡及的にサンプリングできます。ほとんどの場合、「段ボールの代役」の人々の軽量の利点を依然として得るという考えですが、その場で、彼らは完全にシミュレートされたエージェントとして渡すためのもっともらしいアリバイを構成できます。