Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Mantıksal Vekiller.

Benzer bir sunumlar


... konulu sunumlar: "Mantıksal Vekiller."— Sunum transkripti:

1 Mantıksal Vekiller

2 Konular Bilgi Tabanlı Vekiller
Mantık – modeller ve gerektirme (entailment) Önerme (ikili) mantığı-Propositional (Boolean) logic Çıkarsama (Inference) kuralları İleri zincirleme (forward chaining) Geri zincirleme (backward chaining) - Çözünürlük (resolution)

3 Basit Bilgi Tabanlı Vekil
-Edindiği Bilgilere uygun hareketler yapabilmeli

4 Vekilin Bilgi Tabanı Vekilin bilgilerden yararlana bilmesi için iki modüle ihtiyacı vardır: bilgi tabanına bilgi çıkarım modülüne (inference engine). Bilgi tabanı formal dilde ifade edilmiş cümleler kümesidir. Bilgi tabanının içeriği alana özgüdür Bilgi tabanının içeriği: vekilin önceden kaydedilmiş bilgileri (olgular ve kurallar), bu bilgilerden yararlanmakla ve dış dünyanı algılamaları sonucu edindiği, öğrendiği bilgiler Bilgi tabanının içeriği zamana göre ve vekilin tüm yaşamı boyunca öğrenme süresince değişmektedir

5 Çıkarsama Modülü Vekil, ne yapacağı hakkında karar vermek için gereken bilgileri bilgi tabanından edine bilmelidir. Bu, çıkarsama kuralları esasında çıkarsama modülünde gerçekleştirilir. Çıkarsama modülü alana bağımsız algoritmaları içerir.

6 Bilgi Tabanlı Vekil Vekilin Dünyası Vekil Mantıksal Çıkarsama

7 Vekilin tanımlanması Vekiller bilgi seviyesinde tanımlana bilmelidirler (Nasıl çalıştırıldığına bakmaksızın neyi bildiklerinin belirlenmesi) Veya çalışma seviyesinde tanımlana bilmelidirler (Bilgi tabanında, bilgilerin ifade olundukları veri yapılarının ve onlar üzerinde işlem yapan algoritmaların belirlenmesi)

8 Basit Bilgi Tabanlı Vekil Programı
Bilgi Tabanında (KB) başlangıçta ön bilgiler tutuluyor. Her zaman anında vekil programı iki iş yapıyor: 1) Bilgi tabanına neler algıladığını söylüyor (TELL). 2) Bilgi tabanından ne yapmak gerektiğini soruyor (ASK). Hareket seçildikten sonra program bu seçimi kaydediyor ve hareketi gerçekleştiriyor. Gerçekleştirme yeni TELL komutu ile bilgi tabanına bildiriliyor.

9 Vampir dünyasının PEAS tasviri
Başarım ölçümü altın puan, ölmek Her adım -1 , okun kullanılması -10 Ortam - Vampire komşu odalar kokuyor Kuyuya komşu kareler rüzgarlıdır Altın olan karede parıltı var Algılar: Esinti, Parıltı, Koku, Gürültü Tepkiler: Sola git, Sağa git, Yukarı git, aşağı git, Altını al, Ok at

10 Vampir dünyasının nitelikleri
Tam izlenilebilir Hayır – yalnız yerel algılama Belirlenmiş Evet – sonuçlar kesin belirlenmiş Epizodik Hayır – hareketlerin her seviyesinde ardışıklık Statik Evet – vampirler ve kuyular hareket etmezler Diskret Evet Tek-vekil? Evet

11 Vampir dünyasında dolaşma
B(breeze)-esinti P(pit)-kuyu S(stench)-koku G(Glitter)-parıltı

12 Vampir dünyasında dolaşma
B(breeze)-esinti P(pit)-kuyu S(stench)-koku G(Glitter)-parıltı

13 Vampir dünyasında dolaşma
B(breeze)-esinti P(pit)-kuyu S(stench)-koku G(Glitter)-parıltı

14 Vampir dünyasında dolaşma
B(breeze)-esinti P(pit)-kuyu S(stench)-koku G(Glitter)-parıltı

15 Vampir dünyasında dolaşma
B(breeze)-esinti P(pit)-kuyu S(stench)-koku G(Glitter)-parıltı

16 Vampir dünyasında dolaşma
B(breeze)-esinti P(pit)-kuyu S(stench)-koku G(Glitter)-parıltı

17 Vampir dünyasında dolaşma
B(breeze)-esinti P(pit)-kuyu S(stench)-koku G(Glitter)-parıltı

