YAPAY ZEKA Yrd. Doç. Dr. Rembiye Kandemir

Slides:



Advertisements
Benzer bir sunumlar
MIT563 Yapay Zeka ve Makine Öğrenmesi
Advertisements

Ders İçeriği Ağaç Veri Modeli Tanım ve Gerçekleştirim İkili Ağaç
FEN BİLİMLERİ ENSTİTÜSÜ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ
Karmaşıklık Giriş.
Karmaşıklık Giriş.
Ayrık Yapılar Algoritma Analizi.
MIT503 Veri Yapıları ve algoritmalar
KARAR TEORİSİ.
ALPER LAÇİN SERDAR TAŞAN
YAPAY ZEKA Yrd. Doç. Dr. Rembiye Kandemir
IT503 Veri Yapıları ve algoritmalar
YAPAY ZEKA Yrd. Doç. Dr. Rembiye Kandemir
Yapay Zeka DR.KORHAN KAYIŞLI.
MIT503 Veri Yapıları ve algoritmalar Algoritma Oluşturma – Açgözlü algoritmalar ve buluşsallar Y. Doç. Yuriy Mishchenko.
MIT563 Yapay Zeka ve Makine Öğrenmesi
Informed Search and Exploration
Ders İçeriği Bağlantılı Liste İki Yönlü Bağlantılı Liste
YAPAY ZEKA ÖDEV - 1 Kenan KILIÇASLAN Trakya Üniversitesi Fen Bilimleri Enstitüsü Makina Mühendisliği Doktora Programı.
YAPAY ZEKA ÖDEV - 2 Kenan KILIÇASLAN Trakya Üniversitesi Fen Bilimleri Enstitüsü Makina Mühendisliği Doktora Programı.
Filogenetik analizlerde kullanılan en yaygın metotlar
İkili Ağaçlar İkili Arama Ağaçları
Algoritmalar DERS 7 Dengeli Arama Ağaçları Kırmızı-siyah ağaçlar
CLUSTERING USING REPRESENTATIVES Hazırlayan: Arzu ÇOLAK
İçerik Ön Tanımlar En Kısa Yol Problemi Yol, Cevrim(çember)
MIT503 Veri Yapıları ve algoritmalar En önemli graf problemleri
TÜREV UYGULAMALARI.
Lokal Arama Algoritmaları
İkili Arama Ağaçları (Binary Search Trees) BST
SOME-Bus Mimarisi Üzerinde Mesaj Geçişi Protokolünün Başarımını Artırmaya Yönelik Bir Algoritma Çiğdem İNAN, M. Fatih AKAY Çukurova Üniversitesi Bilgisayar.
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 3: Döngüler
Bölüm 3 – Yapısal Programlama
En Küçük Yol Ağacı (Minimum Spanning Tree)
Karar Ağaçları İle Sınıflandırma
Çizge Algoritmaları.
İstatistiksel Sınıflandırma
Uzaklık Vektörü Algoritması
Çizge Teorisi, Dağıtık Algoritmalar ve Telsiz Duyarga Ağları
YAPAY ZEKA ve UZMAN SİSTEMLER
İçerik: Graflar Tanım Gösterim Dolaşma Algoritmaları
Ders Notu – 3.1 Arama ile Problem Çözme
MIT503 Veri Yapıları ve algoritmalar Veri ağaçları
Ders Notu – 3.2 Bilgisiz (Kör) Arama Yöntemleri
Prof. Dr. Hüseyin BAŞLIGİL
BİL551 – YAPAY ZEKA PROBLEM ÇÖZME VE ARAMA
M.Fatih AMASYALI Yapay Zeka Ders Notları
GRAPHS ÖZET.
BİL551 – YAPAY ZEKA BİLGİSİZ ARAMA YÖNTEMLERİ
Rekabet ortamında arama Adversarial Search
Arama ile sorun çözme Ders 3.
Bilgili arama Yöntemleri
BİYOİNFORMATİK NEDİR? BİYOİNFORMATİKTE KULLANILAN SINIFLAMA YÖNTEMLERİ
Arama Her Yerde M.Fatih AMASYALI Yapay Zeka Ders Notları
Bilgili arama Yöntemleri
Oyunlar.
BİL551 – YAPAY ZEKA BİLGİLİ ARAMA YÖNTEMLERİ
BAH TABLOSU.
Veri Madenciliği Birliktelik Analizi: Temel Kavramlar ve Algoritmalar
BİL 4112 Yapay Zeka Hafta 2 – Bölüm 2
BİL 4112 YAPAY ZEKA Hafta 3 – Bölüm 1
Yapay Zeka Algoritmaları
Algoritmalar II Ders 2 Dinamik Programlama Yöntemi.
Hafta_5 Arama Algoritmaları
Çizgeler Çizge G=(V,E), ikilisine denir, burada V sonlu bir kümedir, E ise bu kümenin elemanları arasında ikili bir bağıntıdır. V kümesine G çizgesinin.
Tamsayılı Doğrusal Programlama Algoritmaları
Çizge Algoritmalari 6. ders.
Makine Öğrenmesinde Yeni Problemler
Algoritmalar II Ders 11 Çizgeler. Çizgelerin bilgisayarda gösterimi. BFS algoritması.
Çizge Algoritmalari 5. ders.
NİŞANTAŞI ÜNİVERSİTESİ
Algoritmalar II Ders 2 Dinamik Programlama Yöntemi.
Sunum transkripti:

