Finding a feasible course schedule using Tabu search(2)論文翻譯

博客地址MXD’s blog

翻譯進度

  • [#] 介紹
  • [#] 問題描述
  • [#] 禁忌搜索技術
  • [ ] 修改禁忌搜索
  • [ ] 數字化結果
  • [ ] 擴展
  • [ ] 結束語

上一篇鏈接

Tabu search techniques

Tabu search is a metaheuristic designed for getting a global optimum to a combinatorial optimization problem. It has been first suggested by Glover [lo] and independently by Hansen et al. [l 11 for a specific application, and later developed in a more general framework. A description of the method can be found in [6, 10]. Tabu search has already been efficiently adapted to a large collection of applications [6,11-14,16] We shall sketch here the basic ideas of the technique.
An objective function f has to be minimized on a set X of feasible solutions. A neighborhood N(s) is defined for each solution s in X. The set X and the definition of the neighborhood induce a state-space graph G (which may by the way be infinite). Tabu search is basically an iterative procedure which starts from an initial feasible solution and tries to reach an optimal solution by moving step by step in the state-space graph G. Each step consists in first generating a collection V* of solutions in the neighborhood N(s) of the current solution s, and then moving to the best solution s’ in V*, even if f (s?> f (s). Let us write s’=s⊕m with the meaning that s’ is obtained by applying a modification m to s. The solutions consecutively visited in the iterative process induce an oriented path in G. Finding the best solution in V* may sometimes be a nontrivial matter. It may be necessary to solve the optimization problem min(_f(si) 1 Si E V*} by a heuristic procedure.
A risk of cycling exists as soon as a solution s’ worse than s is accepted. In order to prevent cycling to some extent, modifications which would bring us back to a previously visited solution should be forbidden. But it may sometimes be useful to come back to an already visited solution and continue the search in another direction from there. This is realized in Tabu search by keeping a list T containing the last k modifications (k may be fixed or variable). Whenever a modification m is made for moving from s to s’, m is introduced in T and its reverse is considered as tabu.
Deciding that some moves are tabu moves may be too absolute: it is shown in [6] that moves to solutions which have not been visited may be tabu. For this reason, it should be possible to cancel the tabu status of a move if it seems desirable to do so. This is realized as follows. Let s be the current solution and m a modification which we want to apply to s. A penalization a(s, m) and a threshold value A(s, m) are computed: if a(s, m)

禁忌搜索技術

禁忌搜索是一個亞啓發式設計的專爲解決組合優化問題得到一個全局最優解。它最先由Glover提出並因一個特定應用被Hansen獨立出來,後來在一個更通用的框架中開發。該方法的描述可以在[6,10]中找到。禁忌搜索已經被有效地適應於很多應用[6,11-14,16]。我們將在這裏描述該技術的基本思路。
目標函數f必須要在可行解集合X最小化。鄰域N(S)是在集合X中的每一個解。集合X和鄰域的定義能夠得到解空間圖G(可以是無限的)。禁忌搜索基本上是從一個初始可行解開始並試圖通過在狀態空間圖G中一步步移動來達到最優解。每一步的關鍵在於首先在當前解s的鄰域N(s)中產生一個解集V*,然後即使f (s‘)> f (s)也在V*中移動到最優解。記s’=s⊕m表示s’用過應用一個從m到s的變換。結果連續地在迭代程序中產生一個有向圖。找到在V*中的最優解可能有時候是一個很不容易的事情。通過啓發式過程來解決min(f(si) | Si ∈V*}的最優問題是很有必要的。
只要比s 差的結果s’被接受,那麼就會存在循環風險。爲了在一定程度上防止循環,可能會把我們帶回之前訪問過的解的變化是被禁止的。但是有時候回溯到一個已經訪問過的解可能會有用,並從那裏繼續從另一個方向上搜索。這在禁忌搜索是通過保持一個包含了最後k(k是固定或可變的)個操作的列表T實現。每當操作m被用於從s移動到s’而取得,m 在T中引入,它的反向被認爲是禁忌搜索。
確定一些動作是禁忌搜索動作可能是太絕對了:文獻[6]所示,移動到還沒有被訪問過的解可能是禁忌的解決方案。出於這個原因,如果值得這樣做做應該有可能取消一個移動的禁忌狀態。實現方式如下。令s爲當前解決方案,m是我們希望應用到s的變形。
一個懲罰a(s, m)和閾值A(s,m)計算:如果a(s, m)

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