|
[°ÔÀÓÆ®¸®¸¦ »ç¿ëÇÑ
Á¦·Î¼¶ °ÔÀÓÀÇ ÀΰøÁö´É]
- ¿ìÁ¾ÇÏ(deepseas(AT)sogang.ac.kr)
- ¼Ò½ºÄÚµå
[Down]
-
ÀÚ¹Ù Runtime [Down]
: ¾ÖÇø´ÀÌ ½ÇÇàÀÌ ¾ÈµÉ °æ¿ì ¼³Ä¡, ¼³Ä¡ÈÄ ÀͽºÇ÷ξî Àç½ÇÇà
°ÔÀÓÆ®¸®(Game Tree)ÀÇ Á¤ÀÇ
ü½º³ª Àå±â µî µÎ Ç÷¹À̾ ¹ø°¥¾Æ¼ ¼ö¸¦ ¾²´Â
°ÔÀÓµéÀº ÁÖ·Î °ÔÀÓÆ®¸®¶ó´Â °³³äÀ» »ç¿ëÇÑ´Ù. °ÔÀÓÆ®¸®´Â °¢°¢ÀÇ ³ëµå°¡
°ÔÀÓÀÇ ÇÑ »óÅÂ(¸»µéÀÇ À§Ä¡)¸¦ ÀǹÌÇϸç, °¢ ³ëµåÀÇ ÀÚ½Ä ³ëµåµéÀº
ÇÑ ¼ö ÀÌÈÄ¿¡ µµ´ÞÇÒ ¼ö ÀÖ´Â ´ÙÀ½ À§Ä¡µéÀ» ÀǹÌÇϴ Ưº°ÇÑ Æ®¸®ÀÌ´Ù.
±×·¯ÇÑ °ÔÀÓÀÇ ÄÄÇ»ÅÍ Ç÷¹À̾î´Â °ÔÀÓÆ®¸®¸¦ ÀÌ¿ëÇØ¼ ´ÙÀ½ ¼ö¼øÀ»
¹Ì¸® ¿¹ÃøÇÏ°í °¡Àå À¯¸®ÇÑ ¼ö¸¦ ã´Â´Ù.
º¹ÀâÇÑ °ÔÀÓÀÇ °æ¿ì¿¡´Â °¡´ÉÇÑ ¼ö¼øÀÇ °æ¿ìÀÇ ¼ö°¡
¸Å¿ì Å©±â ¶§¹®¿¡ °ÔÀÓÆ®¸®¸¦ ÀûÀýÇÑ(ÄÄÇ»ÅÍÀÇ ¼Óµµ¿Í ¿ë·®À» °í·ÁÇØ¼)
Å©±â·Î Á¦ÇÑÇϱâ À§Çؼ´Â ÀÏÁ¤ ¼öÁØ ÀÌÈÄÀÇ ¼öµéÀÇ °¡Ä¡¸¦ ÃßÃøÇÒ ¼ö
ÀÖ¾î¾ß Çϸç, ±×·¯ÀÚ¸é ÀûÀýÇϰí À¯È¿ÇÑ Æò°¡ ÇÔ¼ö°¡ ÇÊ¿äÇÏ´Ù
Á¦·Î¼¶ °ÔÀÓ(Zero-sum Game)¿¡¼ÀÇ °ÔÀÓÆ®¸®
»ç¿ë
°ÔÀÓÆ®¸® °Ë»ö¿¡ ±ò¸° °¡Á¤Àº, ÇÑ Ç÷¹À̾°Ô
À¯¸®ÇÑ ¼ö´Â »ó´ë Ç÷¹À̾°Ô ºÒ¸®ÇÑ ¼ö¶ó´Â °ÍÀÌ´Ù. Áï ³ª´Â º¸µåÀÇ
Æò°¡¸¦ ³» ÂÊÀ¸·Î ÃÖ´ëÈÇÏ´Â ¹æÇâÀ¸·Î, ±×¸®°í »ó´ëÂÊÀ¸·Î ÃÖ¼ÒÈÇÏ´Â
¹æÇâÀ¸·Î Ç÷¹À̸¦ ÇÏ´Â °ÍÀÌ´Ù. ÀÌ¿Í °°Àº '³ªÀÇ À̵æÀº »ó´ëÀÇ ¼Õ½Ç'
ÇüÅÂÀÇ °ÔÀÓÀ» Á¦·Î¼¶ °ÔÀÓÀ̶ó°í ºÎ¸¥´Ù.
¿¹¸¦ µé¸é 3¸ñ(Tic-Tac-Toe) °ÔÀÓÀÌ Á¦·Î¼¶ °ÔÀÓÀε¥
[±×¸²1]¿¡ Á¦·Î¼¶ °ÔÀÓÆ®¸®ÀÇ ÀϺκÐÀÌ ³ª¿Í ÀÖ´Ù.

