Yapay Zeka Teknikleri – Bulanık Mantık

Diyelim ki kanarya, kartal, tavuk, penguen, ve yarasadan bahsediyoruz. ‘A’, bunlardan her hangi birisinin yerini tutacak şekilde, söze “A bir kuştur” diye başlıyoruz.İlk bakışta bu ifademiz hepsi için doğruymuş gibi görünebilir.Bu ifademizi yanlış bulup rahatsızlık hissedenler de çıkacaktır.Çünkü, kanarya, kartal, ve yarasa uçabilirler, fakat tavuk ancak bir kaç metre uçabilir.Penguense yüzmeyi tercih eder.Yarasa memelidir, doğurarak ürer, diğer hepsi yumurtlar.Kanarya ve kartal için bu cümle, diğerleri için olduğuna göre, daha doğru görünmektedir.Bu hayvanların her biri için bu cümle farklı derecelerde doğru gibi görünmektedir.

Şu kıyaslamaya bakalım :Socrates bir insandır.Tüm insanlar ölümlüdür.Öyleyse, Socrates ölümlüdür.

Bunu aşağıdaki gibi değiştirelim:Socrates çok sağlıklıdır.Sağlıklı insanlar çok uzun zaman yaşarlar.Öyleyse, Socrates çok uzun zaman yaşayacaktır. Bunu klasik mantıklarla ifade etmek kolay değildir.Üstelik, klasik mantık (‘doğru’ ve ‘yanlış’tan oluşan iki-değerli) sistemlerinin çoğu, bu tür cümleleri ilgi alanlarının dışında bırakırlar.Fakat bu tür cümleleri ve kıyaslamaları günlük yaşantımızda çok sıklıkla kullanırız.

Bu yazının amacı, sizlere, bunlara benzer ve belirsizlik içeren diğer cümlelerden çıkarımlar yapmakta, diğer bir deyişle ‘yaklaşımsal nedenselleme’de (‘yaklaşımsal akıl yürütme’ de diyebiliriz), kullanılan mantık türlerinden birisi olan “bulanık mantık”ı (fuzzy logic) tanıtmak.

Bulanık mantık kullanan sistemlerle metroların işleyişi kontrol ediliyor, televizyonların alıcıları ayarlanıyor, bilgisayar disklerinin kafaları kontrol ediliyor, kameralar görüntüye odaklanıyor, klimalar, çamaşır makineleri, elektrikli süpürgeler ayarlanıyor, buzdolaplarının buzlanması engelleniyor, asansörler ve trafik lambaları programlanıyor, otomobillerin motorları, süspansiyonları, emniyet firen sistemleri kontrol ediliyor, füzeler, çimento karıştırıcılar kontrol ediliyor, robot kolları yönlendiriliyor, karakterler, nesneler tanınıyor, golf kulüpleri seçiliyor, hatta çiçek düzenlemesi yapılıyor.

Bulanık sistemler, eğitilebilir dinamik sistemlerdir.Bir fonksiyonu, çıktıların girdilere ne şekilde bağlı olduğunun matematiksel modelini bilmeksizin tahmin ederler.Sayısal, bazen dilsel örnek verilerden “deney yoluyla” öğrenirler. Uyarlanabilir bulanık sistemler, karmaşık süreçleri kontrol etmeyi, neredeyse bizler gibi öğrenebilirler.

Bulanık Önermeler Mantığına Göre Karar Verme

Karar vermede kullanılan bilgiler her zaman kesinlik derecesinde bilinmeyebilir. Yöneticiler genellikle karar verirken “Normal”, “Yaklaşık”, “Civarında”, Genellikle” gibi terimler kullanmaktadırlar. Bu terimlere dlisel değişkenler denilmektedir. Bilgisayarında bunlar gibi dilsel değişkenleri kullanarak kararlar verebilmesi gerekmektedir. Bulanık önermeler mantığı bu amaçla geliştirilmiş bir teknolojidir. Bulanık önermeler mantığı ilk defa Zadeh (1965) tarafından ortaya atılmıştır. Bu teknoloji matematikteki klasik set teorisi yerine bulanık set teorisini getirmektedir. Klasik set teorisinde bir nesne bağlı olduğu kümenin ya elemanıdır ya da elemanı değildir. Bulanık set teorisinde ise her elemanın ilgili sete bir üyelik değeri vardır. Bütün elemanların üyeliklerini gösteren fonksiyona ise üyelik fonksiyonu denmetkedir. Üyelik değeri 0-1 arasında bir değer olup, 0 hiç üye olmamayı, 1 ise tam üye olmayı göstermektedir.

Bulanık önermeler mantığında öncelikle ilgili olayı gösteren dilsel değişkenler oluşturulur ve bu değişkenlerin üyelik fonksiyonları belirlenir. Bu işlemlere bulanıklaştırma denir. Daha sonta bilgiler bulanık muhakeme yolu ile işlenir ve çözüm belirlenir. Bulanık önermelerde çözüm bir veya bir kaç değer yerine bir alanı gösterir. Çözümün anlamlı olabilmesi için bu alanın da anlamlı değerlere dönüştürülmesi gerekmektedir. Bunun içinde bazı teknikler geliştirilmiştir.

Problem ve Çözümü

Problem: Yeni ürünlere fiyat belirlerken kurumun piyasadaki rakiplerinin durumu ve ürünün maliyeti önemli bir unsur olmakla birlikte kurum içindeki birimlerin görüşleride önemlidir. Pazarlama departmanı ürünün çok satmasını sağlamak amacı ile fiyatın düşük olmasını istemektedir. Muhasebe departmanı ise satışlardan mümkün olduğu kadar çok para girmesi için fiyatın yüksek olmasını isteyecektir. Üretim birimi ise ürünün birim maliyetini hesaplayacaktır. Belirlenen fiyatın herkes tarafından kabul görmesi çok önemlidir.