18 Vampir dünyasında dolaşma
B(breeze)-esinti P(pit)-kuyu S(stench)-koku G(Glitter)-parıltı

19 Bilginin mantıksal tasvirinin ve sonuç almanın temel kavramları
Mantık (Logic)- bilginin tasviri için kullanılan ve sonuçların ifade edildiği biçimsel dil Cümleler, tasvir dilinin sözdizimine (Syntax) uygun olarak ifade edilir. Sözdizimine uygun ve anlaşılır biçimde ifade edilmiş cümle iyi biçimlendirilmiş cümledir ( well formed sentence) Örnekler: X+y=4 (wfs) x4y+= (wfs değil)

20 Bilginin mantıksal tasvirinin ve sonuç almanın temel kavramları
Cümleler aynı zamanda “anlamı” (semantics) ile tanımlanıyor Anlam, her bir mümkün dünyada (cümlenin ala bileceği değerler ortamı) cümlenin gerçekliğini belirler. x+2 ≥ y cümledir; x2+y > {} cümle değil. Bu söz dizimidir. Örnek cümlenin anlamı: x = 7, y = 1 koşulunun sağlandığı dünyada x+2 ≥ y doğrudur x = 0, y = 6 koşulunun sağlandığı dünyada x+2 ≥ y yanlıştır

21 Model Model- cümlenin doğru veya yanlışlığını tespit eden matematik soyutlamadır. Eğer α cümlesi her hangi m modelinde doğru ise m , α cümlesinin modelidir M(α) - α –nın tüm modelleri kümesidir x+y= 4 cümlesini doğru yapan {x,y} çiftlerine tüm mümkün atamalar bu cümlenin modelleridir. x ve y tam sayılar ise, bu cümlenin modelleri: {0,4}, {-3, 7}, {2,2}…

22 Gerektirme (Entailment)
Gerektirme bir sonuçtan diğer bir sonucun mantıksal alınmasıdır: α ╞ β α ‘nin doğru olduğu tüm modellerde β doğru ise, α cümlesi β cümlesini gerektirir. Yani, α ’nin doğru olması, β‘nın da doğru olması anlamını veriyor . X ve Y’nin artı değerlerinde, yani, tüm (x>0,y>0) modellerinde X 2 + Y 2 >0 cümlesi x+y>0 cümlesini gerektirir: X 2 + Y 2 >0 ╞ x+y >0

23 Vampir dünyasında gerektirme
[1,1]’de vekili endişelendirecek bir durum algılanmadıktan sonra sağa hareket ve [2,1]’de rüzgar olması durumu Yalnız kuyuları dikkate almakla, Bilgi Tabanı (KB) için tüm mümkün modeller 3 Boolean seçim  8 mümkün model eğer M(KB)  M(α) ise KB ╞ α 1, ,1

24 Vampir Dünyasının Modelleri
Bilgi Tabanı (KB): olgular 1,1’de rüzgar ve kuyu yoktur 2,1’de rüzgar var Kurallar: Rüzgarlı kareye komşu karelerin en azından birinde kuyu vardır. Vekilin bulunduğu kareler (1,1 ve 2,1) ve bu karelere komşu kareler hakkında bilgiler vampir dünyasının 8 modelini oluşturur. Kuyular siyah kare ile gösterilip. Vampir Dünyasının Modelleri

25 Vampir Dünyasının Modelleri
KB = vampir dünyasının kuralları+gözlemler Bilgi tabanında vampirin diğer 5 modeli hakkında bilgi yoktur

26 Vampir Dünyasının Modelleri
1,2 KB = vampir dünyasının kuralları + gözlemler α1 = "[1,2] güvenlidir“ sonucunu vekilin bilgi tabanından ala bilir miyiz?, Başka, değişle KB, α1 cümlesini mantıksal doğuruyor mu? Buna model yoklaması (model checking) yöntemi ile cevap buluna bilir: KB ╞ α1 Model yoklamasında bilgi tabanındaki tüm modeller taranarak, α1 ‘nın çıkarıla bileceği öğrenildi.

27 Vampir Modelleri KB = vampir dünyasının kuralları + gözlemler
2,2 KB = vampir dünyasının kuralları + gözlemler α2 = "[2,2] güvenlidir” (kuyu yoktur)“ KB ╞ α2 Bilgi tabanı α2 cümlesini geçerli yapmaz, çünkü KB’nin doğru olduğu iki modelde bu cümle doğru değildir; 2,2’de kuyu olmamasını, yani, bu karenin güvenli olmasını, yalnız bilgi tabanındaki bilgilerle kesin söyleye bilmeyiz.

