1 / 78

YAPAY ZEKA ve UZMAN SİSTEMLER

YAPAY ZEKA ve UZMAN SİSTEMLER. Ders Notu - 6 Mantıksal Ajanlar. Konular. Bilgi Tabanlı Ajanlar Mantık – model ler ve gerektirme ( entailment ) Önerme (ikili) mantığı- Propositional (Boolean) logic Yüklemler Mantığı Çıkarsama ( Inference ) kuralları

jenski
Télécharger la présentation

YAPAY ZEKA ve UZMAN SİSTEMLER

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. YAPAY ZEKA ve UZMAN SİSTEMLER Ders Notu - 6 Mantıksal Ajanlar

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

  3. Basit Bilgi Tabanlı Ajan Basit Bilgi Tabanlı Ajan -Durumları, faaliyetleri v.s. bilgi olarak İfade edebilmeli; -Yeni bilgiler oluşturabilmeli; -Dünyanın özelliklerini mantıksal çıkarabilmeli; -Edindiği bilgilere uygun hareketler yapabilmeli Bilgi tabanlı bir etmen, eylemlerini seçmeden önce şu anki durumun gizlenmiş yönlerini belirleyebilmek için genel bilgi ile o anki duyumlarını birleştirebilir.

  4. Bilgi Tabanlı Etmenler ve Esneklik • Bilgi tabanlı etmenler, yeni görevleri açık olarak tanımlanmış hedefler şeklinde kabul etme yeteneğine sahiptirler. • Ortam hakkında yeni bilgilerin kendilerine söylenmesi veya öğrenme yoluyla yeteneklerini çok çabuk geliştirebilirler. • İlgili bilgilerini güncelleyerek ortamdaki değişikliklere uyum sağlayabilirler.

  5. Bilgi Tabanlı Etmenlerin Ayrıntılı Tasarımı - I • Bilgi tabanlı bir etmenin ana bileşeni bilgi tabanıdır (Knowledge Base - KB). • Basitçe, bilgi tabanı bir cümleler kümesidir. (Burada ‘cümle’ teknik bir terim olarak kullanılmıştır. İngilizce ve diğer doğal dillerin cümlelerine benzer fakat aynı değildir.) • Her cümle bilgi gösterim dili adı verilen bir dil ile ifade edilir ve dünya hakkında bazı bildirimleri betimler.

  6. Bir bilgi-tabanı birinin dünya hakkında bildiklerinin temsillerinin bir kümesidir (nesneler ve nesne sınıfları, nesneler hakkındaki gerçekler, nesneler arasındaki ilişkiler vb.) • Ayrı ayrı her bir temsil bircümleolarak adlandırılır. • Cümleler bir bilgi temsil dilinde ifade edilir. • Cümle örnekleri • Ay yeşil peynirden yapılmıştır • A doğruysa B doğrudur • A yanlıştır • Tüm insanlar ölümlüdür • Konfiçyüs bir insandır

  7. Bilgi Tabanlı Etmenlerin Ayrıntılı Tasarımı – II • Yeni cümlelerin bilgi tabanına eklenmesi ve bilinenlerin sorgulanması için bir yöntemin olması gereklidir. • Bu görevler için standart isimler sırasıyla şunlardır: TELL (SÖYLE) ve ASK (SOR). • Her iki görev de çıkarım (yani eskilerinden yeni cümleler üretme işlemi) içerebilir.

  8. Ajanın Bilgi Tabanı Ajanın 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: Ajanın ö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 Ajanın tüm yaşamı boyunca öğrenme süresince değişmektedir

  9. Çıkarsama Modülü • Ajan, 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.

  10. Bilgi Tabanlı Ajan Ajanın Dünyası Mantıksal Çıkarsama Bilgi Tabanı Ajan

  11. Çıkarım motoru giriş ve KB’ den yeni cümleler türetir • Çıkarsama mekanizması KB’ deki temsile bağlıdır • Ajan aşağıdaki gibi davranır: • 1. Çevreden algı alır • 2. Hangi hareketi yapması gerektiğini hesaplar (IE ve KB’ den) • 3. Seçilen hareketi yapar (bazı hareketler basitçe çıkarılan yeni gerçekleri KB’ ye eklemektir). Çıkarım Motoru Çevreden giriş Çıkış (hareketler) Öğrenme (KB güncelleme) Bilgi Tabanı

  12. Ajanın tanımlanması • Ajanlar 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)

  13. Basit Bilgi Tabanlı Ajan Programı function BT-ETMEN( duyum )returns eylem static: BT, bilgi tabanı t, sayaç, başlangıçta 0, zamanı belirtir TELL(BT, DUYUM-CÜMLESİ-YAP(duyum, t)) eylem ASK(BT, EYLEM-SORGUSU-YAP(t)) TELL(BT, EYLEM-CÜMLESİ-YAP( eylem, t ) t  t + l return eylem Bilgi Tabanında (KB) başlangıçta ön bilgiler tutuluyor. Her zaman anında Ajan 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.

  14. KB farklı seviyelerde görülebilir • Bilgi Seviyesi. • En soyut seviyedir– etmen bildiğine göre tanımlanır. • Örnek: Bir taksi ajanın Golden Gate Köprüsünün San Francisco ve Marin County’yi birbirine bağladığını bilebilir. • Mantıksal Seviye. • Bilginin cümleler içine kodlandığı seviyedir. • Örnek: Links(GoldenGateBridge, SanFrancisco, MarinCounty). • Yürütme Seviyesi. • Etmen mimarisinin üzerinde çalışan seviye. Mantıksal seviyedeki cümlelerin fiziksel temsillerinin bulunduğu seviyedir. • Örnek: “(Links GoldenGateBridge, SanFrancisco, MarinCounty)”

  15. Deklaratif ve Prosedürel ProgramlamaKarşıtlığı • Bilmesi gereken kendisine SÖYLEnerek bilgi tabanlı bir etmen kolaylıkla oluşturulabilir. • Etmenin duyumları almaya başlamadan önceki başlangıç programı, tasarımcının ortam hakkındaki bilgisini betimleyen cümlelerin tek tek eklenmesi ile oluşturulur. • Bilginin basit cümleler şeklinde ifade edilmesini sağlayan gösterim dilinin tasarlanması, etmen programı oluşturulması sorununu oldukça kolaylaştırır. • Buna sistem oluşturmada deklaratif yaklaşım denir. • Karşıtı olan prosedürel yaklaşım istenen davranışları doğrudan program kodu olarak kodlar. Açık bir belirtimin ve akıl yürütmenin rolünün düşük seviyede tutulması, çok daha etkin bir sistemin ortaya çıkmasını sağlar.

  16. Vampir Dünyası • Vampir dünyası, geçitlerle birbirine bağlanmış odalardan oluşan bir mağaradır. • Mağaranın herhangi bir yerinde Vampir adlı odasına her gireni yiyen bir canavar saklanmıştır. • Vampir, ajan tarafından vurulabilmektedir, fakat etmenin yalnızca bir tane oku vardır. • Bazı odalarda, (içine düşemeyecek kadar büyük olan wumpus hariç) içine gireni yutan dipsiz kuyular vardır. • Bu ortamda yaşamanın tek iyi yanı, bir altın yığını bulma ihtimalidir.

  17. Vampir dünyasının PEAS tasviri 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

  18. Vampir dünyasının PEAS tasviri • Gerçekleştiriciler: • Ajan ileri gidebilir, 90° sola veya sağa dönebilir. • Ajan, kuyu veya canlı Vampir olan bir odaya girdiğinde talihsiz bir şekilde ölür. (Ölü bir Vampir olan odaya girmek, her ne kadar pis kokulu olsa da, güvenlidir.) • Eğer ajanın önünde bir duvar varsa, ileri gitmenin hiçbir etkisi yoktur. • Altını Al eylemi ajanla aynı karede bulunan herhangi bir nesneyi almada kullanılabilir. • Ok at eylemi, ajanın karşısında olan yöne düz bir çizgi şeklinde ok atması için kullanılabilir. Ok, Vampire veya bir duvara çarpana kadar yoluna devam eder. Vampire çarptığında öldürür. Ajanın sadece bir oku vardır. Bu sebeple sadece ilk Ok at eyleminin bir işlevi vardır.

  19. Vampir dünyasının PEAS tasviri • Algılayıcılar:Ajanın, her biri bir miktar bilgi veren beş adet algılayıcısı vardır: • Vampirin olduğu ve (köşegen değil) doğrudan komşu olan odalarda, etmen bir koku duyacaktır. • Bir kuyuya doğrudan komşu olan karelerde, ajan bir esinti hissedecektir. • Altının olduğu karede, ajan bir parıltı algılayacaktır. • Ajan bir duvara çarptığında, bir çarpma algılayacaktır. • Vampir öldürüldüğünde, mağaranın her tarafından duyulabilecek acıklı bir çığlık atar. • Duyumlar ajana beş simgeden oluşan bir liste şeklinde verilecektir. Örneğin, pis bir koku ve rüzgar varken, parıltı, çarpma veya çığlık yoksa, ajanın alacağı duyum [Koku, Esinti, Yok, Yok, Yok] şeklinde olacaktır.

  20. 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-Ajan?Evet

  21. Ajan Bilgisinin Başlangıç Durumları (a) [Yok, Yok, Yok, Yok, Yok] (b) [Yok, Esinti, Yok, Yok, Yok]

  22. Ajanın İlerleyişindeki İki İleri Seviye (a) [Koku, Yok, Yok, Yok, Yok] (b) [Koku, Esinti, Parıltı, Yok, Yok]

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

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

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

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

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

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

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

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

  31. Mantıklı Düşünmenin Temel Bir Özelliği • Mevcut olan bilgiden etmenin bir sonuca ulaştığı her durumda, mevcut bilgi doğru olduğunda ulaşılan sonuç doğru olma garantilidir. • Bu mantıklı düşünmenin temel bir özelliğidir.

  32. Monoton olmayan Lojik Çok değerli Lojik Kipsel Geçici Yüksek Derece Olasılıksal Lojik Birinci Derece Önermesel Lojik Bulanık Lojik Bilgi Temsil Dili Olarak Lojik

  33. 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)

  34. Önermesel Lojik: Syntax • Semboller: Lojiksel sabitler: true (T), false (F) Önermesel semboller: P, Q, S, ... Lojikselbağlaçlar: ...conjunction (and) ...disjunction (or) ~ ...negation (not) => ...implication (if) <=> ...logical equivalence (if and only if) parantezler: ( … ) • Bir öneri (önerme sembolü ile gösterilen) ya doğru ya da yanlış olan fakat hem yanlış hem doğru olmayan bir deklaratif(tanıtan) ifadedir. • Ay yeşil peynirden yapılmıştır (F) • Malatya, Elazığ’a Bursa’dan daha yakındır (T) • P = NP (gerçek bilinmiyor)

  35. Cümle • T veya F’nin kendisi bir cümledir • Her bir öneri sembolleri P, Q, ... cümledirler • Eğer S cümleyse (S) de cümledir • S1 ve S2 cümleyse S1 S2, S1 S2, S1 => S2,S1 <=> S2, ~ S1ler de cümledirler • Hiç birşey bir cümledir • Mantıksal bağlaçlarınöncelik sırası ~ , , , => , <=> • Mantıksal bağlaçların minimum kümesi (~ , ), ya da (~ , ) • Atomic cümleler: T, F, P, Q, ... • Literals: atomic cümleler ve onların olumsuzları

  36. Önermesel Lojikte Cümlelerin Bir BNF Grameri S := <Sentence> ; <Sentence> := <AtomicSentence> | <ComplexSentence> ; <AtomicSentence> := "T" | "F" | "P" | "Q" | "S" ; <ComplexSentence> := "(" <Sentence> ")" | <Sentence> <Connective> <Sentence> | ~<Sentence> ; <Connective> := |  | => | <=> ; <literal> := <AtomicSentence> | ~ <AtomicSentence>

  37. Önermesel Lojik cümle örnekleri • P “hava sıcak“ anlamına gelir • Q “hava nemli" anlamına gelir • R “yağmur yağıyor"anlamına gelir • P ^ Q => R “Eğer hava sıcak ve nemliyse yağmur yağıyordur." • Q => P “Eğer hava nemliyse, hava sıcaktır." • Q “Hava nemlidir."

  38. 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

  39. Önermesel Lojik (PL): Semantics • Verilen bir cümleler kümesi için sembollerin yorumlarınaihtiyaç vardır • Öneri sembollerinin kendilerinin bir anlamı yoktur • Bir yorum öneri sembollerini dünya hakkındaki bir ifadeye bağlar (bu dünyada doğru ya da yanlış olabilir) • PL’de bir yorum, içerilen tüm öneri sembollerine doğruluk değerlerinin bir ataması olarak tanımlanabilir • Verilen bir cümleler kümesi için bir çok yorum vardır (eğer n ayrı öneri sembolünü içeriyorlarsa 2^n ) • Örnek: I_1: P: hava nemli (T) Q: hava sıcak (T) P ^ Q doğrudur I_2: P: ay yeşil peynirden yapılmıştır (F) Q: mutluyum (T) P ^ Q yanlıştır

  40. Lojiksel bağlaçlar için doğruluk tablosu • Her lojiksel bağlaca bir anlam ver • Bir bağlaç bir fonksiyondur (boolean), • Herhangi belirli bir yoruma bağlı değildir (tüm Pl cümleleri için evrenseldir) • En iyi bir doğruluk tablosuyla tanımlanabilir • Her cümlenin doğruluk değeri o zaman hesaplanabilir

  41. PL’de denklik kuralları (her iki taraf aynı doğruluk tablosuna sahip) • P => Q ~P v Q • P <=> Q (P => Q) ^ (Q => P) • Dağılım kuralı P ^ (Q v R) P ^ Q v P ^ R P v (Q ^ R) (P v Q) ^ (P v R) • De Morgan kuralı ~(P v Q v R) ~P ^ ~Q ^ ~R ~(P ^ Q ^ R) ~P v ~Q v ~R

  42. Bazı Terimler • Bir model her cümlenin Doğru olduğu bir cümleler kümesinin bir yorumudur. Bir model dünya için “yerini alan” tam bir biçimsel matematiksel yapıdır. • Bir cümle bazı yorumlama(lar)da Doğru ise tatmin edilebilirdir • Bir geçerli cümle ya da totoloji(analitik cümleler) bütün mümkün dünyada bütün yorumlamalar altında doğrudur, dünyanın gerçekten ne olduğuna ya da semanticin ne olduğuna vb. bakmaz • Tutarsız cümle ya daçelişkitüm yorumlamalar altında Yanlış olan bir cümledir. Mesela dünya, onun tarif ettiğine hiç benzemez • P gerektirir Q (P entails Q)(Q,P’nin bir mantıksal sonucudur, Q mantıksal olarak P’yi takip eder), P |= Q şeklinde yazılır.Ne zaman P Doğru olsa Q da Doğru olur.Diğer deyişle P’nin tüm modelleri aynı zamanda Q’nun da modelidir.

  43. Kompleks Cümlelerin Modelleri(Venn diyagramları)

  44. 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}…

  45. Mantıksal Sonuç (Entailment) Mantıksal Sonuç- bir sonuçtan diğer bir sonucun mantıksal alınmasıdır: α ╞ β α ‘nın doğru olduğu tüm modellerde β doğru ise,β cümlesi, α cümlesinin mantıksal sonucudur. Yani, α ’nin doğru olması, β‘nın da doğru olması anlamını veriyor . «X çiçektir» önermesi «X güldür» önermesinin mantıksal sonucudur. Çünkü tüm güller çiçektir. gül╞çiçek X ve Y’nin tüm eksi olmayan değerlerinde, yani, tüm (x>=0,y>=0) modellerinde x+y>=0 cümlesi, X 2 + Y 2 >=0 cümlesinin mantıksal sonucudur: X 2 + Y 2 >=0 ╞x+y >=0

  46. Vampir dünyasında mantıksal sonuç alma [1,1]’de Ajanı 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

  47. 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. Ajanın 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. 1,1 2,1

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

  49. Vampir Dünyasının Modelleri KB = vampir dünyasının kuralları + gözlemler α1 = "[1,2] güvenlidir“ sonucunu Ajanın 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 1,1 2,1

  50. Vampir Modelleri 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. 2,2 1,1 2,1

More Related