Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Napravite AI za logicku igru ( http://codechallenge.4t.com )

[es] :: C/C++ programiranje :: Napravite AI za logicku igru ( http://codechallenge.4t.com )

Strane: 1 2 3

[ Pregleda: 13135 | Odgovora: 45 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

freediver
freediver

Član broj: 33806
Poruke: 55
*.yubc.net.

Sajt: www.prelovac.com


+1 Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )29.01.2005. u 16:17 - pre 233 meseci
Svaka cast na odrzavanju takmicenja iako se bas i nisam proslavio :) Ovaj put su izostali komentari partija koliko vidim.

Prelovac Media is hiring
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1249



+96 Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )22.02.2005. u 12:26 - pre 233 meseci
Možda je došlo vreme da se malo povećaju vremena izvršavanja? Kao u šahu, recimo 200 sekundi za prvih 50 poteza i 3 sekunde za svaki sledeći?

Primetio sam da se igra 5 partija, što znači da jedna strana igra 3 puta prva. Neparan broj partija je verovatno uveden da bi se pronašao pobednik, ali nekako mi nije pravedno da neko ima prednost prvog poteza. Možda bi umesto pete partiji trebalo da se "izvode penali", tj. da se igra na dva razlike, ali sa vrlo ograničenim vremenom.

Još jedna stvar. Ako sam dobro zaključio oba algoritma se izvršavaju na istom računaru, što znači da se dva dll-a nadmeću za resurse računara (procesor, memorija, hard disk). Ništa ne znači to što se poziva funkcija jednog dll-a po izlasku iz funkcije drugog, jer dll-ovi mogu da imaju više niti izvršenja koje rade i kada se izađe iz dotične funkcije. Mislim da bi svaki algoritam trebao da se "razbaškari" na sopstvenom računaru (naravno, računari treba da su identični).
 
Odgovor na temu

tesa
Beograd

Član broj: 20586
Poruke: 96
195.252.87.*

Sajt: www.codechallenge.com


Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )25.02.2005. u 12:42 - pre 233 meseci
Komentari se uvek objavljuju dan-dva nakon rezultata takmicenja jer ih ne pisem ja vec upravo jedan od takmicara.

Vreme se nece povecavati jer bi to samo davalo prednost rekurzivnim "ne-pametnim" algoritmima.

Sto se tice broja partija i odredjivanja sta je fer a sta ne, pa u realnosti su stvari mnogo gore. Svaki turnir u bilo kom sportu moze da bude veoma nepravedan jer recimo drugi po jacini moze da ispadne vec u prvom kolu i da zavrsi kao sto drugi. Sto se CodeChallenge-a tice, od narednog turnira igrace se prvo po grupama u kojima ce igrati svako sa svakim, a najbolja dva igraca iz svake grupe ce se plasirati u polufinale.

Kao sto sam upravo objavio na sajtu, odrzavanje sestog turnira odlaze se za naredni mesec. Stiglo je malo osvezenih takmicara a nijedan nov. U planu su nove igre, ali o tom po tom.

Pozdrav svima.
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1249



+96 Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )25.02.2005. u 14:15 - pre 233 meseci
Citat:
Vreme se nece povecavati jer bi to samo davalo prednost rekurzivnim "ne-pametnim" algoritmima.


Okej, jeste malo problem to što u svakom potezu ima samo 10 mogućih rešenja. Da ih je više ti rekurzivni ne bi imali šanse. S druge strane ne znam da li sam baš najbolje razumeo: ako se poveća vreme poteza onda prednost ima jedna klasa algoritama (nepametni) u odnosu na drugu klasu (pametni). Ne bih da ulazim u to da li je to uopšte tačno, ali koliko su onda "pametni" ti drugi algoritmi?
 
Odgovor na temu

DarkMan
Darko Matesic

Član broj: 20445
Poruke: 572
*.metrohive.neobee.net.

Jabber: DarkMan


Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )26.02.2005. u 21:05 - pre 233 meseci
Citat:
tesa: Vreme se nece povecavati jer bi to samo davalo prednost rekurzivnim "ne-pametnim" algoritmima.


Zasto rekurzivni algoritmi nisu pametni? Ja mislim da su ama bas svi takmicarski dll-ovi rekurzivni. Da li to znaci da ni jedan takmicarski dll nije pametan?