28 Mantıksal Çıkarsama (Inference)
Gerektirme, bir sonuca göre diğerinin çıkarıla bildiğini tanımlar. Fakat bu çıkarımın nasıl gerçekleştiğini göstermez. Bunun için mantıksal çıkarsama yöntemleri uygulanmaktadır. 2 genel yöntem: Model yoklaması - KB’nin doğru olduğu tüm modellerde α doğrudur” cümlesini yoklamak için tüm mümkün modeller tarandı. Mantıksal çıkarsama kuralları (sonraki konular) Mantıksal çıkarsama böyle ifade edile bilir: KB ├i α α cümlesi, i yordamı ile KB’den çıkarıla bilir

29 Önermeler mantığı-Propositional logic
Ö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.

30 Önermeler mantığı cümleleri
eğer S1 ve S2 cümle ise, S1  S2 cümledir (anlamını vermek implication) (~S1 v S2) eğer S1 ve S2 cümle ise, S1  S2 cümledir (iki taraflı koşul sağlanması-biconditional) Basit (atomik) cümle- tek bir önermeden oluşur. Basit cümleler arasında mantık bağlayıcıları kullanmakla karmaşık cümleler oluşturulur P1,2  (P2,2  P3,1) = doğru  (doğru  yanlış) = doğru  doğru = doğru

31 gerçeklik tablosu P Q P P Q P Q P Q P Q yanlış doğru

32 Vampir dünyasının önermeler mantığında ifadesi
Pi,j – doğrudur; eğer [i, j] ‘de kuyu varsa. Bi,j -doğrudur; eğer [i, j]’de rüzgar varsa. Kural: “Kuyular komşu karelerde rüzgara neden oluyor“  P1,1 B1,1 B2,1 B1,1  (P1,2  P2,1) B2,1  (P1,1  P2,2  P3,1)

33 Vampir dünyasının basit Bilgi Tabanı
R1:  P1,1 /* [1,1]’de kuyu yoktur */ R4: B1, /* [1,1]’de rüzgar yoktur */ R5: B2, /* [2,1]’de rüzgar var */ R2: B1,1  (P1,2  P2,1) R3: B2,1  (P1,1  P2,2  P3,1)

34 Vampir dünyasında mantıksal çıkarsama için gerçeklik tablosu
Önceki örneklerde gösterilmiş kareler için yalnız rüzgar ve kuyu olup-olmaması değerlendirmeleri dikkate alınmıştır. B rüzgarı, P-kuyuyu simgeler. Örnek anlatım: 1. satırda 1,1 ve 2,1 karelerinde rüzgar olmadığı, diğer karelerde ise kuyu olmadığı ifade edilmiştir. Bilgi tabanında böyle bir bilgi yoktur. “1,2 ‘de kuyu yoktur” doğrudur. Yalnız okla gösterilmiş modeller bilgi tabanında vardır. KB o halde doğrudur ki, R1-R5 kuralları doğrudur

35 Modellerin taranması ile mantıksal çıkarım algoritması
Tüm modellerin derinine taranması geçerli ve tamdır n simge için zaman karmaşıklığı O(2n), uzay karmaşıklığı O(n)

36 Mantıksal eşitlik Eğer aynı cümleler aynı modellerde doğru ise onlar mantıksal eşittirler: α ≡ ß iff α╞ β and β╞ α Commutativity-yerdeğişme Associativity-birleşme Double negation elimination- ikikat değil elemesi Contraposition-zıtlık İmplication elimination “ise” elemesi Biconditional elimination –iki yönlü koşul elemesi Distributivity-dağılma

37 Mantıksal çıkarsama kuralları
Modus Ponens eğer p=>q doğru ise ve p doğru ise, o zaman q doğru olmalıdır Modus Tolens eğer p=>q doğru ise ve q yanlış ise, p yanlış olmalıdır Ve_eleme (And-Elimination) eğer p*q doğru ise, p doğrudur ve q doğrudur Ve_ya eleme (Or-Introduction) eğer p doğru ise, o zaman p+q doğrudur İki kat değil elemesi (Double-Negation Elimination) Değil’in değil’i artıdır

