主要是指整數線性規劃,即在線性規劃中加上變數取整數值的約束,其一般形式可表示成為以下形式:

式中 Z + 為非負整數集。這種最優化問題多出現於資訊科學技術的離散問題,如人員安排、機器調度、電路佈佈線等,其解案的參數(如人員數、設備數、選擇次數等)隻有取整數值才有意義。1958年 R.E.戈莫裡提出瞭解一般整數規劃的割平面法,引起廣泛的註意。20世紀60年代又出現瞭分支定界算法。這兩類算法在實踐中得到不斷的改進,但畢竟不是理論上的有效算法—— 多項式算法。其實,一般整數規劃是著名的NP困難問題,普遍認為不存在多項式算法。然而,1981年 H.W.蘭斯特拉以數的幾何理論為工具,設計瞭在變量數 n固定的情形下的多項式算法。這是一個重要的突破。與此同時,整數規劃已奠定瞭系統的理論基礎,成為數學規劃論和最優化理論中不可缺少的部分。

  在整數規劃中有一類涉及網絡流的問題,如最短路、最大流、人員分配、運輸問題及最小費用流等,可直接用線性規劃求解。這是由於其系數矩陣A=(aij)具有全單模性(即其任意子行列式等於0或±1),所以任意基可行解都是整數解。眾所周知,線性規劃的最優解可在基可行解中達到。因此,此類問題的整值約束實際上可以解除。那麼,此法是否隻限於網絡問題,引出瞭整多面體的研究。從幾何上說,線性規劃的可行解集是n維空間的凸多面體P,基可行解對應於它的頂點,而整數規劃的可行解集由多面體P內的整點組成。所謂整多面體就是頂點都是整點的多面體。如前所述,隻要一個整數規劃對應的多面體是整多面體,便有多項式算法。除上述全單模性之外,關於整多面體的研究,還有對偶與整性、擬陣交與整性的關系的理論。

  戈莫裡的割平面法充分註意到多面體與整點的關系。他的算法是:首先不考慮整值約束,求相應線性規劃的最優解x0,它是多面體P的一個頂點;如果它恰好是整點,即為所求;否則通過取整運算構造一個附加約束,相當於一個切割平面,把Px0的一個鄰域切掉,但保留P的所有整點;接著在P的剩餘部分再求最優解x1,如此類推進行迭代。這種算法具有限步收斂性,但步數可能很大。進一步的工作自然是考慮如何構造切割平面使切割次數盡可能小,這就推動瞭多面體理論的發展。

  另一類算法是隱枚舉,例如一種分支定界算法是這樣的:也是先求線性規劃(松弛問題)的最優解x0,如它不是整數解,則必有某個分量,比如x1不取整值;設x1的整數部分為r1,則原問題可分解為兩個子問題,其一對x1的限制為x1r1,另一對x1的限制為x1r1+1,如此分兩支進行搜索。為避免分解出的子問題愈來愈多,可采取“截支”策略,例如在解一個子問題的松弛問題時可得到這一支的最優值的下界;若它不小於某個已知可行解的目標函數值(最優值上界),則這一支便不必考慮。反復使用分支和截支(定界)進行枚舉搜索,直至遍歷所有情形為止。這種樸素的方法,隻要設計得好,實用上是有效的。

  除一般算法研究之外,還有特殊情形的特殊算法研究,例如0−1規劃(諸變量xi∈{0,1})、背包問題(隻有一個線性約束情形)、混合整數規劃(一部分變量取整值)、覆蓋問題、填裝問題等。

  

推薦書目

 NEMHAUSER G L, WOLSEY L A. Integer and Combinatorial Optimization. New York: John Wiley & Sons, 1998.