Gledanje unapred tj. predvidjane poteza nije moguce izvesti bez rekurzivnih funkcija. Za igre ovog tipa odavno su vec smisljeni algoritmi koji funkcionisu odlicno. Tu se koriste algoritmi pod imenom MinMax i Alpha-Beta. Evo i nekih linkova:
http://www.cs.mcgill.ca/~cs251/OldCourses/1997/topic11/
http://www.ocf.berkeley.edu/~y...xtras/alphabeta/alphabeta.html

Jedina alternativa koja moze da se primeni su neuronske mreze. Problem kod neurosnkih mreza je sto je za ovakve igre potrebno kreirati veliku neuronsku mrezu koja ce se jako sporo izvrsavati na racunaru (a mi nemamo vremena za tako nesto). Uz program koji koristi neuronske mreze bi trebala da dolazi i neka baza koja predstavlja ono sto je do sada nauceno tako da bi se takmicarski dll, koji je baziran na neuronskim mrezama, mogao prepoznati po dadatnom fajlu iz dll.
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1249



+96 Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )02.03.2005. u 11:15 - pre 232 meseci
Citat:
tesa: Kao sto sam upravo objavio na sajtu, odrzavanje sestog turnira odlaze se za naredni mesec. Stiglo je malo osvezenih takmicara a nijedan nov. U planu su nove igre, ali o tom po tom.


Kad se budu objavljivala pravila za nove igre možda bi ipak trebalo uvesti dva računara za meč. Time se isključuje mogućnost krađe tuđeg procesorskog vremena, a istovremeno je moguće iskoristiti i protivnikovo vreme za dodatno procesiranje.
 
Odgovor na temu

tesa
Beograd

Član broj: 20586
Poruke: 96
*.beotel.net.

Sajt: www.codechallenge.com


Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )04.03.2005. u 23:53 - pre 232 meseci
Evo kratkog odgovora. Produzavanjem vremena svi bi tezili da sto bolje optimizuju rekurziju. Ovako se forsira analiza jedne pozicije, a upravo je to ono sto nije tipicno za racunar vec za nas nacin razmisljanja, a to je poenta - AI.
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1249



+96 Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )07.03.2005. u 10:01 - pre 232 meseci
Kako šahisti razmišljaju? Sigurno ne tako što pokušavaju da nekom magičnom jednačinom dođu od trenutne pozicije na tabli do sledećeg poteza. Ono što rade je da u glavi simuliraju svoju i protivnikovu igru nekoliko poteza u napred, pokrivajući što više logičnih puteva, i pritom uzimajući u obzir i neki opšti položaj figura. Kad osmisle strategiju onda krenu da je sprovode.

Nije vreme ni važno, 2 sekunde na modernim računarima zapravo i nije tako malo. Ako mi za analizu jednog (budućeg) stanja treba 1 mikro sekunda to znači da mogu da pokrijem 2 miliona stanja, što bi za neoptimizovanu rekurziju (10 mogućih poteza) bilo 6-7 poteza unapred (10^6). Za optimizovanu (recimo 5 mogućih poteza) to je 9 poteza unapred (5^9). Na tu se optimizaciju treba i skoncentrisati. Ako i postoji magična funkcija koja pokriva 9 poteza u napred onda smo naleteli na trivijalan problem (naravno, svaka čast čoveku koji napravi takvu funkciju). BTW, baš me zanima da li postoji neki od takmičara koji ne koristi ni malo rekurzije.

Ono što je tehnički bitnije je deljenje procesorskog vremena (i memorije). Ako napravim thread sa visokim prioritetom koji će da procesira stanja i kad nije moj red (kao što i šahista razmišlja i dok je protivnik na potezu) onda sam teško onesposobio svog protivnika. Ako i protivnik napravi thread, ja mogu da izazovem exception u svom threadu dok je protivnikov potez, i sudije će diskvalifikovati protivnikov dll jer neće znati da nije "pukao" on nego moj dll. To sad postaje pravi Code Wars, što nije bila originalna namera. Rešenje je dati čitav računar svakom algoritmu.
 
Odgovor na temu

freediver
freediver

Član broj: 33806
Poruke: 55
*.yubc.net.

Sajt: www.prelovac.com


