YZM YAPAY ZEKA DERS#4: BİLGİSİZ ARAMA YÖNTEMLERİ

Benzer belgeler
YZM YAPAY ZEKA DERS#4: BİLGİSİZ ARAMA YÖNTEMLERİ

Arama Algoritmaları ile Gerçek Dünya Örnekleri

YZM 3217 YAPAY ZEKA DERS#5: BİLGİLİ ARAMA YÖNTEMLERİ

BLM-431 YAPAY ZEKA. Ders-4 Bilgisiz Arama Yöntemleri. Yrd. Doç. Dr. Ümit ATİLA

BLM-431 YAPAY ZEKA. Ders-5 Bilgili Arama Yöntemleri. Yrd. Doç. Dr. Ümit ATİLA

BLM-431 YAPAY ZEKA. Ders-3 Durum Uzayında Arama. Yrd. Doç. Dr. Ümit ATİLA

Örnek Arasınav Soruları Güz 2017

YZM 3217 YAPAY ZEKA DERS#3: PROBLEM ÇÖZME VE ARAMA

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#6: AZALT VE FETHET YÖNTEMİ

YZM YAPAY ZEKA DERS#6: REKABET ORTAMINDA ARAMA

Sezgisel-Bilgili Arama (Heuristic-Informed Search)

YZM 3217 YAPAY ZEKA DERS#3: PROBLEM ÇÖZME VE ARAMA

VERİ YAPILARI. GRAPH LAR Düzce Üniversitesi Teknoloji Fakültesi ÖĞR.GÖR.GÜNAY TEMÜR 1

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#9: AÇGÖZLÜ ALGORİTMALAR

Yapay Zeka. BM437, Bahar Öğretim Üyesi: Yrd. Doç. Dr. Mehmet ŞİMŞEK

Graflar bilgi parçaları arasındaki ilişkileri gösterirler.

10.Hafta Minimum kapsayan ağaçlar Minimum spanning trees (MST)

YZM 2116 Veri Yapıları

HACETTEPE ÜNİVERSİTESİ BAHAR DÖNEMİ

YZM 2116 Veri Yapıları

Çizgeler (Graphs) Doç. Dr. Aybars UĞUR

BÖLÜM III: Şebeke Modelleri. Şebeke Kavramları. Şebeke Kavramları. Şebeke Kavramları. Yönlü Şebeke (Directed Network) Dal / ok

VERİ MADENCİLİĞİ (Karar Ağaçları ile Sınıflandırma) Yrd.Doç.Dr. Kadriye ERGÜN

YZM 2116 Veri Yapıları

Algoritma Geliştirme ve Veri Yapıları 10 Graf Veri Modeli. Mustafa Kemal Üniversitesi

Week 9: Trees 1. TREE KAVRAMI 3. İKİLİ AĞAÇ DİZİLİMİ 4. İKİLİ ARAMA AĞACI 2. İKİLİ AĞAÇ VE SUNUMU > =

BIP116-H14-1 BTP104-H014-1

YZM 2116 Veri Yapıları

KLASİK FRAKTALLAR FRAKTAL ÖZELLİKLERİ VE BOYUT

Algoritmalar. Çizge Algoritmaları. Bahar 2017 Doç. Dr. Suat Özdemir 1

Algoritmalara Giriş 6.046J/18.401J

Algoritmaların Karşılaştırılması. Doç. Dr. Aybars UĞUR

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

Rekabet ortamında Arama (Adversarial Search) Oyunlarda Arama

Azalt ve Fethet Algoritmaları

Algoritma Analizi ve Büyük O Notasyonu. Şadi Evren ŞEKER YouTube: Bilgisayar Kavramları

Ağaç (Tree) Veri Modeli

YZM VERİ YAPILARI DERS#9: HASH FONKSİYONLARI



İLERİ ALGORİTMA ANALİZİ TABU ARAMA ALGORİTMASI (TABU SEARCH)

DOSYA ORGANİZASYONU. Ağaç Yapıları ÖZLEM AYDIN TRAKYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