YAPAY ZEKA Yrd. Doç. Dr. Rembiye Kandemir Trakya Üniversitesi Bilgisayar Mühendisliği Bölümü

Durum Grafiği (Yönlendirilmiş)

Ağaç Arama

Arama Stratejileri İnformal yaklaşımlar Bunlar “içten geleni hissetme” veya sadece dürtüler üzerinde hareket etme önsezileri ile ilgilenir. Formal yaklaşımlar Optimizasyon, Kör arama (bilgisiz arama) Sezgisel arama (bilgi veren arama)

Arama çalışmaları genel olarak 4 kritere göre incelenir. Araştırmaların çoğu bir problem için doğru arama stratejisini bulmaya çalışır. Arama çalışmaları genel olarak 4 kritere göre incelenir. Bütünlük : Bir tane çözüm olduğunda arama startejisi çözümü garanti ediyor mu? Zaman Karmaşıklığı : Çözümü bulmak ne kadar zaman alır? Alan Karmaşıklığı : Aramayı gerçekleştirmek için ne kadar hafızaya gereksinim duyulur? Optimallik : Birkaç farklı çözüm olduğu zaman arama stratejisi en iyi kalitede çözümü buluyor mu?

Kör Arama (Blind Search) (Bilgisiz Arama) Kör arama teknikleri, alternatif yolları teker teker araştırır. Bilgisiz aramalardan bazıları BFS - Breath-First Search UCS - Uniform Cost Search DFS - Depth-First Search DLS – Depth Limited Search IDS – Iterative Deeping Search BS – Bidirectional Search

Breath-First Search – BFS (Genişlik Öncelikli Arama) b dallanma faktörü, m maximum derinlik olmak üzere Bütünlük : Var Zaman Karmaşıklığı : O(bm) dir. Alan Karmaşıklığı : O(bm) dir. Optimallik : Her zaman çözüm bulunur.

Uniform Cost Search – UCS (Düşük Maliyetli Arama) Genişlik öncelikli aramaya benzer. Dallar üzerinde toplam en düşük maliyetli düğümü seçer ve genişletir. b = dallanma faktörü, d = en düşük maliyetli çözümün derinliği A A A A 1 15 1 15 1 15 1 15 5 5 5 5 B C D B C D B C D B C D 5 10 10 5 10 5 E F F E F E 10 1 1 1 F F Bütünlük : Var, eğer maliyet   > 0 Zaman Karmaşıklığı : O(bd) Alan Karmaşıklığı : O(bd) Optimallik : Var, uzaklığa göre yol maliyeti hiçbir zaman azalmaz

Depth-First Search – DFS (Derinlik Öncelikli Arama) Seviye 0 Seviye 1 Seviye 2 Seviye 3 b dallanma faktörü, m maximum derinlik olmak üzere Bütünlük : Yok, her zaman aramayı sonlandıramaz Zaman Karmaşıklığı : O(bm) dir. Alan Karmaşıklığı : O(bm) Optimallik : Her zaman çözüm bulunamaz.