+1 Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )07.03.2005. u 15:01 - pre 232 meseci
Mislim da je i dve sekunde previse za potez. To vreme bi trebalo da se smanji na ~200ms. To bi znatno smanjilo obim rekurzije a i ubrzalo partije. Po mom proracunu trenutno mogu da pogledam sve poteze do dubine 6-7 na test masini (ne mogu tacno da ocenim jer ne mogu da izmerim njene performanse, ali ugrubo).

Drugo, sto se tice kradje procesorkog vremena, moguce je da se dll-ovi unloaduje svaki put, i da im se po pozivu prenosi celokupno stanje table.

Prelovac Media is hiring
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1249



+96 Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )09.03.2005. u 13:06 - pre 232 meseci
Izgleda da ovde postoji više od jedne osobe za koju rekurzija predstavlja ne-AI način programiranja. Ja se ne slažem.

Prvo, trebalo bi razlikovati "neinteligentnu" i "inteligentnu" rekurziju. Neinteligentna rekurzija se inače zove "pretraživanje po širini" i znači da prvo obradim sve poteze dubine 1, pa sve poteze dubine 2, itd. Inteligentna rekurzija se inače zove "heurističko pretraživanje" i znači da trenutno obrađujem onaj potez koji mi se trenutno čini vrednim obrađivanja. U ovom drugom slučaju zapravo i nema rekurzije u pravom smislu reči, ali i dalje ima pretraživanja.

Drugo, ni jedna veštačka inteligencija (niti i jedna prirodna inteligencija) ne radi tako što ima neku savršenu metodu za pronalaženje rešenja (tj. neku magičnu funkciju). Takva savršena metoda postoji samo za trivijalne probleme (igra Nim je jedan trivijalan problem). Teoretski gledano sve igre su trivijalne, uključujući i šah, ali niko ne prilazi tom problemu tako što traga za magičnom funkcijom. Zapravo traganje za magičnom funkcijom je ne-AI način programiranja, jer je ceo algoritam smislio programer (tj. pokrio je sve moguće puteve) i to za jedan ograničen problem (kao što je ovde za neke algoritme ispao problem ubacivanja neutralnih kuglica).

Ali, kao što rekoh, nije vreme toliko ni bitno...

Citat:
freediver:Drugo, sto se tice kradje procesorkog vremena, moguce je da se dll-ovi unloaduje svaki put, i da im se po pozivu prenosi celokupno stanje table.


Ne bi to pomoglo, funkcije za rad sa bibliotekama nisu povezane sa funkcijama za rad sa nitima. Problem borbe za resursima ne može drugačije da se reši osim da se svaki algoritam "vrti" na svom računaru.
 
Odgovor na temu

freediver
freediver

Član broj: 33806
Poruke: 55
*.yubc.net.

Sajt: www.prelovac.com


+1 Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )09.03.2005. u 21:04 - pre 232 meseci
Postujem ja rekurziju i slazem se da je gotovo nemoguce resiti ovakav problem bez nje.

Ali kada za rekurziju imas 200 ms umesto 2000 ms, heuristicki pristup i odsecanje losih poteza mnogo vise dolazi do izrazaja zar ne? Sa druge strane mozes traziti i 10 sec za potez ili vise ali gde je kraj? Neko mora da odigra te partije ako nista.

Poz

ps. nadam se da neces krenuti stranputicom kradje proc vremena ;)
Prelovac Media is hiring
 
Odgovor na temu

DarkMan
Darko Matesic

Član broj: 20445
Poruke: 572
*.metrohive.neobee.net.

Jabber: DarkMan


Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )09.03.2005. u 23:54 - pre 232 meseci
Sto se tice problema kradje procesorskog vremena mislim da imam resenje.
U dole prilozenoj arhivi je izvorni kod i izvrsna verzije programa za testiranje igraca kao i tri igraca za testiranje programa.

Pre samog pocetka testiranja igraca (dll-a) izbroji se broj thread-ova programa. Zatim se igraci testiraju na postojanje funkcija TableSetupMoves i GameMove, zatim na ispravnost funkcionisanja TableSetupMoves tj. mora vratiti ispravan checksum. Na kraju se 10 puta poziva funkcija GameMove i proverava se broj threadova. Ako GameMove vrati broj izvan opsega 0-9 ili je broj thread-ova veci nego na pocetku igrac nije prosao test.

Za testiranje sam napravio 3 igraca. Prvi mora uvek da prodje test jer ne kreira nikakve thread-ove. Drugi i treci igrac kreiraju thread-ove i moraju uvek da padne na testu.

