|
[À¯ÀüÀÚ ¾Ë°í¸®ÁòÀ»
»ç¿ëÇÑ Àΰø»ýÅÂ°è ±¸Çö]
- ¿ìÁ¾ÇÏ(deepseas(AT)sogang.ac.kr)
- ¸¶¿ì½º·Î °³Ã¼¸¦ Ŭ¸¯Çϸé
Ư¼ºÄ¡ Ç¥½Ã
- ¼Ò½ºÄÚµå
[Down]
-
ÀÚ¹Ù Runtime [Down]
: ¾ÖÇø´ÀÌ ½ÇÇàÀÌ ¾ÈµÉ °æ¿ì ¼³Ä¡, ¼³Ä¡ÈÄ ÀͽºÇ÷ξî Àç½ÇÇà
À¯ÀüÀÚ ¾Ë°í¸®Áò(Genetic Algorithm)
À¯ÀüÀÚ ¾Ë°í¸®ÁòÀº ÀÚ¿¬ÀÇ ÁøÈ°úÁ¤À» ¸ðµ¨¸µÇÏ¿©
±¸ÇöÇÑ Å½»ö ¾Ë°í¸®ÁòÀ̶ó ÇÒ ¼ö ÀÖ´Ù. ±âº»ÀûÀÎ °³³äÀº ÁÖ¾îÁø ¹®Á¦¿¡
´ëÇØ °¡´ÉÇÑ ÇØµéÀ» Á¤ÇØÁø ÇüÅ·ΠǥÇöÇÑ ÈÄ À̵éÀ» º¯È½Ã۰í, ±×
°á°úµé Áß ÀûÇÕµµ°¡ ³ôÀº °ÍµéÀ» ¼±ÅÃÇÏ¿© º¯È¸¦ °è¼ÓÇÔÀ¸·Î½á º¸´Ù
ÁÁÀº ÇØ¿¡ µµ´ÞÇÑ´Ù´Â °ÍÀÌ´Ù. ÀÌ´Â ¸¶Ä¡ ºÎ¸ðÀÇ À¯ÀüÀÎÀÚ Áß ¿ì¼ºÀÇ
ÇüÁúÀ» Áö´Ñ °³Ã¼°¡ ¹ø¼ºÇذ£´Ù´Â ´ÙÀ©ÀÇ ÁøÈ·ÐÀû ÀûÀÚ»ýÁ¸ÀÇ ¹ýÄ¢°ú
À¯»çÇÏ´Ù.
ÁÖ¾îÁø ¹®Á¦¿¡ °¡´ÉÇÑ ÇØ, Áï °¢ °³Ã¼µéÀÇ À¯ÀüÀû
±¸Á¶´Â º¸Åë °íÁ¤µÈ ±æÀÌÀÇ ÀÌÁø°ªÀ¸·Î Ç¥ÇöµÇ´Ù. ÀÌ·¯ÇÑ À¯ÀüÀÚ´Â ´ÙÀ½°ú
°°ÀÌ µÎ °¡Áö ¹æ¹ýÀ¸·Î ºÎ¸ð°³Ã¼·ÎºÎÅÍ »õ·Î¿î °³Ã¼·Î »ý¼ºµÈ´Ù. ù°´Â
±³Â÷º¯ÀÌ(crossover)¶ó°í ÇÏ´Â °ÍÀ¸·Î ºÎ¸ð °³Ã¼µéÀÇ Æ¯Á¤ ±³Â÷Á¡¿¡¼
±× ÀÌÈÄÀÇ °ªµéÀ» ¼·Î ±³È¯ÇÏ´Â °ÍÀÌ´Ù. µÑ°´Â µ¹¿¬º¯ÀÌ(mutation)·Î
0À» 1·Î, ȤÀº 1À» 0À¸·Î ºñÆ®°ªÀ» ¹Ý´ë°ªÀ¸·Î º¯È¯ÇÏ´Â °ÍÀÌ´Ù.
ÀÌ·¸°Ô »õ·Î¿î ÀÚ½Ä °³Ã¼µéÀ» »ý¼ºÇÑ ÈÄ¿¡ ÀûÇÕµµ
ÇÔ¼ö(fitness function)À» ÅëÇØ¼ ÁÖ¾îÁø ¹®Á¦¿¡ ÀûÇÕÇÑ °³Ã¼µé¸¸À»
°ñ¶ó ¼±ÅÃÇϰí, ´Ù½Ã ¼±ÅÃµÈ °³Ã¼µéÀ» ±³Â÷º¯ÀÌ¿Í µ¹¿¬º¯À̸¦ ÅëÇØ »õ·Î¿î
°³Ã¼µéÀ» »ý¼ºÇÔÀ¸·Î½á º¸´Ù ÁÁÀº ÇØ¿¡ µµ´ÞÇÒ ¶§±îÁö ¹Ýº¹ÇÑ´Ù.

