E å›ã¯ã˜ã‚ƒã‚“ã‘ã‚“ãŒå¤§å¥½ãã§ã‚ã‚‹ (ã¡ãªã¿ã«ã˜ã‚ƒã‚“ã‘ã‚“ã®ãƒ«ãƒ¼ãƒ«ã«ã¤ã„ã¦ã¯Wikipediaã®ã˜ã‚ƒã‚“ã‘ã‚“ã®ãƒšãƒ¼ã‚¸ã‚’å‚ç…§ã›ã‚ˆ). ã‚る日,町内ã§ã˜ã‚ƒã‚“ã‘ん大会ãŒã‚ã‚‹ã¨ã„ã†ã“ã¨ã‚’知ã£ãŸ E å›ã¯ï¼Œã˜ã‚ƒã‚“ã‘ã‚“ã®è…•ã«è‡ªä¿¡ãŒã‚ã£ãŸã“ã¨ã‚‚ã‚ã‚Šæ—©é€Ÿå‡ºå ´ã™ã‚‹ã“ã¨ã«ã—ãŸï¼Ž ã¨ã“ã‚ãŒå¤§ä¼šå½“日,E å›ã‚’å¾…ã¡å—ã‘ã¦ã„ãŸã®ã¯ï¼Œæ™®é€šã®ã€Œã‚°ãƒ¼ãƒ»ãƒãƒ§ã‚・パーã€ã®ã¿ã‹ã‚‰ãªã‚‹æ™®é€šã®ã˜ã‚ƒã‚“ã‘ã‚“ã§ã¯ãªã, より多ãã®æ‰‹ã‹ã‚‰ãªã‚‹ä¸€èˆ¬åŒ–ã•ã‚ŒãŸã˜ã‚ƒã‚“ã‘ã‚“ã§ã‚ã£ãŸï¼Ž
一般化ã•ã‚ŒãŸã˜ã‚ƒã‚“ã‘ん㯠2 人ã®ãƒ—レイヤーã§è¡Œã‚れるゲームã§ã‚る. ã¾ãšï¼Œ2 人ã«ã¯ã“ã®ã˜ã‚ƒã‚“ã‘ã‚“ã«ãŠã„ã¦ä½¿ç”¨å‡ºæ¥ã‚‹æ‰‹ã®å€‹æ•° N ã¨ï¼ŒN 個ã®æ‰‹ã®å‹æ•—関係を示ã™è¡¨ãŒä¼ãˆã‚‰ã‚Œã‚‹ï¼Ž ãã—ã¦ï¼Œé€šå¸¸ã®ã˜ã‚ƒã‚“ã‘ã‚“ã¨åŒã˜ã‚ˆã†ã«åŒæ™‚ã«æ‰‹ã‚’出ã—ã‚ã„,ä¼ãˆã‚‰ã‚ŒãŸæ‰‹ã®å‹æ•—関係ã«åŸºã„ã¦å‹æ•—を決ã‚る.ã“れを 1,000 回 ç¹°ã‚Šè¿”ã™ï¼Ž 1 回ã®ã˜ã‚ƒã‚“ã‘ã‚“ã®å‹æ•—ã®çµæžœã«ã‚ˆã£ã¦å¾—点ãŒæ‰‹ã«å…¥ã‚Šï¼Œç›¸æ‰‹ã«å‹åˆ©ã—ãŸå ´åˆã¯ 3 点,相手ã¨ã€Œã‚ã„ã“ã€ã«ãªã£ãŸå ´åˆã¯ 1 点ãŒæ‰‹ã«å…¥ã‚‹ï¼Žç›¸æ‰‹ã«è² ã‘ã¦ã—ã¾ã£ãŸå ´åˆã¯å¾—点を得られãªã„.
ã“ã®ãªã‚“ã ã‹ã‚ˆãã‚ã‹ã‚‰ãªã„ルールã®ã˜ã‚ƒã‚“ã‘ã‚“ã«ã™ã£ã‹ã‚Šæˆ¦æ„を喪失ã—ã¦ã—ã¾ã£ãŸ E å›ã§ã‚ã£ãŸãŒï¼Œã©ã†ã‚„らèžãã¨ã“ã‚ã«ã‚ˆã‚‹ã¨ï¼Œæœ€çµ‚çš„ã«ç›¸æ‰‹ã«å¾—点ã§å‹ã¦ãªãã¦ã‚‚,350 点以上をç²å¾—ã™ã‚Œã°ä½•ã‹æ™¯å“ãŒã‚‚らãˆã‚‹ã‚‰ã—ã„. ã‚ã‚“ã©ãã•ã„ã®ã§ 350 点を得ã¦ã•ã£ã•ã¨å¤§ä¼šã‚’後ã«ã™ã‚‹ã“ã¨ã«ã—ãŸï¼Ž
ã“ã®å•é¡Œã®ç›®çš„ã¯ï¼Œä¸€èˆ¬åŒ–ã•ã‚ŒãŸã˜ã‚ƒã‚“ã‘んをプレイã™ã‚‹ AI を作æˆã—,ジャッジå´ã®ç”¨æ„ã—㟠AI ã¨å¯¾æˆ¦ã•ã›ã¦ 350 点以上をç²å¾—ã™ã‚‹ã“ã¨ã§ã‚る.
ã¾ãšå…¥åŠ›ãŒä»¥ä¸‹ã®å½¢å¼ã§ä¸Žãˆã‚‰ã‚Œã‚‹ï¼Ž
N a1,1 ... a1,N ... aN,1 ... aN,N
N ã¯ã˜ã‚ƒã‚“ã‘ã‚“ã®æ‰‹ã®æ•°ã§ã‚る.
å„ ai,j 㯠N 個ã®æ‰‹ã®å‹æ•—関係を表ã™ï¼Ž
ai,j 㯠-
,o
,x
ã®ã„ãšã‚Œã‹ã§ã‚り,-
ãªã‚‰ã°æ‰‹ i ãŒæ‰‹ j ã«å¯¾ã—引ã分ã‘ã‚‹ã“ã¨ã‚’,o
ãªã‚‰ã°æ‰‹ i ãŒæ‰‹ j ã«å¯¾ã—å‹ã¤ã“ã¨ã‚’,x
ãªã‚‰è² ã‘ã‚‹ã“ã¨ã‚’示ã™ï¼Ž
ã“ã®æ¡ä»¶ã®ä¸‹ã§ 1,000回 AI ã¨ã˜ã‚ƒã‚“ã‘ã‚“ã‚’ã™ã‚‹ï¼Ž
プãƒã‚°ãƒ©ãƒ ã¯è‡ªåˆ†ã®ä½¿ã†æ‰‹ã‚’出力ã™ã‚‹ã¨ï¼Œã‚¸ãƒ£ãƒƒã‚¸ã® AI ãŒä½¿ã£ãŸæ‰‹ã‚’入力ã§å—ã‘ã¨ã‚‹äº‹ãŒã§ãる. 例ãˆã° C/C++㧠3 番目ã®æ‰‹ã‚’使ã†å ´åˆã¯
printf("3\n"); fflush(stdout);
ã¨ã™ã‚‹ï¼Žæ¬¡ã«ï¼Œ
scanf("%d", &judge_ai_hand);
ã¨ã™ã‚‹ã¨å¤‰æ•° judge_ai_hand ã«ã‚¸ãƒ£ãƒƒã‚¸ã® AI ãŒä½¿ã£ãŸæ‰‹ãŒå…¥ã‚‹ï¼Ž ãªãŠã˜ã‚ƒã‚“ã‘ã‚“ã®æ‰‹ã¯1-indexedã§ã‚る.
1,000 回ã®ã˜ã‚ƒã‚“ã‘んを終ãˆãŸå¾Œã¯ç›´ã¡ã«ãƒ—ãƒã‚°ãƒ©ãƒ を終了ã›ã‚ˆï¼Žãã®å¾Œï¼Œç²å¾—ã§ããŸå¾—点ã®åˆè¨ˆãŒ 350 点以上ã§ã‚ã‚Œã°æ£ç”ã¨åˆ¤å®šã•ã‚Œã‚‹ï¼Ž
o
, x
} ã§ã‚り,
ai,j=o
,aj,i=x
ã¾ãŸã¯
ai,j=x
,aj,i=o
ã®ã©ã¡ã‚‰ã‹ç‰‡æ–¹ãŒæˆã‚Šç«‹ã¤ï¼Ž
-
ã§ã‚る.ã˜ã‚ƒã‚“ã‘ã‚“ã®èª¬æ˜Ž | プãƒã‚°ãƒ©ãƒ ã®å‡ºåŠ› | プãƒã‚°ãƒ©ãƒ ã¸ã®å…¥åŠ› |
---|---|---|
4 -oox x-oo xx-o oxx- | ||
1 回目ã«ç«¶æŠ€è€…ã® AI ãŒä½¿ã£ãŸæ‰‹ | 1 | |
1 回目ã«ã‚¸ãƒ£ãƒƒã‚¸ã® AI ãŒä½¿ã£ãŸæ‰‹ | 2 | |
... | ... | ... |
1,000 回目ã«ç«¶æŠ€è€…ã® AI ãŒä½¿ã£ãŸæ‰‹ | 4 | |
1,000 回目ã«ã‚¸ãƒ£ãƒƒã‚¸ã® AI ãŒä½¿ã£ãŸæ‰‹ | 3 |
最åˆã«ãƒ—ãƒã‚°ãƒ©ãƒ ã¯ã˜ã‚ƒã‚“ã‘ã‚“ã®æ‰‹ã®è¡¨ã‚’å—ã‘å–る.ãã®å¾Œï¼Œ1,000 回ã®ã˜ã‚ƒã‚“ã‘ã‚“ã‚’è¡Œã†ï¼Ž ã“ã“ã§ï¼Œ1 回目ã®ã˜ã‚ƒã‚“ã‘ã‚“ã§ã¯ç«¶æŠ€è€…ã® AI ã¯ã‚¸ãƒ£ãƒƒã‚¸ã® AI ã«å‹åˆ©ã—ã¦ã„ã‚‹ãŒï¼Œ 1,000 回目ã®ã˜ã‚ƒã‚“ã‘ã‚“ã§ã¯ç«¶æŠ€è€…ã® AI ã¯ã‚¸ãƒ£ãƒƒã‚¸ã® AI ã«æ•—北ã—ã¦ã„ã‚‹ã“ã¨ã«æ³¨æ„ã›ã‚ˆï¼Ž