230 likes | 442 Views
Solving TSP & NPQ with Hopfield-Tank Network. 2014/8/19. Hopfield-Tank Network(HTN). 步驟流程: 為問題設計狀態變數 (State variables) 與 狀態函數 ( State function) 設計限制函數 (Constraints) 與目標函數 (Cost function) 建構組合最佳化的能量函數 (Optimal energy function) 根據能量函數 (Energy function) 推導出連結權重值 (Weights) 與偏權值 (Bias)
E N D
Hopfield-TankNetwork(HTN) • 步驟流程: • 為問題設計狀態變數(State variables)與狀態函數(State function) • 設計限制函數(Constraints)與目標函數(Cost function) • 建構組合最佳化的能量函數(Optimalenergy function) • 根據能量函數(Energy function)推導出連結權重值(Weights)與偏權值(Bias) • 建立狀態初始值(Initial State),初始值會成為下一次狀態的輸入 • 不斷迭代更新狀態變數,直到網路收斂時就是此次最佳化結果
HTN網路動態更新 • 更新網路的動態方程式如下: • 更新方式分為 • 非平行式(Asynchronous):狀態值逐一更新,更新後的狀態值會影響到下一次其他狀態值的更新。 • 平行式(Synchronous):狀態值一起更新,不立即更新,不會影響到其他狀態值更新還是由前一次狀態來決定。 • 目前使用HTN是以非平行式(Asynchronous)的方式。
HTN設計 • HTN對於初始狀態與參數設計相當敏感… • 初始值的決定 • 是以最陡坡降法(steepestdescent)的概念去搜尋最佳狀態值,很容易卡在區域最佳解(local minimum) • 計算權重值參數的調整 • 可能會出現滿足限制條件,但設計結果不佳 • 或是滿足設計結果卻限制條件不合
Travelling Salesman Problem(TSP) • 問題敘述: • 一旅行推銷員要到N個城市做生意,找出一條從某城市出發,連貫這些城市,又回到原出發城市的最短路徑。 • 狀態要求: • 限制條件: • 每一個城市只去一次。 • 每一次只去一個城市。 • N 個城市都要到。 • 目標條件: • 最短路徑。
HTN example:TSP-1 • State function
HTN example:TSP-2 • Energy function • E
HTN example:TSP-3 • Dynamic Network =1 , if =, if =0 , if
TSP實作 • 實驗流程 • 初始化Weights、Bias • 初始化State function • 計算Energy function • Loop: • 更新State function • 計算Energy function • 檢查是否達到能量收斂(converge) • 獲得最佳解(Optimal solution)
TSP實作-參數調整-1 • A=B=C=D=100
TSP實作-參數調整-2 • A=B=C=100, D=0
TSP實作改進 • 如同之前所說: • 參數調整可能會出現滿足限制條件,但設計結果不佳(掉入local minimum) • 在確定滿足限制條件之下,在穩態之後,加入雜訊(Noise,隨機更改部分狀態值),重新找尋最小值。 • 結果:穩態後還是有機會再往下掉,平均數值有些許的改善。
N-Queens Problem(NPQ) • 問題敘述: • 以西洋棋為基礎,在N×N的西洋棋盤上,放置N個皇后,使得任何一個皇后都無法直接吃掉其他的皇后。 • 狀態要求: • 限制條件: • 直排或橫列不可以有其他皇后。 • 皇后所在對角線不可有其他皇后 • 棋盤上須放置N個皇后
HTN example:NQP-1 • State function • = 1, 有皇后 • = 0, 沒有皇后
NQP實作 • 實驗流程 • 初始化State function(all 0, all 1, all random) • 計算Energy function • Loop: • 隨機更新neuron( i, j ),重複5*N2 • 計算Energy function • 檢查是否達到能量收斂(converge) • 獲得最佳解(Optimal solution) • (參數:A=B=C=100)
NQP實作結果 • Initial State: • All {0}
NQP實作結果 • Initial State: • All {1}
NQP實作結果 • Initial State: • All random
Reference • “Solving the N-Queens Problem with a binary Hopfield-type network.Synchronousand asynchronous model”Published in Biological Cybernetics 72(5), 439-446, (1995)