会社の変更の結果として、私たちは座席表を再調整する必要があります。1つの部屋に10台の机があります。いくつかの理由で他の机より人気があります。1つの解決策は、帽子からデスク番号を引き出すことです。私たちはそれを行うためのより良い方法があると思います。
私たちは10の机と10人を持っています。このコンテストのすべての人に、机に入札するための50個の仮想トークンを与えましょう。1つの机にいくら入札するかは制限がなく、「ここだけ座りたい、期間」と言って50個全部入れることができます。すべてのデスクに5トークンを与えることで、「私は気にしない」と言うこともできます。
重要な注意:他の人が何をしているのか誰も知りません。誰もが自分の最善の利益だけに基づいて決定する必要があります(おなじみのように聞こえますか?)
ここで、これらの架空の結果が得られたとしましょう。
# | Desk# >| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
1 | Alise | 30 | 2 | 2 | 1 | 0 | 0 | 0 | 15 | 0 | 0 | = 50
2 | Bob | 20 | 15 | 0 | 10 | 1 | 1 | 1 | 1 | 1 | 0 | = 50
...
10 | Zed | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | = 50
さて、私たちが見つける必要があるのは、私たちに最大の満足を与える1つ(または複数)の構成です(つまり、人々はすべての入札を考慮し、グループ全体を最大化して、必要なデスクを手に入れます。当然のことながら、仮定は机の上に1つ以上の入札があれば、彼/彼女はそれをもっと欲しがる)。
人数が10人しかないので、考えられるすべての構成を総当たり攻撃で調べることができると思いますが、この種の問題を解決するためのより良いアルゴリズムがあるのではないかと思いました。