¹Ì´Ï¸Æ½º ¾Ë°í¸®Áò(Minimax Algorithm)
À§ÀÇ °ÔÀÓÆ®¸®¿¡¼, ÇÑ ¼öÁØ ±íÀÌ °Ë»öÀ» ÇÑ´Ù¸é
ÇÑ Ç÷¹À̾î´Â ÃÖ»óÀÇ °á°ú(º¸µå Æò°¡ÇÔ¼ö¿¡ ÀÇÇØ Á¤ÀǵÈ)¸¦ ³¾ ¼ö ÀÖ´Â
º¸µå À§Ä¡·Î ¸»À» ¿òÁ÷ÀÌ¸é µÈ´Ù. µÎ ¼öÁØ ±íÀÌ °Ë»ö¿¡¼, Ç÷¹À̾î1Àº
Ç÷¹À̾î2°¡ À§¿¡¼ ¸»ÇÑ ¹æ½Ä´ë·Î ÇÑ ¼öÁØ ±íÀÌ °Ë»öÀ» ¼öÇàÇÒ °ÍÀ̶ó°í
°¡Á¤ÇÒ ¼ö ÀÖ´Ù. µû¶ó¼ Ç÷¹À̾î 1Àº ´ÙÀ½ ÅÏ¿¡¼ Ç÷¹À̾î2°¡ ÃÖ°íÀÇ
°á°ú¸¦ ¾òÁö ¸øÇÏ°Ô ÇÏ´Â ¼ö(ÀÌ´Â ¶ÇÇÑ Ç÷¹À̾î1¿¡°Ô ÃÖ°íÀÇ ¼ö°¡ µÈ´Ù)¸¦
µÎ°Ô µÈ´Ù. ÀÌ·± ¹æ½ÄÀ¸·Î ½Ã°£°ú ¿ë·®ÀÌ Çã¿ëÇÏ´Â Çѵµ ³»¿¡¼ °è¼Ó
±íÀÌ µé¾î°£´Ù. ÀÌ·¯ÇÑ ¹æ¹ýÀ¸·Î »ó´ë¿¡ ´ëÇÑ ÃÖ¼Ò°ªÀ» ãÀ½À¸·Î½á Ç÷¹À̾î
Àڽſ¡ ´ëÇÑ ÃÖ´ë°ªÀ» ¾ò´Â °ÔÀÓÆ®¸® °Ë»ö¹æ¹ýÀ» ¹Ì´Ï¸Æ½º ¾Ë°í¸®ÁòÀ̶ó
ÇÑ´Ù.
[±×¸²2]´Â ¹Ì´Ï¸Æ½º ¾Ë°í¸®ÁòÀ» »ç¿ëÇÑ ¿¹ÀÌ´Ù.
À§·Î ÇâÇÏ´Â »ï°¢Çü ³ëµå´Â ÀÚ½ÅÀÇ ¼öÀ̰í, ¾Æ·¡·Î ÇâÇÏ´Â »ï°¢Çü ³ëµå´Â
»ó´ëÀÇ ¼öÀÌ´Ù. ±×¸®°í °¢°¢ÀÇ ¼ýÀÚ´Â ÀÚ½ÅÀ» ±âÁØÀ¸·Î ÇßÀ» ¶§ÀÇ Æò°¡°ª
¼öÄ¡ÀÌ´Ù. ±×¸²Ã³·³ µÎ ´Ü°è ±íÀ̱îÁö¸¸ Ž»öÀ» ¼öÇàÇÑ´Ù¸é, ¸ÕÀú Á¦ÀÏ
¹ØÀÇ ³ëµåµé¿¡¼ °¢°¢ Æò°¡°ªµéÀ» °è»êÇÑ´Ù. ±× À§ ³ëµå¿¡¼ »ó´ë¹æÀº
¹ØÀÇ ³ëµåµéÁß¿¡¼ Æò°¡°ªÀÌ °¡Àå ÀÛÀº¼ö¸¦ ¼±ÅÃÇÏ°Ô µÈ´Ù(ÀÚ½ÅÀ» ±âÁØÀ¸·Î
°è»êÇÑ Æò°¡°ªÀ̱⠶§¹®¿¡ »ó´ë¹æ¿¡°Ô´Â °¡Àå ÀÛÀº Æò°¡°ªÀÌ °¡Àå ÁÁÀº
¼ö°¡ µÇ±â ¶§¹®ÀÌ´Ù). ±×¸®°í ´Ù½Ã Á¦ÀÏ À§ÀÇ ³ëµå¿¡¼´Â ¹ØÀÇ ¼¼ °³ÀÇ
³ëµåÁß¿¡¼ Æò°¡°ªÀÌ °¡Àå Å« ¼ö¸¦ ¼±ÅÃÇÏ°Ô µÇ´Âµ¥, ±×·¡¾ß¸¸ »ó´ë°¡
¼±ÅÃÇÏ´Â ¼ö°¡ °¡Àå ÁÁÁö ¾ÊÀº ¼ö°¡ µÇ°í ±×°ÍÀÌ ¶ÇÇÑ Àڽſ¡°Ô °¡Àå
ÁÁÀº ¼ö°¡ µÇ±â ¶§¹®ÀÌ´Ù.

