Reasoning Engine Özge Barbaros Baran Cem Barazi Ümit Kırtıl.

Slides:



Advertisements
Benzer bir sunumlar
ÜNİTE I MANTIK 1. ÖNERMELER a. Mantık
Advertisements

STRİNG FONKSİYONLARI.
ALPER LAÇİN SERDAR TAŞAN
ÖNERMELER VE MANTIK HAZIRLAYAN: AYDIN EREN KORKMAZ
ÖNERME ANALİZİ VE YÜKLEM MANTIĞI Yılmaz KILIÇASLAN.
Değişken , Veri Türleri ve Operatörler
mantIKSAL OPERATÖRLER
Hazırlayan: Hakan Bozkurt.
Yrd. Doç. Dr. M. Fatih HOCAOĞLU Mühendislik ve Mimarlık Fakültesi Endüstri Mühendisliği Bölümü.
Mantıksal Vekiller.
BU KONUDA ÖĞRENECEKLERİMİZ
ÖNERME ANALİZİ VE YÜKLEM MANTIĞI Yılmaz KILIÇASLAN.
MANTIKLI ETMENLER Yılmaz KILIÇASLAN. Tanımlar Mantıklı etmenler şunları yapabilirler:  dünyaya ilişkin gösterimler oluşturabilirler,  dünya ile ilgili.
HAZIRLAYANLAR HATİCE MERVE ÜNAL AYŞE ESKİCİ HİLAL POLAT NURŞAH ERDOĞAN
YAPAY ZEKA Genel Kavramlar hturgut.com
MANTIKLI (BİLGİ TABANLI) ETMENLER Yılmaz KILIÇASLAN.
RİZE ÜNİVERSİTESİ BAHAR YARI YILI MATERYAL DERSİ
MATEMATİK 6. SINIF KONU: KÜMELER.
Kümeler.
YAPAY ZEKA ve UZMAN SİSTEMLER
Kural ve Sorgu Örüntülerinin Düzenlenmesi ile Rete Tabanlı bir Çıkarsama Motorunun Eniyilenmesi Dr. Tuğba Özacar Öztürk Ege Üniversitesi.
Bölüm 3 – Yapısal Programlama
Algoritma ve Akış Diyagramları
TBF Genel Matematik I DERS – 1 : Sayı Kümeleri ve Koordinatlar
Yapısal Program Geliştirme – if, if-else
OPERATÖRLER.
ÜNİTE 2: KILASİK MANTIK KONU KAVRAM ÇEŞİTLERİ.
MANTIKSAL OPERATÖRLER
MANTIK BİLİMİNE GİRİŞ VE ÖNERMELER MANTIĞI Yılmaz KILIÇASLAN.
Formüller Mustafa AÇIKKAR.
KÜMELER GEZEGENİNE HOŞ GELDİNİZ.
İlköğretim matematik öğretmenliği 2. grup
MANTIK PROGRAMLARININ TEMEL YAPILARI VE BİLGİSAYIM MODELİ Yılmaz KILIÇASLAN.
TEMEL KAVRAMLAR.
String class String karakterler dizisidir
Mantıksal Vekiller.
ÖNERMELER MANTIĞI Yılmaz KILIÇASLAN.
Bilgisayar Bilimlerinin Kuramsal Temelleri
KÜMELER.
Bilgisayar Bilimlerinin Kuramsal Temelleri
Mantıksal Programlama-Prolog
Çizge Algoritmaları Ders 2.
ÖNERMELER MANTIĞI Yılmaz KILIÇASLAN. Önermeler Mantığı - Bağlaçlar Yalnızca doğruluk değerleri üzerinden fonksiyonel olarak tanımlanabilen bağlaçlar ve.
MANTIK BİLİMİNE GİRİŞ VE ÖNERMELER MANTIĞI Yılmaz KILIÇASLAN.
MUSTAFA GÜLTEKİN Matematik A Şubesi.
KÜMELER.
Dr. Mehmet Dikmen BİL551 – YAPAY ZEKA MANTIK Dr. Mehmet Dikmen
ÖNERME ANALİZİ VE YÜKLEM MANTIĞI Yılmaz KILIÇASLAN.
Biçimsel Diller ve Soyut Makineler
İLKÖĞRETİM MATEMATİK 8.SINIF
KÜMELER.
Mantığın Temel Kavramları
TAM SAILAR İÇİNDEKİLER TAM SAYI KAVRAMI MUTLAK DEĞER
Veri Madenciligi . Sınıflandırma ve Regresyon Ağaçları ( CART )
Adım Adım Algoritma.
KESİR GÖSTERİMLERİ Kesirlerin somut modellerle gösteriminde dört değişik yol vardır. Bunlar, bölge, çizgi, küme ve alan gösterimleridir. BÖLGE MODELİ.
Kümeler Küme, matematiksel anlamda tanımsız bir kavramdır. Bu kavram "nesneler topluluğu veya yığını" olarak yorumlanabilir. Bu tanımdaki "nesne" soyut.
Bölüm 2 : Yapay Zeka nedir?
Bilgisayar Mühendisliği Bölümü
Prolog ile Mantık Programlamaya Giriş
Bilgisayar ile Çeviri Sistemleri
9.SINIF MANTIK ÖZEL ÇAKABEY OKULLARI
KÜMELER HAZIR MISIN?.
VERİ TÜRLERİ.
Algoritmanın Hazırlanması
BLM-111 PROGRAMLAMA DİLLERİ I Ders-2 Değişken Kavramı ve Temel Operatörler Yrd. Doç. Dr. Ümit ATİLA
Fırat Üniversitesi Mühendislik Fakültesi Elektrik-Elektronik Müh.
Bilgisayar Bilimi Problem Çözme Süreci-2.
Bilgisayar Programlamasına ve Veri Analizine Giriş
NİŞANTAŞI ÜNİVERSİTESİ
Sunum transkripti:

