heuristics

    0熱度

    1回答

    我有一個程序實現模擬退火。我對接受概率存在問題,可能是由於我不瞭解爲什麼將歐拉數提高到(能量 - 能量)的能力是有用的。 即使溫度很低,概率總是超過1.0(100%),因此實際上這是隨機搜索。我如何將我的接受概率固定爲sA的正常速率(開始時接受更糟的解決方案的機會高,接近結束的機會低)? 下面是方法的代碼: if (mutatedSolutionFitness > originalSolution

    1熱度

    1回答

    我是新來的。我試圖用C自己實現C中的A-Star算法。我不知道如何使用Hashmaps或者列表(但是我只要對我來說足夠簡單就可以開始學習),所以我使用數組。 問題很簡單:有一個NxN數組。你可以上/下或左/右,沒有對角線。水平比垂直運動更好(成本更低= 5)(高成本= 10)。 有一些障礙細胞。空白單元在NxN陣列中用數字0表示,而障礙單元的數量爲9.障礙單元出現在表格的一部分區域中(例如,如果表

    1熱度

    1回答

    有誰知道是否有可能限制啓發式階段中的移動?或者可以做些什麼來使其成爲可能? 我有一個很大的數據集可以使用,但啓發式階段需要很長時間才能完成,因爲需要完成大量的比較操作,中間步驟每步需要800步移動我希望將此限制在50以下,我知道這樣做可以消除很多可能的答案,但會將啓發式階段從30分鐘縮短到一小部分。

    0熱度

    3回答

    單調性百分比是數組按升序或降序排序的方式。 我需要一個Python實現這一考慮下面的例子 array([[2,3,4,6,5] # 60% sorted [1,2,3,4,5] # 100% sorted [0,2,4,8,10]# 100% sorted [0,2,4,8,10]]# 100% sorted /| | \ \ / | |

    0熱度

    1回答

    我正在爲Blocksworld問題開發一種啓發式解決方案。 我嘗試使用不同的塊數作爲我的h(n)。這似乎沒有什麼效果。 有人可以指出一個合適的啓發式問題,並解釋幾個例子如何工作。 Blocksworld Problem Example: Initial(starting State): Stack 0: D,B Stack 1: A,E Stack 2: C Stack 3: F

    2熱度

    1回答

    我正在研究一種樹搜索算法,其中我使用通過比特集表示的元素的二分區,即比特集1000101代表雙分區{0,2,6} {1,3,4,5}。 此刻,我經歷了所有bipartitions迭代只是通過增加一個bitset,即通過一套{0,1,2,3}的所有bipartitions迭代,我從0001(含)到1000(獨家) 因爲有時我的算法允許我在找到合適的雙分區時'快速失敗',我想重新排列它們,以便首先查看

    0熱度

    1回答

    在我教授的機構中,我們在使用Pelican HPC Linux發行版的計算機實驗室中有一個羣集。目前,我們希望在集羣主控計算機上安裝Cplex或其他一些優化系統,如Gurobi,並針對線性或非線性編程問題,啓發式算法和metaheuristics運行一些數學模型。 我的問題是: 使用集羣,將在處理能力所提出的問題,試圖解決增加或保持不變? 我需要對問題與傳統問題區別開來嗎? 在此先感謝

    2熱度

    1回答

    當兩個瓷磚tj和tk處於線性衝突時,如果tj和tk在同一條線上,則tj和tk的目標位置都在該線中,tj向右tk的目標位置和tj的目標位置在tk的目標位置的左側。 通過強制它們彼此包圍,線性衝突至少會將兩個移動添加到兩個衝突瓦片的曼哈頓距離。因此,啓發式函數將爲每對衝突的圖塊添加2次移動的開銷。 林納衝突啓發式是可以接受的,但我使用的算法有時違反可接受性,這意味着它是悲觀的,並不一定會找到最佳位置。

    1熱度

    1回答

    我想實現編寫程序的遺傳算法,試圖解決特定的問題。 '程序'不過是一個函數列表,將由一個健身函數進行評估,所以我可以知道什麼是最好的'程序'。這個序列對我來說並不會改變,不會影響健身評估。 的大收穫,我試圖弄清楚的是,被調用函數列表應該是可變的,像可變cromossomes號。 我有需要調用的函數,帶有可變參數,還有可調用函數COULD(可選),以及可變參數。 我已經找到那些偉大的GA框架,但是我真

    2熱度

    1回答

    我有一個龐大的位矢量(BV)列表,我想要在集羣中組合。 這個集羣背後的想法是能夠從每個集羣中選擇較晚的BVs,並將它們組合以生成BV(幾乎)全部(必須最大化)的BV。 例如,想象1表示應用程序已啓動,0在特定時刻在節點X中關閉。我們想找到節點的分列表具有應用最多: App BV for node X in cluster 1: 1 0 0 1 0 0 App BV for node Y