近似演算法作業
題目:證明g中的最大團size為α 等價於 g
m中最大團size為mα。
證明:充分性:若g中最大團size為α,根據g
m的構造過程,g
m中至少有存在乙個size為mα的團。首先g
m中的最大團不可能小於mα,如果小於小於mα則說明,構成g
m最大團,每個g貢獻了少於α的結點,這種情況是不可能的,因為存在
每個g貢獻α個結點的解法。其次,假設g
m中的最大團size大於mα,那麼構成g
m的最大團,每個g貢獻的結點數大於α,不妨設為β,則在圖g中,存在可以相互連線的β個頂點構成乙個團,則圖g的最大團的size為β,這與圖g的最大團size為α的題設矛盾。所以g
m中最大團的size是mα。
必要性:g
m中的最大團size為mα,那麼構成g
m的每個g貢獻了α個結點,假如每個圖g可以貢獻β個結點,,其中β>α,則g
m中的最大團結點個數為mβ,這與g
m中的最大團size為mα矛盾,所以圖g的最大團size為α。證畢。
題目:證明當最優排程在任何機器上之多包含2個作業時,lpt也是最優的。
證明:不妨設n=2m,若n<2m,則令j
n+1,
…,j2m的時間為0,將其加入i,不妨設p1≥
p2≥…≥p
2m。設最優排程使得每台機器恰有2個作業:j
i和jj,則必有im。否則若某最優排程o有i,j≤m,則定有某台機器上有js,
jt,使得s,t>m。∵pi
,pj≥
ps,p
t,交換p
j和pt,則pi
+pt≤
pi+p
jps+
pj≤p
i+pj,交換後的排程o『的最遲完成時間只能減少,故o』也是最優排程,矛盾。
若某最優排程o有i,j>m,則有某台機器上有js和
jt,使得s,t≤m。∵pi
,pj≤
ps,p
t,交換pj,
pt,則pi
+pt≤
ps+p
tpj+
ps≤p
s+pt,交換後的排程o』的最遲完成時間也是只能減少,故o』也是最優排程,矛盾。
∴必有最優排程使j
1,…,
jm分別分配到m
1,…,
mm上,當將j
m+1,…,
j2m分配到m臺機器上時,lpt時將長時間的作業分配到輕負載上,比與該最優排程結果相同。即:
a(i)
opt(i)
=1≤43-
13m(m≥2)
近似演算法 貪心演算法與近似演算法
1.1 教室排程問題 假設有如下課程表,你希望將盡可能多的課程安排在某間教室上。你沒法讓這些課都在這間教室上,因為有些課的上課時間有衝突。你希望在這間教室上盡可能多的課。如何選出盡可能多且時間不衝突的課程呢?這個問題好像很難,不是嗎?實際上,演算法可能簡單得讓你大吃一驚。具體做法如下。1 選出結束最...
連分數近似演算法
2019年2月19日註 這篇文章原先發在自己github那邊的部落格,時間是2017年2月5日 這道題源自數學實驗上面的一組實驗,當時困擾了我特別久,題目的內容是用matlab求出 的連分數展開及每層迭代的值。因為matlab的數值精度的問題,當你執行3 16450 16421時,就算你設定了for...
概率演算法和近似演算法
前面已經提到了顯示中大多數難解問題問題最後都被證明是np 完全問題。這意味著,除非np p,它們是不可能有多項式時間演算法的 而且,在這篇文章提到即使np p,人們也可能找不到乙個np完全問題的 有效 演算法 所以人們發展了各種工具來避開它們,最常用的兩種方法是使用概率演算法和近似演算法,這兩種方法...