E sada, ovo je jos uvek potrebno dodatno ispitati da li zaista funkcionise kako treba. Inace vec pred sam kraj pisanja programa sam mislio da ovo nece funkcionisati jer je moguc razlicit broj thread-ova za istog igraca. Na primer, ucitam prvog (postenog ) i za njega se prijavi 4 thread-a (nisu njegovi nego od celog programa). Onda ucitam drugog i za njega javi 6 thread-ova. E sad ponovo ucitam prvog i kod njega sada javlja 5 thread-ova. Zato sam pomislio da ovo nece funkcionisati, ali ako pre ucitavanja izbrojimo broj thread-ova i onda kada pocnemo koristiti igraca ponovo izbrojimo, broj thread-ova mora biti isti ukoliko doticni igrac nije kreirao neki thread.

Nenade, na tebi je da odlucis da li ce se ovaj test koristiti ili ne.

PS: Mihajlo je ranije komentarisao broj partija. Dok sam po internetu trazio "DOKUMENTACIJU" za algoritme koji se primenju u ovakvim igrama, saznao sam da su neki ljudi radili naucne radove (diplomski, doktorat?) na temu igre connect-4 i jedan tip je dokazao da u ovoj igri sa standardnom tablom 7x6 prvi igrac moze uvek da pobedi (naravno ako odigra prave poteze). Znaci da igrac koji pocinje prvi tj. odigra 3 partije od 5 kao prvi igrac ima prednost. Mozda bi ovde bila bolja koncepcija kao kod tenisa: minimum tri odigrane partije i sa dve razlike.
Prikačeni fajlovi
 
Odgovor na temu

zvrba
The Lord of Chaos

Član broj: 31716
Poruke: 105
*.ifi.uio.no.



Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )10.03.2005. u 08:34 - pre 232 meseci
Citat:
darko79: Sto se tice problema kradje procesorskog vremena mislim da imam resenje.
U dole prilozenoj arhivi je izvorni kod i izvrsna verzije programa za testiranje igraca kao i tri igraca za testiranje programa.


dobro, zasto takav zaobilazni nacin? zasto jednostavno ne suspendas proces? arhitektura poput ove:

1. imas jedan "supervisor" program koji uvijek ima stanje igre
2. imas dva procesa (po jedan za svakog "igraca") koji koristi f-je iz DLL-a za igru. kad DLL napravi "potez" dojavi ga supervisor programu kako bi on mogao proslijediti potez drugom "igracu"
3. kada je neki igrac na redu, jednostavno zaustavis proces drugog igraca (to bi trebalo stopati i sve threadove). na unixu jednostavno mozes slat SIGSTOP i SIGCONT signale a sigurno postoji nesto i za windoze..
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1249



+96 Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )10.03.2005. u 09:21 - pre 232 meseci
U redu, moguće je enumerisati threadove u procesu, ali nije moguće utvrditi kome pripada koji thread, plus šta ako dll pokrene čitav novi proces? Pokretanje procesa iz memorije (umesto sa diska) je moguće, i kako sad neko da otkrije koji procesi imaju pravo da se izvrsavaju, a koji nemaju? I nije samo deljenje procesorskog vremena problem, problem je i memorija. Onaj dll čija se funkcija prva pozove ima priliku da zauzme čitavu slobodnu memoriju.

Jako je komplikovano sve to izregulisati...

BTW, ne postoji funkcija SuspendProcess zato što proces nije nešto što se izvršava. Postoji SuspendThread, što bi značilo da mora da se pozove za svaku nit u procesu. U windowsu ne postoji ugrađeno signaliziranje procesima i nitima (bar ne na user nivou).
 
Odgovor na temu

zvrba
The Lord of Chaos

Član broj: 31716
Poruke: 105
*.ifi.uio.no.



Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )10.03.2005. u 10:06 - pre 232 meseci
hm. pokusaj 2: u svom "supervisor" programu ucitas OBA DLL-a, pootvaras fajlove koji ti trebaju itd. Prilikom ucitavanja DLL-a je moguce zaobilazenje inicijalizacije? I nakon sto to sve napravis, skines svom procesu sve moguce privilegije (kreiranje threadova, procesa itd...). Tako da ce DLL koji pokusa koristiti nesto od tih mogucnosti dobiti gresku...

