Yapay Zeka ve Uzman Sistemler

Slides:



Advertisements
Benzer bir sunumlar
Prolog1 M.Fatih Amasyalı
Advertisements

ÖĞRETİM İLKE VE YÖNTEMLERİ
İŞLETİM SİSTEMİ İşletim Sistemi Nedir İşletim Sisteminin Görevleri Kullanıldığı Yerler Örnekler Düzenleyen: Mehhmet Akif BARIŞ.
Algoritma.  Algoritma, belirli bir görevi yerine getiren sonlu sayıdaki işlemler dizisidir.  Başka bir deyişle; bir sorunu çözebilmek için gerekli olan.
1 ECTS VE DİPLOMA EKİ ETİKETLERİ YENİLEME SÜRECİ Hazırlayanlar: Yrd. Doç. Dr. Sinan YILMAZ Okt. Dinçer BİÇER
Değerli Arkadaşlar, aşağıdaki sorular 7. ve 8. sınıflar için özel hazırlanmış dil bilgisi kitabımızdan yararlanılarak oluşturulmuştur. Kendi okulumuzda.
PROLOG. Prolog Programlarının özellikleri: - Programming in Logic teriminin kısaltılmasıyla adlandırılmıştır. - Semboller üzerinde çalışma prensibi üzerine.
Dosya Yönetimi Dosya, Klasör ve Sürücüler HÜSEYİN ALİOSMANOĞLU.

İSİM GRUBU. Bu konu için önerilen literatür: 1. İSİM TAMLAMASI: Leyla Karahan, Türkçede Söz Dizimi, Akçağ Yayınları, 2008, İYELİK GRUBU VE İSİM.
HİPOTEZ TESTLERİNE GİRİŞ 1. Şu ana kadar örneklemden elde edilmiş istatistiklerden yararlanarak, kitle parametresini kestirebilmek için nokta tahmini.
BİLGİSAYAR PROGRAMLAMA MATLAB Yrd.Doç.Dr. Cengiz Tepe.
Hazırlayan: Dr. Emine CABI
TANIMI: TANIMI: Görevdeş sözcükleri,söz öbeklerini veya cümleleri birbirine bağlayan sözcüklere bağlaç denir. Genel olarak söylenirse ya görevdeş öğeleri.
1. Ders Bir, İki ve Üç Yazarlı Eserlerin Kataloglanması Prof. Dr. Bülent Yılmaz Arş. Gör. Tolga Çakmak.
Gereksinim Analizi ve Varlık Ba ğ ıntı Diyagramı Sibel SOMYÜREK.
9. HAFTA 25 Nisan2016. Fonksiyon M-Dosyaları Fonksiyon dosyaları ilk satırda “function” kelimesi bulunan “.m” uzantısı bulunan dosyalardır. MATLAB içinde.
Bağlama ve Kapsam Kavramları
Hazırlayan İSMAİL ŞAHİNER. SORU ÇÖZERKEN!!! Önce soru okunur. Daha sonra parça (metin) okunur. Önce soru okunur. Daha sonra parça (metin) okunur.
ÖTÖ 451 Okul Yönetiminde Bilgisayar Uygulamaları R. Orçun Madran.
Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz.
SIFAT ( ÖN AD) ÖRNEKLER: * Beyaz tahta * Görgülü kişi
BİLGİSAYAR PROGRAMLAMA DERSİ
MESLEĞE YÖNELTME SEMİNERİ
Ders Kitaplarında Cinsiyetçilik....
SEVİYE: 11. SINIF 1. ÜNİTE KAZANIMLAR: Mantık ve Doğru Düşünme arasındaki ilişkiyi değerlendirir. Akıl ilkelerinin önemini değerlendirir. ÖĞRENME – ÖĞRETME.
C Programlama Dili Çağdaş Hakan Aladağ.
BM-103 Programlamaya Giriş Güz 2016 (3. Sunu)
BİLİMSEL ARAŞTIRMA YÖNTEMLERİ ÜNİTE 3
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
ERGEN AİLE İLİŞKİLERİ.
ANKARA ÜNİVERSİTESİ SAĞLIK BİLİMLERİ FAKÜLTESİ SOSYAL HİZMET BÖLÜMÜ
Mantık Sistemleri ve Mantık Programlama
FİİLLERDE ÇATI.
Problem Çözme ve Algoritmalar
ADANA İL MİLLİ EĞİTİM MÜDÜRLÜĞÜ
DOĞAL SAYILAR TAM SAYILAR
MAT – 101 Temel Matematik Mustafa Sezer PEHLİVAN *
CÜMLE TÜRLERİ YÜKLEMİNİN TÜRÜNE GÖRE Fiil Cümlesi
ELEMENTLER.
TEMEL GEOMETRİK KAVRAMLAR VE ÇİZİMLER
KİMYA NE İŞE YARAR  Kimyanın insan sağlığına da sonsuz diyebileceğimiz derecede büyük etkisi vardır. Kimya hastalıklarla savaşmak, sağlığımızı korumak.
Dosya, Klasör ve Sürücüler
Yapay Zeka ve Uzman Sistemler
Bilgi? Öğrenme, araştırma veya gözlem yolu ile elde edilen gerçek,
Temel Bilgisayar Bilgileri
PROBLEM ÇÖZME VE ALGORİTMALAR
PARAMETRİK HİPOTEZ TESTLERİ
Bölüm 7 İfadeler ve atamalar.
NİŞANTAŞI ÜNİVERSİTESİ
Arduino Programlama Dili
Bölüm 4: Kontrol Yapıları I (Seçim Yapma)
YAPISAL PROGRAMLAMA Hafta-4
NİŞANTAŞI ÜNİVERSİTESİ
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
NİŞANTAŞI ÜNİVERSİTESİ
Bilgisayar Bilimi Koşullu Durumlar.
LOJİK KAPILAR (GATES) ‘Değil’ veya ‘Tümleme’ Kapısı (NOT Gate)
Prolog Programlama Dili
Değerler ve Değişkenler
DİL GELİŞİMİ KURAMLARI - II
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
7. Sınıf 2. Ünite: HAC VE KURBAN
NİŞANTAŞI ÜNİVERSİTESİ
MTM216 GÖRSEL PROGRAMLAMA
TÜRK DİLİ VE EDEBİYATI II DERS XI
Limit L i M i T 1981 yılından günümüze, bu konuyla ilgili 17 soru soruldu. Bu konu, türev ve integral konusunun temelini oluşturur. matcezir.
HZ. MUHAMMED VE AİLE HAYATI
ARAŞTIRMANIN YAZILMASI II: BİÇİMSEL KOŞULLAR
Sunum transkripti:

Yapay Zeka ve Uzman Sistemler Aslı Eyecioğlu Özmutlu aozmutlu@bartin.edu.tr

Tübitak Proje Desteği Tübitak Proje Başvurusu http://www.tubitak.gov.tr/tr/burslar/lisans/burs-programlari/2209-a/icerik-destek-kapsami Başvuru Tarihleri: 02 Ekim 2017 - 31 Ekim 2017

Prolog 2005 – Uluslararası Uzay İstasyonu (NASA)’nun Doğal Dil Arayüzü’nde Prolog kullanıldı. 2011 – IBM Watson’ın kodlanmasında Prolog da kullanılan dillerden biridir.

SWI Prolog’la çalışmak SWI Prolog anasayfa :http://www.swi-prolog.org SWI prolog bilgisayara indirilmesi kurulması: https://altugyigit.wordpress.com/tag/prolog-kurulumu/

Deklaratif Programlama Prolog  Dekleratif programlama dili Prosedürel programlamada bilgisayara adım adım ne yapması gerektiğini kodlarız. (Ör: C, Pascal, Java vs.) Dekleratif programlamada bir durum tanımlanır. Bu tanıma göre yorumlayıcı yada derleyici bir çözüm üretir.

Prolog Prolog bir cümlenin doğru / yanlış olduğunu cümle içinde değişken(ler) varsa cümlenin doğru olması için o değişken(ler)in değer(ler)inin ne olması gerektiğini söyler.

Prolog Prolog programları cümleciklerden oluşur. 3 tür cümlecik vard tür cümlecik vardır. – Facts (Gerçekler) daima, koşulsuz olarak doğru olan şeyleri tanımlarlar. – Rules (Kurallar) koşul(lar)a bağlı olarak doğru olan şeyleri tanımlarlar. – Questions (Sorgular) Kullanıcının veritabanını sorgulamak için kurduğu cümleciklerdir.

