Git Product home page Git Product logo

hayvan-tahmini's Introduction

Hayvan Tahmini

Hayvan Tahmini nedir?

Hayvan Tahmini oyunu bilgisayar tarihindeki ilk yapay zeka denemelerinden biridir.

Bilgisayar ve insanın olarak karşılıklı yazıştığı ilk program olarak Joseph Weizenbaum'un 60'larda yazdığı Eliza'dır. Hayvan tahmin programı ise Eliza'dan biraz daha akıllıdır çünkü hatalarından öğrenerek bilgisini arttırabilir.

Hayvan tahmin programının en ünlü versiyonu John Walker'ın 1975'de UNIVAC için yazdığı ANIMAL olsa da ben en eski versiyon olarak Arthur Luehrmann'ın 1970'lerde yazdığı JACKASS'e ulaşabildim.

Nasıl Çalışıyor

Program hayvan bilgisini binary tree yapısı üzerinde tutuyor.

Klasic binary tree yapısına ek olarak is_leaf ve parent bilgisini de ilave ettim.

extern struct Node 			
{
	bool is_leaf;
	uchar data[40];
	uchar left;
	uchar right;
	uchar parent;
}

Doğru cevapta left, yanlış cevapta right node'a gidiliyor. Ağın sonuna geldiğimi de is_leaf bilgisine bakarak anlıyorum.

                         Suda mi yaşar?
                          /         \ 
                         /           \
              Memeli midir?           Uçar mı?
             /    \                    /             \
            /      \                  /               \
   Balık ağına   Dokungaçları      Gececi midir?   Evcilleştirilebilir mi?
   takılır mı?    var mıdır:          /    \            /    \
    /      \        /     \          /      \          /      \
  Yunus  Balina  Ahtapot  Köpek   Yarasa  Papağan   Köpek    Aslan
                          Balığı 

Nasıl Denerim

Derlenmiş programı disk.d64 imajını kullanarak açabilirsiniz. Programı sadece C64 üzerinde denedim ancak 128'de de çalışması gerekir.

makefile OSX El Capitan üzerinde cc65 v2.17 ile denenmiştir.

Güncellemeler

9.11.2014
string.h kütüphanesi kaldırıldı.
strcpy ve strcat fonksiyonları yerine char_cpy ve concat fonksiyonları yazıldı.

stdlib.h kütüphanesi kaldırıldı.
malloc ve itoa fonksiyonlarının kullandığı yerler yeniden düzenlendi.

Bu aşamada programın boyutu 10KB'a indi.

Compile parametrelerine -Oirs eklendi. Bu şekilde program boyutu 9KB'a oldu.

Referanslar

The Animal Episode

GUESS THE ANIMAL - A DECISION-TREE IN YOUR ATARI

AI Animals / perlMonks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.