pokusaj 3: imas DebugActiveProcess (ili tako nesto) koji zaustavi sve threadove u procesu i kompletan proces stoji dok ne pozoves ContinueDebugEvent. pa sa WaitForDebugEvent cekas neki timeout koliko proces smije cekati i ako prijedje to vrijeme, posaljes mu DebugBreakProcess.

istina, najelegantnije rjesenje je dva kompjutera :)
 
Odgovor na temu

DarkMan
Darko Matesic

Član broj: 20445
Poruke: 572
*.metrohive.neobee.net.

Jabber: DarkMan


Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )10.03.2005. u 11:51 - pre 232 meseci
Citat:
Mihajlo Cvetanović: U redu, moguće je enumerisati threadove u procesu, ali nije moguće utvrditi kome pripada koji thread...

Ako se broj thread-ova, posle ucitavanja dll-a, poveca pretpostavljam da je dll kreirao thread. Zar ne bi bilo logicno?

Citat:
Mihajlo Cvetanović: ...plus šta ako dll pokrene čitav novi proces?...

Sta bi se time dobilo? Igrac jede sam sebi resurse? Ostvariti sinhronizaciju u thread-ovima je dovoljno komplikovano a da o procesima ne pricamo. Ako imas ideju kako bi se to izvelo napisi neki konkretan primer pa da vidimo kako se to moze spreciti.

Citat:
Mihajlo Cvetanović: ...problem je i memorija. Onaj dll čija se funkcija prva pozove ima priliku da zauzme čitavu slobodnu memoriju...

Sta se dobija zauzimanjem slobodne memorije? Kako bi to osakatilo protivnika? Zbog postojanja virtuelne memorije svakom procesu je na raspolaganju 4GB memorije. Kada neki program pocne da zauzima vise nego sto ima fizicke memorije windows pocinje da swapuje sto se sasvim lepo cuje (mislim na hard disk).

Ima ovde lepih ideja ali koja je njihova izvodljivost. Ocemo da pisemo debugger? Ili mozda da igraci budu odvojeni procesi - kako ih naterati da igraju zajedno? Verovatno bi bilo najbolje (citaj najsigurnije) dva racunara ali to znaci da Nenad mora napisati mreznu verziju igre koja ce na svakom racunaru ucitati po jednog igraca i sinhronizovati njihovu igru.

 
Odgovor na temu

freediver
freediver

Član broj: 33806
Poruke: 55
*.yubc.net.

Sajt: www.prelovac.com


+1 Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )10.03.2005. u 12:32 - pre 232 meseci
Rasprava koliko god dobra bila ima jednu po meni pogresnu premisu - da bi neko zaista hteo da vara na dati nacin. Obzirom da je takmicenje bez ikakvih nagrada itd i samo za slavu, zar bi neko stvanro zeleo da na taj nacin pobedi? Mislim da su svi koji ucestvuju entuzijasti.

Drugo ako jednom preraste u nesto ozbiljnije, uvede se uslov da se posalje source code u koga ce organizator imati uvid i sve je reseno.

Tako da utrosite energiju na drugom mestu i skoncetrisite se na takmicare da bi naredno takmicenje bilo jos znaimljivije!
Prelovac Media is hiring
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1249



+96 Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )10.03.2005. u 12:37 - pre 232 meseci
Citat:
Ako se broj thread-ova, posle ucitavanja dll-a, poveca pretpostavljam da je dll kreirao thread. Zar ne bi bilo logicno?


U pravu si. Počeo sam da razmišljam o kombinaciji CrateProcess/CreateRemoteThread, ali to je već iživljavanje. Znam! Instaliraš hook, i tu kreiraš thread. Ispada da je thread kreirao niko drugi do glavni program.

Citat:
Sta bi se time dobilo? Igrac jede sam sebi resurse? Ostvariti sinhronizaciju u thread-ovima je dovoljno komplikovano a da o procesima ne pricamo. Ako imas ideju kako bi se to izvelo napisi neki konkretan primer pa da vidimo kako se to moze spreciti.


Evo jednog opšte poznatog primera: država štampa novac i izaziva inflaciju. Inflacijom svačiji (pa i državin) novac gubi na vrednosti, ali državi to ne smeta jer ona poseduje novu količinu štampanog novca. Za državu plus je veći od minusa. Za sve ostale plus ni ne postoji. U našem primeru taj novi proces bi radio nešto korisno i slao dll-u podatke preko cevi (pipe).

