![Page 1: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/1.jpg)
YZM 3207- ALGORİTMA ANALİZİ VE TASARIM
DERS#4: KABA KUVVET ALGORİTMALARI
![Page 2: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/2.jpg)
Kaba Kuvvet Algoritmaları
• Kaba Kuvvet
– Bir problemi çözmek için en basit yaklaşım
– Genellikle problemin tanımına ve konseptine bağımlıdır
– Genellikle uygulaması en basit çözümdür
• En temel örnekler
– an hesaplanması
– n! Hesaplanması
– İki matrisin çarpımı
– Bir dizide bir elemanın aranması
![Page 3: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/3.jpg)
Seçimli Sıralama• Seçimli Sıralama (Selection Sort)
– Dizinin içerisindeki en küçük eleman bulunur.
– 1. sıradaki elemanla yer değiştirilir.
– En küçük bulma işlemi dizinin ikinci elemanından başlanılarak tekrar edilir.
– Bulunan en küçük değer 2.sıradaki elemanla yer değiştirir.
– Bu işlem dizinin son elemanına kadar devam eder.
![Page 4: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/4.jpg)
Seçimli Sıralama
![Page 5: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/5.jpg)
Seçimli Sıralama
• Temel işlemin gerçekleşme sayısı formülü:
![Page 6: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/6.jpg)
Kabarcık Sıralama
![Page 7: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/7.jpg)
Kabarcık Sıralama
![Page 8: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/8.jpg)
Kabarcık Sıralama
• Temel İşlem :?
• Gerçekleşme Sayısı :?
![Page 9: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/9.jpg)
Kaba Kuvvet Arama Algoritmaları
• Sıralı Arama (Sequential Search)
• Kaba Kuvvet String Eşleme (Bruteforce StringMatching)
![Page 10: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/10.jpg)
Sıralı Arama• Aranan elemanı dizi elemanları ile tek tek
karşılaştırarak arama yapar
• Aranan elemanın dizi içerisinde (varsa) bulunduğu ilk indisi verir
![Page 11: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/11.jpg)
Kaba Kuvvet String Eşleme• n uzunluğundaki T metni içerisinde m
uzunluğundaki P örüntüsünü arama
![Page 12: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/12.jpg)
Kaba Kuvvet String Eşleme
• Kötü durum– Aranan örüntünün bulunamaması
• Kaydırmanın örüntünün son karakteri karşılaştırıldıktan sonra yapılabilmesi
– Her seferinde (n-m+1 kez) 3. karakter karşılaştırmasında uyumsuzluk çıkması• Bu durumda sınıfı : O(nm)
– Ortalama durum:• Bir doğal dil için birkaç karşılaştırmada uyumsuzluk yakalanır
![Page 13: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/13.jpg)
Etraflı Arama
• Etraflı Arama (Exhaustive Search)
– Kombinasyonel çözümler içerisinden belli bir özelliğe sahip olanı arama için kullanılan bir kaba kuvvet çözümü
– Her ihtimal denenerek arama yapılır
• Gezgin Satıcı Problemi (Traveling Salesman)
• Sırt Çantası Problemi (Knapsack Problem)
• İşe Alma Problemi (Assignment Problem)
![Page 14: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/14.jpg)
Gezgin Satıcı Problemi
• Bir satıcının
– Aralarındaki mesafeler bilinen şehirleri
• Her şehirden bir kez geçerek başladığı şehre en kısa yoldan dönmesi
• Hamiltonian Circuit
• (n-1)!/2
![Page 15: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/15.jpg)
Sırt Çantası Problemi• Bir hırsızın çalacağı nesnelere karar verme problemi
– Çantasına sığmalı
– Değeri mümkün olduğunca yüksek olmalı
![Page 16: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/16.jpg)
İşe Alma Problemi• n aday n pozisyon için işe başvuruyor
– Her aday her farklı pozisyon için farklı maaş talep ediyor
– Her pozisyona 1 kişi alınacak
– Her aday işe alınacak
– Toplam maaş maliyeti minimum olacak
![Page 17: Doç. Dr. Aytug ONAN - DERS#4: KABA KUVVET ALGORİTMALARIaytugonan.cbu.edu.tr/YZM3207/LectureNotes/YZM3207_ders04.pdf · 2017. 10. 26. · Etraflı Arama •Etraflı Arama (Exhaustive](https://reader033.vdocuments.mx/reader033/viewer/2022060921/60acd0812fb9ba1acf16f94b/html5/thumbnails/17.jpg)
İşe Alma Problemi