ICG游戏:证明,先手不是必胜就是必败。
簡(jiǎn)介:
ICG游戲:Impartial Combinatorial Games,公平的組合游戲。
以下是定義,來自網(wǎng)絡(luò),可能不夠嚴(yán)謹(jǐn):
1、兩名選手;
2、兩名選手輪流行動(dòng),每一次行動(dòng)可以在有限合法操作集合中選擇一個(gè);
3、游戲的任何一種可能的局面(position),合法操作集合只取決于這個(gè)局面本身;局面的改變稱為“移動(dòng)”(move)。
4、若輪到某位選手時(shí),該選手的合法操作集合為空,則這名選手判負(fù)。
?
必勝和必?cái)?#xff0c;指如果若按規(guī)定且可行的方法走,則必定勝利;必?cái)?#xff0c;指無論怎么走必定失敗。某些資料稱為奇異非奇異態(tài),PN態(tài),等差不多。
來源:
寫這篇文章,主要是源于巧克力游戲的證明(Strategy-stealing):
有個(gè)n*m的矩陣(巧克力塊),兩人輪流取一個(gè)點(diǎn);每次取完后,需要把其右上方所有巧克力都吃了;吃到最左下方的輸。先手是否必勝?
有證明如下:
如果后手存在必勝,則只要先手第一次取最右上方的,后手取的必包含最右上方的,那先手其實(shí)第一次就可以取后手取的那個(gè)。
即后手第二步走的,先手都可以在第一步就走。由此證明后手不存在必勝,先手必勝。
補(bǔ)充證明:
剛看到證明,覺得只是證明了后手不存在必勝,并不能說明先手必勝。
如果加上一個(gè)條件即可:在ICG游戲中,先手不是必勝就是必?cái)?#xff0c;后手同理。
證明:
雙方互相決策,有限步驟,可以用樹來描述,樹的葉子節(jié)點(diǎn)是勝或者敗;
由于雙方都是足夠聰明,所以,如果某個(gè)葉子是勝,則其父節(jié)點(diǎn)也是勝,因?yàn)楦腹?jié)點(diǎn)必定會(huì)選擇勝利的途徑;如果某子樹葉子全是敗,則其父節(jié)點(diǎn)也是敗;
一直往上遞推,則最后,推到根節(jié)點(diǎn)有若干個(gè)葉子,如果有勝節(jié)點(diǎn)則根節(jié)點(diǎn)勝;如果全是敗則根節(jié)點(diǎn)敗;
則證明,先手不是必勝就是必?cái) ?/p>
梳理:
回到剛才的反證法,梳理下:
后手有必勝=>先手必?cái)?#61;>推出矛盾。則先手不是必?cái)?#xff0c;又由上面證明得知先手不是必勝就是必?cái)?#xff0c;所以先手必勝。
擴(kuò)展:
對(duì)于這種多走一步一定不是壞事,且決策對(duì)策的游戲(可能是非ICG),都可以用類似的方法證明后手沒有必勝策略。但這不代表先手有。
轉(zhuǎn)載于:https://www.cnblogs.com/willaty/p/8151533.html
總結(jié)
以上是生活随笔為你收集整理的ICG游戏:证明,先手不是必胜就是必败。的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java使用jdbc调用hive出现Th
- 下一篇: Extjs使用备忘录