Reasoning Engine Özge Barbaros Baran Cem Barazi Ümit Kırtıl

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

Bir ç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.

Logic 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 öğrenmesi Bilgi(knowledge) ve muhakeme(reasoning) kısmi belirli ortamlarda(partially observable) kritik rol oynar. Örnek: Hastalık teşhisleri

1-)Knowledge-Based Agents Knowledge base: Formal dildeki cümlelerin bir kümesi Knowledge 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.

Basit bir Knowledge-Based Agent yapısı

2.)Mantık Mantı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ğrudur x = 0, y = 6 koşulunun sağlandığı dünyada x+2 ≥ y yanlıştır

Mantı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.

3)Ö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.

Syntax(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)

Semantic: 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 )

Denklik, 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.

4)Ö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.

Bu çı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.

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

Diğer bir çıkarsama kuralı örnekleri:Factoring Logical equivalences

Bu tablodaki mantıksal denklikler çıkarsama kuralları olarak kullanılabilir .

Otomatik Muhakeme-1 Bir küme cümle verilmiş, bu cümlelerden ne sonuç çıkarabiliriz? - Önermeler mantığı şeklinde formülize et, - Sonuç çıkarmak için çıkarsama kuralları kullan.

Ö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ı?

Ö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 ⇒ ¬BP P2: ¬BA ⇒ BP ^ BM Bilgisayar hem zeki hem de bir makine ise güçlüdür. - P3:(BM ∨ ¬BP) ⇒ BG Bilgisayar güçlüyse kullanışlıdır. - P4: BG ⇒ BK

Sonuç çıkarma; - P1: BA ⇒ ¬BP - P2: ¬BA ⇒ BP ^ BM - P3: (BM ∨ ¬BP) ⇒ BG - P4: BG ⇒ BK P1 ve P2 den P5: ¬BP ⇒ (BP ^ BM) P5 ve P3 den P6: BG P6 ve P4 den P7: BK sunucu çıkarılır.

Ileri 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şimi Horn 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.

Horn 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)=>B11 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) (~W11 v ~W12 v W13 ) aşağıdaki ifadeye eşittir: W11 ^ W12 => W13 Belirlenmiş Horn cümleleri Mantıksal Programlamanın temelini oluşturuyor İleri ve Geri zincirleme çıkarsama algoritmaları Horn cümleleri ile çalışıyor

İ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 eklenmesi Sorgu gerçekleşene dek bu işlemlerin devam ettirilmesi

İ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 eklenecek Bu süreç Q ilave edilene dek veya yeni çıkarımların oluşturulması mümkün olmayana dek devam ettiriliyor

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

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

+

+ ++

+ ++

++ +

++

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 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ı