我有一個非常大的搜索空間的功能,所以我想用遺傳算法來獲得一些接近最佳值,然後使用其他方法如BFGS來找到最佳點。我用R來做到這一點。Q:初始化遺傳算法
問題是我的函數有12個參數,並且在多數點上都是無效的。當我給GA給出最大和最小參數值並且它試圖產生一個總體時,有時整個總體由NaN組成(因此算法不能繼續)。
因爲我對GAs瞭解不多,所以我正在努力尋找解決這個問題的辦法。我唯一想過的是選擇一個非常大的人口規模(類似於10e5),所以它可以找到一些有效的值開始。這不是一個很好的解決方案,因爲能夠用正常人羣初始化算法會更好。
你有什麼建議嗎?任何關於我缺少的遺傳算法?
謝謝
你能證明你到目前爲止做了什麼嗎? – Jaques
標準方法會在目標函數中包含懲罰因此您的解決方案中沒有任何「NaN」值;理想情況下,隨着您接近可行性,這個懲罰會變小,因此GA可以學習空間的可行區域。如果沒有關於解決問題的更具體的描述,就很難推測出應該如何處理問題。 – josliber