Swi-Prolog Prolog’da dosyalar ‘pl’ uzantısıyla kaydedilir. Swi-Prolog da kaydedilen dosyayı çalıştırmak için köşeli parantez kullanılır. Dosya adı aile ise ?- [aile.pl]. komutu dosyayi yukler.

Swi-Prolog Bilgi tabanını oluşturan gerçekler ve kurallar .pl uzantılı prolog dosyasına yüklenir. Sorgular Swi-Prolog arayüzünden yapılır.

Prolog Gerçekler (Facts) gunesli. Sorgulama ?- gunesli. yes

Prolog Sözdizimi (Syntax) Gerçekler (Facts) Her zaman küçük harfle başlar ve nokta (.) ile biter. Gerçekler her türlü rakam, büyük harf, _ içerebilir. Fakat matematiksel işaretler ve semboller (‘^+%&/) kullanmaktan kaçınmalıdır.

Prolog Sözdizimi (Syntax) Açıklamalar /* açıklama cümlesi */ şeklinde yazılır. Örnekler: hava_yagmurlu. /* Hava yağmurlu*/ ali_kalemini_unuttu. /* Ali kalemini unuttu*/ merve_anahtarını_kaybetti. /* Merve anahtarını kaybetti*/

Sorgulama Gerçekler Sorgulama hava_yagmurlu. /* Hava yağmurlu*/ ali_kalemini_unuttu. /* Ali kalemini unuttu*/ merve_anahtarını_kaybetti. /* Merve anahtarını kaybetti*/ anahtar. /* Anahtar*/ Sorgulama ?- hava_yagmurlu. True ?- merve_kalemini_unuttu. False

Sorgulama Soru: Aşağıdakilerden hangisi prolog’da yazılan gerçeklerden (facts) biri olamaz? Kalem. Merve_kalemini_unuttu. hava_yagmurlu. 2ev. aRABA.

Gerçekler ve Argümanlar Gerçekler tanımlanırken, ilişkiler ve argümanlar belirtilir. ebeveyn (fatma, ali). /* Fatma, Ali’nin ebeveynidir*/ İlişki adı: ebeveyn İlişkinin argümanları: fatma ve ali

Prolog ve Mantık PROLOG MANTIK Ve A , B A ∧ B Veya A ; B A∨B Ise

AND-OR-NOT Operatörleri AND Operatörünün Kullanımı (Çok Şartlı Sorgular) "nur’un” ebeveyni "ahmet” çocuğu "hasan” mıdır? ?- ebeveyn(ahmet,nur),ebeveyn(nur,hasan). Prolog’un cevabı: True ebeveyni "ayse”, çocuğu "volkan” olan kimdir? ?- ebeveyn(ayse,X),ebeveyn(X,volkan). X = fatma ;

AND-OR-NOT Operatörleri OR Operatörünün Kullanımı (Birden Çok Şartlı Sorgular) "ahmet”, "volkan” yada "nur”un ebeveyni midir? ?- ebeveyn(ahmet,volkan);ebeveyn(ahmet,nur). Prolog’un cevabı: True "volkan” yada "ercan”ın ebeveynleri kimlerdir? ?- ebeveyn(X,volkan);ebeveyn(X,ercan). X = fatma ; X = serdar ; X = fatih ; X = esra ;

AND-OR-NOT Operatörleri NOT Operatörünün Kullanımı (Birden Çok Şartlı Sorgular) ali”, "hasan”ın ebeveyni değildir? ?- not(ebeveyn(ali,hasan)). Prolog’un cevabı: True ebeveyni "ali”, olup, çocuğu "can” olmayan "bülent” midir? ?- ebeveyn(ali,bulent),not(ebeveyn(bulent,can)). Prolog’un cevabı: False ebeveyni "ali” olup çocuğu "can” olmayan kimdir? ?- ebeveyn(ali,X),not(ebeveyn(X,can)). X = fatma ; X = fatih ;

Değişkenler Değişkenler her zaman büyük harfle başlar. İçerisinde büyük/küçük harf, alt çizgi vb. olabilir. Örnekler: X Degisken Yenen_yemek YeMEK

