摘要:
差分約束系統實際上是一種轉化,把某些問題轉化成最短路問題來進行求解差分約束系統實際上是一種轉化,把某些問題轉化成最短路問題來進行求解
差分約束系統解決的問題是不等式的求解:
例如:
x2-x0<=3;
x4-x2<=2;
x3-x0<=5;
x1-x0<=4;
x3-x1<=1;
x4-x3<=1;
x3-x2<=3;
如果要求x4-x0的不等式解,顯然可用不等式倆倆相加的方法求,求出是:
x4-x0<=5,x4-x0<=6;x4-x0<=7這三個式子顯然最後求交集(ˇˍˇ) x4-x0<=5
我們可以這麼看,x0~x4為圖上五個點,xj-xi為i到j的距離這樣就建立了一個有向圖
顯然x0到x4的路徑有5,6,6,7四條最短的路為5
如若一個系統由n個變數和m個不等式組成,並且這m個不等式對應的係數矩陣中每一行有且僅有一個1和-1,其它的都為0,這樣的系統稱為差分約束( difference constraints )系統。
例如
如果還不清楚的話看看三角不等式:
給出三個不等式:
B - A <= c (1)
C - B <= a (2)
C - A <= b (3)
可以得到圖
我們發現min{b, a+c}正好對應了A到C的最短路,而這三個不等式就是著名的三角不等式。將三個不等式推廣到m個,變數推廣到n個,就變成了n個點m條邊的最短路問題了。
解的存在性
如果轉化的的圖中存在負權的迴路先讓就不會有解,因為負的迴路會一直迴圈下去直到無窮小,這樣就不可能有解
還有一種是兩點之間不可達,這樣最短路徑為無窮大,此時有無限個解
版權宣告:本文內容由網際網路使用者自發貢獻,版權歸作者所有,本社群不擁有所有權,也不承擔相關法律責任。如果您發現本社群中有涉嫌抄襲的內容,歡迎傳送郵件至:yqgroup@service.aliyun.com 進行舉報,並提供相關證據,一經查實,本社群將立刻刪除涉嫌侵權內容。
用雲棲社群APP,舒服~