種別[gsm] 2021-07-30T12:52:08Z
セクショングローバル共有メモ
日時2021-07-30T12:52:08Z
元URL(URLなし)

[仏教の最適化プログラムの続き。]…

jrf> [仏教の最適化プログラムの続き。]

支配者の退職と後任の決定。または「代替わり」。

例えば、vassal (閣僚)の誰かが退職し、その子がその地位に入るとして、その子はそもそも cavalier (部下)であったとしよう。すると、その子が繰り上がったため今度は cavalier にも退識者が出たとして処理をすることになる。このように順繰りな退職処理は発生するが、それは1つずつ処理していける…と仮定するのは間違いである。

その cavalier が地域 1 にいて、vassal になるため、地域 0 に転居せねばならない場合に、cavalier の扶養する子供がいて、その子供もまた cavalier であったとしよう。すると、まず vassal の地位に着くのが優先され、そのために同時に二人の cavalier に退職者が出る。これを処理せねばならない。これはなかなかに難しい。

そこで退職と後任は別の処理とすることにする。退職は退職だけで複数(同時でも良い)起こり、一期に一度(か二度)だけ後任処理が起こるとする。(後任処理の途中にも退職処理は出る。それも加味してすべての後任が決まるまでループする。)

退職時は、指名を残し、それを経済に記録しておく。指名は、地域 0 の cavalier なら、(cavalier, 0) の地位何がしの(死んだ?)誰それの指名がある…などとする。地位も記録するのは、複数の指名がだぶったとき地位にもとづき優先するため。地位は、指名者が指名時よりすでに高い地位にある場合は、そちらを参照する。

……。

王が死んだときは、前王の指名がまず優先される。指名は、子がいれば子、長子が優先される。子がいない場合は、孫。孫もいない場合は、王の兄弟。王の兄弟もいない場合は、王の兄弟の子。王の兄弟の子もいない場合は、リアルではないかもしれないが、指名は有効でなくなるとしよう。指名は王でなくてもこのような探し方をするとする。

指名が有効でない場合は、閣僚または知事から、閣僚または知事がいない場合は、部下から、部下もいない場合は、ランダムに国民から…となる。

閣僚や知事が死んだ場合はもっと複雑である。この場合、指名が常に優先するとは限らない。王の横やり(指名)があることもある。部下からの昇進が優先されることもある。ほんのわずかな確率ながら国民の大抜擢もありうるかもしれない。

それぞれに重みがある。指名が王からのものなら10、閣僚や知事のものなら 8、王の横やりは 3、部下からの昇進は 5、大抜擢は 1 とする。その重みに元づきランダムにソート(シャッフル)して、ソートされた上から順に評価する。

重み付きランダムシャッフルは、(8 + 3 + 5 + 1) * random.random() して、着地した点を取り除き、今回それが 3 部分だとすると、今度は、(8 + 5 + 1) * random.random() して着地した点を取り除き…としていこうかと思う。若干非効率だが、直感的でわかりやすいからこうしようと思う。

部下が死んだ場合。指名が王のものなら 10、閣僚や知事のものなら 8、部下のものなら 5。王からの横やりは 3、閣僚からの横やりは 2、知事からの横やりは 3、大抜擢は 2 とする。やはり重み付きランダムシャッフルを用いて決めていく。

指名は指名者の地位の高いものを優先するが、地位が同じものが複数ある場合は、ランダムでどの指名が有効かが決まるものとする。知事が死んで部下が昇進する場合はその地域の部下から選ばれるが、閣僚が死んで部下が昇進する場合は、全国の部下の中から選ばれることとする。部下や閣僚など、複数の候補から選ぶ場合は、もっとも優秀なものから選ばれる…とするか。優秀さは、全能力の平均値で測る。…と。

18歳から50歳の者のみが新たな支配層になる。70 歳を越えると王以外は退職する。より低い地位に就くことはない。…が注意すべき点か。

最終的に、その期指名が生かされなかった分については、指名が次期に持ち越されることなくキャンセルされ、指名されるべきだった者が、本来なるべきだった地位にその期新しく就いた者に恨み(ねたみ)を抱くようになることとする。