GRAPH LAR Düzce Üniversitesi Teknoloji Fakültesi VERİ YAPILARI. Bilgisayar Mühendisliği ÖĞR.GÖR.GÜNAY TEMÜR 1

Arasınav Örnek Soruları Bahar 2018

VERİ YAPILARI VE PROGRAMLAMA

Altın Oran Arama Metodu(Golden Search)

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

Algoritmalar ve Karmaşıklık

İleri Diferansiyel Denklemler

Çanakkale Onsekiz Mart Üniversitesi. Bilgisayar Mühendisliği Bölümü

Algoritmalar. Heap Sort. Bahar 2017 Doç. Dr. Suat Özdemir 1

YZM 2116 Veri Yapıları

Kümeler arası. Küme içi. uzaklıklar. maksimize edilir. minimize edilir

HACETTEPE ÜNİVERSİTESİ BAHAR DÖNEMİ

Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması. Mustafa Kemal Üniversitesi

İşletim Sistemlerine Giriş

Akıllı Satranç Uygulaması HAZIRLAYAN: BERKAY ATAMAN DANIŞMAN: DOÇ. DR. FEZA BUZLUCA

BMB204. Veri Yapıları Ders 12. Dizgi Eşleme (String Matching) Algoritmaları İleri Veri Yapıları

İçerik: Graflar. Tanım. Gösterim. Dolaşma Algoritmaları. Yönlü ve yönsüz graflar Ağırlıklı graflar. Komşuluk Matrisi Komşuluk Listesi

ALTIN ORAN ARAMA (GOLDEN SECTION SEARCH) METODU

Zeki Optimizasyon Teknikleri

YÖNEYLEM ARAŞTIRMASI - III

YZM 5257 YAPAY ZEKA VE UZMAN SİSTEMLER DERS#6: GENETİK ALGORİTMALAR

BMB204. Veri Yapıları Ders 11. Çizgeler (Graph) Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#2: ALGORİTMA ANALİZİ

Genel Graf Üzerinde Mutlak 1-merkez

Zeki Optimizasyon Teknikleri

BIL222 Veri Yapıları ve Algoritmalar

BMB204. Veri Yapıları Ders 9. B+ Ağacı, Hash, Heap. Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

Hafta 05 - Karar Ağaçları/Kümeleme

Algoritmalara Giriş 6.046J/18.401J

Algoritmalar. DERS 7 Dengeli Arama Ağaçları Kırmızı-siyah ağaçlar Kırmızı-siyah ağacın yüksekliği Rotation / Dönme Insertion / araya yerleştirme

Kavramsal Tasarım - I

KONU 4: DOĞRUSAL PROGRAMLAMA MODELİ İÇİN ÇÖZÜM YÖNTEMLERİ I

MARKOV ZİNCİRLERİNDE DURUMLARIN SINIFLANDIRILMASI

YÖNEYLEM ARAŞTIRMASI - III

Özyineleme (Recursion)

RASTGELE SAYI ÜRETİMİ VE UYGULANAN TESTLER HAZIRLAYAN: ÖZLEM AYDIN

Veri ve Dosya Yapıları. Kütük Organizasyonu 1

Kod Listeleri Genel Yapısı

Algoritma Geliştirme ve Veri Yapıları 7 Liste ve Bağlantılı Liste. Mustafa Kemal Üniversitesi

Kıymet Takdiri Süreci

BÖLÜM13 3- EXCEL DE VERİ İŞLEMLERİ

VERİ MADENCİLİĞİ (Kümeleme) Yrd.Doç.Dr. Kadriye ERGÜN

DOSYA ORGANİZASYONU. Çarpışma çözümleme yöntemleri ÖZLEM AYDIN TRAKYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

xxpfl30x8k/12 Modellerinde Hazır Kanal Listesi Kopyalama, Manuel Uydu ve Kanal Arama, Kanal Sıralama Yapma

T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ MEKATRONİK MÜHENDİSLİĞİ BÖLÜMÜ TEMEL ELEKTRİK DEVRE LABORATUVARI

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Veri Yapıları Dersi. Proje#2

