# OpenCog
OpenCog, açık kaynaklı yapay zeka çerçevesi oluşturmayı amaçlayan projedir. OpenCog Prime, tüm sistemin ortaya çıkan bir olgusu olarak insana eşdeğer yapay genel zekayı (AGI) ortaya çıkarmak için tasarlanmış bir dizi etkileşimli bileşeni tanımlayan, robot ve sanal somutlaşmış bilişe yönelik mimaridir.
OpenCog Prime'ın tasarımı öncelikle Ben Goertzel'in eseridir; OpenCog çerçevesi ise geniş tabanlı YGZ araştırmaları için genel bir çerçeve olarak tasarlanmıştır. OpenCog'u kullanan araştırmalar dergilerde yayınlanmış ve yıllık Yapay Genel Zeka Konferansı da dahil olmak üzere konferans ve çalıştaylarda sunulmuştur. OpenCog, GNU Affero Genel Kamu Lisansı koşulları altında yayınlandı.
OpenCog, Huawei ve Cisco dahil 50'den fazla şirket tarafından kullanılmaktadır.


## Kaynağı.
OpenCog, ilk olarak Novamente LLC'nin tescilli "Novamente Cognition Engine" (NCE) kaynak kodunun 2008 yılında piyasaya sürülmesine dayanıyordu. Orijinal NCE kodu PLN kitabında anlatılmaktadır (bkz. kaynakça). OpenCog'un devam eden gelişimi, Yapay Genel Zeka Araştırma Enstitüsü (AGIRI), Google Summer of Code projesi, Hanson Robotics, SingularityNET ve diğerleri tarafından desteklenmektedir.


## Bileşenler.
OpenCog şunlardan oluşur:
  - AtomSpace adı verilen ve "atomları" (yani terimler, atom formülleri, cümleler ve ilişkiler) "değerleriyle" (atom başına anahtar/değer veritabanları olarak düşünülebilecek değerlemeler veya yorumlar) birlikte tutan bir grafik veritabanı olarak düşünülebilir. Bir değere örnek olarak doğruluk değeri verilebilir. Atomlar küresel olarak benzersizdir, değişmezdir ve indekslenmiştir (aranabilir)  Değerler geçici ve değişkendir.
  - Kavramsal grafikler ve anlamsal ağlar gibi genel bilgi temsilinin yanı sıra bu tür grafikleri işlemek için gereken kuralları (terimin yeniden yazılması anlamında) temsil etmek ve depolamak için kullanılan, Atomese adı verilen önceden tanımlanmış atomlardan oluşan bir koleksiyon.
  - Tür oluşturucuları ve işlev türleri de dahil olmak üzere bir tür alt sistemini kodlayan önceden tanımlanmış atomlardan oluşan bir koleksiyon. Bunlar değişkenlerin, terimlerin ve ifadelerin türlerini belirtmek için ve değişkenleri içeren genel grafiklerin yapısını belirtmek için kullanılır.
  - Hem işlevsel hem de zorunlu programlama stillerini kodlayan önceden tanımlanmış atomlardan oluşan bir koleksiyon. Bunlar, serbest değişkenleri bağlı değişkenlere bağlamak ve beta indirgemeyi gerçekleştirmek için Lamda kalkülüsü içerir.
  - Grafik ve hipergraf modeli eşleştirme (izomorfik alt grafik keşfi) gerçekleştirmek için genel grafik sorgulama motorunun parçası olarak yerleşik, tatmin edilebilirlik modülo teorileri çözücüyü kodlayan önceden tanımlanmış atomlardan oluşan bir koleksiyon. Bu, yapılandırılmış sorgu dili (SQL) fikrini genel grafik sorgular alanına genelleştirir  grafik sorgulama dilinin genişletilmiş şeklidir.
  - Kuralları birbirine zincirleyebilen, ileri zincirleyici ve geri zincirleyiciyi içeren genel bir kural motoru. Kurallar tam olarak grafik sorgu alt sisteminin grafik sorgularıdır ve bu nedenle kural motoru belli belirsiz bir sorgu planlayıcıya benzemektedir. Bayes çıkarımı veya bulanık mantık gibi farklı türden çıkarım motorlarının ve akıl yürütme sistemlerinin veya kısıtlama çözücüler veya hareket planlayıcılar gibi pratik görevlerin uygulanmasına izin verecek şekilde tasarlanmıştır.
  - ECAN olarak adlandırılan, ekonomik teoriye dayalı bir dikkat tahsis alt sistemi. Bu alt sistem, çıkarım ve zincirleme sırasında karşılaşılan arama olasılıklarının birleşimsel patlamasını kontrol etmek için kullanılır.
  - Olasılıksal mantık ağlarına (PLN) dayalı olasılıksal bir akıl yürütme motoru uygulanması. Mevcut uygulama, belirli mantıksal çıkarım kurallarını (modus ponens gibi) birlikte zincirlemek için kural motorunu, her bir çıkarım için olasılık ve güven atayan bazı çok özel matematiksel formüllerle birlikte kullanır. Bu alt sistem, Bayes çıkarımının değiştirilmiş bir biçimiyle çalışan bir çeşit ispat asistanı olarak düşünülebilir.
  - Meta-Optimize Edici Anlamsal Evrimsel Arama veya MOSES adı verilen olasılıksal bir genetik program geliştiricisi. Bu, görevleri yerine getiren kısa Atom programlarının koleksiyonlarını keşfetmek için kullanılır. Bunların bir tür karar ağacı öğrenmesi gerçekleştirerek bir tür karar ormanı veya daha doğrusu bunun bir genellemesi ile sonuçlandığı düşünülebilir.
  - Bağ grameri'nden oluşan ve kısmen Anlam-Metin Teorisi'nden ve ayrıca Atom dilinde anlamsal ve sözdizimsel ilişkileri kodlayan Dick Hudson'ın Word Grammar'dan esinlenen doğal bir dil giriş sistemidir.
  - Doğal bir dil üretme sistemi.
  - OpenPsi adı verilen, duygusal durumları, sürücüleri ve dürtüleri ele almaya yönelik bir Psi-Teorisi uygulaması.
  - OpenPsi yoluyla duygu modelleme dahil olmak üzere Hanson Robotics robotlarına yönelik arayüzler. Buna meditasyon tekniklerini göstermek için kullanılan Loving AI projesi de dahildir.