Değişkenler ‘Ahmet ne yedi?’ sorusunu nasıl sorarız: yedi(ahmet, elma). ?- yedi(ahmet, ne). => Yanlış ?- yedi(ahmet, Ne). => Doğru Ne= elma True

Değişkenler Değişkenlerle ilişkileri sorgulama ebeveyn(Kim, fatma). Kim = ali ; Kim = ayse. /* sorgulamaya devam etmek icin ‘;’ kullanilir Sorgulamayi bitirmek icin enter kullanilir. */

Değişkenler Değişkenlerle ilişkileri sorgulama Nur’un çocukları kimlerdir? ?- ebeveyn(nur, Cocuk). Kimler kimlerin çocuğudur? ?- ebeveyn (Ebeveyn, Cocuk).

İlişkileri sorgulamak Nur’un büyük ebeveyni (grandparent) kimdir? Bilgi tabanımızda büyük ebeveyn diye bir ilişki tanımlı değil. Büyük ebeveyn ilişkisi iki ebeveyn ilişkisinin ‘ve’ lenmesiyle elde edilebilir. ?- ebeveyn(Y, nur), ebeveyn(X, Y). Nur’un ebeveynine Y dersek, Y’nin ebeveyni Nur’un büyük ebeveyni (X) dir.

İlişkileri sorgulamak Torun ilişkisi de benzer biçimde tanımlanabilir. ahmet, X’in ebeveyni, X, Y’nin ebeveyni ise Y, ahmet’un torunudur. ?- ebeveyn(ahmet,X), ebeveyn(X, Y). X = nur, Y = hasan .

İlişkileri sorgulamak Esra ve Ali’nin ortak ebeveyni var mı? ?- ebeveyn(Ebeveyn, esra), ebeveyn(Ebeveyn, ali). Fatih ve Fatma’nın ortak ebeveyni var mı? ?- ebeveyn(Ebeveyn, fatih), ebeveyn(Ebeveyn, fatma).

Kurallar Kurallar iki kısımdan oluşur: 1. head: böyledir (sonuç, çıkarım) 2. body: eğer head ve body kısmı :- sembolü ile bağlanır. Kural: cocuk(X,Y) :- ebeveyn(Y,X). Sorgu: cocuk(X,Y).

Kurallar Kural: cocuk(X,Y) :- ebeveyn(Y,X). Sorgu: cocuk(X,Y). X=fatma Y=ali Çalışma Mekanizması: cocuk ilişkisi için gerçek ara Yok => cocuk ilişkisi için kural varsa uygula Kuralda X fatma , Y ali ile eşleştirilerek kuralın bir gerçeklemesi bulunur. ebeveyn(ali,fatma). gerçeği aranır. Bulunduğunda kuralın eğer kısmı doğrulandığından böyledir kısmı da doğrulanmış olur ve prolog “yes” cevabını verir.

Anne ilişkisi Tüm X ve Y ler için, X, Y’nin annesidir Eğer X, Y’nin ebeveyni ise ve X kadınsa. İlişkinin Prolog’da ifadesi : anne(X, Y) :- ebeveyn(X, Y), bayan(X). 29

Kız Kardeş İlişkisi Tüm X ve Y ler için, X, Y’nin kız kardeşidir Eğer X ve Y aynı ebeveyne sahip ise ve X bayansa İlişkinin Prolog’da ifadesi : kızkardes(X, Y) :- ebeveyn(Z, X), ebeveyn(Z, Y), bayan(X). Sorgu: kızkardes(X,nur). female 30

Hala İlişkisi hala(Z,Y):- ebeveyn(X,Y), bay(X), kızkardes(Z,X). 31

Yararlanılan Kaynaklar http://www.yazilimindunyasi.com/diger-yazilim-dilleri/435-prolog-programlama-ders2-or-not-and-kullanimi.html#sel=16:1,16:42 Aybars Uğur, Yapay Zeka Ders Notları. Novruz Allahverdi, Uzman Sistemler bir yapay zeka uygulaması, Nobel Akademik Yayıncılık, 2002 Vasif Nabiyev, Yapay Zeka, Seçkin Yayıncılık, 2016, 5. Baskı

Teşekkürler Aslı Eyecioğlu Özmutlu aozmutlu@bartin.edu.tr