1 / 74

Mantıksal Vekiller

Mantıksal Vekiller. Konular. Bilgi Tabanlı Vekiller Mantık – model ler ve gerektirme ( entailment ) Önerme (ikili) mantığı- Propositional (Boolean) logic Çıkarsama ( Inference ) kuralları İleri zincirleme ( forward chaining ) Geri zincirleme (b ackward chaining )

nickan
Download Presentation

Mantıksal Vekiller

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Mantıksal Vekiller

  2. Konular • Bilgi Tabanlı Vekiller • Mantık – modeller vegerektirme (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 • Basit Bilgi Tabanlı Vekil -Durumları, faaliyetleri ve s. bilgi olarak İfade edebilmeli;-Yeni bilgiler oluştura bilmeli;-Dünyanın özelliklerini mantıksal çıkara bilmeli;-Edindiği Bilgilere uygun hareketler yapabilmeli

  4. Vekilin Bilgi Tabanı • Vekilin bilgilerden yararlana bilmesi için iki modüle ihtiyacı vardır: • bilgitabanına • bilgi çıkarımmodü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 Bilgi Tabanı

  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. Başarım ölçümü altın +1000 puan, ölmek -1000 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 Vampir dünyasının PEAS tasviri

  10. Vampir dünyasının nitelikleri • Tam izlenilebilirHayır – yalnız yerel algılama • BelirlenmişEvet – sonuçlar kesin belirlenmiş • EpizodikHayır – hareketlerin her seviyesinde ardışıklık • StatikEvet – vampirler ve kuyular hareket etmezler • DiskretEvet • 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 olarakifade 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. • Örnekler: x+2 ≥ y cümledir; x2+y > {} cümle değil. Bu söz dizimidir. Örnek cümlenin anlamı: • eğer x+2 sayısı y sayısından küçük değilse x+2 ≥ y doğrudurx = 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= 4cü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 2,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.

  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 • 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. 1,2

  27. Vampir Modelleri 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 S cümle ise, S cümledir (değil-negation) eğer S1ve S2cümle ise, S1 S2cümledir (bağlama-conjunction) eğer S1ve S2cümle ise, S1 S2cümledir (ayırma-disjunction) eğer S1ve S2cümle ise, S1 S2cümledir (anlamını vermek-implication) (~S1 v S2) • eğer S1ve S2cümle ise, S1 S2cü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

  32. Vampir dünyasının önermeler mantığında ifadesi Önermeler: 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,1]’de rüzgar yoktur */ R5: B2,1 /* [2,1]’de rüzgar var */ /* Kuyular komşu karelerde rüzgara neden oluyor */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 vemj 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.

More Related