38 Çözünürlük (Resolution)
Bağlayıcılı normal biçim (Conjunctive Normal Form (CNF) cümlelerin ayırmalarının birleşmesi (conjunction of disjunctions of literals clauses) (A  B)  (B  C  D) Çözünürlük çıkarsama kuralı (Resolution inference rule): l1 …  lk, m1  …  mn verilmişse ve li ve mj zıt değerli simgeler ise l1  …  li-1  li+1  …  lk  m1  …  mj-1  mj+1 ...  mn doğrudur. (“, “ “ve” anlamındadır) Örnek: P1,3  P2,2, P2,2 ifadesinden P1,3 çıkıyor, çünki (P2,2 ve P2,2 zıttır)

39 Bağlaçlı normal biçime (CNF) dönüştürme için tavsiyeler
B1,1  (P1,2  P2,1) örneği üzerinde  aradan götürülmeli, α  β ifadesini (α  β)(β  α) ile değişmeli. (B1,1  (P1,2  P2,1))  ((P1,2  P2,1)  B1,1) 2. aradan götürülmeli, α  β ifadesini α β ile değişmeli. (B1,1  P1,2  P2,1)  ((P1,2  P2,1)  B1,1) 3.  , Morgan kuralları ve iki kat değil(double-negation) kullanılmakla ifade içine alınmalı: (B1,1  P1,2  P2,1)  ((P1,2  P2,1)  B1,1) 4. Dağılma (distributivity) kurallarını uygulamalı: (B1,1  P1,2  P2,1)  (P1,2  B1,1)  (P2,1  B1,1)

40 Çözünürlük teoremi Eğer üç p,q ve r önerileri verilmişse
p v r, q v ~r => p v q Çözünürlük algoritması Giriş: aksiyomlar denen öneriler ve amaç Çıkış: aksiyomlardan amaç alına biliyor mu? Başla: Aksiyomlar ve eksi amaçtan oluşan S kümesini oluşturmalı S’in her bir öğesini bağlaçlı normal biçimde (CNF) ifade etmeli a) her bir “eğer … o halde…” ifadesini DEGİL ve VEYA işlemleri ile ifade etmeli. (“Eğer a ise b” ~a v b gibi ifade edilmeli)

41 Çözünürlük algoritması (devamı)
b)Alınmış cümleleri aşağıdaki biçimde ifade etmeli (öneriler “değil” biçiminde de ola bilir) 3. Aşağıdaki adımları Tekrarlamalı a) S kümesinden her hangi iki cümle seçmeli; bu cümleler zıt değerli simge içermelidirler b) bu iki cümleyi çözmeli (Sonuç cümleye çözücü (resolvent) denir). Baba cümleyi S’den çıkarmalı O zamana dek ki, null cümle alınacak veya ilerleme mümkün olmayacak

42 Çözünürlük algoritmasına örnek
Bilgi tabanında aşağıdaki cümleler vardır: Havanın nemliği yüksektir veya gökyüzü bulutludur Eğer gökyüzü bulutlu ise o halde yağmur yağacak Eğer havanın nemliği yüksek ise hava sıcaktır Hava sıcak değil Amaç: yağmur yağacak Çözünürlük teoremi ile amacın bilgi tabanından çıkarıla bileceğini kanıtlayalım. İspatı: p- nemlik yüksektir; q-gökyüzü bulutludur; r-yağmur yağacak; s-hava sıcaktır. Bu cümlelerin CNF biçimleri böyle olacak: Eksi amaç:~r. S kümesinde bu 5 cümle vardır. Sonra çözünürlük algoritması ile uygun çözüm ağacı oluşturuluyor. Sonuçta null cümleye ulaştığımız için amaç ispat edilmiş sayılıyor

43 Resolution example KB = (B1,1  (P1,2 P2,1))  B1,1 α = P1,2
KB ifadesi önce sadeleştirir( “ise” yerine mantık bağlayıcıları kullanılır. Sonra ise De Morgan kuralı uygulanır.

44 Resolution algorithm Proof by contradiction, i.e., show KBα unsatisfiable

45 Horn cümlesi (Horn clause)
Gerçek uygulamalarda bilgi tabanlarının cümleleri genellikle Horn cümlesi biçiminde ifade ediliyor. Horn cümlesi en fazla biri artı olan simgelerin (önerilerin) ayrıçlı biçimidir. Örnek: (~L11 v ~ Rüzgar v B11) (burada L11-vekilin bulunduğu yerdir) (~B11 vP12 V P21) Horn cümlesi değildir Her bir Horn cümlesi implikasyıonla ifade edile bilir; sol taraf eksi önerilerin bağlacı, sağ taraf ise tek artı öneridir Örnek: (~L11 v ~ Rüzgar v B11) böyle yazıla bilir (L11 ^ Rüzgar)=>B11

46 Horn cümlesi-Mantıksal çıkarım
Bir 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) Artısı olmayan Horn cümlesi, sonucu yanlış değer veren implikasyon şeklinde yazıla bilir Örnek: (~W11 v ~W12) aşağıdaki ifadeye eşittir: W11 ^ W12 =>yanlış Belirlenmiş Horn cümleleri Mantıksal Programlamanın temelini oluşturuyor İleri ve Geri zincirleme çıkarsama algoritmaları Horn cümleleri ile çalışıyor

