創建虛擬生物第五部分

5行爲選擇
在這個工作中,通過爲一個特定的任務或者是行爲進行優化,進化了虛擬生物
一個生物能按照之前解釋的基因描述進行生長,然後它被放在一個動態的模擬的
虛擬世界中。大腦提供了執行器的生物運動部分的力,傳感器報告的世界與
生物體的情況,被反饋回大腦,生物的物理行爲的結果被評估。一個特定的虛擬
時間間隔之後(可能是10秒),給那個相對應的行爲的成功級別賦一個適合度
的值。如果一個生物相對於生物羣中的其它生物有高的適應度,它能被選擇生存
下來,並且按下一部分的描述進行繁殖。

對於適應度評估,生物被模擬之前,要執行一些簡單的檢測,不適合的生物
通過給它們0適應度的方式,把它們從羣體中移除。那些身體部分超過一定
數量的生物也被移除了。一個基因型的子集將生成生物,這生物它的部分初
始化時是重疊在一起的。一個簡短的碰撞檢測和碰撞響應的模擬將試圖排除
任何重疊的部分,但是那些始終保持重疊的生物也被丟棄了。

對於大部分的適應方法而言,通過離散的個體的模擬被預測爲不利於下一代的
生存,計算能被保存下來。對於每一個模擬的進行,適應度被週期性的評估。
如果它們根本沒有移動或者是做了一些比之前的個體的最小適應度更差的行爲,
計算適應度被停下來了。

爲了執行虛擬生物的進化,能夠使用許多不同類型的適應度的量度。適應度
的方法的四個例子,在這裏描述一下。

5.1 游泳
通過取消重力和添加有粘性的水阻力效應,實現了一個水環境的物理模擬
游泳速度被作爲適應度的值,並且它被度量以每單位時間生物的重心移動的
距離。通過使用從重心的初始位置的最大距離,直線的游泳比轉圈更受鼓勵。
通過給出測試的最後階段的速度,持續的運動比僅靠單一初始推力的運動
更受鼓勵。


5.2 行走
這裏術語行走被寬泛地使用,以展示陸路上的運動的任何形式。通過
包括重力,取消粘性的水效應,加一個靜態的地面摩擦力,來模擬陸路。
爲了更加複雜的環境,附加的不動的物體被放置到這個虛擬世界中。此外
速度是作爲選擇標準的,但是豎直方向上的速度被忽略。

對於陸地環境,通過簡單的自由落體生成一個很快的速度,阻止生物的
這種高速度是很必要的。通過首先運行沒有摩擦力和沒有執行器的力的模擬
直到重心的高度達到一個穩定的很小的值,來實現。

5.3 跳躍
通過度量生物的最低的部分離開地面的最大高度,來選擇跳躍行爲。
一個可用的方法是在模擬期間,使用生物的最低部分的平均高度。

5.4 跟隨
爲了生物能夠適應性地跟隨一個光源,選擇使用另一個評估方法。照相
傳感器被啓用,所以執行器輸出的力和結果性的行爲依賴於一個光源到
生物的相對方向。運行一些實驗,以不同的位置的光源,一個生物移向
光源的速度的平均值作爲適應度的值。在水環境與陸地環境下,跟隨行爲
都能進化。

以相似的方式也可能生成排斥性的生物,通過簡單地爲一個生物的照相
傳感器的信號取負值,把跟隨行爲轉換成排斥行爲。

一旦生物被發現,它們能展示出成功的跟隨行爲,它們就能夠以光源的
運動,在一條隨意的路徑上跟隨了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章