Depdth-Limited Search - DLS (Sınırlı Derinlikte Arama) Derinlik öncelikli aramada, ağaç dalları çok fazla ise amaç çözüme ulaşmak mümkün olmayabilir. Sonsuz bir işlem döngüsüne girebilir. Bu nedenle derinlik aramada bir yere saplanmamak için sınır şartları verilebilir. Sınırlı Derinlikteki Arama için en zor kısım sınırı seçmektir. Sınırlı Derinlikteki Arama için performans analizi; Bütünlük : Yok, Zaman Karmaşıklığı : O(bl) dir. Alan Karmaşıklığı : O(bl) dir. Optimallik : Yok, verilen sınır içinde çözüm bulunamayabilir. b dallanma faktörü, l maximum derinlik sınırı

Depdth-Limited Search – DLS (devam)

Romanya Ziyareti Haritada 20 şehir var. Maximum derinlik sınırı l = 19 verilebilir

Iterative-Deeping Search - IDS (Tekrarlı Derinlikte Arama) The numbers represent the order generated by DFID 1,3,9 2,6,16 c 4,10 5,13 7,17 8,20 11 12 21 22 14 15 18 19 Tekrarlı derinlikte arama tüm olası derinlik sınırlarını deneyerek, en iyi derinlik sınırını seçen bir stratejidir. (Romanya haritasında derinlik sınırı 19 seçilmişti ama amaç şehre 5 adim sonra ulaşılabilir.) Tekrarlı derinlikte arama, derinlik öncelikli ve genişlik öncelikli aramaların iyi yönlerinin birleşimidir.

Iterative-Deeping Search - IDS (Tekrarlı Derinlikte Arama) (Devam) Genişlik öncelikli aramaya benzer şekilde en iyi sonuca ulaşır. Derinlik öncelikli aramanın bellek gereksinimlerine sahiptir. Tekrarlı Derinlik Aramada, b dallanma faktörü, d derinlik faktörü olmak üzere aramanın özelliği; Bütünlük : Var Zaman Karmaşıklığı : O(bd) dir. Alan Karmaşıklığı : O(bd) dir. Optimallik : Evet

Iterative-Deeping Search - IDS (Tekrarlı Derinlikte Arama) (Devam) Derinlik Sınırlı Aramadaki büyümenin sayısı b faktörü ile dallanan derinlik d ile gösterildiğine göre b=10, d=5 için 1+b+b2+... +bd-2+bd-1+bd ‘den 1+10+100+1000+10000=111,111 dir Tekrarlı Derinlik Aramada, dip düğümler bir kez genişler, ikinci dip seviyedeki iki kez ve bu şekilde devam eder, ağıcın yukarısına doğru bu artar, yani d+1 defa genişleyebilen sınıra kadar çıkar. Bu şekilde Tekrarlı Derinlik Aramada genişlemenin toplam sayısı b=10, d=5 için (d+1)1+(d)b+(d-1)b2+...+3bd-2+2bd-1+1bd 6+50+400+3000+20000+100000=123,456 elde edilir.

Iterative-Deeping Search - IDS (Devam) Toplam Maliyet Seviye 0 Derinlik sınırı 0

Iterative Deepening Search (Devam) 1 Derinlik sınırı 1

Iterative Deepening Search (Devam) 1 Derinlik sınırı 1

Iterative Deepening Search (Devam) Toplam Maliyet Seviye 1 1 Derinlik sınırı 1

Iterative Deepening Search (Devam) 2 Derinlik sınırı limit 2

Iterative Deepening Search (Devam) 2 Derinlik sınırı 2

Iterative Deepening Search (Devam) 2 Derinlik sınırı 2

Iterative Deepening Search (Devam) 2 Derinlik sınırı 2

Iterative Deepening Search (Devam) 2 Derinlik sınırı 2

Iterative Deepening Search (Devam) 2 Derinlik sınırı 2

Iterative Deepening Search (Devam) Toplam Maliyet Seviye 2 2 Derinlik sınırı 2

Iterative Deepening Search (Devam) 3 Derinlik sınırı 3