47 İleri zincirleme Temel düşünce: bilgi tabanında her hangi kuralın tetiklenmesi (etkinleştirilmesi), Bunun sonucunun bilgi tabanına eklenmesi Sorgu gerçekleşene dek bu işlemlerin devam ettirilmesi

48 Forward chaining algorithm
Forward chaining is sound and complete for Horn KB

49 İleri zincirleme örneği
İ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 eklenecek Bu süreç Q ilave edilene dek veya yeni çıkarımlın oluşturulması mümkün olmayana dek devam ettiriliyor

50 İleri zincirleme Sayılar her bir kuralda sol tarafta kaç değişkenin tetiklenmeli olduğunu gösteriyor.

51 İleri zincirleme örneği
+

52 İleri zincirleme örneği
+ ++

53 İleri zincirleme örneği
+ ++

54 İleri zincirleme örneği
++ +

55 İleri zincirleme örneği
++

56 Proof of completeness FC derives every atomic sentence that is entailed by KB FC reaches a fixed point where no new atomic sentences are derived Consider the final state as a model m, assigning true/false to symbols Every clause in the original KB is true in m a1  …  ak  b Hence m is a model of KB If KB╞ q, q is true in every model of KB, including m

57 Geri zincirleme Temel 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 etmeli Tekrarlamaları önlemeli: yeni altamacı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ı

58 Geri Zincirleme örneği

59 Geri Zincirleme örneği

60 Geri Zincirleme örneği

61 Geri Zincirleme örneği

62 Geri Zincirleme örneği

63 Geri Zincirleme örneği

64 Geri Zincirleme örneği

65 Geri Zincirleme örneği

66 Geri Zincirleme örneği

67 Geri Zincirleme örneği

68 Forward vs. backward chaining
FC is data-driven, automatic, unconscious processing, e.g., object recognition, routine decisions May do lots of work that is irrelevant to the goal BC is goal-driven, appropriate for problem-solving, e.g., Where are my keys? How do I get into a PhD program? Complexity of BC can be much less than linear in size of KB

69 Inference-based agents in the wumpus world
A wumpus-world agent using propositional logic: P1,1 W1,1 Bx,y  (Px,y+1  Px,y-1  Px+1,y  Px-1,y) Sx,y  (Wx,y+1  Wx,y-1  Wx+1,y  Wx-1,y) W1,1  W1,2  …  W4,4 W1,1  W1,2 W1,1  W1,3  64 distinct proposition symbols, 155 sentences

70

71 Expressiveness limitation of propositional logic
KB contains "physics" sentences for every single square For every time t and every location [x,y], Lx,y  FacingRightt  Forwardt  Lx+1,y Rapid proliferation of clauses t t

72 Summary Logical agents apply inference to a knowledge base to derive new information and make decisions Basic concepts of logic: syntax: formal structure of sentences semantics: truth of sentences wrt models entailment: necessary truth of one sentence given another inference: deriving sentences from other sentences soundness: derivations produce only entailed sentences completeness: derivations can produce all entailed sentences Wumpus world requires the ability to represent partial and negated information, reason by cases, etc. Resolution is complete for propositional logic Forward, backward chaining are linear-time, complete for Horn clauses Propositional logic lacks expressive power

73 Örnekler p, q, ve r önermelerdir: p: Sınava gireceksin
q: Kitaptaki tüm alıştırmaları yaptın r: Dersten A aldın. Bu önermeleri kullanmakla aşağıdaki cümleleri ifade edin: 1. Dersten A aldın, ama kitaptaki tüm alıştırmaları yapmadın Dersten A almak için sınava girmek gerekmektedir. Sınavda A almak ve kitaptaki tüm çalışmaları yapmak , dersten A almak için yeterlidir Çözüm 1 r∧¬q r⇒p 3. p∧q⇒r

74 Yararlı siteler


"Mantıksal Vekiller." indir ppt

Benzer bir sunumlar


Google Reklamları