## Organizasyon ve finansman.
2008 yılında, daha önce Yapay Zeka için Tekillik Enstitüsü (SIAI) olarak adlandırılan Makine Zekası Araştırma Enstitüsü (MIRI), birçok araştırmacı ve mühendise sponsor oldu. OpenCog'un 2008 ve 2009'da Google Summer of Code'a katılmasından bu yana açık kaynak topluluğundan birçok katkı yapılmıştır. Halen MIRI artık OpenCog'u desteklememektedir. OpenCog, aralarında Hong Kong hükûmeti, Hong Kong Politeknik Üniversitesi, Jeffrey Epstein VI Vakfı ve Hanson Robotics'in de bulunduğu çeşitli kaynaklardan fon ve destek aldı. OpenCog projesi halen SingularityNET ve Hanson Robotics'e bağlıdır.


## Uygulamalar.
Diğer bilişsel mimarilerde olduğu gibi temel amaç üç boyutlu avatar karakterleri olan sanal insanlar yaratmaktır. Amaç duygular, jestler ve öğrenme gibi davranışları taklit etmektir. Örneğin yazılımdaki duygu modülü sadece insanların duyguları olduğu için programlanmıştır. Yapay Genel Zeka, insan zekasının taklit edilmesi durumunda gerçekleştirilebilir.
OpenCog projesinin kendi açıklaması, doğal dil işleme ve köpek simülasyonu yönünde ilerleyen olası ek uygulamaları sağlar.


## Kaynakça2.
  - Gbooks
  - Goertzel, B., Iklé, M., Goertzel, I.F., Heljakka, A. "Probabilistic Logic Networks, A Comprehensive Framework for Uncertain Inference", Springer, 2009, VIII, 336 p., Ciltli