Bu konuda fiyatın yüksek ve düşük olup olmadığını anlayacak bilgisayar sistemlerine ihtiyaç vardır. Bu amaçla geliştirilmiş olan bulanık mantığa dayalı bir zeki karar destek sistemi oluşturulabilir. Aşağıda yeni bir ürüne fiyat belirlemede kullanılan bir zeki sistemin yapısı ve çalışması anlatılmıştır.

Beklenen Karar: Maliyeti 12 birim olan ve rakiplerin 22 liraya sattığı ürünün fiyatı kaç lira olmalıdır? Zeki sistemin bu soruyu cevaplaması beklenmektedir.

Çözüm: Bulanıklaştırma bir problemin üzerinde karar vermeyi sağlayacak olan dilsel değişkenleri belirlemek ve bu dilsel değişkenlerin üyelik fonksiyonlarının belirlenmesidir. Böyle bir sistemin karar vermesi için bazı kriterlerin belirlenmiş olması gerekmektedir. Bu örnekte de yeni ürün fiyatının belirlenmesinde kurum müdürlerinin görüşleri alınmıştır. Problemin daha kolay anlaşılmasını sağlamak için sadece 4 adet dilsel değişken kullanılmıştır. Bunlar aşağıda görülmektedir.

Burada fiyatın düşük olması, maliyetin yaklaşık iki katı olması, rakip fiyat civarında olması ve fiyatın yüksek olması dilsel değişkenlerdir. Bu değişkenlerin üyelik fonksiyonları belirlenmelidir.

Üyelik Fonksiyonunun Belirlemesi

Yukarda bahsedilen kriterlerin her biri için bir üyelik fonksiyonuun belirlenmesi gerekmektedir.Bu fonksiyon genellikle üçgen şeklindedir. Aşağıdaki şekil bir üyelik fonksiyonunu göstermektedir.

 Üyelik fonksiyonu örneği
Üyelik fonksiyonu örneği

Üyelik kadar ve Y değerinden sonra 0 değerini almaktadır. A ile M arasındaki değerler için 0′dan 1′e doğru yükselmekte ve M değerinden Y değerine kadar da 1′den 0′a doğru azalmaktadır. Bu şekil üzerinde dilsel değişkenin (kriterlerin) her değerlerine karşılık gelen bir üyelik değeri mutlaka vardır.

Yukarıda belirtilen dilsel değişkenler ışığında firma yeni ürüne fiyat belirleyecektir. Farklı değişkenler için belirlenen üyelik fonksiyonlarının birleştirilmesinde (Toplanması, çarpılması, çıkartılması vb. gibi) uygulanan matematiksel işlemler Zimmermen (1994) tarafından açıklanmıştır. Genel olarak eğer iki değişkenin birlikte sağlanması isteniyorsa üyelik fonksiyonlarından minimum olanı, herhangi birisinin olması arzu ediliyor ise o zaman ikisinin üyelik değerlerinin maksimum olanı alınmaktadır. Aşağıda örnekte bu durum açıklanacaktır.

Bu örnekte belirlenen değişkenlerin her biri için üyelik fonksiyonları  gösterildiği gibi belirlenebilir.

Üyelik fonksiyonu örnekleri
Üyelik fonksiyonu örnekleri
Üyelik fonksiyonu örnekleri
Üyelik fonksiyonu örnekleri
Üyelik fonksiyonu örnekleri
Üyelik fonksiyonu örnekleri

Karar Verme

Bilgisayarın bulanık mantığa göre karar vermesi önceki yukarda belirtilen kriterlerin hepsinin sağlayabilecek nitelikteki çözüm noktasını bulmak ve bu alanı tek bir değere indirgemektir. Çözüm önerilerini belirlemek için ilgili üyelik fonksiyonları üst üste konularak en uygun üyelik değerleri belirlenir. Burada bütün kriterlerin sağlanması istendiğine göre üyelik fonksiyonlarından en küçük olanları alınacak demektir. Üyelik fonksiyonları üst üste konulur ise o zaman hepsinin ortak noktası en küçük üyelik fonksiyonları ile sınırlı bölgedir. Aşağıdaki şekildeki taralı alan çözüm kümesini göstermektedir.

Bulanık mantığa göre çözüm alanı
Bulanık mantığa göre çözüm alanı

Netleştirme (Defuzifikasyon)

Çözüm alanındaki herhangi bir noktaya karşılık gelen bütün noktalar kriterleri sağlamaktadır. Defuzifikasyon bu çözüm alanından tek bir değer elde etmek işlemidir. Bunun için değişik yöntemler geliştirilmiştir. En yaygın olarak kullanılanları, çözüm uzayındaki en büyük üyelik değeri olan noktaya karşılık gelen değeri seçmektir. Bunun mümkün olmadığı durumlarda da en yüksek üyelik değerleri olan noktaların ortasını almak veya çözüm alanının ağırlıklı ortalaması olan noktayı seçmektir. Bu örnekte bir tane en yüksek nokta olduğundan ona karşılık gelen değer çözüm önerisi olarak alınmıştır. Aşağıda bu durum gösterilmektedir. Sonuç olarak yeni ürüne 23.75 birim fiyatının konulması uygun olarak bulunmuş ve yöneticiye önerilmektedir. Bu aslında bütün departmanların istediklerini karşılayabilecek nitelikte bir değerdir.

Bulanık çözümden belirli çözüme geçiş
Bulanık çözümden belirli çözüme geçiş

 

7,310 total views, 2 views today