Dosyalarda Farklı Yaklaşımlar. Kütük Organizasyonu 1

Başlangıç Temel Programının Bilinmemesi Durumu

Dosya Sıkıştırma (File Compression) Kütük Organizasyonu 1

ALGORİTMA VE PROGRAMLAMA I

VERİ YAPILARI LİSTELER. Yrd. Doç. Dr. Murat GÖK Bilgisayar Mühendisliği Bölümü YALOVA ÜNİVERSİTESİ

TAPU VE KADASTRO BİLGİ SİSTEMİ

11.Hafta En kısa yollar I-II-III Devam. Negatif Ağırlıklı En Kısa Yollar Doğruluk Çözümleme

DEDELER İLKOKULU

YAPAY ZEKA Mesleki Terminoloji II

b) Algoritmanızın en kötü durumda işlem zamanını asimptotik olarak bulunuz

Sihirbaz Kullanarak Sorgu Oluştur : Sihirbaz sorguyu hazırlayan kişiye sorular sorar ve yanıtlarına göre sorgu oluşturur.

ASELSAN TEDARİKÇİ PORTALI KALİTE SÜREÇLERİ DOKÜMANI

Transkript:

YZM 327 - YAPAY ZEKA DERS#4: BİLGİSİZ ARAMA YÖNTEMLERİ

Bilgisiz Arama Stratejisi Sadece problem formülasyonundaki mevcut bilgiyi kullanır Durum bilgisinden yararlanmazlar Çözüme ulaşmak için hiçbir bilgi verilmez Aramanın herhangi bir adımında çözüme ne kadar yakın (veya uzak) olduğu veya çözümün bulunabileceği hakkında fikir söylemek mümkün değildir 2

Bilgisiz Arama Yöntemleri Genişlik-öncelikli (Breadth-first) Eşit-maliyetli (Uniform-cost) Derinlik-öncelikli (Depth-first) Derinlik-sınırlı (Depth-limited) Yinelemeli Derinleşen (Iterative deepening) İki Yönlü (Bi-directional) 3

Genişlik Öncelikli Arama Her bir seviyedeki düğümlerin tamamı arandıktan sonra, bir sonraki seviyenin düğümlerine ilerlenir Aynı seviyede arama: soldan sağa En sığ (üst seviye) genişletilmemiş düğüm açılır 4

