Chun-Ju Lai

基因演算法打倒空氣人

In program on 2011/11/09 at 4:01 PM

小史 po 的
用基因演算法打倒空氣人 xDDDD

原理:
洛克人是用基因演算法寫出來的程式操控的
經過了十個世代的繁衍, 終於打倒了空氣人!
作法大概如下

1.
第一個 generation 先製造, 比方說, 4 隻小洛克人
每隻的操縱指令隨機生成

用 fitness 表示戰鬥結束時 洛克人HP – 空氣人HP
fitness 愈大 排名愈前面

拿每一輪的前, 比方說, 前 2 名洛克人的操控指令
來”生出” 下一代的 4 隻洛克人

舉例來說, 如果這兩隻洛克人的 code 是
洛克人1之1: A1 A2 A3
洛克人1之2: B1 B2 B3

那麼下一個 generation 的 4 隻 洛克人 code 便是
洛克人2之1: A1 A2 B3
洛克人2之2: A1 B2 A3
洛克人2之3: B1 A2 A3
洛克人2之4: B1 A2 B3

…之類的

再去模擬戰鬥, 再拿第二代的前2名來生第三代洛克人

2.
執行面當然要設計一下每代有多少洛克人, 取前幾名, 怎麼生出下一代洛克人
不過一直生下去, 保留良好”基因”, 總是可以生出能夠打倒空氣人的優秀戰士!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: