Arama algoritmaları Yapay Zekanın en önemli alanlarından biridir. Bu konu, yapay zekadaki arama algoritmaları hakkında her şeyi açıklayacaktır.
Sorun çözücü ajanlar:
Yapay Zekada Arama teknikleri evrensel problem çözme yöntemleridir. Rasyonel ajanlar veya Sorun çözücü ajanlar Yapay zekada çoğunlukla belirli bir sorunu çözmek ve en iyi sonucu sağlamak için bu arama stratejileri veya algoritmaları kullanılır. Problem çözücü ajanlar, hedefe dayalı ajanlardır ve atomik temsili kullanırlar. Bu konuda çeşitli problem çözme arama algoritmalarını öğreneceğiz.
Arama Algoritması Terminolojileri:
Arama Algoritmalarının Özellikleri:
Bu algoritmaların verimliliğini karşılaştırmak için arama algoritmalarının dört temel özelliği aşağıda verilmiştir:
Tamlık: Bir arama algoritması, herhangi bir rastgele giriş için en azından herhangi bir çözümün mevcut olması durumunda bir çözüm döndürmeyi garanti ediyorsa tamamlanmış olduğu söylenir.
Optimallik: Bir algoritma için bulunan çözümün, diğer tüm çözümler arasında en iyi çözüm (en düşük yol maliyeti) olduğu garanti ediliyorsa, o zaman böyle bir çözümün optimal çözüm olduğu söylenir.
Java numaralandırmaları
Zaman Karmaşıklığı: Zaman karmaşıklığı, bir algoritmanın görevini tamamlaması için gereken zamanın ölçüsüdür.
Uzay Karmaşıklığı: Sorunun karmaşıklığına bağlı olarak arama sırasında herhangi bir noktada gereken maksimum depolama alanıdır.
Arama algoritması türleri
Arama problemlerine dayanarak, arama algoritmalarını bilgisiz (Kör arama) arama ve bilinçli arama (Sezgisel arama) algoritmaları olarak sınıflandırabiliriz.
Bilgisiz/Kör Arama:
Bilgisiz arama, hedefin yakınlığı, konumu gibi herhangi bir alan bilgisini içermez. Yalnızca ağacın nasıl geçileceği ve yaprak ve hedef düğümlerin nasıl tanımlanacağı hakkında bilgi içerdiğinden kaba kuvvet yöntemiyle çalışır. Bilgilendirilmemiş arama, başlangıç durum operatörleri ve hedefe yönelik test gibi arama uzayı hakkında herhangi bir bilgi olmadan arama ağacının arandığı bir yöntem uygular, dolayısıyla buna kör arama da denir. Hedef düğüme ulaşana kadar ağacın her düğümünü inceler.
Beş ana türe ayrılabilir:
- Genişliğe öncelik veren arama
- Tek tip maliyet araması
- Derinlik öncelikli arama
- Yinelemeli derinleşen derinlik öncelikli arama
- Çift Yönlü Arama
Bilgilendirilmiş Arama
Bilgilendirilmiş arama algoritmaları alan bilgisini kullanır. Bilinçli bir aramada, aramaya rehberlik edebilecek problem bilgileri mevcuttur. Bilgili arama stratejileri, bilgisiz bir arama stratejisinden daha verimli bir şekilde çözüm bulabilir. Bilgilendirilmiş aramaya aynı zamanda Sezgisel arama da denir.
Buluşsal yöntem, her zaman en iyi çözümleri garanti edemeyen ancak makul sürede iyi bir çözüm bulmayı garantileyen bir yoldur.
Bilgilendirilmiş arama, başka bir yolla çözülemeyen birçok karmaşık sorunu çözebilir.
Bilgilendirilmiş arama algoritmalarına bir örnek, seyahat eden satıcı problemidir.
- Açgözlü Arama
- Arama