Iterative Deepening Search (Devam) 3 Derinlik sınırı 3

Iterative Deepening Search (Devam) 3 Derinlik sınırı 3

Iterative Deepening Search (Devam) 3 Derinlik sınırı 3

Iterative Deepening Search (Devam) 3 Derinlik sınırı 3

Iterative Deepening Search (Devam) 3 Derinlik sınırı 3

Iterative Deepening Search (Devam) 3 Derinlik sınırı 3

Iterative Deepening Search (Devam) 3 Derinlik sınırı 3

Iterative Deepening Search (Devam) 3 Derinlik sınırı 3

Iterative Deepening Search (Devam) 3 Derinlik sınırı 3

Iterative Deepening Search (Devam) 3 Derinlik sınırı 3

Iterative Deepening Search (Devam) 3 Derinlik sınırı 3

Iterative Deepening Search (Devam) 3 Derinlik sınırı 3

Iterative Deepening Search (Devam) 3 Derinlik sınırı 3

Iterative Deepening Search (Devam) Toplam Maliyet Seviye 3 3 Maliyetlerin toplamı :

Bidirectional Search – BS (İki Yönlü Arama) Bu arama metodunda, b dallanma faktörünün her iki yönde de nerede bulunduğu bilinmediği için bir problemdir. Derinlik faktörü d tahmin edilebilir ve çözüm uzayı bd/2 adımda bulunabilir. İleri ve geri aramaların her biri sadece yarım yol gider. Bütünlük : Var Zaman Karmaşıklığı : O(bd/2) dir. Alan Karmaşıklığı : O(bd/2) dir. Optimallik : Var

Bidirectional Search - BS (İki Yönlü Arama) (Devam) b=10, d=6 alınırsa her bir yön 3 derinliğinde olur ve oluşturulan düğüm sayısı 2,222 dir. Derinlik öncelikli aramada ise bu sayı 1,111,111 adet düğümdür. Bidirectional search’ te n adet ardıl tanımladığı gibi n adette öncül tanımlanır. Bazı problemler için, öncülleri hesaplamak oldukça zordur.

Bidirectional Search Algoritması 1. Sadece kökü içeren yolu LİSTE1’ e ata ; Sadece amacı içeren yolu LİSTE2’ ye ata ; 2. WHILE (her iki LİSTE boş değilse) AND (LİSTE1 ve LİSTE2 aynı durumu paylaşmaz ise) DO - Her iki listenin ilk yollarını sil; - Onların yeni yollarını oluştur (tüm çocuklarına giden) - Çıkmaz döngü oluşturan yeni yolları reddet; - Yeni yolları listenin sonuna ekle; 3. IF LİSTE1 ve LİSTE2 bir durum paylaşırsa THEN başarı durumu; ELSE başarısız durum;

Arama Stratejilerinin Karşılaştırma Tablosu Kriter Breath Firsrt Uniform Cost Depth First Limited İterative Deeping Bidirectional Zaman bd bm bl bd/2 Uzay Optimal? Evet Hayır Bütünlük Evet, eğer l ≥ d Şekil: Arama stratejilerin gelişimi; b dallanma faktörü, d çözümün derinliği, m arama ağıcındaki maksimum derinlik, l derinlik sınırı

Tekrarlayan durumlardan sakınma

Fazlalık Arama (Tekrarlı Arama) Arama ağacı, hareketlerin tüm olası durumlarını araştırır. Eğer farklı hareketler aynı durum sonucunu veriyorsa buna fazlalık arama denir. Başla Durum/Geçiş Uzayı Arama Ağıcı

Fazlalık Arama Arama ağacı, hareketlerin tüm olası durumlarını araştırır. Eğer farklı hareketler aynı durum sonucunu veriyorsa buna fazlalık arama denir. Başla Aynı Durum! Durum/Geçiş Uzayı Arama Ağıcı

Fazlalık Arama Arama ağacı, hareketlerin tüm olası durumlarını araştırır. Eğer farklı hareketler aynı durum sonucunu veriyorsa buna fazlalık arama denir. Başla Durum/Geçiş Uzayı 3 arama zamanında aynı alt ağaç!