Ž»öÀÇ ¼ö¸¦ ÁÙÀ̱â À§ÇÑ ¾ËÆÄº£Å¸ °¡ÁöÄ¡±â(Alpha-Beta
Pruning)
Newell, Simon, Shaw´Â 1958³â ¾ËÆÄº£Å¸ °¡ÁöÄ¡±â¶ó´Â
°³³äÀ» ¸¸µé¾î ³Â´Ù. ÀÌ °³³äÀº ¾î¶°ÇÑ °æ¿ì °ÔÀÓÆ®¸®ÀÇ Æ¯Á¤ÇÑ °¡Áö´Â
´õ ÀÌ»ó Ž»öÇØ ³ª°¥ Çʿ䰡 ¾ø´Ù´Â Á¡¿¡ ±â¹ÝÇÑ °ÍÀÌ´Ù.
[±×¸²3]¿¡¼ ¿ÞÂÊ ³ëµåµéÀ» Ž»öÇÏ°í ³ª¸é ÇöÀç±îÁö
MINÀÇ ÃÖ¼Ò°ªÀÌ 3À̶ó´Â °ÍÀ» ¾Ë ¼ö ÀÖ´Ù. ±×¸®°í °¡¿îµ¥ ³ëµåµéÀ» Ž»öÇßÀ»
¶§ ù ³ëµåÀÇ Æò°¡Ä¡°¡ 2¶ó¸é, ÀÌ´Â ÇöÀç±îÁöÀÇ ÃÖ¼Ò°ªÀÎ 3º¸´Ù ÀÛ±â
¶§¹®¿¡ »ó´ë¹æÀº Ç×»ó ÀÌ ³ëµå¸¦ ¼±ÅÃÇÏ°Ô µÉ °ÍÀÌ´Ù. ±×·¯¹Ç·Î ÀÚ½ÅÀº
Àý´ë ÀÌ ³ëµåÂÊÀ¸·Î ¼ö¸¦ µÎ¸é ¾ÈµÇ±â ¶§¹®¿¡ °¡¿îµ¥ ³ëµåÂÊÀ¸·Î´Â ¼±ÅÃÇÏÁö
¾Ê°Ô µÉ °ÍÀÌ´Ù. ±×·¯¹Ç·Î ´õ ÀÌ»ó °¡¿îµ¥ ³ëµåÀÇ ÀڽĵéÀ» Ž»öÀ» ¼öÇàÇÒ
Çʿ䰡 ¾ø´Ù.

À̸¦ Á»´õ ÀϹÝȽÃŲ´Ù¸é, '»ó´ë°¡ ÇöÀç À§Ä¡ ÀÌÈÄÀÇ
¾î¶² ÁöÁ¡¿¡¼ ´õ À¯¸®ÇÑ °á°ú¸¦ ¾òÀ» ¼ö ÀÖ´Ù¸é, ÇöÀç À§Ä¡¸¦ ¸¸µå´Â
¼ö´Â ³ª¿¡°Ô ¹«Á¶°Ç ºÒ¸®ÇϹǷΠ´õ ÀÌ»ó °í·ÁÇÒ Çʿ䰡 ¾ø´Ù'´Â ¶æÀÌ
µÈ´Ù. Áï ³ª¿¡°Ô ºÒ¸®ÇÑ ¼ö°¡ ¸¸µé¾îÁö´Â ÁöÁ¡ºÎÅÍ´Â Æ®¸®ÀÇ '°¡Áö¸¦
Ãĵµ(pruning)' µÇ´Â °ÍÀÌ´Ù.
¾î¶² ³ëµå¿¡¼ °¡Áö¸¦ Ãĵµ µÉ °ÍÀΰ¡¸¦ ±¸Ã¼ÀûÀ¸·Î
ÆÇ´ÜÇÏ·Á¸é, °ÔÀÓÆ®¸® °Ë»öÀÇ ¸Å ¼ø°£¸¶´Ù ÇöÀç±îÁöÀÇ Å½»ö¿¡¼ ³ª¿¡°Ô
°¡Àå À¯¸®ÇÑ ¼öÀÇ ÃÖ´ë°ª°ú »ó´ë¿¡°Ô °¡Àå À¯¸®ÇÑ ÃÖ´ë°ªÀ» ±â¾ïÇϰí
ÀÖ¾î¾ß ÇÑ´Ù. ÇöÀçÀÇ °Ë»ö¿¡¼ »ó´ëÀÇ ÇöÀç ÃÖ´ë°ªÀÌ ³ªÀÇ ÇöÀç ÃÖ´ë°ªº¸´Ù
Å©´Ù¸é ±× ºÎºÐ ÀÌÇÏ´Â ´õ ÀÌ»ó °í·ÁÇÒ Çʿ䰡 ¾ø´Ù. ÀÌ ¶§ ³ªÀÇ ÇöÀç
ÃÖ´ë°ªÀ» ¾ËÆÄ, »ó´ëÀÇ ÇöÀç ÃÖ´ë°ªÀ» º£Å¸¶ó°í ºÎ¸¥´Ù.
[Âü°íÀÚ·á]
- Game Programming Gems
1±Ç, p.333 ~ p.339 - Artificial Intelligence
A Modern Approach, Stuart Russell, p.122 ~ p.141
|