Nikad nisam kreirao proces iz memorije, ali verujem da to može. Ne detaljiše mi se sad o tome jer nije poenta da "krpimo" postojeći sistem nego da za sledeći izazov krenemo boljim i lakšim putem.

Citat:
Sta se dobija zauzimanjem slobodne memorije? Kako bi to osakatilo protivnika? Zbog postojanja virtuelne memorije svakom procesu je na raspolaganju 4GB memorije. Kada neki program pocne da zauzima vise nego sto ima fizicke memorije windows pocinje da swapuje sto se sasvim lepo cuje (mislim na hard disk).


Da, ali šta da radimo kad čujemo swapovanje? Koga da okrivimo? Doduše, ako koristiš samo VirtualAlloc onda si relativno bezbedan, ali ako koristiš malloc/new onda lako možeš da ostaneš bez memorije (ako se ne varam CRT heap je ograničene veličine).

Svaka sekunda je bitna. Vreme koje čekam da protivnik odigra potez je utrošeno vreme. Memorija je isto važna (mada ne toliko kao procesor). Naravno, niko pošten ne bi namerno zauzimao tuđe resurse, ali ako ti za algoritam treba dosta memorije onda je ti zapravo uzimaš od protivnika.
 
Odgovor na temu

tesa
Beograd

Član broj: 20586
Poruke: 96
*.131.EUnet.yu.

Sajt: www.codechallenge.com


Profil

icon Re: Napravite AI za logicku igru ( http://www.codechallenge.com )10.03.2005. u 19:25 - pre 232 meseci
Od mog prvog susreta sa forumima na internetu primetio sam da se poruke po eksponencijalnom zakonu odmicu od pocetne teme. Ovo nije bas tako strasno, ali me potseca na to.

Verovatno cu napraviti nekakav pomocni program za kontrolu i otkrivanje prljavih radnji, ali bez obzira sta on bude radio to niko nece znati. Posto ja sedim na racunaru i pustam ceo turnir, imam ogromnu prednost u kontroli procesa. Ja ne moram da pravim program da se bori protiv nedozvoljenih niti. Sve sto treba da uradim je da otvorim tekst editor i objavim da je igrac eliminisan.

Pozivam vas sve da pokusate da svrgnete Misirca na castan nacin jer svaki drugi ne dokazuje nista. Odrzace se jos samo dva-tri turnira pre pojave bar jedne nove igre u kojoj cemo se takmiciti. Do tada je bolje da se posvetimo igri 4-in-line jer cemo posle toga sigurno preci na nesto novo.
 
Odgovor na temu

3MAJ86
Marko Radić
Business Development Manager, Beauty
Industry
München

Član broj: 46087
Poruke: 253
*.drenik.net.

Sajt: marko-radic.blogspot.com


+137 Profil

icon Re: Napravite AI za logicku igru ( http://codechallenge.4t.com )12.03.2005. u 17:50 - pre 232 meseci
pratim vetj neko vreme shta se deshava ovde, i iako sam neiskusan programer, reshio sam da "ukrstim kuglice" na sledetjem turniru... vetj par dana spremam svoje chedo, i treba uskoro da bude zavrshen...

nije mi jasno zashto se toliko prepucavate oko toga koji je nachin najbolji za "kvarnu" pobedu. sada ja izigravam nekog pacifistu, u smislu "vreme koje troshite na to, bolje da ste upotrebili za kreaciju svojih takmichara itd..." :)

uglavnom, moje mishljenje je da mozhe sasvim lepo da se igra i bez rekurzije, samo shto na taj nachin ima mnogo vishe "fizichkog" rada programera.

da li je neko za to, da kada se definitivno zavrshi sa turnirima u 4inline igri (i predje se na novu igru), da se objave izvorni kodovi takmichara.
mislim da bi ovo umnogome pomoglo slabijim (mladjim) programerima da nauche dosta toga, dok ovi drugi nishta ne gube, jer nije neka lova i/ili slichno u igri.
na kraju, ovo mozhe da bude izborna stvar...

(samo nemojte da me gadjate jajima) :)
when there is a why there is no how
 
Odgovor na temu

[es] :: C/C++ programiranje :: Napravite AI za logicku igru ( http://codechallenge.4t.com )

Strane: 1 2 3

[ Pregleda: 13135 | Odgovora: 45 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.