Fazlalık Arama Çözüm: Ağaç Arama Algoritması Bütün ziyaret edilmiş düğümleri bellekte tut Yeni düğüm, önceden görünmüş durumlara benziyorsa bu düğümü atama yapma. Ard arda gelen tekrarlı düğüm ve hareketler budanmış

3 l 5 l 9 l Problem : Ölçek Problemi Amaç : En az hareket ile 7 litre suyu ölçmek Durumlar : 3 ölçek kabı ( 3, 5 ve 9 litrelik) Operatör : Suyun yerini değiştirme Maliyet : Yer değiştirme sayısı

Örnek: Ölçek problemi! 9 l 5 l 3 l Çözüm (olasılıklardan biri): a b c 0 0 0 başla 3 0 0 0 0 3 3 0 3 0 0 6 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç a b c

Örnek: Ölçek problemi! 9 l 5 l 3 l Çözüm (olasılıklardan biri): a b c 0 0 0 başla 3 0 0 0 0 3 3 0 3 0 0 6 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç a b c

Örnek: Ölçek problemi! 9 l 5 l 3 l Çözüm (olasılıklardan biri): a b c 0 0 0 başla 3 0 0 0 0 3 3 0 3 0 0 6 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç a b c

Örnek: Ölçek problemi! 9 l 5 l 3 l Çözüm (olasılıklardan biri): a b c 0 0 0 başla 3 0 0 0 0 3 3 0 3 0 0 6 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç a b c

Örnek: Ölçek problemi! 9 l 5 l 3 l Çözüm (olasılıklardan biri): a b c 0 0 0 başla 3 0 0 0 0 3 3 0 3 0 0 6 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç a b c

Örnek: Ölçek problemi! 9 l 5 l 3 l Çözüm (olasılıklardan biri): a b c 0 0 0 başla 3 0 0 0 0 3 3 0 3 0 0 6 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç a b c

Örnek: Ölçek problemi! 9 l 5 l 3 l Çözüm (olasılıklardan biri): a b c 0 0 0 başla 3 0 0 0 0 3 3 0 3 0 0 6 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç a b c

Örnek: Ölçek problemi! 9 l 5 l 3 l Çözüm (olasılıklardan biri): a b c 0 0 0 başla 3 0 0 0 0 3 3 0 3 0 0 6 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç a b c

Örnek: Ölçek problemi! 9 l 5 l 3 l Çözüm (olasılıklardan biri): a b c 0 0 0 başla 3 0 0 0 0 3 3 0 3 0 0 6 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç a b c

Örnek: Ölçek problemi! 9 l 5 l 3 l Çözüm (olasılıklardan biri): a b c 0 0 0 başla 3 0 0 0 0 3 3 0 3 0 0 6 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç a b c

Örnek: Ölçek problemi! 9 l 5 l 3 l Bir başka çözüm: a b c 0 0 0 başla 0 5 0 0 0 3 3 0 3 0 0 6 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç a b c

Örnek: Ölçek problemi! 9 l 5 l 3 l Bir başka çözüm: a b c 0 0 0 başla 0 5 0 3 2 0 0 0 3 3 0 3 0 0 6 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç a b c

Örnek: Ölçek problemi! 9 l 5 l 3 l Bir başka çözüm: a b c 0 0 0 başla 0 5 0 3 2 0 3 0 2 3 0 3 0 0 6 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç a b c

Örnek: Ölçek problemi! 9 l 5 l 3 l Bir başka çözüm: a b c 0 0 0 başla 0 5 0 3 2 0 3 0 2 3 5 2 0 0 6 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç a b c

Örnek: Ölçek problemi! 9 l 5 l 3 l Bir başka çözüm: a b c 0 0 0 start 0 5 0 3 2 0 3 0 2 3 5 2 3 0 7 amaç 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç a b c

Siz hangi çözümü tercih ederdiniz? a b c 0 0 0 başla 3 0 0 0 0 3 3 0 3 0 0 6 3 0 6 0 3 6 3 3 6 1 5 6 0 5 7 amaç Çözum 2: a b c 0 0 0 başla 0 5 0 3 2 0 3 0 2 3 5 2 3 0 7 amaç