3Reasoning Engine Nedir? Reasoning engine, kelime anlamı olarak muhakeme motorlarıdır denilebilir.Reasoning engine, semantic (anlamsal) reasoner, rules engine veya basitçe reasoner olarak adlandırılabilir.Bir reasoner, verilen bilgilerden veya aksiyomlardan mantıksal çıkarımlar yapabilen yazılım parçalarıdır.Reasonerlar, çıkarsama motorlarının (inference engine) genelleştirilmiş halidir ve çalışabilmek için daha çok mekanizma sunar.Çıkarsama kuralları bir ontoloji ve sıklıkla bir betimleme diliyle belirtilirler.
4Bir çok reasoner, muhakeme işlemini gerçekleştirmek için ilk sıra doğrulama mantığını (first-order predicate logic) kullanır, bunu forward chaining ve backward chaining izler.Olasılıklı muhakeme (probabilistic reasoning) ve olasılıklı tanımlama mantığıyla muhakeme örnekleri de bulunmaktadır.
5Logic Agents(Mantıksal Ajanlar) Şu ana kadar gördüğümüz ajanlar refleks tabanlı ajanlardı.Refleks tabanlılar,verilen bir problemin çözümlerini bulabilirken,mantıksal tabanlı ajanlar verilen bilgilerden yeni bilgiler ortaya çıkarabilir.Örnek: Yeni doğan bir çocuğun dil öğrenmesiBilgi(knowledge) ve muhakeme(reasoning) kısmi belirli ortamlarda(partially observable) kritik rol oynar.Örnek: Hastalık teşhisleri
61-)Knowledge-Based Agents Knowledge base: Formal dildeki cümlelerin bir kümesiKnowledge based agentlar şu yaklaşımla oluşturulurlar:- Agent'a bilmesi gerekenler söylenir(TELL).- Agent verilen bilgi karşısında ne yapması gerektiğini sorgular (ASK)- Yapılacak haraketi bulduğunda dış dünyaya tepki verir(TELL).Kba'lar bilgi seviyesi (knowledge-level) ve gerçekleştirim seviyesinde (implementation level) gösterilebilirler.
82.)MantıkMantık (logic): “Varılan sonuç şudur...„ gibi bilgilerin gösteriminde kullanılan formal bir dildir.Sözdizimi (syntax): Dildeki cümleleri tanımlar.Semantic: Dildeki cümlelerin anlamını tanımlar.Örnekler:eğer x+2 sayısı y sayısından küçük değilse x+2 ≥ y doğrudurx = 0, y = 6 koşulunun sağlandığı dünyada x+2 ≥ y yanlıştır
9Mantıksal Çıkarsama (Inference) Çıkarsama: Bir B cümlesinin, bazı çıkarsama algoritmalarıyla A cümlesinden üretmesine denir. Şu şekilde gösterilir:KB ├i α .Geçerlilik(Soundness): Bir çıkarsama algoritması gereken cümleyi üretiyorsa geçerlidir.Tamlık(Completeness): Bir çıkarsama algoritması bütün cümleleri gerektirdiği gibi üretiyorsa, algoritma tamdır denir.
103)Önermeler MantığıÖnermeler mantığı temel mantıksal fikirleri ifade eden en basit mantıktır.Önermeler mantığında her cümle bir önermedir. Önermeler genelde harflerle gösterilir.“Ali iyi öğrencidir”, “Fatma çok iyi öğrencidir”, “Mehmet’in babası Ahmet’tir” önermeleri uygun olarak, A,F, M gibi tanımlana bilir.Her bir önerme gerçek (doğru veya yanlış) değer alır.Önermeler mantığının ifade gücü zayıftır. Örneğin, ilk iki cümle anlamsal olarak çok yakındır. 3. cümle ise farklıdır. Önermeler mantığı bu farkı dikkate alamıyor.
11Syntax(sözdizim): Önermeler mantığında neler cümledir? 1.Herhangi bir p önerme sembolü bir cümledir. (atomic sentence)2. Eğer S bir cümleyse, ¬S de bir cümledir.(tümleyen)3. Eğer S1 ve S2 birer cümleyse, S1 ∧ S2 de bir cümledir. (kesişim)4. Eğer S1 ve S2 birer cümleyse, S1 ∨ S2 de bir cümledir. (birleşim)5. Eğer S1 ve S2 birer cümleyse, S1 ⇒ S2 de bir cümledir. (koşul sağlama)6. Eğer S1 ve S2 birer cümleyse, S1 ⇔ S2 de bir cümledir. (çift taraflı koşul sağlama)
12Semantic: Cümlenin anlamı nedir Semantic: Cümlenin anlamı nedir? Bir m modeli önerme sembolleri ile {true,false} arasındaki ilişkiyi gösteren bir haritadır. Verilen bir m için;1. Eğer S false ise, ¬S true. ( S'nin değili)2. Eğer S1 true ve S2 true ise, S1∧ S2 true. (S1 “ve” S2 )3.Eğer S1 true veya S2 true ise S1 ∨ S2 true. (S1 “veya” S2 )4. Eğer S1 false veya S2 true, S1 ⇒ S2 true. (S1 “içerir” S2 )• Örnek: S1 true veya S2 false ise S1 ⇒ S2 f alse.5. Eğer S1 ⇒ S2 true ve S2 ⇒ S1 true S1 ⇔ S2 true. (S1 “denktir” S2 )
13Denklik, Doğruluk, Doğrulanabilirlik Denklik (equivalence): α, β gibi iki cümle, ancak ve ancak aynı modelde ikisi de true ise denktir denir. α, β'yı gerektirir ve tersi de doğrudur.Doğruluk(validity): Bir cümle tüm modellerde doğruysa, o cümle doğrudur denir.Doğrulanabilirlik (satisfiability): Bir cümle bazı modellerde doğru ise doğrulanabilirdir denir. Doğru(valid) cümleler aynı zaman doğrulanabilirdir. Ancak her doğrulanabilir cümle doğru olmayabilir.Doğrulanamaz(unsatisfiability): Bir cümle hiçbir modelde doğru değilse, o cümle doğrulanamaz.
144)Önermeler Mantığında Muhakeme (reasoning) Kalıpları Verilen bir bilgi tabanından(KB) bir α cümlesini ispatlayabilir miyim?α cümlesi KB'de doğrulanabilir midir?KB |= α?KB ∧ ¬α doğrulanamaz mı?Burada çıkarsamanın standart kalıplarını anlatacağız.Bu kalıplar, hedefe ulaşmayı sağlayan türetim zincirine uygulanabilir.
15Bu çıkarsama kalıplarına çıkarsama kuralları denir.(inference rules) En iyi bilinen kural Modus Ponens kuralıdır. Şu şekilde gösterilir:Bu kurala göre eğer a ⇒ b formunun herhangi bir cümlesi ve a cümlesi verilmişse b çıkarsanabilir.(WumpusAhead ∧ WumpusAlive )⇒Shoot cümlesi ve (WumpusAhead ∧ WumpusAlive ) cümlesi veriliyorsa, Shoot çıkarsanır.
16Bir başka çıkarsama kuralı ise And-Elimination kuralıdır. Bu kurala göre bir bağdan başka bağlar çıkarsanabilir.Şu şekilde gösterilir:Örnek: Verilen (WumpusAhead ∧ WumpusAlive ) cümlesinden WumpusAlive çıkarsanabilir.
17Diğer bir çıkarsama kuralı örnekleri:Factoring Logical equivalences
18Bu tablodaki mantıksal denklikler çıkarsama kuralları olarak kullanılabilir .
19Otomatik Muhakeme-1Bir küme cümle verilmiş, bu cümlelerden ne sonuç çıkarabiliriz?- Önermeler mantığı şeklinde formülize et,- Sonuç çıkarmak için çıkarsama kuralları kullan.
20Örnek:Bilgisayar vs. Agent Bilgi Tabanı:- Bir bilgisayar agent ise zekidir, eğer agent değilse aptal bir makinedir.- Bir bilgisayar hem zeki hem makine ise güçlüdür.- Bir bilgisayar güçlüyse, kullanışlıdır.Sonuç:-Bilgisayar agent mı? Güçlü mü? Kullanışlı mı?
21Önermelerin formülasyonu: - BA: Bilgisayar bir agenttır.- BP: Bilgisayar aptaldır.- BM: Bilgisayar bir makinedir.- BK: Bilgisayar kullanışlıdır.- BG: Bilgisayar güçlüdür.Eğer bilgisayar bir agentsa, zekidir. Eğer bilgisayar bir agent değilse, aptal bir makinedir.P1: BA ⇒ ¬BPP2: ¬BA ⇒ BP ^ BMBilgisayar hem zeki hem de bir makine ise güçlüdür.- P3:(BM ∨ ¬BP) ⇒ BGBilgisayar güçlüyse kullanışlıdır.- P4: BG ⇒ BK
22Sonuç çıkarma;- P1: BA ⇒ ¬BP- P2: ¬BA ⇒ BP ^ BM- P3: (BM ∨ ¬BP) ⇒ BG- P4: BG ⇒ BKP1 ve P2 den P5: ¬BP ⇒ (BP ^ BM)P5 ve P3 den P6: BGP6 ve P4 den P7: BK sunucu çıkarılır.
23Ileri Zincirleme ve Geri Zincirleme Metodları Basit ve verimli çıkarsama metodlarıdır.KB formu üzerinde bir kısıtlamaya ihtiyaç duyar.KB=Horn cümlelerinin birleşimiHorn cümlesi: Bir önerme sembolü a veyaşeklindedir.Gerçek uygulamalarda bilgi tabanlarının cümleleri genellikle horn cümlesi biçiminde ifade ediliyor.
24Horn cümlesi en fazla biri artı olan simgelerin ayrılmış biçimidir. Örnek:(~B11 vP12 V P21) Horn cümlesi değildir(~L11 v ~ Rüzgar v B11) böyle yazıla bilir : (L11 ^ Rüzgar)=>B11Bir artı simgesi bulunan Horn cümlesi belirlenmiş (defined) cümledir.Artı simgeye cümlenin başı(head) denir.Eksi simgeler metni (body) oluşturuyor.Eksisi olmayan cümle olgudur (fact)(~W11 v ~W12 v W13 ) aşağıdaki ifadeye eşittir:W11 ^ W12 => W13Belirlenmiş Horn cümleleri Mantıksal Programlamanın temelini oluşturuyorİleri ve Geri zincirleme çıkarsama algoritmaları Horn cümleleri ile çalışıyor
25İleri Zincirlemeİleri zincirleme çıkarsama kuralları kullanılırken muhakeme (reasoning) işleminin iki temel işleminden bir tanesidir.Temel düşünce: bilgi tabanında her hangi kuralın tetiklenmesi (etkinleştirilmesi),Bunun sonucunun bilgi tabanına eklenmesiSorgu gerçekleşene dek bu işlemlerin devam ettirilmesi
26İleri zincirleme bilgi tabanındaki olgulardan (artı simgeler) başlar İleri zincirleme bilgi tabanındaki olgulardan (artı simgeler) başlar. Amaç sonuç önerinin (Q) Horn cümlelerinden oluşan bilgi tabanından çıkarılıp- çıkarılamayacağını belirlemektir. Eğer implikasyonda sol taraftaki tüm basit öneriler belli ise onun sağ tarafı bilgi tabanına olgu olarak ekleniyorÖrneğin, L11 ve Rüzgar belli ise ve (L11 ^ Rüzgar)=>B11 bigi tabanında var ise B11 bilgi tabanına eklenecekBu süreç Q ilave edilene dek veya yeni çıkarımların oluşturulması mümkün olmayana dek devam ettiriliyor
27Sayılar her bir kuralda sol tarafta kaç değişkenin tetiklenmeli olduğunu gösteriyor.
28Sayılar her bir kuralda sol tarafta kaç değişkenin tetiklenmeli olduğunu gösteriyor.
34Geri zincirlemeTemel düşünce: q sorgusundan başlayarak geriye –belli olgulara dek hareket etmek:Bilgi tabanında Q’yü çıkaran implikasyonlar bulunuyor.Bu implikasyonların sol taraflarının doğruluğu kanıtlanırsa o halde Q doğrudur.Döngülerden kaçınmalı: yeni altamacın artık amaç yığınında olup olmadığını kontrol etmeliTekrarlamaları önlemeli: yeni alt amacın doğruluğunun artık kanıtlanıp kanıtlanmadığını, veya başarısızlığının kanıtlanıp- kanıtlanmadığını yoklamalı