Örnek S 8 A B 3 7 9 4 D E G Yol OPEN list CLOSED list { S } {} S { A B C } {S} S,A { B C D E G } {S A} S,B { C D E G G' } {S A B} S,C { D E G G' G" } {S A B C} S,A,D { E G G' G" } {S A B C D} S,A,E { G G' G" } {S A B C D E} S,A,G { G' G" } {S A B C D E} Bulunan çözüm yolu S A G --> maliyeti = 0 Genişletilen düğüm sayısı (hedef düğüm dahil) = 7 C

Zaman karmaşıklığı Eğer hedef düğüm ağacın d derinliğinde bulunursa bu derinliğe kadarki tüm düğümler oluşturulur. d b G m G Böylece: O(b d ) Optimal çözüm: Köke en yakın (az maliyetli-adımlı) 6

Özellikleri Her bir düğümün b sayıda alt dal varsa, incelenmesi gereken toplam dal sayısı M = + b + b 2 + b 3 + + b d Bütünlük: b sonsuz degil ise evet Zaman karmaşıklığı: O(b d ) Bellek karmaşıklığı: O(b d ) En iyi çözüm bulunabilir mi (optimality): Evet Çünkü köke en yakın olanı bulur (her adım maliyeti = varsayarak) Çok fazla bellek ihtiyacı var Tüm düğümleri bellekte tutmaya gerek var mı? Ağaçta çok fazla dallanma varsa ve çözüm köke uzak ise uygun değildir 7

Eşit Maliyetli (Uniform Cost) Arama Genişlik öncelikli aramaya benzer Kökten itibaren toplam maliyeti en az olan düğüm seçilir ve genişletilir Sıralama: Maliyeti en azdan en çoğa D S 8 Genişlik-Öncelikli çözüm: A B C 3 S->A->G 7 9 4 E G 8

Örnek G.Düğüm D.listesi Yol {S(0)} - S {A() B() C(8)} S A {D(4) B() C(8) E(8) G(0)} S,A D {B() C(8) E(8) G(0)} S,A,D B {C(8) E(8) G (9) G(0)} S,B C {E(8) G (9) G(0) G (3)} S,C E {G (9) G(0) G (3)} S,A,E G {G(0) G (3)} S,B,G D 3 7 A E S 8 B C 9 4 G G G Bulunan çözüm yolu: S B G --> maliyeti = 9 (0 değil) Genişletilen düğüm sayısı (hedef düğüm dahil) = 7 (aynı) 9

Önemli! Arama süreci kuyrukta (sıralı düğüm listesinde) herhangi bir düğüm hedef düğüm olduğunda sonlandırılırsa optimal olmaz G.Dğm. D.listesi {S(0)} - S {A() B() C(8)} S A Yol {D(4) B() C(8) E(8) G(0)} S,A D {B() C(8) E(8) G(0)} S,A,D B {C(8) E(8) G (9) G(0)} S,B C {E(8) G (9) G(0) G (3)} S,C E {G (9) G(0) G (3)} S,A,E G {G(0) G (3)} S,B,G 0

Özellikleri Completeness: Her adım maliyeti > 0 ise evet Time complexity: O(b C*/ε ) C*: optimal çözümün maliyeti : en düşük adım maliyeti Her adımın maliyeti aynı ise O(b d ), Neden? Genişlik-öncelikliye dönüşür Space complexity: O(b C*/ε ) Optimality: Her adım maliyeti > 0 ise evet b: dallanma faktörü d: en düşük maliyetli çözümün derinliği

İyileştirme Kuyruktaki (Düğüm listesi) düğümlerden birine başka bir yoldan tekrar ulaşılırsa Önceki maliyetle karşılaştır Maliyeti küçük olanı tut Yolu ve yeni maliyeti güncelle 2

Örnek B A S C D # Durum Maliyet Ata S 0-00 E G F 3

Örnek B A S C D # Durum Maliyet Ata S 0-2 A S 3 C S 00 E G F 4

Örnek B A S C D # Durum Maliyet Ata S 0-2 A S 4 B 2 A 3 C S 00 E G F

Örnek B 00 A G S C F D E # Durum Maliyet Ata S 0-2 A S 4 B 2 A C 3 B 6 G 02 B C nin maliyeti ve atası güncellenir: Ata: S -> B Maliyet: -> 3 6

Örnek B 00 A S C D E # Durum Maliyet Ata S 0-2 A S 4 B 2 A C 3 B 7 D 8 C 6 G 02 B G F 7

Örnek B 00 A S C D E # Durum Maliyet Ata S 0-2 A S 4 B 2 A C 3 B 7 D 8 C 8 E 3 D 6 G 02 B G F 8

Örnek B 00 A G S C F D E # Durum Maliyet Ata S 0-2 A S 4 B 2 A C 3 B 7 D 8 C 8 E 3 D 9 F 8 E 6 G 02 B 9

Örnek B 00 A G S C F D E # Durum Maliyet Ata S 0-2 A S 4 B 2 A C 3 B 7 D 8 C 8 E 3 D 9 F 8 E 0 G 23 9 6 G 02 4 Hedefe ulaşıldı 20

Derinlik Öncelikli Arama Bir düğümün öncelikle tüm alt düğümlerine bakıldıktan sonra aynı seviyedeki diğer düğümlere geçilir 2

Örnek G.Düğüm D. Listesi { S } S { A B C } A { D E G B C} D { E G B C } E { G B C } G { B C } Düğüm kontrol sırası: D, E, G (3. kontrolde hedef bulunur) Bulunan çözüm yolu: S A G --> maliyeti = 0 Genişletilen düğüm sayısı (hedef düğüm dahil) = (daha iyi) 22

Zaman karmaşıklığı En kötü durumda: hedef (sadece) dalın en sağında olabilir, b m G Zaman karmaşıklığı = b m + b m- + + = b m+ - Böylece: O(b m ) b - 23

Bellek karmaşıklığı Kuyrukta (Düğ. Listesi) en fazla düğüme altta en solda ulaşılır. Örnek: m = 3, b = 3 :... Kuyruk, tüm düğümleri içerir --> 7 Genelde: ((b-) * m) + Karmaşıklık: O(m*b) 24

Özellikleri Completeness: Hayır Sonsuz derinlikteki ya da tekrarlanan durumlu (döngülü) ağaçlarda sonuca ulaşamaz Time complexity: O(b m ) Space complexity: O(b m) Genişlik-öncelikliye göre daha az Optimality: Hayır Kökten mümkün olduğunca uzaklaştığı için b: dallanma faktörü m: arama ağacının max derinliği 2

Derinlik Sınırlı Arama En fazla l derinliğe izin verilen derinlik öncelikli arama çeşididir Completeness: Çözümü <= l derinlikte ise evet Eğer gereken çözüm l+ derinlikte ise, o zaman bulunamaz Time complexity: O(b l ) Space complexity: O(b l) Optimality: Hayır Derinlik sınırı (l) nası seçilmeli? Durum sayısı: çözüm yolu uzunluğu en fazla durum sayısı kadar Arama uzayı büyük ve çözüm derinliği belli olmayan durumlarda Yinelemeli Derinleşen Arama tercih edilir Başarıya ulaşana dek derinlik sınırı her defa arttırılıyor 26

Örnek: Romanya ya ulaşmak Haritada 20 şehir var. Maximum derinlik sınırı l = 9 seçilebilir 27

Yinelemeli Derinleşen Arama Satranç turnuvalarında oyunlar belirli bir zaman sınırı içinde oynanır Bu nedenle çoğu satranç programı bu yöntemi kullanır Başka değişle, program önce 2 seviyede, sonra 3, sonra 4, seviyede arama yapıyor Bu, arama için ayrılan süre dolana dek devam ediyor Bundan sonra program, bulunan hamleler içinden en iyisini çözüm gibi kabul ediyor 28

Yinelemeli derinleştirme araması l =0 29

Yinelemeli derinleştirme araması l = 30

Yinelemeli derinleştirme araması l =2 3

Yinelemeli derinleştirme araması l =3 32

Özellikleri Completeness: Evet Derinlik sınırlı da hedef düğüm sınır derinliğinin altında ise çözüm bulunamazdı Yinelemeli derinleşende ise, her iterasyonda derinlik sınırını arttırarak çözümü bulmayı garantiler Time complexity: O(b d ) Space complexity: O(b d) Optimality: Evet Çünkü kök dügüme en yakın çözümü bulur (eğer adım maliyeti = ise) b: dallanma faktörü d: en düşük maliyetli çözümün derinliği 33

İki Yönlü Arama Başl. Hedef Aramaya başlangıç ve hedef durumlarından aynı anda başlanır İki arama ortada karşılaştığı zaman biter Tek bir başlangıç ve amaç durumu olduğunda iyidir Çözüme daha hızlı ulaşmak mümkün olabilir 34

İki Yönlü Arama Hedef düğümden başlayarak önceki düğümler de (predecessor) sırayla üretilir Bazı problemlerde öncekileri bulmak zor olabilir Birden fazla hedef durum var ise ne yapılabilir? Hedef durum yerine hedef durum kümesine aynı işlemler uygulanabilir Ancak, hedef durumların tespiti güç olabilir Örneğin satrançta şah-mat amacını üretecek durumların testpiti? Yeni oluşturulacak bir düğümün arama ağacının diğer yanında yer alıp almadığını kontrol etmenin etkin bir yolu olmalıdır Her iki yarıda ne çeşit aramanın yapılacağına karar vermek gerekir (Örn., genişlik-öncelikli?) 3