日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Approximation method(近似算法)

發布時間:2024/3/26 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Approximation method(近似算法) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

定義

近似算法是一種用來處理NP-完全優化問題的一種方法。

特點

  • NP-難問題
  • 在大多數情況下是多項式算法
  • 近似比

近似比

ρ(n)≥max(CC?,C?C)\rho(n) \ge {max({C \over{C^*}},{C^* \over{C}})}ρ(n)max(C?C?,CC??)
第一項為求極小值時,第二項為求極大值時。
近似比越大,算法性能越差。

近似策略/近似結構

優化問題的近似策略是一種近似算法,它的輸入不僅是問題的一個實例,而且是一個值?\epsilon?,因此對于任何確定的?\epsilon?,該策略是一個(1+?)(1+\epsilon)(1+?)-近似算法。

PTAS

多項式時間近似策略
對任意確定的?>0\epsilon>0?>0,運行時間與輸入算例的大小nnn呈多項式關系。

FPTAS

完全多項式時間近似策略
對任意確定的?>0\epsilon>0?>0,運行時間與輸入算例的大小nnn1/?1/\epsilon1/?都呈多項式關系。

例1.頂點覆蓋問題

目標

對給定無向圖,尋找一個最小的頂點集合使之滿足“頂點覆蓋”。

算法

證明

  • (1)多項式性
    已證明其在多項式時間內運行。
  • (2)正確性
    算法返回的集合C中的頂點是“頂點覆蓋”,因為該算法的循環直到所有的邊的某一頂點都存在集合C中才結束。
  • (3)近似度
    C?C^*C?:精確解集合
    AAA: 算法第四行被挑選的邊的集合
    CCC:近似算法解
    由于AAA中的邊都是不連通的,即AAA中不存在兩條邊被C?C^*C?中的同一個頂點覆蓋
    ∣C?∣≥∣A∣|C^*|\ge{|A|}C?A
    ∣C∣=2∣A∣|C|=2|A|C=2∣A
    由以上兩式推出
    ∣C∣=2∣A∣≤2∣C?∣|C|=2|A|\le{2|C^*|}C=2∣A2∣C?

例2.滿足三角不等式的旅行商問題

TSP是NP-完全問題

目標

假設有一個旅行商人要拜訪N個城市,他必須選擇所要走的路徑,路徑的限制是每個城市只能拜訪一次,而且最后要回到原來出發的城市。路徑的選擇目標是要求得的路徑路程為所有路徑之中的最小值。

算法

證明

(1)多項式性
(2)正確性
(3)近似度
H?H^*H?:精確解
TTT:最小生成樹
WWW:T的"full work"
HHH:近似解
c(T)≤c(H?)c(T)\le{c(H^*)}c(T)c(H?)
c(W)=2c(T)c(W)=2c(T)c(W)=2c(T)
以上兩式推出
c(W)≤2c(H?)c(W)\le{2c(H^*)}c(W)2c(H?)
c(H)≤c(W)c(H)\le{c(W)}c(H)c(W)
可以推出
c(H)≤2c(H?)c(H)\le{2c(H^*)}c(H)2c(H?)

哈密頓環

NP-完全問題

近似難

近似難有解就證明了P=NPP=NPP=NP
如果P!=NPP !=NPP!=NP,則對于任意常數ρ>1\rho > 1ρ>1,對于一般的旅行商問題,不存在近似比為ρ\rhoρ的多項式時間近似算法。
證明過程
(1)先建立全圖
E‘={(u,v):u,v∈Vandu≠v}E^`=\{{(u,v):u,v \in {V} and \space u \ne{v}}\}E={(u,v):u,vVand?u=v}
(2)對所有的邊加上權值,原來的邊權值為1
c(u,v)={n,if(u,v)∈Eρ∣V∣+1,otherwisec(u,v)= \begin{cases} n, if (u,v) \in E\\ \rho|V| + 1, otherwise \end{cases} c(u,v)={n,if(u,v)EρV+1,otherwise?
(3)如果原圖中有哈密頓環,把H環作為正確解∣V∣|V|V,否則>ρ∣V∣>\rho|V|>ρV

例3. 子集和問題

目標

SSS中尋找合適的子集,子集中元素的和為ttt

算法

總結

以上是生活随笔為你收集整理的Approximation method(近似算法)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。