Akinator ;)

baklava <3

Početnik
Poruka
27
za one koji ne znaju akinator je ovo http://en.akinator.com/ .. e sad meni je palo na pamet da za neki "godisnji projekat" koji moram da uradim iz info na kraju IV god. srednje skole napravim bas njega :)... treba da ga isprogramiram u delphi 7-ici i imam grubu predstavu kako to da uradim, samo me zanima da li neko zna odakle sa neta mogu da naucim kako se prave te baze podataka i kako se uopste povezuju.. i ono zanima me vase strucno misljenje je l` to uopste izvodljivo u delphi-ju?
:deda:
 
Grubo rečeno, nemoj se zayebavati sa akinatorom. ne radi akinator preko baza podataka u onom smislu u kojem misliš. Tu se koriste fazilogički algoritmi koji su ipak malo previše za srenje škole. Dakle, bolje potraži drugu temu.

Inače, da me ne pitaš šta je fazilogika, odmah ću da ti odgovorim. Fazilogika je grana logike u kojoj se narušava pravilo pripadnosti skupu. Ako imamo neke skupove A, B, C, D, i E svaki sa svojim elementima, mi možemo u klasičnoj logici definisati sve šta na ma treba na osnovu toga da li je neki element x pripadnik datog skupa A ili nije. Odgovor je uvek jednoznačan: x pripada skupu A ili x ne pripada skupu A., Fazilogika to ne poznaje. Tamo x može 26,78% da pripada skupu A, a 73,32% ne pripada skupu A.

Ovo je možda šamar logici kao antičkoj nauci, ali odgovara realnom svetu. recimo: imaš skup ćelavih i skup ljudi koji imaju kosu. Gde tu smestiti čoveka koji ima 100 dlaka na glavi. Obična logika izražena preko kompjuterskog algoritma će ga staviti ili u ćelave, što je vrlo tačno, ali ne i istinito, ili u ljude sa kosom, što jeste stina iako je više nego bezveze. Ali ako kažemo: taj čovek je 95% ćelav, mnogo smo jasnije odredili gde on pripada.

Eto, to je ukratko ono što se nalazi ispod haube u bazama podataka akinatora.

No ima i drugi deo. Kako pretražiti te baze? Pa u slučaju akinatora, ovo se radi sa neuronskom mrežom. :D I to povećom izgleda. Nije neuronsku mrežu teško napraviti, ona je skup relativno prostih računskih jedinica, međutim izvršiti obuku te mreže je često prava umetnost. Sreća tvoja pa sam već negde pisao o neuronskim mrežama. Evo ti kod u C-u koji vrši kompletnu obuku mreže za mnogo "prostiji" posao, snalaženje u mini lavirintu 5x5. Naravno, to je go-kod, mreža + algoritam obuke, šminka mi za pokazivanje nije ni trebala. Pa proceni koliko je to vredno maltretiranja.
 
Poslednja izmena:
ja nikad ne odustajem nego preferiram provodjenje raspusta napolju umesto pred kompom pa sam sad procitao :).. ja imam nesto drugaciju ideju o tome kako bih ga isprogramirao, napravio bih bazu podataka (to me samo zanima kako se pravi) i za svaku od karakteristika za neku unetu licnost stavio neku brojnu vrednost (ziv=1, mrtav=2 itd..) i kad postavim pitanje da li je licnost ziva ona brise sve ove gde je vrednost=2, sa 20 pitanja mogu da eliminisem milion kombinacija http://stackoverflow.com/questions/887533/how-do-20-questions-ai-algorithms-work

samo me u svemu zanima kako se prave baze podataka u delphi-ju :D, posto knjigu nemam, a 100% cu proneveriti pare koje bih za nju dobio, pa rek`o mozda znate gde na netu to mogu da proucim :D
 

Back
Top