Merhaba Uzaylılar :)
Bu bir Yapay Zeka (YZ) üzerine tartışma konusudur. Devam ettikçe kod örneklerine (tabi katılım yeterli olursa) yer vermek istiyorum. Bayram boyunca zihnimi meşgul eden basit bir uygulamalı proje var; bir sohbet ortamında patlak veren!
Birbirini gören ve X/Y hareket eden 2 Birim (LASER ışık yayan/LDR ışık algılayan) robotik yapı var. Her şey olabildiğince basit indirgemeliyiz o yüzden bi'şey yapmak gerekiyor, ultra süper ötesi bi'şiiii :D
Ne tür bi'şey! Elbette bu bir YZ Motoru olacak. Hani telefonunuzda, orada, şurada YZ olduğunu iddia eden onlarca şey. Karmaşık değil ama biraz Turing Machine havasında. Mesala** 2 yardımcı işlevimiz (helper functions) var:
- verileriKaydet();
- verileriKullan();**
Buraya kadar fiziki olarak da basit (Arduino ile 1 saatlik olay), algoritmik olarak da öyle (taş çatlasa yarım saat!). Şimdi hedefe (enerjini bitirme, enerjik ol, enerjiye yönel, onu bul, onu hisset, tahmin et, takip et vb.) yönelten** 2 ana işlevler (main functions) var:
- bekleVeGör();
- taraVeBul();**
Bütün bunlar düşünce temelli. Henüz tek satır kod ve grafiksel bir planlama yapmadım. Heyecanımdan ötürü kusura bakmayın, şimdilik bu kadar! Ancak hayal edin %50'nin üstünde şarjı olan bir robotumuz (Z) var ve tek harcadığı enerji X/Y motorlar ve ışığı algıladığı müddetçe şarjını sabit bir kaynaktan (güneş paneline, yetip yetmemesine takılmayın) alıyor. Bunu da 5 mm. basit LDR'den en yüksek ışığı algıladıkça yapıyor:
https://sc01.alicdn.com/kf/HTB1pE3wLVXXXXb5XpXXq6xXFXXXG/Stable-Photoresistance-LDR-for-sense-light-sense.jpg_350x350.jpg (https://www.oddwires.com/ke-10720-ldr-light-dependent-resistor/)
Algoritması kendine münhasır karmaşık (güneş gibi ekvatoryal hareket yapan) veya rasgele bir mantıklardan birini seçerek diğerine (Robot Z'ye) doğru X/Y hareket eden başka bir robot (K) da hayal edin. Bu da basit bir LASER'den ışık yayıyor:
https://st1.myideasoft.com/idea/cd/40/myassets/products/310/lazer-sensor.jpg?revision=1485854138 (https://www.robotzade.com/Lazer-Sensor-650nm-5V-5mW,PR-310.html)
Robot K döngüsel aptal ama Robot Z akıllı ve enerjisine muhtaç olduğu için diğer robotun nasıl davrandığını öğrenmesi gerekiyor. Rasgele 2 şey yapsın (-bknz. main functions) avını beklemek de zekaya sahip hayvanların yaptığı şeydir, tarayıp bulmak da. Ama bunun hafızası da olacak. Yani verileri bir yere karmaşık şekilde kaydedecek ve bütün bu karmaşadan basit sonuçlar çıkaracak.
Z'nin tercihleri var:
Enerji %50'nin üstünde olduğu müddetçe motorlara umursamadan enerji verip taraVeBul() yapabilecek. Ama yarının altına indiğinde bekleVeGör()'ü tercih edebilir. Uzun süre denk gelmediğinde enerjisini kritik seviyeye ulaştırmadan LDR'nin baktığı yönü daha önce elde ettiği bilgilere göre değiştirmeyi de tercih edebilir.
Sorun burada başlıyor!
Buraya kadar her şey algoritmik/sistematik. Peki tam olarak Zeka nerede başlayacak? Elde ettiği verilere göre belki onu takip edip şarjını (mutluluğunu) %100'e çıkarmak isteyecek. Ama hedef ulaştıysa, mutluysa bu robot Z arkadaş :D peki ya hayata küsüp hiç mi hareket etmeyecek.
Asıl soruya gelince: Kendine yeni işlevler yazabilir mi; kaydettiği veriler ışığında!
Sevgiyle kalın...
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]