Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
Diterbitkan olehGeo Purple Telah diubah "10 tahun yang lalu
1
Eko Aribowo Teknik Informatika Universitas Ahmad Dahlan
Analisis dan Perancangan Algoritma Kuliah 3 : Metode Analisis Asymtotic Eko Aribowo Teknik Informatika Universitas Ahmad Dahlan
2
Eko Aribowo-ANPAL-UAD
Metode Analisis Asymptotic/theoretic/mathematic : berdasarkan pendekatan secara teori atau atas dasar analisa secara matematik Empirical/Practical/Empiris/Praktis : berdasarkan pendekatan praktis yang biasanya didasarkan atas data-data yang telah ada atau data-data yang di-generete / dibangkitkan Eko Aribowo-ANPAL-UAD
3
Eko Aribowo-ANPAL-UAD
Asymptotic Menggambarkan karakteristik/perilaku suatu algoritma pada batasan tertentu (berupa suatu fungsi matematis) Dituliskan dengan notasi matematis yg dikenal dgn notasi asymptotic Notasi asymptotic dapat dituliskan dengan beberpa simbul berikut Q, O, W, o, w Eko Aribowo-ANPAL-UAD
4
Eko Aribowo-ANPAL-UAD
Notasi Asymptotic Q, O, W, o, w Didefinisikan untuk fungsi diatas nilai biasa Contoh: f(n) = Q(n2). Menggambarkan bagaimana fungsi f(n) tumbuh pd pembandingan untuk n2. Mendefinisikan himpunan fungsi ; Pada prakteknya untuk membandingan 2 ukuran fungsi. Notasi menggambarkan perbedaan rate-of-growth hubungan antara definisi fungsi dan definisi himpunan fungsi. Eko Aribowo-ANPAL-UAD
5
Eko Aribowo-ANPAL-UAD
Notasi O (big Oh) Untuk fungsi g(n),kita definisikan O(g(n)) sbg big-Oh dari n, sbg himpunan: O(g(n)) = {f(n) : konstanta positif c dan n0, sedemikian rupa n n0, sehingga 0 f(n) cg(n) } : ada, : untuk semua Ada konstanta n Eko Aribowo-ANPAL-UAD
6
Eko Aribowo-ANPAL-UAD
Lanjt f(n) Secara intuitif : himpunan seluruh fungsi yg rate of growth –nya adalah sama atau lebih kecil dari g(n). g(n) adalah asymptotic upper bound untuk f(n). f(n) = (g(n)) f(n) = O(g(n)). (g(n)) O(g(n)). Eko Aribowo-ANPAL-UAD
7
Eko Aribowo-ANPAL-UAD
Lanjt 3 (pembulatan ke atas dalah 3) 2.99 = 2.50 = 2.0001 = 3n + 7 = ? (tidak bakal lebih 4n) 2n2 + 5 = ? 3 3 Big Oh O adalah merupakan Upper bound dari suatu fungsi Eko Aribowo-ANPAL-UAD
8
Eko Aribowo-ANPAL-UAD
Contoh f(n) = 3n + 4 berapa / apa big oh-nya ? n0 = 2 C =3 3n+4 <= Cn ? 3*2+4 <=3*3 10<=9 ? Tidak akan pernah terpenuhi berapapun nilai n 3n+4 <= cn ? 3*2+4 <=4*2 ? Apa kesimpulannya Bgm dgn n0 = 2 C =4 3n+4 <= cn ? 3*3+4 <=4*3 ? Bgm dgn n0 = 3 C =4 ? Bgm dgn n0 = 4 C =4 3n+4 <= cn ? 3*4+4 <=4*4 ? Eko Aribowo-ANPAL-UAD
9
Eko Aribowo-ANPAL-UAD
Lanjt Sehingga dari f(n) = 3n+4 akan terpenuhi f(n) <= 4n untuk n >= 4 berarti f(n)=O(4n) untuk n0=4 4n 3n+4 n=4 f(n) n Eko Aribowo-ANPAL-UAD
10
Eko Aribowo-ANPAL-UAD
Contoh dan Latihan Apa fungsi big Oh dari 4n ? 2n+7 ? n2 ? n2+3 ? Eko Aribowo-ANPAL-UAD
11
Eko Aribowo-ANPAL-UAD
Notasi (big Omega) Untuk fungsi g(n),kita definisikan (g(n)) sbg big-Omega dari n, sbg himpunan: (g(n)) = {f(n) : konstanta positif c dan n0, sedemikian hingga n n0, maka 0 cg(n) f(n)} Eko Aribowo-ANPAL-UAD
12
Eko Aribowo-ANPAL-UAD
Lanjt f(n) Secara intuitif : himpunan dari semua nilai fungsi yang rate of growth-nya adalah sama atau lebih tinggi dari g(n). g(n) adalah asymptotic lower bound untuk f(n). f(n) = (g(n)) f(n) = (g(n)). (g(n)) (g(n)). Eko Aribowo-ANPAL-UAD
13
Eko Aribowo-ANPAL-UAD
Lanjt 2.0001 = 2.50 = 2.99 = 3n + 7 = 2n2 + 5 = 2 (batas bawah tidak akan kurang dari 2) 2 2 ? ? Big Omega adalah merupakan Lower bound dari suatu fungsi Eko Aribowo-ANPAL-UAD
14
Eko Aribowo-ANPAL-UAD
Notasi (big theta) Untuk fungsi g(n),kita definisikan (g(n)) sbg big-theta dari n, sbg himpunan sprt berikut (g(n)) = {f(n) : konstanta positif c1, c2 dan n0, sedmikian rupa n n0, maka 0 c1g(n) f(n) c2g(n)} Eko Aribowo-ANPAL-UAD
15
Eko Aribowo-ANPAL-UAD
Lanjt Big theta adalah merupakan tight bound dari suatu fungsi f(n) merupakan (g(n)) pada nilai antara c1 smp c2 g(n) adalah asymptotically tight bound untuk f(n). Eko Aribowo-ANPAL-UAD
16
Eko Aribowo-ANPAL-UAD
Lanjt Secara intuitif : himpunan seluruh fungsi yang rate of growth-nya sama dengan g(n). Secara teknik, f(n) (g(n)). Penggunan sebelumnya, f(n) = (g(n)). Mana yg akan kita teima … ? f(n) dan g(n) nonnegative, untuk nilai n besar. Eko Aribowo-ANPAL-UAD
17
Eko Aribowo-ANPAL-UAD
Contoh (g(n)) = {f(n) : konstanta positif c1, c2, dan n0, yg mana n n0, 0 c1g(n) f(n) c2g(n)} 10n2 - 3n = (n2) Apa nilai konstanta n0, c1, dan c2 sehingga akan terpenuhi fungsi tsb? Buat c1 sedkit lebih kecil dari koefisien utama, dan c2 sedikit lebih besar. Untuk membandingkan tingkat pertumbuhan, lihat term utama. Latihan: Buktikan bahwa n2/2-3n = (n2) Eko Aribowo-ANPAL-UAD
18
Eko Aribowo-ANPAL-UAD
Relasi antara Q, O, W Eko Aribowo-ANPAL-UAD
19
Eko Aribowo-ANPAL-UAD
Relasi antara Q, O, W Teorema : untuk 2 fungsi g(n) dan f(n), f(n) = (g(n)) jika f(n) = O(g(n)) dan f(n) = (g(n)). yakni, (g(n)) = O (g(n)) Ç W (g(n)) Dalam prakteknya, nilai (atau tight bounds) didapat dari asymptotic upper bound dan lower bound. Eko Aribowo-ANPAL-UAD
20
Eko Aribowo-ANPAL-UAD
Running Time Running time dari suatu algoritma, secara matematis adalah suatu fungsi input n untuk sejumlah n data Misal f(n)=n2 berarti fungsi runing time dari sejumlah n data adalah n2 Running time merupakan fungsi kebutuhan sumberdaya yang diperlukan suatu algoritma (atau implementasinya) untuk memproses sejumlah data n Eko Aribowo-ANPAL-UAD
21
Eko Aribowo-ANPAL-UAD
Lanjt “Running time-nya O(f(n))” O(f(n)) adalah sbgWorst case-nya O(f(n)) batasan pd worst-case running time O(f(n)) batasan pada running time dari setiap input. Q(f(n)) batasan pd worst-case running time Q(f(n)) batasan pd running time dari setiap input. “Running time -nya W (f(n))” W(f(n)) sbg Best case-nya Eko Aribowo-ANPAL-UAD
22
Eko Aribowo-ANPAL-UAD
Analisis Empiris ? Eko Aribowo-ANPAL-UAD
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.