ÁøÈÇÏ´Â °£´ÜÇÑ Àΰø»ý°èÅÂÀÇ ±¸Çö
À§¿Í °°Àº À¯ÀüÀÚ ¾Ë°í¸®ÁòÀ» »ç¿ëÇÏ¿© ÀΰøÀûÀÎ
ȯ°æ¾È¿¡¼ ÁøÈÇÏ´Â °¡»ó»ý¸íüµéÀ» ±¸ÇöÇÏ¿© º¸¾Ò´Ù. ÀΰøÈ¯°æ¾È¿¡´Â Àú±Û¸µ,
ÆÄÀ̾î¹î, Áú·µÀ̶ó´Â ¼¼ Á¾·ùÀÇ Á¾Á·ÀÌ Á¸ÀçÇÏ°í °¢ Á¾Á·Àº Àú´Ù¸¶
´Ù¸¥ À°Ã¼Àû Ư¡À» °®°í ÀÖ´Ù. ±×¸®°í ÀÌ·¯ÇÑ Æ¯¼ºÀº À¯ÀüÀÚ Äڵ忡
ÀúÀåµÇ¾î ÀÖ°í, ¹ø½ÄÀ» ¼öÇàÇÒ ¶§ °³Ã¼ÀÇ À¯ÀüÀû Ư¼ºÀÌ Àü´ÞµÇ¾î ºÎ¸ð°³Ã¼ÀÇ
Ư¡µéÀÌ Àڽݳü¿¡°Ô·Î À̾îÁø´Ù.
À̶§ ƯÁ¤ÇÑ È®·ü·Î ÀÓÀÇÀÇ À¯ÀüÄڵ尡 µ¹¿¬º¯À̸¦
ÅëÇØ º¯À̸¦ ÇÔÀ¸·Î½á ºÎ¸ð°³Ã¼ÀÇ Æ¯¼ºÀ» À¯ÁöÇÏÁö¸¸ Á¶±Ý º¯ÇüµÈ Ư¼ºÀ»
¹°·Á¹Þ°Ô µÇ°í ¸¸¾à º¯ÇüµÈ Ư¼ºÀÌ È¯°æ¿¡¼ »ì¾Æ³²±â¿¡ ´õ ÀûÇÕÇÏ´Ù¸é
±×·¯ÇÑ Æ¯¼ºÀÌ °³Ã¼µéÀÌ ´õ¿í ¹ø¼ºÇÏ°Ô µÉ °ÍÀÌ´Ù.
À¯ÀüÀÚ Á¾·ù°¡ ¸¹Áö ¾ÊÀº Ư¼º»ó ±³Â÷º¯ÀÌ´Â »ç¿ëÇÏÁö
¾Ê°í µ¹¿¬º¯ÀÌ ¹æ¹ý¸¸ »ç¿ëÇÏ¿´´Ù. ±×¸®°í ƯÁ¤ÇÑ ÀûÇÕµµ ÇÔ¼ö´Â Á¸ÀçÇÏÁö
¾Ê°í ȯ°æ¾È¿¡¼ º¸´Ù ¸¹Àº ¸ÔÀ̸¦ ¸Ô°í ½Î¿ò¿¡ À̱â´Â °³Ã¼µéÀº Àڽݳü¸¦
»ý¼ºÇÏ°í ±×·¸Áö ¸øÇÑ °³Ã¼µéÀº Á×À½À¸·Î½á ÀÚ¿¬½º·´°Ô ȯ°æ¿¡ ÀûÇÕÇÑ
Ư¼ºÀ» °¡Áø °³Ã¼µé¸¸ÀÌ »ì¾Æ³²¾Æ ¹ø¼ºÇÏ°Ô µÉ °ÍÀÌ´Ù.
óÀ½¿¡´Â ·£´ýÇÏ°Ô ¼±ÅÃµÈ À¯ÀüÀÚ Æ¯¼ºµé·Î ½ÃÀÛÇÏÁö¸¸,
½Ã°£ÀÌ È带¼ö·Ï ȯ°æ¿¡ À¯¸®ÇÑ °³Ã¼µé¸¸ÀÌ »ì¾Æ³²¾Æ ¹ø½ÄÀ» ÇÏ°Ô µÉ
°ÍÀÌ´Ù. ÀÌ ÇÁ·Î±×·¥ÀÇ ¸ñÀûÀº ¼·Î ´Ù¸¥ À°Ã¼Àû Ư¡À» °®°í ÀÖ´Â ¼¼
Á¾Á·ÀÌ ¾î¶»°Ô ȯ°æ¿¡ ÀûÀÀÀ» ÇÏ°í ¾î¶°ÇÑ ¹æÇâÀ¸·Î À¯ÀüÀû Ư¡µéÀÌ
¹ßÀüÇÏ´ÂÁö¸¦ »ìÆìº¸´Âµ¥ ÀÖ´Ù.
°³Ã¼ÀÇ À¯ÀüÀÚ Á¾·ù
°³Ã¼ÀÇ À¯ÀüÀÚ Æ¯¼ºÀº ´ÙÀ½°ú °°ÀÌ 4°¡Áö°¡ ÀÖ´Ù.
- ½Ã¾ß(Sight) : °³Ã¼°¡
¹Ù¶óº¼ ¼ö ÀÖ´Â °Å¸®. ½Ã¾ß°¡ ³ÐÀ»¼ö·Ï ¸ÔÀ̸¦ ¸ÕÀú ¹ß°ßÇÏ¿© ¸ÔÀ̸¦
ÇâÇØ ´Ù°¡°£´Ù. : °¢ Á¾Á·¸¶´Ù °¡Áú ¼ö
ÀÖ´Â ½Ã¾ßÀÇ ¹üÀ§´Â Àú±Û¸µ(5~10), ÆÄÀ̾î¹î(3~7), Áú·µ(1~5)
- Èû(Strength) : °³Ã¼ÀÇ
ÀüÅõ ´É·Â. ÈûÀÌ ³ôÀ»¼ö·Ï ½Î¿ò¿¡¼ À̱æ È®·üÀÌ ³ô´Ù. :
°¢ Á¾Á·¸¶´Ù °¡Áú ¼ö ÀÖ´Â ÈûÀÇ ¹üÀ§´Â Àú±Û¸µ(1~5), ÆÄÀ̾î¹î(3~7),
Áú·µ(5~10)
- À̵¿¼ºÇâ(Move) :
³ôÀ»¼ö·Ï À̵¿ÇÒ È®·üÀÌ ³ô°í ³·À»¼ö·Ï ¿òÁ÷ÀÌÁö ¾ÊÀ» È®·üÀÌ ³ô´Ù. :
¼¼ Á¾Á· ¸ðµÎ (1~10)
- °ø°Ý¼ºÇâ(Attack) :
³ôÀ»¼ö·Ï ´Ù¸¥ Á¾Á·°ú ÀüÅõÇÒ È®·üÀÌ ³ô°í ³·À»¼ö·Ï ÀüÅõ¸¦ ȸÇÇÇÒ È®·üÀÌ
³ô´Ù. : ¼¼ Á¾Á· ¸ðµÎ (1~10)
±âŸ ±ÔÄ¢µé
- °¢ Á¾Á·ÀÇ ±âº»Ã¼·ÂÀº Àú±Û¸µ(50), ÆÄÀ̾î¹î(70),
Áú·µ(100) - ¹Ì³×¶öÀ» ¸ÔÀ¸¸é ü·ÂÀÌ 20 Áõ°¡ - ¹Ì³×¶öÀº Åϸ¶´Ù
¼³Á¤µÈ °³¼ö¸¸Å Áõ°¡(0~5) - ½Ã¾ß³»¿¡ ¹Ì³×¶öÀÌ ÀÖÀ¸¸é ±×ÂÊÀ¸·Î
À̵¿ - ÇÑ Ä À̵¿½Ã ü·ÂÀÌ ÀÏÁ¤¼öÄ¡ °¨¼Ò. Àú±Û¸µ(-1), ÆÄÀ̾î¹î(-2),
Áú·µ(-5) - ´ë±â½Ã¿¡µµ ü·ÂÀÌ ÀÏÁ¤¼öÄ¡ °¨¼Ò. Àú±Û¸µ(-1), ÆÄÀ̾î¹î(-1),
Áú·µ(-1) - ÁÖÀ§(ÇÑÄ)¿¡ ´Ù¸¥ Á¾Á· ¹ß°ß½Ã °ø½Ä¿¡ ÀÇÇØ ÀüÅõ¿©ºÎ
°áÁ¤ : °ø°Ý¼ºÇâ1+°ø°Ý¼ºÇâ2+·£´ýÄ¡ > ÀÏÁ¤¼öÄ¡ - ÀüÅõ¹ß»ý½Ã
°ø½Ä¿¡ ÀÇÇØ ½ÂÆÐ °áÁ¤ : Èûx(ü·Â/10+·£´ýÄ¡) - ÀüÅõ½Â¸®½Ã »ó´ë
¸¸Å ü·Â Áõ°¡ - ±âº»Ã¼·ÂÀÇ 2¹è°¡ µÇ¸é ¹ø½Ä - ¹ø½Ä½Ã ƯÁ¤ÇÑ
È®·ü·Î °¢ Ư¼º°ªÀÌ µ¹¿¬º¯ÀÌµÊ - ü·ÂÀÌ '0'ÀÌ µÇ¸é Á×À½ - ÀüÅõ½Ã »¡°£»ö Å×Åõ¸® Ç¥½Ã -
¹ø½Ä½Ã ÆÄ¶õ»ö Å×Åõ¸® Ç¥½Ã
°á°ú ºÐ¼®
¿¹¿Ü°¡ ÀÖ±ä ÇÏÁö¸¸ º¸Åë ÃæºÐÇÑ ½Ã°£ÀÌ È帥µÚ¿¡
°¢ Á¾Á·ÀÇ Æ¯¼ºÀ» »ìÆìº¸¸é ´ÙÀ½°ú °°´Ù.
- Àú±Û¸µ : ½Ã¾ß¿Í
ÈûÀÌ ³ô´Ù : À̵¿¼ºÇâÀÌ ³ô´Ù :
°ø°Ý¼ºÇâÀÌ ³·´Ù
- ÆÄÀ̾î¹î : ½Ã¾ß¿Í
ÈûÀÌ ³ô´Ù : À̵¿¼ºÇâÀÌ ³ô´Ù :
°ø°Ý¼ºÇâÀÌ ³ô´Ù
- Áú·µ : ½Ã¾ß¿Í ÈûÀÌ
³ô´Ù : À̵¿¼ºÇâÀÌ ³·´Ù :
°ø°Ý¼ºÇâÀÌ ³ô´Ù
¼¼ Á¾Á· ¸ðµÎ °øÅëÀûÀ¸·Î ½Ã¾ß¿Í ÈûÀÌ ³ôÀº °³Ã¼µéÀÌ
¹ø¼ºÇÏ¿´´Ù. ÀÌ´Â ¸ÔÀÌ ¹ß°ß°ú ½Î¿ò½Ã À¯¸®ÇÏ°Ô ÀÛ¿ëÇϱ⠶§¹®ÀÌ´Ù.Àú±Û¸µÀº À°Ã¼Àû Ư¼ºÀÌ ½Ã¾ß°¡ ³ÐÀº ´ë½Å ÈûÀÌ
¾àÇϱ⠶§¹®¿¡ »¡¸® À̵¿ÇÏ°í ½Î¿òÀ» ÇÇÇϴ Ư¼ºÀ» º¸¿´´Ù. ÆÄÀ̾î¹îÀº
À°Ã¼Àû Ư¼ºÀÌ Áß°£Ä¡À̱⠶§¹®À̶ó ±×·±Áö À̵¿¼ºÀÌ ³ô¾Æ ¸ÔÀ̵µ »¡¸®¸Ô°í
°ø°Ý¼ºÇâµµ ³ô¾Æ Àú±Û¸µ¿¡ °æ¿ì °ø°ÝÇÏ´Â °ÍÀÌ À¯¸®ÇÏ°Ô ÀÛ¿ëÇÑ´Ù. Áú·µÀº
½Ã¾ß°¡ Á¼°í À̵¿½Ã ü·ÂÀÌ ¸¹ÀÌ µå´Â ´ë½Å ÈûÀÌ ÁÁ±â ¶§¹®¿¡ À̵¿Àº
Àû°Ô Çϰí ÁÖ·Î °ø°ÝÀ» ÅëÇØ ü·ÂÀ» ³ôÀÌ´Â ¹æÇâÀ¸·Î ¹ßÀüÇÏ¿´´Ù.
[Âü°íÀÚ·á]
- AI Game Programming
Wisdom, Francois Laramee, p.841 ~ p.853 -
Àΰø»ý¸í, ½ºÆ¼ºì ÇÁ·¹ÀÌŸ, p.201 ~ p.226
|