




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第一講:計算復雜性理論
(ComplexityTheory)
計算量的概念計算量的表示算法與計算量計算復雜性影響計算復雜性的因素
優化問題及其計算的復雜性
例:組合優化問題:組合數雖然有限,但因其數量太多,尋找最優解很難。背包問題(knapsackproblem):n個物品,2n實行可能解。旅行商問題(travelingsalespersonproblem):都市n個,(n‐1)!實行可能解。
用有限時間可以求解,但計算時間太長,成本太高901233456712345優化技術與方法計算量(1)+,-,×,÷比較:≠,≤,≥,<,>5種基本演算都是用1step
可以實現.実際上,×比+多占用時間.「四舍五入」不算基本演算.
計算量(2){a1,a2,...,an}:n個整數Q1.
求和(1):
a1+a2+???+an.
n-1steps→O(n)算法.Q2.
求和(2):
(1)2×a1+???+2×an,2n-1steps→O(n)算法.(2)2×(a1+???+an)
,nsteps→O(n)算法.Q3.
計算:a1b1+???+anbn.2n-1steps.Q4.2個n×n階矩陣相乘.
n2(2n-1)steps(n2(n+n-1)).計算量(3)計算量(4)Q5.{a1,a2,...,an}:n個整數
求其和為最大的部分集合.
所有的部分集合的和進行比較2n(n-1)+(2n-1)→O(n2n)算法.計算量的膨脹(1)10行×10列棋盤上米粒的數量(第1格內放1粒米,以后每格順次增加1倍……)格序號米粒數重量(kg)112.0×10-592565.1×10-3181310722.6×10027671088641.3×10336343597383686.9×10545175921860444163.5×1085490071992547409921.8×10116346116860184273879049.2×10137223611832414348226068484.7×10168112089258196146291747061762.4×10202.4×108億噸計算量的膨脹(2)100MIPS(megainstructionspersecond)1秒間100萬回的計算=1step用10-6秒光速3.0×1010cm/秒(10-6秒
行進300m)n101001,00010,000n10-5秒10-4秒10-3秒0.01秒n210-4秒0.01秒1秒100秒n30.001秒
1秒16.6分277時間2n0.001秒1014世紀10284世紀n!0.036秒10141世紀102551世紀宇齡:
宇宙的年齢1.5×108世紀(150億年)計算機速度增加的效果(1)10秒間的計算量?100MIPS10倍100倍1000倍
n1071081091010n23千1萬
3萬
10萬n3215462
1千
2千2n2327
30
33
n!101112131000倍?1step用10-9秒?
10-9秒光可以行進30cm計算機速度增加的效果(2)計算速度1秒可以求解問題的規模
O(2n)O(n)O(n2)O(n5)O(n10)100100100100100101200141115107103100031615812610710000100025115811010000031623982001131000000100006312511000001171000000031623100031610000001201000000001000001585398平行(并列)計算的場合0.5cm見方小碎片,覆蓋地球表面需要2.0×1019個.與100MIPS的單個計算機相比,能加速多少?n1001,000.2n1014世紀→0.85秒10284世紀→10263世紀n!10141世紀→10120世紀102551世紀→102530世紀問題與算法每個問題都可能有多個算法存在.每個算法的計算量(速度)都不同。例:贗品金幣問題:問題:9個外觀完全一樣的金幣.,有一個是假的(重量輕).提問:用天秤來鑒別真偽,天秤需要使用幾次?贋品金幣問題算法使用2次天秤,就可以鑒別出假幣.789123456左邊軽右邊軽平衡123中有偽幣789中有偽幣456中有偽幣左邊軽132右邊軽平衡132456789計算量的表示法:上界值表示法O記號:(BigONotation)定義:O(f(n))讀作orderf(n),或階f(n)即:g(n)=O(f(n))表示對于任意定數c和m,以及對所有n>m,有下式成立:g(n)<cf(n)計算量的表示法——例n2+1000n→O(n2)logn+n3+1000n2→O(n3)判斷:n!→O(nn)?10n2→
O(n3)?logn→
O(n)?思考:O()?優化問題的規模表示優化問題大小的參數例如:旅行商問題:都市的個數;背包問題:物品的個數注:參數的個數并不僅限于1個InputSize多項式時間算法與指數時間算法指數時間算法=用問題規模的指數函數來表示計算時間的算法非有效算法的代名詞多項式時間算法=能用問題規模的多項式函數來表示計算時間的算法高效率算法的代名詞多項式時間算法的計算時間問題規模計算時間1020304050100100010000100MIPS(millioninstructionspersecond)計算機的情形指數時間算法的計算時間100MIPS(millioninstructionspersecond)計算機的情形問題規模計算時間10203040501001宙齢=150億年旅行商問題的計算量(1)n個都市訪問的可能的巡回路線:n!的Stirling近似公式BigOh記法関數的定數倍的大小可以忽略≈旅行商問題的計算量(2)根據Stirling公式以及O()表示法O(nn)排序問題的計算量(1):排序問題:S={a1,a2,...,an},n個整數列,按數值大小排列dataS輸入
需O(n)時間;可能的排列種類數n!種;算法中每一個比較,都增加2倍的情形數2分樹的高度(比較的次數),
log2(n!)=O(nlog
n)x>y?yesnon!種可能的排列排序問題計算量(2)總計算時間的復雜性:O(nlog
n)dataS輸入時間(或賦值時間):O(n)
比較時間:O(nlog
n)上位取整計算量的確定例:背包問題的貪婪算法(greedyalgorithm)的計算量確定計算的復雜度時間復雜度:
計算量:計算各基本操作的實行回數(timecomplexity)空間復雜度各計算時點內存中保持數據個數的最大值(spacecomplexity)兩者的總稱:計算的復雜度計算復雜度的影響因素簡化模型例:RTr1/2計算復雜度的影響因素簡化模型:模型1.Lm計算復雜度的影響因素簡化模型:模型2計算復雜度的影響因素簡化模型:模型3。計算復雜度的影響因素建模假設例:高空拋球的運動軌跡。----拋物線模型假設1.沒有空氣阻力;假設2.地面是平面。----橢圓模型計算復雜度的影響因素探索空間1---解的近似度、滿意度例:0—10之間的整數解:1-9共9個可行解(一維)0—10之間的實數解:精確到小數點后6位共有107個可行解(一維);107n個可行解(n維)探索空間2---解空間大小例:桌子上有6根火柴,要求構建出4個三角形。計算復雜度的影響因素探索策略的選取計算復雜度的影響因素問題本身P問題NP問題(NP-hard
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 平潭生態透水磚施工方案
- 每日晨課微笑課件
- 常州保溫磚施工方案審批
- 梅河口康美職業技術學院《用戶體驗交互設計》2023-2024學年第二學期期末試卷
- 四川藝術職業學院《物聯網自動識別技術》2023-2024學年第二學期期末試卷
- 《初中生腦筋急轉彎》課件
- 2025至2031年中國毛線毛毯行業投資前景及策略咨詢研究報告
- 遼寧對外經貿學院《基因組與蛋白質組學》2023-2024學年第二學期期末試卷
- 曲靖師范學院《藥學科研設計》2023-2024學年第二學期期末試卷
- 2025至2031年中國無水硫化鉀行業投資前景及策略咨詢研究報告
- 品管圈-主題選定課件
- 第三章基于數據驅動的故障診斷方法ppt課件
- T∕CAAA 030-2020 澳洲白綿羊種羊
- 微波-PATHLOSS軟件的應用-入門指導
- 藍牙音響成品檢驗規范
- 材料5:個人征信系統機構接入和接口驗收工作流程
- 項目選址比選方案分析參考范本
- 初三化學酸堿鹽的鑒別
- 學校總務采購業務流程圖(共1頁)
- 預制混凝土襯砌管片生產工藝技術規程doc
- 極域電子教室解決方案
評論
0/150
提交評論