algoritmi.310tomcat,
-> #309, kajko> >> U principu (ali samo u principu) nemam nista protiv ovoga, ali mislim
> >> da neces imati ama nikakve vajde od "ucenja na greskama". Razlog je
> Sto se tice 'ucenja na greskama' ideja nije losa. Voleo bih da vidim
> taj program, ali kao sto rece EMBE, taj program je neupotrebljiv za
turnir.
Imao sam tu ideju, jer mi je jednostavno bilo previse mukotrpno da razmisljam
o strategiji "linearnog" igranja ovakve vrste XOX-a. Onda sam uvideo da ni to
nije tako lako izvesti i presao da radim rekurzivan program (opet, mrzelo me
je da se udubljujem previse u strategiju). Uradio sam experiment sa dubinom od
4 polupoteza i mali se pokazao ne samo glup nego i spor (10-15 sec, P150+)
tako da sam danas primoran da predjem na izradu lineranog resenja.
Btw. Embe, svaka cast na onako brzo uradjenom masteru.
> Blizi se krajnji rok za slanje programa koji je 01.10.1997. godine.
> Pozurite...
Koliko se ljudi uopste prijavilo?
Da li ti pomenu sah negde? Imam uradjen i sahovski program :)
.................................
tomcat@galeb.etf.bg.ac.yu
http://galeb.etf.bg.ac.yu/~tomcat
algoritmi.311tomak,
-> #310, tomcat> > Blizi se krajnji rok za slanje programa koji je 01.10.1997. godine.
> > Pozurite...
>
> Koliko se ljudi uopste prijavilo?
Nisam video prijave a posle slanja embe-ovog 'karpova' (koji i nije
kandidat) verovatno je bilo odustajanja. Sada mi se čini da kandidat koji
uspeva da ga pobedi dobija dozvolu za turnir :) pa 'prijavljujem' da ću
poslati svog kandidata.
algoritmi.312kajko,
Here I go again.
Narode, istekla mi pretplata u Subotu. Šćeo sam d*pe da si odgrizem.
Ali sad sam tu.
Prva prijava (osim moje) je već stigla. EMBE je poslao svog takmičara.
Nećemo valjda samo nas dvojica da se tabamo ?
KAJKO
algoritmi.313popovics,
-> #312, kajko>>Nećemo valjda samo nas dvojica da se tabamo ?
Nećete, ako mi detaljno objasniš kakav takmičar treba da bude.
========
P.S Jesi li zaboravio za uputstvo za TR?
algoritmi.314embe,
-> #313, popovics>> >>Necemo valjda samo nas dvojica da se tabamo ?
>>Necete, ako mi detaljno objasnis kakav takmicar treba da bude.
>> ========
Detaljno uputstvo je vec dato u ovoj konferenciji (poruke 1.301+...)
Prvo uzmi program-kontrolor (poruka 1.301). U njegovom uputstvu
detaljno je opisano kakav takmicat treba da bude.
Ako ima nekih problema, javi se.
algoritmi.315vector,
-> #310, tomcat> Da li ti pomenu sah negde? Imam uradjen i sahovski program :)
Hoces da isprobas svog Gandalfa (valjda se tako zove)? ;)
algoritmi.316kajko,
Prijem takmirasskih programa za igru XO 21x21 je gotov
rezujtati ce biti izneti do kraja nedelje.
Kajko
algoritmi.318tomak,
-> #316, kajko> Prijem takmirasskih programa za igru XO 21x21 je gotov
> rezujtati ce biti izneti do kraja nedelje.
Moželi se znati koliko takmičara ima i hoće li biti ovoga:
CONF PCPROG.6:algoritmi.303
> Programe šaljete meni na MAIL. Pre početka turnira, svi programi koji
> će u njemu učestvovati će ići u conf spakovani pod šifrom. Nakon
> turnira, zajedno sa zaključnom tabelom ići će i ključ arhive, tako
> da svako može da proveri rezultate na svom računaru.
algoritmi.319kajko,
-> #318, tomak Počinje I XOX turnir. Takmičara ima ukupno 4 (slovima: četiri). Bedno...
Takmičari:
1. ANAND.COM -> embe
2. MALISA.EXE -> tomak
3. VINKOM.EXE -> vinkom
4. KAJKO.EXE -> kajko
--- I XOX Status Report ---
Rezultati 1. kola 'I XOX Turnir'-a:
đ Program đ Win đ Lo. đ Drw đ P đ %
-------------------------------------------------
1. ANAND.COM 0 6 0 0 33.333
MALISA.EXE 6 0 0 3 66.667
2. VINKOM.EXE 2 4 0 0 33.333
KAJKO.EXE 4 2 0 3 66.667
-------------------------------------------------
Ovo su bili prvi mečevi na osnovu kojih se malo može reći o kvalitetu programa
( koji doduše ni kod jednog takmičara nije na visokom nivou, ali su za početak
i više nego dobri :).
Iz plejade moram da izdvojim ANAND-a koji, kako se meni čini, nije dorastao
ostalim takmičarima. Embe-u usmena kritika (ne zbog brzine, već zbog
kvaliteta igre njegovog programa). Naime, ANAND ne igra na 'duže staze' već
samo po trenutnom stanju na tabeli. To se pokazalo kao katastrofalna
taktika. Mališa će sigurno daleko da dogura.
Drugi meč je bio meč približno jednakih programa. Kvalitetna igra bez
pardona. Pobedio je bolji :>.
Što se tiče bodovanja, uzet je 'fudbalski' sistem bodovanja. Pobeda = 3 poena,
nerešeno po 1, a poraz = 0 poena. Tako vam je, kako vam je.
Naime, samo takmičenje će ići malo ubrzanim tempom, jerbo sam dobio papire
za Nemačku, a tamo me pos'o već čeka :))))).
A sad...
RangLista posle odigranog 1. kola 'I XOX Turnir'-a:
No. đ Program đ OM đ Bod đ Procent đ Autor
-------------------------------------------------------------------------
1. MALISA.EXE 1 3 100.000 tomak
2. KAJKO.EXE 1 3 66.667 kajko
3. VINKOM.EXE 1 0 33.333 vinkom
4. ANAND.COM 1 0 0.000 embe
-------------------------------------------------------------------------
Uz poruku ide i arhiva u kojoj se nalaze podaci o mečevima i arhiva sa
takmičarima koja je spakovana pod šifrom. Šifra za otključavanje arhive
ići će u poruci sa zaključnom tabelom.
Sama arhiva uz poruku nije šifrovana :).
KAJKO
xox_i.zipalgoritmi.320embe,
-> #319, kajko>> Pocinje I XOX turnir. Takmicara ima ukupno 4 (slovima: cetiri). Bedno...
>>
>> Takmicari:
>> 1. ANAND.COM -> embe
>> 2. MALISA.EXE -> tomak
>> 3. VINKOM.EXE -> vinkom
>> 4. KAJKO.EXE -> kajko
Ne smatram da je 4 takmicara malo (za pocetak). Bice taman dovoljno da,
ako bog da, privuce jos toliko za sledeci turnir. Svaka tebi cast na
ekspeditivnosti.
>> Iz plejade moram da izdvojim ANAND-a koji, kako se meni cini, nije dorastao
>> ostalim takmicarima. Embe-u usmena kritika (ne zbog brzine, vec zbog
>> kvaliteta igre njegovog programa). Naime, ANAND ne igra na 'duze staze' vec
>> samo po trenutnom stanju na tabeli
Prvo da se odbranim od 'teskih' reci :)) Moj takmicar ima gresku (moja greska,
umesto da stavim >= stavio sam ==). Sto se tice igranja na duze staze,
gledajuci ostale takmicare, ni jedan ne igra vise od 1 poteza unapred, sto
i nije neko razmisljanje unapred, vec pracenje poznate seme.
Ni jedan takmicar nema razmisljanje za forsirani dobitak u 3 poteza, a
to bi bilo nekakvo razmisljanje na duze staze.
To sto ce moj takmicar da zavrsi na zacelju, posledica je jedne rupe u
odbrani i tako mi i treba sto brzam.
algoritmi.321tomak,
-> #320, embe> Ne smatram da je 4 takmicara malo (za pocetak). Bice taman dovoljno da,
> ako bog da, privuce jos toliko za sledeci turnir. Svaka tebi cast na
> ekspeditivnosti.
E imam osećaj - da nisi okačio 'napoleona' bilo bi ih više.
> >> Iz plejade moram da izdvojim ANAND-a koji, kako se meni cini, nije
> dorastao >> ostalim takmicarima. Embe-u usmena kritika (ne zbog brzine, vec
> zbog >> kvaliteta igre njegovog programa). Naime, ANAND ne igra na 'duze
> staze' vec >> samo po trenutnom stanju na tabeli
>
> Prvo da se odbranim od 'teskih' reci :)) Moj takmicar ima gresku (moja
> greska, umesto da stavim >= stavio sam ==). Sto se tice igranja na duze
Hteo sam da sačekam kraj turnira, pa da iznesem svoje utiske, ali sada
moram da reagujem - pošto je Embe poslao program sa greškom. Mislim da je
Embe zaslužio da se takmičenje (tačnije bodovanje) PONOVI, sa njegovim
ispravljenim pogramom. Ovo zato što smo mi ostali mogli da ispravljamo
greške ... i sa njegovim 'napoleonom', zato što je učestvovao u
organizaciji, zato što je odma' uleteo sa svojim masterom, ... i bre da
nije sve to uradio - trebalo bi. Šta kažu na ovo Kajko i Vinkom a i ostali?
Ovom priliko bi' se zahvalio i Kajku na ideji i organizacji. Što se posla
tiče želim uspeha i sreće tamo u tuđini.
> greska, umesto da stavim >= stavio sam ==). Sto se tice igranja na duze
> staze, gledajuci ostale takmicare, ni jedan ne igra vise od 1 poteza
> unapred, sto i nije neko razmisljanje unapred, vec pracenje poznate seme.
> Ni jedan takmicar nema razmisljanje za forsirani dobitak u 3 poteza, a
> to bi bilo nekakvo razmisljanje na duze staze.
Što se 'razmišljanja' takmičara tiče, (mislim da) imam ideju kako bi mogao
da izgleda takav program - da napada sa 'prozmišljanjem' koji će potez da
odigra ...
algoritmi.322vule.,
Treba mi HERC.BGX da bi igrao XOX. Ako bi bili ljubazni da mi ga
posaljete...
algoritmi.323vinkom,
-> #321, tomak>> nije sve to uradio - trebalo bi. Sta kazu na ovo Kajko i Vinkom a
>> i ostali?
Sto se mene tice nema problema. Iskoristio bi priliku da
pohvalim samu ideju o organizovanju ovakvog takmicenja i izrazim zelju
da se ono i nastavi. Kad vidimo protivnicke programe imacemo otprilike
kriterij koliko mora biti dobar program takmicar, pa ce i svako
sledece takmicenje biti neizvesnije, a time i zanimljivije.
algoritmi.324tomak,
-> #322, vule.> Treba mi HERC.BGX da bi igrao XOX. Ako bi bili ljubazni da mi ga
> posaljete...
Evo ali vidi se samo 16x21.
herc.bgxalgoritmi.325embe,
-> #321, tomak>> Hteo sam da sacekam kraj turnira, pa da iznesem svoje utiske, ali
>>sada moram da reagujem - posto je Embe poslao program sa greskom. Mislim
>>da je Embe zasluzio da se takmicenje (tacnije bodovanje) PONOVI, sa
>>njegovim ispravljenim pogramom. Ovo zato sto smo mi ostali mogli da
>>ispravljamo greske ... i sa njegovim 'napoleonom', zato sto je ucestvovao u
>> organizaciji, zato sto je odma' uleteo sa svojim masterom, ... i bre da
>> nije sve to uradio - trebalo bi. Sta kazu na ovo Kajko i Vinkom a i ostali?
Mnogo hvala na zauzimanju za moj 'slucaj', ali ja prvi, nisam za
ponavljanje borbi mog takmicara iz prostog razloga sto bi to znacilo
izvestan popust za neke od takmicara (npr mene). Kakav je takav je -
prijavljen je za takmicenje, pa kom obojci kom opanci.
Jos jednom hvala na lepim recima, ali samo da se zna, moracete
napraviti mnogo bolje takmicare nebi li se iole ravnopravno nosili sa
mojim novim takmicarem :)))
algoritmi.326embe,
-> #322, vule.>> Treba mi HERC.BGX da bi igrao XOX. Ako bi bili ljubazni da mi ga
>> posaljete...
Bas lepo sto hoces da nam se pridruzis. S obzirom da ti treba HERC.BGX
pametno zakljucujem da imas Herkules, na kome program XOX2121 ne
prikazuje celu tablu. Evo za tebe, a i za sve ostale najnovija
verzija programa XOX2121 v.2.3 (cak sam stigao do ove verzije) koja
je nesto usavrsena a mislim da ce resiti tvoje probleme.
Sledi master program za XOX -> XOX2121 v.2.3b
Pozdrav.
xox2121.zipalgoritmi.327tomak,
-> #325, embe> Jos jednom hvala na lepim recima, ali samo da se zna, moracete
> napraviti mnogo bolje takmicare nebi li se iole ravnopravno nosili sa
> mojim novim takmicarem :)))
Ovo sam očekivao, znači napred u nove pobede. :) Predložim da ne bude
novi turnir nego da pobednik ovog turnira nosi titulu pobednika, dok se ne
pojavi bolji koji će da preuzme titulu i tako da turnir neprestano traje.
algoritmi.328embe,
-> #327, tomak>> Predlazem da ne bude
>> novi turnir nego da pobednik ovog turnira nosi titulu pobednika, dok se ne
>> pojavi bolji koji ce da preuzme titulu i tako da turnir neprestano traje.
Ako sam dobro razumeo, sistem treba da je sledeci: pobednik turnira,
automatski se kvalifikuje za sledeci turnir, a autor pobednika ima
pravo da za novi turnir posalje jos jednog takmicara (kao u Ligi
sampiona u fudbalu ?)
Mozda bi to pravo trebao da ostvari i vicesampion, cisto radi
dinamicnosti, ali i iz prakticniog razloga da se turnir ne bi
pretvorio u "pobedi sampiona", sto bi mozda obeshrabrilo potencijalne
nove ucesnike.
Drugo, pada mi na pamet i liga, u kojoj bi takmicari sa manje od 50%
uspeha ispadali, i koja bi se posle svakog ciklusa obnavljala novim
takmicarima (bez obzira na preostale takmicare, opet bi svako mogao da
posalje po jednog takmicara). Mislim da bi ovaj sistem bio
najinteresantniji. Sta ostali misle ?
algoritmi.329tomak,
-> #328, embe> Drugo, pada mi na pamet i liga, u kojoj bi takmicari sa manje od 50%
> uspeha ispadali, i koja bi se posle svakog ciklusa obnavljala novim
> takmicarima (bez obzira na preostale takmicare, opet bi svako mogao da
> posalje po jednog takmicara). Mislim da bi ovaj sistem bio
> najinteresantniji. Sta ostali misle ?
Meni izgleda dobra ideja. Mogla bi da postoji liga sa određenim brojem
takmičara i kad se pojavi novi (ili dva - tri nova) onda da se ponovi
turnih onih sa tabele sa tim novim. Koliko znam obično iz niže u višu ligu
idu dva takmičara, ovde bi mogao i samo jedan da se pojavi i da se ponovi
turnir i ako je bolji najmanje od poslednjeg da taj poslednji ispada ako
prelazi kvotu prve lige ... Trebalo bi da mogu i oni sa tabele da šalju
drugog takmičara ali da na tabeli mogu da imaju samo po jednog.
algoritmi.330tomcat,
-> #315, vector> > Da li ti pomenu sah negde? Imam uradjen i sahovski program :)
>
> Hoces da isprobas svog Gandalfa (valjda se tako zove)? ;)
Eeee.. kako znas?
algoritmi.331vector,
-> #330, tomcat> > Hoces da isprobas svog Gandalfa (valjda se tako zove)? ;)
>
> Eeee.. kako znas?
Poruka broj 5.304 u ovoj konferenciji. :)
algoritmi.332tomak,
-> #319, kajko> RangLista posle odigranog 1. kola 'I XOX Turnir'-a:
>
> No. đ Program đ OM đ Bod đ Procent đ Autor
> -------------------------------------------------------------------------
> 1. MALISA.EXE 1 3 100.000 tomak
> 2. KAJKO.EXE 1 3 66.667 kajko
> 3. VINKOM.EXE 1 0 33.333 vinkom
> 4. ANAND.COM 1 0 0.000 embe
> -------------------------------------------------------------------------
Taman sam hteo da pitam hoće li biti nastavka ali tad se setih da je na
tabeli moj takmičar na prvom mestu. Posle tog prisećanja (umesto da pitam
kad će nastavak) poručujem Kajku - nemoj da žuriš. :)
algoritmi.333kajko,
-> #328, embe>> Drugo, pada mi na pamet i liga, u kojoj bi takmicari sa manje od 50%
>> uspeha ispadali, i koja bi se posle svakog ciklusa obnavljala novim
>> takmicarima (bez obzira na preostale takmicare, opet bi svako mogao da
>> posalje po jednog takmicara). Mislim da bi ovaj sistem bio
Ja glasam za ovaj predlog.
KAJKO
algoritmi.334kajko,
--- I XOX Status Report ---
Rezultati 2. kola 'I XOX Turnir'-a:
đ Program đ Win đ Lo. đ Drw đ P đ %
-------------------------------------------------
1. MALISA.EXE 2 4 0 3 100.000
VINKOM.EXE 4 2 0 0 0.000
2. KAJKO.EXE 6 0 0 3 100.000
ANAND.COM 0 6 0 0 0.000
-------------------------------------------------
RangLista posle odigranog 2. kola 'I XOX Turnir'-a:
No. đ Program đ OM đ Bod đ Procent đ Autor
-------------------------------------------------------------------------
1. KAJKO.EXE 2 6 83.334 kajko
2. MALISA.EXE 2 3 66.667 tomak
3. VINKOM.EXE 2 3 50.000 vinkom
4. ANAND.COM 2 0 0.000 embe
-------------------------------------------------------------------------
KAJKO
xox_ii.zipalgoritmi.335kajko,
--- I XOX Status Report ---
Rezultati 3. kola 'I XOX Turnir'-a:
đ Program đ Win đ Lo. đ Drw đ P đ %
-------------------------------------------------
1. VINKOM.EXE 6 0 0 3 66.667
ANAND.COM 0 6 0 0 33.333
2. KAJKO.EXE 4 2 0 3 66.667
MALISA.EXE 2 4 0 0 33.333
-------------------------------------------------
RangLista posle odigranog 3. kola 'I XOX Turnir'-a:
No. đ Program đ OM đ Bod đ Procent đ Autor
-------------------------------------------------------------------------
1. KAJKO.EXE 3 9 75.000 kajko
2. VINKOM.EXE 3 6 75.000 vinkom
3. MALISA.EXE 3 3 50.000 tomak
4. ANAND.COM 3 0 0.000 embe
-------------------------------------------------------------------------
KAJKO
xox_iii.zipalgoritmi.336kajko,
Završen je I XOX turnir.
Svi programi su ostavili dobar utisak na turniru. Za početak, nije loše.
Moram da priznam da je bilo veoma zanimljivo izvoditi ovo takmičenje.
Stvarno sam uživao posmatrajući programe i proučavajući logiku koju
koriste. Ponavljam, za početak, nije loše !
Šifra za otključavanje arhive sa takmicarima je: 1234567890
""""""""""
U arhivi se, pored mog takmičara, nalazi i njegov izvorni kod pisan u
TC 1.00.
Moj odlazak u tuđinu ništa ne menja u samom toku ove konferencije. Jedino
će frekfencija mog javljanja biti malo ređa (Ehhh, da može TelNet...).
Za zadovoljstvom ću učestvovati i na narednom turniru po pravilima koja
se usvoje. Samo će organizator turnira morati biti neko drugi.
Čim mi se ovde otvori nalog, javiću moju novu E-Mail adresu za kontakt.
Za sada ostaje samo ova na Sezu.
PS: Hvala svima na lepim željama 'za brzo (finansijsko) ozdravljenje'.
KAJKO
algoritmi.337tomak,
-> #335, kajko> RangLista posle odigranog 3. kola 'I XOX Turnir'-a:
>
> No. đ Program đ OM đ Bod đ Procent đ Autor
> -------------------------------------------------------------------------
> 1. KAJKO.EXE 3 9 75.000 kajko
> 2. VINKOM.EXE 3 6 75.000 vinkom
> 3. MALISA.EXE 3 3 50.000 tomak
> 4. ANAND.COM 3 0 0.000 embe
> -------------------------------------------------------------------------
Čestitam Kajku i Vinku.
Inače, takmičara sam nazvao 'mališa' jer sam pretpostavio da će biti
'najteži'...
KAJKO.EXE 14,668
VINKOM.EXE 8,032
ANAND.COM 20,556
MALISA.EXE 21.408
Uz poruku je takmičar (u arhi laki.arj) koji je bio alternativa 'mališi',
više je okrenut napadu (napadniji je ali napadajući pravi greške ...).
laki.arjalgoritmi.338embe,
-> #335, kajko>> RangLista posle odigranog 3. kola 'I XOX Turnir'-a:
>>
>>No. d Program d OM d Bod d Procent d Autor
>>-------------------------------------------------------------------------
>> 1. KAJKO.EXE 3 9 75.000 kajko
>> 2. VINKOM.EXE 3 6 75.000 vinkom
>> 3. MALISA.EXE 3 3 50.000 tomak
>> 4. ANAND.COM 3 0 0.000 embe
>>-------------------------------------------------------------------------
Cestitam pobednicima i zahvaljujem organizatoru na angazovanju.
Sta reci posle zavrsetka prvog turnira, nego da nije bilo primedbi i
da je najbolji pobedio. Rukavica je bacena, ustanovljen je odredjeni
nivo kvaliteta takmicara u odnosu na koji treba da se autori novih
takmicara ravnaju (naravno pri tome ne mislim na mog takmicara koji
je ocigledno razocarao :)))
Jos jednom pozdrav takmacima, spremajte jos bolje takmicare.
Takodje, poziv svima onima koji misle da mogu da naprave inteligentan
program za igranje XOX-a da se ukljuce, i spreme svog takmicara za
sledeci turnir.
algoritmi.339embe,
-> #336, kajko>> Moj odlazak u tudinu nista ne menja u samom toku ove konferencije.
>>Jedino ce frekfencija mog javljanja biti malo reda (Ehhh, da moze
>>TelNet...). Za zadovoljstvom cu ucestvovati i na narednom turniru po
>>pravilima koja se usvoje. Samo ce organizator turnira morati biti
>>neko drugi.
Ako niko nema nista protiv, mogao bih se prihvatiti organizacije
novih turnira. Ako glasate za mene, obecavam vam fer i postenu borbu,
i uredno izvodjenje takmicenja :)))
Ako je vreme da se saopste nova pravila, evo ih:
* Pravila su ista kao i do sada, znaci igra svako sa svakim po 6
(sest) partija sa naizmenicnim prvim potezom.
* Pobeda u mecu donosi 3 poena, nereseno 1 a poraz 0 poena.
* Igra se liga iz koje posle svakog turnira ispadaju oni koji imaju
manje od 50% uspeha (manje od 50% osvojenih bodova)
* Za svako novo takmicenje, pojedinac moze da prijavi jednog
takmicara. Oni kojima su takmicari ostali u ligi takodje se
dozvoljava da prijave jednog novog takmicara.
* II XOX Turnir pocinje u subotu 18. oktobra, a rok za slanje
takmicara je petak 17. oktobar u 24:00. Slanje takmicara -> meni na
mail.
* Iz I XOX Turnira na osnovu rezultata, za II XOX Turnir automatski su
prijavljeni prvoplasirani i drugoplasirani takmicari KAJKO.EXE i
VINKOM.EXE jer imaju osvojenih 9 od 9 i 6 od 9 bodova.
* Takmicenje se odvija posredovanjem master programa XOX2121 koji se
moze skinuti iz poruke 1.326.
Pozdrav svim sadasnim i buducim takmicarima.
Milan.
algoritmi.340tomak,
-> #339, embe> Ako niko nema nista protiv, mogao bih se prihvatiti organizacije
> novih turnira. Ako glasate za mene, obecavam vam fer i postenu borbu,
> i uredno izvodjenje takmicenja :)))
Bilo bi bolje kad bi bio neko ko ne učestvuje jer pretpostavljam da ćeš
učestvovati sa takmičarem ali ako nema ko - glasam za tebe :) (prihvatajući
obećanje :)).
Ostalo se prihvata - jednoglasno. :)
algoritmi.341embe,
Subject: II XOX turnir (sa posebnim osvrtom na pobednike I XOX turnira)
Testirao sam mog novog takmicara sa svim ucesnicima prvog turnira.
Zapazanja su mi sledeca :
- kajko.exe je jako dobar, igra brzo (nisam gledao source koji je
autor velikodusno obnarodovao, i po meni, napravio gresku, jer
njegov source neko moze zloupotrebiti i doci na ideju da samo vrsi
minorne ili nikakve modifikacije na tom kodu i tako pravi 'svog'
takmicara). Ovaj takmicar igra prilicno racionalno, ali nesto je
slabiji u odbrani i pozicijama u kojima 'nema sta da se igra'.
Ponasa se kao Tajson kada se borba produzi preko osam rundi - gresi.
Naime, u jednoj partiji sa mojim novim takmicarom igrao se vec 150 i
neki potez (!), i pozicija je bila remi (tj. nije bilo teorije da neko
pobedi), kajko.exe je odigrao pogresan potez i master program ga je
diskvalifikovao. Treba popraviti ovaj bag.
- vinkom.exe je po meni najcudniji takmicar od svih. Cudan je zbog toga
sto su njegovi potezi, kada napada, prosto genijalni, ali kada se brani...
Treba mu malo popraviti igru u odbrani i to ce biti strasan borac.
Igra malo sporije od Kajkovog takmicara a duzina razmisljanja je
konstantna, igrao se prvi ili stoti potez.
- malisa.exe (autor tomcat) je zauzeo trece mesto na turniru. Moj
takmicar koga testiram, 'slistio' je kajko.exe i vinkom.exe sa po 5:1
i taman sam hteo da kazem - to je to, i da zavrsim sa 'stelovanjem'
mog takmicara, kad pomislih - ajde da 'slistim' i 'malisu' kad ono...
rezultat 3:3 i to uz dva NERESENA(!) meca. Bas neresena, igralo se do
poslednjeg slobodnog polja, 221 potez. Opasan 'mali'! To je dokaz da
ima dobru, bolje reci odlicnu odbranu, ali donekle slabost mu
predstavlja igra u odbrani - dokaz su porazi protiv ofanzivnih
takmicara kajko.exe i vinkom.exe. Malo da se odbrana i napad
izbalansiraju i bice to strasan 'mali'. Brzina igranja se smanjuje
posle svakog odigranog poteza, i posle stotog poteza postaje neprijatno
spor. A ja sam ga terao i do 221-og poteza (pravo mucenje :)))
Jedan predlog se namece, igrajuci mnogo dugackih meceva, a to je
da se ne igra do 221. poteza nego do ustanovljenja remija. Remi je
pozicija kada niko ne poseduje sansu za spajanje pet u nizu, tj.
sve je blokirano. Ugradio sam to u 'master' program tako da postedi
organizatora bezveznog random glupiranja takmicara. Sta mislite o tome?
----------------
Saljite takmicare meni na mail, rok za prijavljivanje na II XOX turnir
je petak, 18.10. u 24:00.
PS. Moj takmicar tuce sva tri, sa ne manje od 5:1 :))) Ucinite nesto!
algoritmi.342tomak,
-> #341, embe
O pobednicima imam slična zapažanja sa malim dodatkom.
> - vinkom.exe je po meni najcudniji takmicar od svih. Cudan je zbog toga
Ovo je najkraći program i možda bi bio malo duži da je VinkoM mogao
prvo da vidi ostale takmičare (pre turnira) ...
> - malisa.exe (autor tomcat) je zauzeo trece mesto na turniru. Moj
Mene su zvali i tomca ali nije mi to user.
> takmicar koga testiram, 'slistio' je kajko.exe i vinkom.exe sa po 5:1
> i taman sam hteo da kazem - to je to, i da zavrsim sa 'stelovanjem'
> mog takmicara, kad pomislih - ajde da 'slistim' i 'malisu' kad ono...
> rezultat 3:3 i to uz dva NERESENA(!) meca. Bas neresena, igralo se do
Izvinjavam se ali ovo sam morao da ponovim. :)
> izbalansiraju i bice to strasan 'mali'. Brzina igranja se smanjuje
> posle svakog odigranog poteza, i posle stotog poteza postaje neprijatno
> spor. A ja sam ga terao i do 221-og poteza (pravo mucenje :)))
Sećam se da sam pročitao da je za ono prvo takmicenje (3X3) DZakic
napisao da ne treba pisati programe sa IF naredbama nego da treba da bude
algoritam (otprilike tako). 'Malisa' je napisan sa IF naredbama, ;( zato
i biva spor a zato se i zove tako. Ako uspem da ove IF-ove 'sredim' i ako
... daću mu ime po svom useru (valjda mu to neće smetati :)) i biću tako
bezobrazan da ću, u temu koja se zove algoritmi, ponovo da pošaljem svog
takmičara.
> Saljite takmicare meni na mail, rok za prijavljivanje na II XOX turnir
> je petak, 18.10. u 24:00.
Znači da bi rok bio 17.10 u 24:00 da ti okačiš svoj u konf'u (pod
šifrom), ovo zato da se postigne ravnopravnost. Napominjem da je ovo
primedba formalne prirode i (naravo) nema ništa lično u sebi.
algoritmi.343embe,
-> #342, tomak>>> - malisa.exe (autor tomcat) je zauzeo trece mesto na turniru. Moj
>> Mene su zvali i tomca ali nije mi to user.
Mnogo se izvinjavam.
>> Znaci da bi rok bio 17.10 u 24:00 da ti okacis svoj u konf'u (pod
>> sifrom), ovo zato da se postigne ravnopravnost. Napominjem da je ovo
>> primedba formalne prirode i (naravo) nema nista licno u sebi.
Apsolutno na mestu. Niko jos nije prijavio takmicara pa je sada pravo
vreme da kao organizator javno prijavim svog. Naravno pod sifrom je.
Dakle i formalno, vise ne postoje prepreke za prijavu takmicara.
Evo DEFENDER.EXE -a:
defender.zipalgoritmi.344qpele,
subj: xox
Kako stvari stoje verovatno cu do petka i ja da zavrsim mog takmicara
tako da se konjkurencija povecava :)
algoritmi.345embe,
subj. II XOX turnir.
Sutra (17.10.97) u 24:00 istice rok za prijavu takmicara.
Zato, pozurite sa slanjem svojih takmicara, da vam posle ne bi bilo
zao.
Takmicari se salju meni u mail.
Turnir pocinje, kao sto je ranije objavljeno, u subotu 17.10.97.
algoritmi.346tomak,
-> #345, embe> subj. II XOX turnir.
>
> Sutra (17.10.97) u 24:00 istice rok za prijavu takmicara.
Poslao sam svog (doteranog) starog takmičara. Trebalo bi mi više vremena
da bude brži.:(
algoritmi.347embe,
-> #346, tomak subj. II XOX turnir.
>> Poslao sam svog (doteranog) starog takmicara. Trebalo bi mi vise
>> vremena da bude brzi.:(
Sto se tice brzine, uopste nije bitna, ono moje zapazanje je bilo
cisto 'statisticki' podatak.:))
Nego, tvoj takmicar, jedini, u svoj fajl za 'memoriju' pise dotad
odigrane poteze, a ne trenutnu poziciju. Zar ne ? I svaki put fajl
je sve duzi. Ne znam sta jos pises u fajl, ali posle dosta odigranih
poteza, imam osecaj da je fajl mnogo mnogo veci od slicnog fajla
ostalih takmicara. Mozda je to razlog za smanjenu brzinu ?
algoritmi.348tomak,
-> #347, embe> Nego, tvoj takmicar, jedini, u svoj fajl za 'memoriju' pise dotad
> odigrane poteze, a ne trenutnu poziciju. Zar ne ? I svaki put fajl
> je sve duzi. Ne znam sta jos pises u fajl, ali posle dosta odigranih
> poteza, imam osecaj da je fajl mnogo mnogo veci od slicnog fajla
> ostalih takmicara. Mozda je to razlog za smanjenu brzinu ?
Jeste i on je duži nego što bi mogao biti. Nisam ustvari ni stigao da
radim na brzini, radio sam na samoj igri a brzinu sam (retorički) spomenuo
kao sledeću stvar koju sam hteo da uradim i da sam imao vremena mislim da
bi bio brži. Inače, pišem program u paskalu a čini mi se da su ostali
takmičari pisani u C-u. Pretpostavljam da zbog ovog poslednjeg (ma kako
ga ubrzavao) mora biti razlike u brzini.
algoritmi.349embe,
subj: II XOX Turnir.
Duboko se izvinjavam zbog kasnjenja turnira. Iako sam obecao da ce se
turnir odrzati na vreme, obecanje nisam ispunio iz tehnickih razloga.
Naime desava mi se krecenje stana, naravno racunar nije u operativnom
tanju, a uz to i alternativno resesenje me je izneverilo tako da sam
prinudjen da odlozim pocetak takmicenja za sredu 22.10.
za takmicenje je prijavljeno 6 takmicara:
KAJKO.EXE,VINKOM.EXE,VINKOM01.EXE,MALISA.EXE,ZHIVADIN.EXE i
DEFENDER.EXE.
Ako bog da prvi izvestaj stize u sredu 22.10 u vecernjim casovima.
algoritmi.350tomak,
-> #349, embe> za takmicenje je prijavljeno 6 takmicara:
> KAJKO.EXE,VINKOM.EXE,VINKOM01.EXE,MALISA.EXE,ZHIVADIN.EXE i
^^^^^^^^^^
> DEFENDER.EXE.
Prijavio sam MALISHA.EXE, što i nije mnogo bitno.
^
algoritmi.351embe,
-> #350, tomak
>> Prijavio sam MALISHA.EXE, sto i nije mnogo bitno.
Lapsus finger :). Izvini.
algoritmi.352embe,
subj. II XOX turnir.
Napokon pocinje II XOX turnir.
Pravo na ucesce stekli su sledeci takmicari:
kajko.exe - autor: KAJKO (pobednik I XOX turnira)
vinkom.exe - autor: VINKOM (drugoplasirani sa I XOX turnira)
malisha.exe - autor: TOMAK
vinkom01.exe - autor: VINKOM
zhivadin.exe - autor: QPELE
defender.exe - autor: EMBE
Sta da izjavim na pocetku? Pridruzio nam se novi autor QPELE, TOMAK je
poslao novu verziju svog vrlo dobrog takmicara, VINKOM kao da nije
zadovoljan osvojenim drugim mestom na I turniru pa je poslao svog drugog
takmicara, KAJKO uziva na lovorikama, a EMBE (tj. ja) je zeljan skalpova...
Uskoro ce se sve razjasniti...
Turnir ce se sastojati od pet kola. Izvuceni su sledeci takmicarski
brojevi:
1. MALISHA.EXE
2. DEFENDER.EXE
3. ZHIVADIN.EXE
4. KAJKO.EXE
5. VINKOM.EXE
6. VINKOM01.EXE
U prvom kolu sastaju se:
MALISHA.EXE - DEFENDER.EXE
ZHIVADIN.EXE - KAJKO.EXE
VINKOM.EXE - VINKOM01.EXE
Svi parovi su interesantni, ne bih ni jedan mec obelezio kao derbi.
Prvi par je sudar dva potpuno nova takmicara, pa je prognoza teska.
Drugi par, po meni predstavlja zestoki test za 'pridoslicu'. Ko zna,
mozda kajko.exe bude srusen vec na pocetku ?
Treci par moze da pokaze koliko je nova verzija bolja ili losija od
stare. Ako nova verzija 'razbuca' staru (vrlo dobru) onda nam se svima
lose pise...
Toliko za pocetak. Izvestaj o prvom kolu sledi.
algoritmi.353embe,
subj. II XOX Turnir.
Rezultati 1. kola:
MALISHA : DEFENDER 3,5 : 2,5 (1 remi)
ZHIVADIN : KAJKO 5 : 1
VINKOM : VINKOM01 0 : 6
Tabela posle 1. kola
_____________________________________________
1. VINKOM01 1 1 0 0 6:0 3
2. ZHIVADIN 1 1 0 0 5:1 3
3. MALISHA 1 1 0 0 3,5:2,5 3
4. DEFENDER 1 0 0 1 2,5:3,5 0
5. KAJKO 1 0 0 1 1:5 0
6. VINKOM 1 0 0 1 0:6 0
_____________________________________________
(kolone u tabeli redom znace: odigrao meceva, pobede, nereseno,
izgubljeno, 'gol-razlika' i broj bodova)
E sada malo komentara:
Prvi mec, prava iscrpljujuca borba dva gotovo podjednaka takmicara.
Ne samo da su priblizno jednaki po snazi vec i taktika im je gotovo
ista: odbrana, odbrana i samo odbrana. Interesantno je da oba
takmicara igraju bolje kada ne vuku prvi potez. DEFENDER je imao
malo manje srece i izgubio. Svaka cast MALISHI, igrao je kao Karpov,
neatraktivno ali jako i korisno.
Drugi mec, sta da vam kazem. Sve sto sam video je bilo da je KAJKO
uleteo u 'masinu' (i to za ves i jos na centrifugiranje :))).
Pobeda ZHIVADINA je tako cista i ubedljiva da je za mene pravo cudo
bila pobeda KAJKA u poslednjoj partiji. Elem, KAJKO je postigao pocasni
pogodak, videcemo da li ce ostali moci i to da urade protiv strasnog
ZHIVADNA.
Treci mec, valjda zbog toga sto su se sastali takmicari istog autora,
meni uopste nije bio interesantan. VINKOM01 je slistio svoga
prethodnika, ali da stvar bude (ne)interesantna partije su se
ponavljale, tako da sam ladno mogao da pustim samo prvu i drugu partiju,
i da izvestaj tri puta iskopiram. Doduse, ima nekih razlika u cetvrtoj i
petoj partiji ali, te razlike su pred kraj, i ne menjaju moju ocenu.
Sa druge strane, gledajuci VINKOM.EXE i VINKOM01.EXE u akciji, mogu
samo da izjavim 'Ala ga je opravio..., svaka mu cast'
Toliko za prvo kolo. Posle prvog dolazi drugo kolo. A u drugom kolu
sastaju se:
MALISHA : ZHIVADIN
DEFENDER : VINKOM
KAJKO : VINKOM01
Svi su mecevi interesantni (dok se ne dokaze suprotno:))
Derbi je svakako prvi mec, ja blagu, najblazu prednost dajem
ZHIVADINU , ali ko zna.
Drugi mec je mnogo manje neizvestan i tu je DEFENDER izraziti favorit.
(ovo smem da tvrdim jer je VINKOM.EXE bio sparing partner u procesu
pravljenja DEFENDER-a)
U trecemi mecu, iz verovatno istih razloga, VINKOM01 je favorit.
Ali, iznenadjenja su moguca (i pozeljna :))
Uz poruku je zakacena arhiva sa izvestajima sa meceva 1. kola.
Takodje tu je i sifrovana arhiva sa svim takmicarima.
uz1kolo.zipalgoritmi.354embe,
subj. II XOX Turnir.
Rezultati 2. kola:
MALISHA : ZHIVADIN 6 : 0
DEFENDER : VINKOM 6 : 0
KAJKO : VINKOM01 0 : 6
Tabela posle 2. kola
_____________________________________________
1. VINKOM01 2 2 0 0 12:0 6
2. MALISHA 2 2 0 0 9,5:2,5 6
3. DEFENDER 2 1 0 1 8,5:3,5 3
4. ZHIVADIN 2 1 0 1 5:7 3
5. KAJKO 2 0 0 2 1:11 0
6. VINKOM 2 0 0 2 0:12 0
_____________________________________________
(kolone u tabeli redom znace: odigrao meceva, pobede, nereseno,
izgubljeno, 'gol-razlika' i broj bodova)
E sada malo komentara:
Prvi mec, doneo je iznenadjujuci rezultat (ako se gledaju rezultati
prvog kola). Medjutim, ovaj rezultat samo pokazuje slabost sampiona
prethodnog turnira (KAJKO.EXE) i dokaz je da je domaci zadatak dobro
uradjen. MALISHA.EXE je ocigledno u dobroj formi i nije bilo vecih
problema za njega u ovom mecu. ZHIVADIN.EXE se dobro drzao ali...
Drugi mec je protekao u nadmocnosti DEFENDER-a i osim jedne partije koja
je trajala nesto duze, borbe su bile srednje duzine. Ipak je VINKOM.EXE
'veteran' i 'procitan' tako da mislim da mu poslednje mesto nece umaci.
Treci mec. Sve sto nije VINKOM.EXE jeste VINKOM01.EXE. Tako je lako
'smazao' starog (sada je to sasvim izvesno) sampiona da je to bilo
milina gledati. Bilo je cak i 'suster-matova' :)))
Posle expresne i maksimalne pobede VINKOM01.EXE se zadrzao u vodjstvu,
a prati ga MALISHA.EXE. U drugom redu su DEFENDER.EXE i ZHIVADIN.EXE,
a fenjer drze bivsi sampioni.
Toliko za drugo kolo. Posle drugog dolazi trece kolo. A u trecem kolu
sastaju se:
MALISHA : KAJKO
DEFENDER : VINKOM01
ZHIVADIN : VINKOM
Derbi je svakako drugi mec, jer u prvom je favorit MALISHA a u drugom
ZHIVADIN, ali ko zna.
Uz poruku je zakacena arhiva sa izvestajima sa meceva 2. kola.
P.S. Turnir izvodim u 'partizanskim' uslovima jer zbog posledica
krecenja mog stana, namestaj nije vracen na svoje pozicije. Zato ako
dodje do eventualnog kasnjenja, ne sekirajte se mnogo, za dan dva bice
normalizovano stanje.
uz2kolo.zipalgoritmi.355tomak,
-> #354, embe> Uz poruku je zakacena arhiva sa izvestajima sa meceva 2. kola.
A uz ovu poruku je ahiva PREGLED.ARJ u kojoj su:
PREGLED.EXE za pregled odigranih partija.
PREGLED.BAT za pustanje pregleda.
TUR2PROG.EXE vadi iz izvestaja sa ovog turnira odabranu partiju i upisuje
u LOGFAJL koji može sa PREGLED.EXE ponovo da se pogleda.
> P.S. Turnir izvodim u 'partizanskim' uslovima jer zbog posledica
> krecenja mog stana, namestaj nije vracen na svoje pozicije. Zato ako
Krečenje svakako spada u stresnija događanja ...
pregled.arjalgoritmi.356tomak,
-> #355, tomak> TUR2PROG.EXE vadi iz izvestaja sa ovog turnira odabranu partiju i upisuje
> u LOGFAJL koji može sa PREGLED.EXE ponovo da se pogleda.
Kod nerešenih partija (do sad je bila samo jedna) Embe prekida pre kraja
kada takmičari više nemogu da naprave 'peticu'. Ne znam kako i da li može
da se izađe iz XOX2121 kad se dođe do tog prekida ali kad se pušta sa
PREGLED-om kod tog prekida treba da se odigra pogrešan potez. Uz poruku
je TUR2PREG sa ispravkom.
tur2preg.exealgoritmi.357embe,
-> #356, tomak> Kod neresenih partija (do sad je bila samo jedna) Embe prekida pre kraja
> kada takmicari vise nemogu da naprave 'peticu'. Ne znam kako i da li moze
> da se izade iz XOX2121 kad se dode do tog prekida ali kad se pusta sa
XOX212 v.2.4 sama otkriva 'remi' situaciju.
algoritmi.358embe,
subj. II XOX Turnir.
Rezultati 3. kola:
MALISHA : KAJKO 5 : 1
DEFENDER : VINKOM01 0 : 6
ZHIVADIN : VINKOM 6 : 0
Tabela posle 3. kola
_____________________________________________
1. VINKOM01 3 3 0 0 18:0 9
2. MALISHA 3 3 0 0 14,5:3,5 9
3. ZHIVADIN 3 2 0 1 11:7 6
4. DEFENDER 3 1 0 2 8,5:9,5 3
5. KAJKO 3 0 0 3 2:16 0
6. VINKOM 3 0 0 3 0:18 0
_____________________________________________
(kolone u tabeli redom znace: odigrao meceva, pobede, nereseno,
izgubljeno, 'gol-razlika' i broj bodova)
E sada malo komentara:
Prvi mec, je protekao u pozicionoj borbi oba takmicara, stim sto je
MALISHA bio mnogo uspesniji. Jos jednom da primetim da MALISHA igra
sjajno u odbrani (cak malo i preterano). Jednom je umesto da napravi
slobodna cetiri u nizu, odigrao blokadu protivnikova tri slobodna u
nizu (?). Sto je mnogo mnogo je :))(Ipak je dobio tu partiju)
Drugi mec je bio derbi samo za mene, jer iako se DEFENDER dobro drzao,
ipak nije odoleo sjajnim napadima VINKOM01-a. Meni za utehu je da je
VINKOM01-u trebalo za sada najvise poteza za savladjivanje svojih
protivnika
Treci mec je bio najlepsi u ovom kolu. Sastali su se Real iz Madrida i
FK Pekar :)). Sta da kazem, bila je to egzibiciona igra nadmocnog
ZHIVADINA. Za VINKOM-a se, na srecu, sve brzo zavrsilo.
Toliko za trece kolo. Posle treceg dolazi cervrto kolo. A u cetvrtom
kolu sastaju se:
MALISHA : VINKOM
DEFENDER : KAJKO
ZHIVADIN : VINKOM01
Derbi je svakako treci mec, jer u prvom je favorit MALISHA a u drugom
DEFENDER, ali ko zna (derbi = mislim najinteresantniji mec, a ne
najneizvesniji)
Uz poruku je zakacena arhiva sa izvestajima sa meceva 3. kola.
izv3kolo.zipalgoritmi.359qpele,
E kakav je ovo turnir bez navijaca. Ovim putem pozivam sve ljubitelje
zivadina da ga svojim navijanjem podrze u derbiju IV kola :)
Ko bude najgrlatiji postaje vodja navijaca :)
algoritmi.360qpele,
E da grupa navijaca zhivadina se zove:
Zhivadini sa severa :)
algoritmi.361hercog,
-> #358, embe│ ZHIVADIN : VINKOM01
└───────────────────────────────────────────────────────────
Ajmo ajde, ZHIVADINE :)) Napred domaći.... :)))
Sale
algoritmi.362zla.,
NAPRED ZIVADINE....
algoritmi.363tomak,
-> #358, embe> MALISHA bio mnogo uspesniji. Jos jednom da primetim da MALISHA igra
> sjajno u odbrani (cak malo i preterano). Jednom je umesto da napravi
Nisam težio samo odbrani ima nečeg i u onoj narodnoj: 'Napad je najbolja
odbrana'. Pisao sam ga da iz odbrane gradi napad i da bude što
'univerzalniji' ... tako da (pošto je u pitanju turnir) uspešno igra sa
različitim protivnicima ...
algoritmi.364embe,
subj. II XOX Turnir.
Rezultati 4. kola:
MALISHA : VINKOM 6 : 0
DEFENDER : KAJKO 3 : 3
ZHIVADIN : VINKOM01 0 : 6
Tabela posle 4. kola
______________________________________________
1. VINKOM01 4 4 0 0 24:0 12
2. MALISHA 4 4 0 0 20,5:3,5 12
3. ZHIVADIN 4 2 0 2 11:13 6
4. DEFENDER 4 1 1 2 11,5:12,5 4
5. KAJKO 4 0 1 3 5:19 1
6. VINKOM 4 0 0 4 0:18 0
______________________________________________
(kolone u tabeli redom znace: odigrao meceva, pobede, nereseno,
izgubljeno, 'gol-razlika' i broj bodova)
E sada malo komentara:
U prvom mecu, malo teze nego sto sam ja ocekivao, MALISHA je savladao
poslednjeplasiranog. Pod 'malo teze' mislim na broj poteza, koji je bio
prilicno veliki. MALISHA ni jednom nije bio ozbiljnije ugrozen, dobro je
blokirao poziciju i cekao da mu se ukaze prilika, koju je zatim
realizovao. S obzirom da MALISHA i inace igra dugacke partije, (koje i
dobija), sasvim je subjektivno moje misljenje o tome dan se MALISHA
'oznojio' u ovom mecu.
Drugi mec je bio totalno neizvesan. DEFENDER je igrao promenljivo
(uostalom, kao i KAJKO) i iako ovaj rezultat predstavlja razocaranje za
mene, rezultat je pravedan. Nije bilo velikih obrta u mecu, svako je
dobio partiju koju je pocinjao. Partije su bile kratke do srednje
duzine.
Treci mec je pokazao da VINKOM01 jos uvek nije naisao na dostojnog
protivnika. ZHIVADIN je po svom obicaju igrao izuzetno ofanzivno ali je
to bilo previse riskantno. Uglavnom posle kontranapada VINKOM01 je
poentirao. Lep mec, sa puno lepih i neocekivanih poteza.
Toliko za cetvrto kolo. Posle cetvrtog dolazi peto - poslednje kolo. A
u poslednjem kolu kolu sastaju se:
MALISHA : VINKOM01
DEFENDER : ZHIVADIN
KAJKO : VINKOM
E sad, mozda mi necete verovati, ali ovakav rasplet nisam izrezirao.
U poslednjem kolu igra se za titulu, za trece i za peto mesto.
Sudari direktnih rivala odlucuju o konacnom poretku.
Lider na tabeli VINKOM01 dovoljan je i neresen ishod za osvajanje
titule a MALISHA mora da pobedi. Po meni moguc je svaki ishod osim
neresenog. Mali favorit je VINKOM01 ali sudeci po tome da MALISHA igra
sjajno u odbrani, moguce je da MALISHA 'ustopuje' 'Ronalda'.
U drugom mecu ZHIVADIN se bori za ostanak u Ligi jer mu je potrebna
pobeda da bi presao granicu od 50% osvojenih poena. DEFENDER je pokazao
da mu vise leze 'ofanzivci', ali uporedjujuci rezultate sa istim
protivnicima, ZHIVADIN je u prednosti.
Mec izmedju bivsih sampiona vec smo gledali i tu nema sta da se kaze.
Uz poruku je zakacena arhiva sa izvestajima sa meceva 4. kola.
uz4kolo.zipalgoritmi.365kenza,
-> #360, qpele>> E da grupa navijaca zhivadina se zove:
>> Zhivadini sa severa :)
Zivko,Zivko!!!
Zivko,Zivko !!!
Zivko,Zivko!!!..!!!!!
Zivko,Zivko !!!......!!!!!! ;)
Zivko,Zivko!!!..!!!!!
Zivko,Zivko !!!
Zivko,Zivko!!!
Ovo sa uzvicnicima ide postepeno, kako se razbuktava strast na
tribinama :)
algoritmi.366embe,
subj. II XOX Turnir.
Rezultati 5.(poslednjeg) kola:
MALISHA : VINKOM01 2 : 4
DEFENDER : ZHIVADIN 6 : 0
KAJKO : VINKOM 4 : 2
Konacna tabela posle 5. kola
______________________________________________
1. VINKOM01 5 5 0 0 28:2 15
2. MALISHA 5 4 0 1 22,5:7,5 12
3. DEFENDER 5 2 1 2 17,5:12,5 7
4. ZHIVADIN 5 2 0 3 11:19 6
5. KAJKO 5 1 1 3 11:19 4
6. VINKOM 5 0 0 5 2:22 0
______________________________________________
(kolone u tabeli redom znace: odigrao meceva, pobede, nereseno,
izgubljeno, 'gol-razlika' i broj bodova)
E sada malo komentara:
Prvi mec je bio derbi turnira sto je i opravdao. MALISHA je jedini uspeo
da pobedi VINKOM01 i to u dve partije. Medjutim, VINKOM01 je za nijansu
bio bolji i zasluzeno je pobedio direktnog rivala i osvojio prvo mesto
na turniru. Za divno cudo partije nisu bile mnogo dugacke (s obzirom na
stil igre koji gaji MALISHA). VINKOM01 je sjajan ofanzivac a MALISHA
sjajan defanzivac. Ovaj put pobedila je leprsavost VINKOM01 ali MALISHA
je pokazao da ne zaostaje mnogo za pobednikom.
Drugi mec je direktno odlucivao o ostanku u ligi ZHIVADIN-a. ZHIVADIN
nije imao kljuc za 'katanac' DEFENDER-a i zasluzeno je izgubio. Mozda ce
za nekoga ovako glatki poraz ZHIVADIN-a biti cudan, ali ovaj rezultat je
samo potvrda da ZHIVADIN igra mnogo slabije protiv defanzivnih takmicara
(podsecam na 0:6 protiv MALISHE). Mozda je steta sto je ovaj poraz
onemogucio ZHIVADINA da se plasira na sledeci turnir, a pobeda nije
omogucila DEFENDERU isto to, ali ubedjen sam da ce za sledeci turnir
doci neki novi, i usavrseni ZHIVADIN.
Treci mec je potvrdio ishod sa proslog turnira kada je KAJKO pokazao da
je jaci od VINKOM-a, i tu ne bih nista dodavao.
Dakle, za sledeci, III XOX Turnir, na osnovu uspeha, kvalifikovali su se
sledeci takmicari:
1. VINKOM01 sa uspehom 15/15 (100%)
2. MALISHA sa uspehom 12/15 (80%)
Iz lige ispadaju:
3. DEFENDER sa uspehom 7/15 (47%)
4. ZHIVADIN sa uspehom 6/15 (40%)
5. KAJKO sa uspehom 4/15 (27%)
6. VINKOM sa uspehom 0/15 (0%)
Kratak statisticki pregled odrzanog turnira je u pripremi.
Sifra za raspakivanje arhive sa svim takmicarima, kao i sa ranije
poslatim takmicarem organizatora (tj. mene) je:
NemaLaziNemaPrevare
Uz poruku je zakacena arhiva sa izvestajima sa meceva 5. kola.
uz5kolo.zipalgoritmi.367embe,
subj. II XOX Turnir.
Sttistika II XOX Turnira:
++ Ukupno odigranih poteza
┌──────────┬──────┬──────┬──────┬──────┬──────┬──────┬────────────────┐
│ │ MAL. │ DEF. │ ZHI. │ KAJ. │ VIN. │ VIN01│ Ukup. /Prosek* │
├──────────┼──────┼──────┼──────┼──────┼──────┼──────┼────────────────┤
│MALISHA │ ## │ 450 │ 350 │ 396 │ 348 │ 140 │ 1684 / 56.3 │
├──────────┼──────┼──────┼──────┼──────┼──────┼──────┼────────────────┤
│DEFENDER │ 450 │ ## │ 507 │ 245 │ 223 │ 309 │ 1734 / 57.8 │
├──────────┼──────┼──────┼──────┼──────┼──────┼──────┼────────────────┤
│ZHIVADIN │ 350 │ 507 │ ## │ 271 │ 138 │ 177 │ 1443 / 48.1 │
├──────────┼──────┼──────┼──────┼──────┼──────┼──────┼────────────────┤
│KAJKO │ 396 │ 245 │ 271 │ ## │ 210 │ 211 │ 1333 / 44.4 │
├──────────┼──────┼──────┼──────┼──────┼──────┼──────┼────────────────┤
│VINKOM │ 348 │ 223 │ 138 │ 210 │ ## │ 164 │ 1083 / 36.1 │
├──────────┼──────┼──────┼──────┼──────┼──────┼──────┼────────────────┤
│VINKOM01 │ 140 │ 309 │ 177 │ 211 │ 164 │ ## │ 1001 / 33.3 │
└──────────┴──────┴──────┴──────┴──────┴──────┴──────┴────────────────┘
* Prosek je po jednoj pojedinacnoj partiji.
++ Najbrze pobede :
1. VINKOM protiv KAJKO-a .... 8 poteza (!)
2. KAJKO protiv DEFENDER-a .... 10 poteza
3. MALISHA protiv VINKOM-a .... 13 poteza
++ Najsporije pobede:
1. DEFENDER protiv ZHIVADIN-a .... 160 poteza
2. DEFENDER protiv ZHIVADIN-a .... 157 poteza
3 MALISHA protiv VINKOM-a .... 135 poteza
++ Najbrze zavrseni mecevi
1. ZHIVADIN protiv VINKOM-a (6:0) .... 138 poteza ukupno
2. VINKOM01 protiv MALISHE (4:2) .... 140 poteza ukupno
++ Najsporije zavrseni mecevi
1. DEFENDER protiv ZHIVADIN-a (6:0) .... 507 poteza ukupno
2. MALISHA protiv DEFENDER-a (3,5:2,5) . 450 poteza ukupno
+ Ziri (odnosno ja) proglasio je pobednike u sledecim kategorijama:
--- Takmicar sa najboljim napadom: VINKOM01
--- Takmicar sa najboljom odbranom: MALISHA
--- Najatraktivniji takmicar (nagrada publike) ZHIVADIN
--- Najbrzi igrac (najbrze povlaci poteze) dele KAJKO i DEFENDER
--- Najsporiji igrac (najsporije povlaci poteze) VINKOM
--- Najlepsa partija turnira VINKOM01 - KAJKO (treca partija,
pobeda VINKOM01 u 36. potezu)
Toliko od mene. II XOX Turnir je karakterisalo izuzetno poboljsanje
kvaliteta takmicara. Verujem da ce sledeci turnir okupiti jos jace
takmicare. Nadam se i novim licima i novim idejama.
Cestitam autorima pobednickih takmicara VINKOM-u i TOMAK-u i porucujem
im da ne spavaju na lovorikama i da nastave da prave jos jace takmicare.
Ostalima ostaje izazov da sruse sampione.
Pozdrav.
algoritmi.368qpele,
Nista, samo mogu da najavim za sledeci turnir zhivadinovu sestru
bozana.exe :)))
algoritmi.369mmarkovic,
-> #368, qpele> Nista, samo mogu da najavim za sledeci turnir zhivadinovu sestru
> bozana.exe :)))
E, svaka ti čast za imena! :)))
Ako mogu da se ponudim za kuma, predlažem i:
MILOJICA
RADOJICA
DJOKA
PERA
ZHIKA
Naravno, .EXE ...
algoritmi.370tomak,
-> #366, embe> Konacna tabela posle 5. kola
> ______________________________________________
>
> 1. VINKOM01 5 5 0 0 28:2 15
> 2. MALISHA 5 4 0 1 22,5:7,5 12
> 3. DEFENDER 5 2 1 2 17,5:12,5 7
> 4. ZHIVADIN 5 2 0 3 11:19 6
> 5. KAJKO 5 1 1 3 11:19 4
> 6. VINKOM 5 0 0 5 2:22 0
> ______________________________________________
Sve što ću napisati je da me zanima koliko je od VINKOM01 do savršenosti
(za ovakvu koncepciju) i da li ima neki potez koji ne igra najjače.
> Dakle, za sledeci, III XOX Turnir, na osnovu uspeha, kvalifikovali su se
> sledeci takmicari:
>
> 1. VINKOM01 sa uspehom 15/15 (100%)
> 2. MALISHA sa uspehom 12/15 (80%)
Trebalo bi postotak da se računa po dobijenim partijama - to je pravi
postotak.
Organizacija sa detaljima ... sami superlativi ...
algoritmi.371embe,
-> #370, tomak>> Sve sto cu napisati je da me zanima koliko je od VINKOM01 do savrsenosti
>> (za ovakvu koncepciju) i da li ima neki potez koji ne igra najjace.
VINKOM01 igra samo jace od ostalih (pravi manje gresaka). Inace,
jos smo daleko od igranja najjacih poteza. Evo npr. napravio sam
novog takmicara koji tuce VINKOM01 sa ne manje od 5:1 (uvek) ali je
slabiji od MALISHE (gubi sa 2:4 do 1:5). Prema tome ....
>>> Dakle, za sledeci, III XOX Turnir, na osnovu uspeha, kvalifikovali
>>>su se sledeci takmicari:
>>>
>>> 1. VINKOM01 sa uspehom 15/15 (100%)
>>> 2. MALISHA sa uspehom 12/15 (80%)
>> Trebalo bi postotak da se racuna po dobijenim partijama - to je
>>pravi postotak.
Ipak mislim (samo za ovo takmicenje) da je proporcionalni sistem
manje dobar od vecinskog :))
Bez zezanja, bodovi su oni koji bolje sagledavaju ukupnu snagu
nekog takmicara. Nisu iste tezine dve partije dobijene protiv
VINKOM01 i VINNOM-a. Zar ne ? Ovako bi se to izjednacilo.
>> Organizacija sa detaljima ... sami superlativi ...
Hvala za pohvale, ali moram jos jednom da se izvinem za kasnjenje na
startu, kao sto sam rekao, desilo mi se krecenje, i ja tu nista nisam
mogao...
Sto se tice onih programa koje si napravio (za repeticiju partija),
jako su zgodni i korisni. S obzirom da sam takmicenje izvodio sa jos
ne publikovanim master programom XOX2121 v.2.4b, duznost mi je da ga
sada objavim. Mislim da je ovo jedna definitivna verzija.
xox2121.zipalgoritmi.372tomak,
-> #371, embe> >> Sve sto cu napisati je da me zanima koliko je od VINKOM01 do
> >> savrsenosti (za ovakvu koncepciju) i da li ima neki potez koji ne igra
> >> najjace.
> VINKOM01 igra samo jace od ostalih (pravi manje gresaka). Inace,
> jos smo daleko od igranja najjacih poteza. Evo npr. napravio sam
> novog takmicara koji tuce VINKOM01 sa ne manje od 5:1 (uvek) ali je
> slabiji od MALISHE (gubi sa 2:4 do 1:5). Prema tome ....
Ovo je bila (svojevrsna) čestitka pa nisam bio precizan. Pod 'koncepcijom'
sam mislio na 'razmišljanje' samo o potezu koji treba da se odigra a pod
'najjače' sam mislio na greške u tom potezu ...
algoritmi.373qpele,
-> #370, tomakw
algoritmi.374tomcat,
Koliko tesko je napraviti sledeci program:
Ucita se i ostane rezidentan, i sta god posle korinik kucao, program
"podmece" svoje karaktere koje cita iz nekog fajla. Znaci na svaki
keypress on podmetne jedan karakter.
algoritmi.375emajsijuen,
-> #374, tomcatTo>> "podmece" svoje karaktere koje cita iz nekog fajla. Znaci na svaki
To>> keypress on podmetne jedan karakter.
Cek, cek, na svaki keypress da ispise neki karakter umesto onog koji
je trebao, ili da ispise i taj koji treba i neki drugi ?
Ako je "samo" ovo drugo onda nije problem...
algoritmi.376tomcat,
-> #375, emajsijuen>To>> "podmece" svoje karaktere koje cita iz nekog fajla. Znaci na svaki
>To>> keypress on podmetne jedan karakter.
>
> Cek, cek, na svaki keypress da ispise neki karakter umesto onog koji
>je trebao, ili da ispise i taj koji treba i neki drugi ?
>
Treba da ispise samo jedan, onaj "svoj".
algoritmi.377tomak,
-> #376, tomcat> > Cek, cek, na svaki keypress da ispise neki karakter umesto onog koji
> >je trebao, ili da ispise i taj koji treba i neki drugi ?
> >
>
> Treba da ispise samo jedan, onaj "svoj".
Ovo je tema algoritmi pa ... evo kako bi to bilo u pascalu.
Uz poruku je primer za KEEP (BP7.0), sa ubačenim delom ispisuje samo
'svoj' karakter.
keep.pasalgoritmi.378embe,
subj. III XOX turnir.
+ Prijave takmicara za III XOX turnir primace se od ponedeljka,
3.novembra 1997.
+ Poslednji rok za prijavu takmicara je petak, 7.novembar 24:00.
+ Takmicari se salju meni na mail.
+ Takmicenje pocinje (trebalo bi) u subotu 8.novembra 1997.
+ Takmicarska pravila su ista kao i za II XOX turnir.
(da ponovim, za ovaj turnir automatski su su prijavljeni pobednici
II XOX turnira, VINKOM01.EXE (by VINKOM) i MALISHA.EXE (by TOMAK).
Salje se samo jedan takmicar. I Vinkom, i Tomak mogu da posalju po
jednog takmicara takodje.)
+ Svako moze da ucestvuje. Naravno, treba samo da napravi svog
takmicara.
PS. Jedini razlog zasto je pocetak prijavljivanja tek u ponedeljak
je taj, sto ja moram pre pocetka prijavljivanja da publikujem svog
takmicara, koji jos nije gotov.
algoritmi.379tomcat,
-> #377, tomak> Ovo je tema algoritmi pa ... evo kako bi to bilo u pascalu.
> Uz poruku je primer za KEEP (BP7.0), sa ubacenim delom ispisuje samo
> 'svoj' karakter.
Problem je sto ispisuje i pritisnuti karakter. Kako to izbaciti?
Vladimir Prelovac
.........................
tomcat@galeb.etf.bg.ac.yu
algoritmi.380tomak,
-> #379, tomcat> Problem je sto ispisuje i pritisnuti karakter. Kako to izbaciti?
Onaj primer što sam poslao kod mene ispisuje 5 puta samo slovo 's' bez
karaktera sa prisisnutog tastera a posle tih 5 puta počne da ispisuje
samo karakter sa pritisnutog tastera; usput i pišti (kako i inače u tom
primeru radi :)). Zanima me da li kod nekog radi nešto treće. ;(
algoritmi.381emajsijuen,
-> #379, tomcatTo>> Problem je sto ispisuje i pritisnuti karakter. Kako to izbaciti?
Imam ideju, ali me mrzi da pravim... Probaj da pre nego sto ispises 'svoj'
karakter odredis gde se kursor nalazi, pa onda na mesto ispred toga ispises taj
novi karakter. To ce verovatno raditi...
algoritmi.382emajsijuen,
-> #381, emajsijuenEm>> Imam ideju, ali me mrzi da pravim... Probaj da pre nego sto ispises
Em>> 'svoj' karakter odredis gde se kursor nalazi, pa onda na mesto ispred
Em>> toga ispises taj novi karakter. To ce verovatno raditi...
Sad mi pade na pamet... Taj efekat mozes da postignes i bez pravljenja
bilo kakvog rezidentnog programa. Jednostavno prilagodi fontove, tako sto
npr. font(65):=Font(66) (A=B). Ali ovo ce da promeni i sva slova na ekranu
(ona koja si menjao).
algoritmi.383tomcat,
-> #380, tomak> > Problem je sto ispisuje i pritisnuti karakter. Kako to izbaciti?
>
> Onaj primer sto sam poslao kod mene ispisuje 5 puta samo slovo 's' bez
> karaktera sa prisisnutog tastera a posle tih 5 puta pocne da ispisuje
> samo karakter sa pritisnutog tastera; usput i pisti (kako i inace u tom
> primeru radi :)). Zanima me da li kod nekog radi nesto trece. ;(
Bas cudno jer kod mene ispisuje i pritisnuti karakter.
Vladimir Prelovac
.........................
tomcat@galeb.etf.bg.ac.yu
algoritmi.384tomak,
-> #383, tomcat> Bas cudno jer kod mene ispisuje i pritisnuti karakter.
Da, da, da, ... ovo ne radi u DOS-ovom prozoru (ili Full-screen-u), radi
'samo' u čistom DOS-u ... Izvini - ako te dezorjentisah ...
algoritmi.385tomak,
-> #384, tomak> > Bas cudno jer kod mene ispisuje i pritisnuti karakter.
>
> Da, da, da, ... ovo ne radi u DOS-ovom prozoru (ili Full-screen-u), radi
> 'samo' u čistom DOS-u ... Izvini - ako te dezorjentisah ...
Evo je, u temi pascal, nepotpuna ispravka. Nepotpuna je jer se sa 'enter'
prelazi u drugi red.
algoritmi.386zuleika,
Seminar iz
GENETSKIH ALGORITAMA
pocinje u cetvrtak 06. 11. 1997. u 18 casova
Predavanja ce se odrzavati svakog cetvrtka, sem poslednjeg u mesecu,
u Racunarskoj Laboratoriji Matematickog fakulteta
(Studentski trg 16, IV sprat).
Prvo predavanje:
Dr Dusan Tosic,
profesor Matematickog fakulteta
Razvoj i karakteristike genetskih algoritama
Rukovodilac seminara
Dr Dusan Tosic
algoritmi.388vitez.koja,
Ok, evo je jedna storija o PCROBOTS-ima, pod radnim nazivom
PCROBOTS & Ja. Znači, probaću da u narednih nekoliko dana ispričam
neke stvari o tome, kakve sam ideje imao, šta sam radio itd...
* Uvod
Šta su uopšte ti pc roboti?
Radi se o igri u kojoj se dva (ili više) "robota-borca" bore i
pokušavaju da ubiju jedan drugog. Roboti su zapravo programi koje
neko napiše i iskompajlira i pošalje u arenu. Svaki robot može da
uradi nešto iz strogo ograničenog skupa instrukcija (kretanje,
potraga za protivnikom, pucanje...).
I tako, zainteresovala me je ta ideja, skinuo sam pcrob141.zip
(dos\fun\pcrob141.zip) i "proučio" pravila. Neke osnovne komande su
- configure - kreirate novog robota i određujete max. brzinu,
sposobnost manevrisanja - koliko mora da uspori da bi
skrenuo, domet oružja, jačinu oklopa i sposobnost
ubrzavanja; naravno, nešto možete povećati na uštrb
drugog itd.
- scan(angle, wide, range) - robot ispituje prostor oko sebe u
krugu od 360 stepeni; ovom instrukcijem naređujete mu
da ispita wide okolinu pravca angle i ako nađe
protivnika da vrati daljinu na kojoj se taj nalazi;
npr. scan(100, 5, range) ispituje sektor od 95. to
105. stepena;
- movement(angle, speed) - pomeranje robota u tom pravcu i brzini;
što se brže robot kreće, više energije gubi (nju
nadoknađuje mirovanjem)
- shoot(angle, range) - puca u tom smeru i na tu daljinu
Za više informacija predlažem čitanje pcrobots.doc iz gorespomenute
arhive i poruke iz igre.3:strategije od usera space.ace (leto '97).
* Prvi korak - Rani radovi
Ok, pročitao sam i razumeo o čemu se radi i rešio da napravim
najboljeg robota u istoriji... Prvo pravimo jednog robota za test.
Ako naš kandidat ne može da pobedi njega, onda bolje i da se ne
trudimo (dakle robot za test bi izgledao otprilike ovako):
#include <stdlib.h>
#include "pcrobots.h"
void main(void) {
int angle=0, range, k;
int s_dmg, prirastaj=4;
configure(2,0,4,4,0,0);
// znači maksimalan oklop i domet oružja, ostalo je 0 :)
randomize();
while (1) {
if (scan(angle=(angle+prirastaj)%360, prirastaj, &range) >=0) {
shoot(angle, range);
}
angle = (angle + 37) % 360;
// da bi ispitao svaki mogući ugao korak je 37
buy_armour(200 - damage());
// kad već ništa ne radi nadoknađuj štetu koja je nastala u
// međuvremenu na robotu (šteta se nadoknađuje na račun
// energije, a pošto robot stoji, energija se brzo
// nadoknađuje
}
}
Pošto je dogovoreno da se sezamov turnir odigra u default areni,
reših i da iskoristim prednosti iste (postoje zidovi iza kojih se
robot može sakriti - arena je pcrobots.rna, a za
xxxxxxxxxxxxxx vas koje mrzi da skidate recimo da izgleda
1x2 nekako ovako. Dakle, ideja je da se moj robot
x zabije u ćošak (1, 2, 3, 4) i da ne mrda odatle
dok ne ugleda nešto. Prednosti su što treba da
x proverava samo tih 90 stepeni, što je u
x međuvremenu siguran i što se ne pomera, pa ne
3x4 troši energiju. Znači, postupak je jednostavan -
xxxxxxxxxxxxxx idemo u najbliži ugao i skeniramo tih 90°. Kad nađemo
nešto pokušavamo da ga odredimo što preciznije gde
je tačno poloveći sektor koji smo pretraživali i pretražujući obe
polovine i tako dok ga ne nađemo sa preciznošću od 1°. Uvek treba
voditi računa da pcrobots radi sa celobrojnom matematikom i da treba
paziti kod nalaženja polovine (kasnije ćemo imati i problema sa max.
i min. brojevima koje celobrojni tip donosi).
U petlji vrtimo (znam da može jednostavnnije, ovo je i da
paskaldžije razumeju) sledeće (za npr. ćošak 2):
struct point {
int angle;
int range;
} data;
while (1) {
if ( scan(45, 45, &data.range) >= 0 ) break;
}
i kad se izleti vrtećemo npr. sledeću funkciju (start i end su
granice sektora koji ispitujemo, a funkcija vraća 0 ako ne nađe
ništa ili širinu sektora ako nađe nešto; wide je širina ispitivanog
sektora, da bi prenosili dokle smo stigli, na početku treba
podesiti wide kao (end-start)/2;
int scan_sector(int start, int end, int wide) {
int x, l;
x = (start + end + 1) / 2; // ugao koji se ispituje
if (scan(x % 360, wide, &data.range) == -1) return 0;
else {
if (wide < 2) {
data.angle=x % 360;
skshoot(data.angle, data.range);
return wide;
}
if (l=scan_sector(start, x, (wide+1)/2)) return l;
else if (l=scan_sector(x, end, (wide+1)/2)) return l;
else return (scan_sector(start, end, wide));
// ovaj treći red vam se čini malo nepotreban, ali trebaće :)
}
}
Yes, radi, kada ga program ispadne iz prve petlje, ova petlja će
odmah precizirati gde se protivnik nalazi i upucaćemo ga, a onda
povratak u prvu petlju (ovo i nije tako tragično, zato što ne može
neprestano da se puca, nego u razmacima od 50 "poteza" - potez je
pomeranje, pucanje i skaniranje okoline, tako da ima vremena da ga
ponovo nađemo). Podaci o tome gde je poslednji put nađena "meta"
čuvaju se u globalnoj promenljivoj data. Poboljsanje bi se moglo
uvesti i u ispitivanju if (wide < 2), zato što nije isto da li ga
i našli preciznošću od 1° na daljini 50 i na daljini 500. Ideja
je da se ispituje dužina luka tog sektora u kome smo našli
protivnika, pa ako je ona "dovoljno mala" onda prestati (a dužinu
luka, to zna svako dete računamo kao l = 2rŃ * Ó / 360, tj.
luk = 2 * Pi * data.range * (2*wide) / 360;
Pi naravno možemo emulirati sa 22/7 i uz malo izbegavanja preranog
zaokruživanja dolazimo do
luk = (22 * data.range * wide + 7 * 45) / 7 / 90
i da se nadate da niste prešli preko 65535 prilikom ovoga...
Postavlja se pitanje, kolika je ona "dovoljno mala" veličina, za
stepene je bilo lako - 1°, a kod luka? Nema druge nego ekperimentom
(nisam se time bavio, pa neću preporučiti nijednu vrednost).
* Drugi korak - Sitnim koracima napred
Odmah i lako se unosi poboljšanje u sve ovo - uvešćemo funkciju
koja će "pratiti" protivničkog robota, da ga ne tražimo ispočetka
uvek, kad već znamo gde je bio. Po svoj prilici nije daleko
pobegao... Kada uđemo u neku kritičnu zonu, npr. prošle je 47 ili
više poteza od poslednjeg pucaja, prelazimo na pucanje...
int follow_target(int wide) {
int a, b, y, i=1;
do {
a = data.angle-wide;
b = data.angle+wide;
wide = wide + i++;
if(y=scan_sector(a,b,wide)) return y;
} while (wide <= 45);
return 0;
}
Znači ovu ćemo funkciju neprekidno zvati iz petlje kad prvi put
pronađemo metu, da je održava na nišanu. Promenjive a i b su ivice
sektora koji ispitujemo. Proširujemo polako širinu ispitivanog
sektora dok konačno ne nađemo metu i onda prelazimo opet na funkciju
scan_sector, koja će da dovede preciznost na 1°.
Pucanje:
int skshoot (int angle, int range) {
if (ticks()+3 >= now_shoot) { // da li je prošlo 47 poteza?
while (ticks() < now_shoot) swaptask();
// swaptask() ne radi ništa, završava potez i daje ga drugom
// igraču, da ne idemo nigde između 47 i 50, tj. da pucamo čim
// pre
shoot(angle, range);
now_shoot=ticks()+50;
// sledeći pucanj je posle ovog + 50 poteza
} else {
buy_armour(MAX_DAMAGE-damage());
// ako nije prošlo 50 poteza, kupi oklop, ako treba
gotoxy();
// kreći se ako treba
}
return 0;
}
Dakle, funkcija za pucanje je najčešće pozivana funkcija i u nju
je stavljen i poziv funkcije za kretanje kroz arenu. Ta funkcija je
prilično jednostavne ideje, upisaću u dve globalne promenljive cilj
našeg kretanja i idemo prema tamo dok ne dođemo dovoljno blizu
(pogledati u fajlu uz poruku). Znači ostaje još samo da kompletiramo
sve ovo u jedan program i to bi bilo najjednostavnije uraditi ovako
nekako:
while(1) {
if (wide=scan_sector(start, end, x)) {
do keep_shooting(wide);
while (follow_target(wide));
}
buy_armour(MAX_DAMAGE-damage());
}
Ovo keep_shooting() prosto neprestano poziva skshoot dok mu je
meta na nišanu (a ta funkcija će već uraditi šta treba). Ovom
jednostavnom strukturom možemo menjati položaj našeg robota
(kretanje pozivamo iz skshoot funckije), neprestano pritom
održavajući našu metu na nišianu.
Kompletan primer mog "prvog" robota je uz poruku prikačen (ubačeno
je i malo kretanja po areni, ali biće vam jasno - ako robot nikog ne
uoči za 500 poteza, menja ćošak).
**
Ima li pitanja? :)
sk
rcb.calgoritmi.389vitez.koja,
-> #388, vitez.kojaSaga o PC Robotima
* Treći korak - Nekorisna matematika
Sve je to do sad bilo lepo, nego nešto mnogo promašujemo protivnika,
a toliko smo se trudili da ga baš precizno nađemo... :( To je zato
što se protivnik kreće, da citiram onaj crtani: "Kako misliš da te
udarim kada stalno skačeš?" :)
Elem, stvar je jasna, uvešćemo malo statistike - pamtiće se
poslednjih nekoliko mesta gde je nađen protivnički robot, videćemo
koliko treba našem hicu do tamo, naći ćemo gde će protivnik biti u
to doba i gađamo u tom smeru i daljini.
Kako znati, gde će protivnički robot biti u budućnosti? Iako je moj
sledeći robot dobio ime lagrange, nikakva La Granžova metoda ili neka
druga metoda interpolacije ne dolazi u obzir - u pitanju je
ektrapolacija položaja, pa su sve te metode izvanredno neprecizne.
Uradićemo krajnje jednostavnu stvar, pretpostaviću da se protivnik
kreće pravolinijski (u 2d sistemu), tj. da se za njegovo kretanje
može postaviti zakon y = kx + n (znam, znam, vertikalna kretanja
nisu obuhvaćena, vodićemo računa i o tome).
* Trigonometrija
Do konkretnih k i n možemo doći na više načina, možda
najjednostavniji (i neprecizan prilično) je uzeti prve i poslednje
tačke koje imamo i produžiti pravu kroz njih. Znači nešto kao:
dx = x(A) - x(1) - pomak po x osi
dy = y(A) - y(1) - pomak po y osi
dt = time(A) - time(1) - proteklo vreme između ova dva merenja
sp = ű (dx^2 + dy^2) / dt - brzina kretanja protivnika
ta = arctg (dy/dx) - pravac kretanja protivnika
i neka su range i angle trenutni položaj (u odnosu na našeg robota)
protivnika. Znači treba da nađemo gde će on biti kad naš metak
stigne do njega, tj. gde treba da pucamo (metak se kreće brzinom
400).
E sad malo trigonometrije (teško mi je nacrtati to, pa ću opisati):
R - položaj našeg robota
P - položaj protivnika
S - položaj protivnika kad metak stigne do njega
x osa - prava kroz R || pravoj x osi
angle - ugao koji zaklama x osa (pozitivni deo) sa vektorom RP (od
R ka P)
Ú - ugao RPS
ta - ugao x osa (poz.) sa pravom PS
tada važi:
Ú = angle - ta + 180°
RP = range (udaljenost protivnika od našeg robota)
RS : SP = bullet : sp (ako je bullet brzina metka)
Postavljamo kosinusnu teoremu u temenu P:
RS^2 = SP^2 + RP^2 - 2 cos(Ú) * RP * SP
koristimo gornje jednačine i uz malo sređivanja dobijamo da je:
- sp * cos(Ú) + ű [ bulletř - spř * (1 - cosř(Ú)) ]
RS = --------------------------------------------------------- *
bulletř - spř
* bullet * range
a da je ugao SRP iz sinusne teoreme:
RS : SP = sin(Ú) : sin(SRP)
sin(SRP) = sp * sin(Ú) / bullet
uz malo komplikacija pošto pc robots nema arcsin, već samo arctg, pa
se mora naći i cos(SRP) što opet nije veći problem (kosinusna
teorema za ugao SRP).
* Par sitnica
Eto sad ga imamo gotovog da ispravlja greške i gađamo unapred. Kad
smo već tu da unapredimo našeg robota i za još par sitnica. Kada
se zavučemo u ugao, zašto ne bismo skenirali svih 180° (robot "vidi"
i kroz zidove), a pucali samo kad nam se nađe u željenih 90°. Ovako
će već naš prvi metak imati podatke za korekciju svoje putanje.
Maksimalnu brzinu našeg robota smo ograničili na 40, pošto se toliko
energije nadoknađuje u svakom potezu, pa se robot može kretati bez
gubitka energije.
Da ne bi beležili vremenski bliske položaje protivnika (položaj
protivnika koji odredimo ipak nije toliko precizan) i na osnovu njih
donosili pogrešne zaključke uvešćemo minimum vremena koji treba da
prođe između dva uzastopna beleženja podataka.
Funkciju scan_sector smo podelili na dva dela - prvi koji radi ako
se ispituje više od 90° (pošto funkcija scan() radi samo do 90°) i
drugi sa polovljenjem sektora, tako da to sada izgleda:
int scan_sector(int start, int end, int wide) {
int i, l;
datarez.wide = 1000;
if (start < 0) start = 360 - start;
while (end < start) end += 360;
if (end-start > 90) {
for (i=start; i < end; i+=90)
if(l=scan_sector1(i, min(i+90, end), 45)) return l;
return 0;
} else return(scan_sector1(start, end, wide));
}
U okviru nove procedure scan_sector1 izmenjen je njen glavni deo i
zakomplikovan i tu praćenjem cilja i stalnim beleženjem podataka o
njemu. Za to se brine sledeći deo:
x = (start+end+1)/2;
if (wide < 2) {
int w1=1, y;
while (ticks()+GAP < now_shoot) {
if (scan(x%360, w1, &range) >= 0) {
datarez.angle = x % 360; datarez.range = range;
datarez.time = ticks(); datarez.wide = w1;
add_correct(datarez.angle, datarez.range,
datarez.time, datarez.wide);
w1 = (w1+1)/2;
} else if (scan((x+w1)%360, w1, &range) >= 0) {
x+=w1;
datarez.angle = x % 360; datarez.range = range;
datarez.time = ticks(); datarez.wide = w1;
add_correct(datarez.angle, datarez.range,
datarez.time, datarez.wide);
w1 = (w1+1)/2;
} else if (scan((x+360-w1)%360, w1, &range) >= 0) {
x-=w1;
datarez.angle = x % 360; datarez.range = range;
datarez.time = ticks(); datarez.wide = w1;
add_correct(datarez.angle, datarez.range,
datarez.time, datarez.wide);
w1 = (w1+1)/2;
} else w1++;
}
}
Prilično je loše napisano, ali treba i kompajler nešto da optimizuje
:). Elem, ideja je da se što više eliminišu kratkotrajne
protivnikove nevidljivosti. Znači pogledaj još jedan stepen
levo-desno, pa tek onda povećaj opseg koji gledaš. Čim ga nađeš suzi
opseg sektora minimalno. I vrti se tako u toj petlji dok ne dođe
vreme za pucanje...
A da i kratak komentar - x_pos i y_pos su trenutne koordinate našeg
robota, pa onda (u funkciji add_correct() ) iz range i angle
podataka (prevođenjem iz polarnog u dekartov sistem) lako nalazimo
dekartove koordinate neprijatelja. Mđt. problem je tu da zbog
nepreciznosti sin i cos funkcija, zbog nesigurnosti samog podatka
angle (pošto ima grešku od ˝1°), a i zbog zaokruživanja dolazi do
(ponekad i nezanemarivih) nepreciznosti, pogotovo kad se naš robot
pri tom kreće.
Uz poruku je druga generacija mog robota - lagrange.c, ima li
kakvih pitanje? :)
sk
lagrange.calgoritmi.390bcvetkovic,
-> #388, vitez.kojaDa li je ovo najava novog turnira?
algoritmi.391bokir,
Za maturski radim algoritme sortiranja, pa molim sve one koji
znaju neki manje poznat algoritam da napišu nešto o njemu. :)
algoritmi.392kojai,
-> #391, bokir>> Za maturski radim algoritme sortiranja, pa molim sve one koji
>> znaju neki manje poznat algoritam da napisu nesto o njemu. :)
Uzmi QuickSort... Imas ga u pascalu pod examples...
algoritmi.393mihailod,
-> #391, bokir> algoritme sortiranja
Apsolutna biblija:
Donald Knuth
The Art of Computer Programmming, Volume 3
"Sorting and Searching"
Addison Wesley, godina zavisi od izdanja...
Trebalo bi da ima po univerzitetskim bibliotekama.
Nadji neku vezu za biblioteku matematickog instituta
ili neku srodnu.
algoritmi.394bokir,
-> #392, kojai> >> Za maturski radim algoritme sortiranja, pa molim sve one koji
> >> znaju neki manje poznat algoritam da napisu nesto o njemu. :)
>
>
> Uzmi QuickSort... Imas ga u pascalu pod examples...
On baš i nije nešto "manje poznat". Mislim, svakako ću ga staviti, ali
mi treba što više "egzotičnih" algoritama.
algoritmi.395bokir,
-> #393, mihailod> Trebalo bi da ima po univerzitetskim bibliotekama.
> Nadji neku vezu za biblioteku matematickog instituta
> ili neku srodnu.
10x, pokušaću.
algoritmi.396emajsijuen,
-> #394, bokir│ On bas i nije nesto "manje poznat". Mislim, svakako cu ga staviti, ali
│ mi treba sto vise "egzoticnih" algoritama.
└────────────────────────────────────────
Mozda bubble sort ? Ako ti treba, imam odlican primer i za quick sort,
i za bubble sort.
algoritmi.397dr.grba,
-> #396, emajsijuen>> Mozda bubble sort ? Ako ti treba, imam odlican primer i za quick sort,
>> i za bubble sort.
Ako se ne varam, uz prvi Quick Basic koji je došao uz DOS (beše li
to 5.0? Ne sećam se...) je dolazio i jedan BASIC programčić koji je
demonstrirao 5-6 najpoznatijih algoritama sortiranja, uz zanimljivo
grafičko rešenje koje je bilo vrlo dobro za demonstraciju moći ovih
algoritama. Ja ovo odavno nemam, ali sam uveren da neko ko ovo čita
ima to u nekoj sedamnaestoj polici u petoj prostoriji devete zgrade
tridesete biblioteke u jedanaestom zamku (:
Preporučujem potragu za programom, sigurno će biti od pomoći.
algoritmi.398bokir,
-> #396, emajsijuen> Mozda bubble sort ? Ako ti treba, imam odlican primer i za quick sort,
> i za bubble sort.
Ne, ne...To su sve _najpoznatiji_ algoritmi sortiranja. Meni trebaju oni
manje poznati, tipa Radix Sort i slično.
algoritmi.399bokir,
-> #397, dr.grba> to 5.0? Ne sećam se...) je dolazio i jedan BASIC programčić koji je
> demonstrirao 5-6 najpoznatijih algoritama sortiranja, uz zanimljivo
> grafičko rešenje koje je bilo vrlo dobro za demonstraciju moći ovih
> algoritama. Ja ovo odavno nemam, ali sam uveren da neko ko ovo čita
> ima to u nekoj sedamnaestoj polici u petoj prostoriji devete zgrade
> tridesete biblioteke u jedanaestom zamku (:
Zvuči simpatično :)
Ima li neko ovo programče?
algoritmi.400firus,
-> #394, bokir>> >> Za maturski radim algoritme sortiranja, pa molim sve one
>> >> koji znaju neki manje poznat algoritam da napisu nesto o
>> njemu. :)
>>
>>
>> Uzmi QuickSort... Imas ga u pascalu pod examples...
>
> On baš i nije nešto "manje poznat". Mislim, svakako ću ga
> staviti, ali mi treba što više "egzotičnih" algoritama.
'Ajmo da vidimo (redosled je potpuno slučajan):
1. Selection
2. Bubble
3. Insertion
4. Heap
5. Merge
6. Radix
7. Quick
8. Stack
9. Ford&Johnson
Jes' da su svi više-manje poznati, ali možda neki od njih
nisi već iskoristio, pa vikaj za informacije ...
algoritmi.401popovics,
-> #397, dr.grba
▄- Ako se ne varam, uz prvi Quick Basic koji je došao uz DOS
▄- (beše li to 5.0? Ne sećam se...) je dolazio i jedan BASIC
▄- programčić koji je demonstrirao 5-6 najpoznatijih algoritama
▄- sortiranja, uz zanimljivo
Da, ja ga imam :)). Program se zove sortdemo.bas i ako zaista nekom treba,
neka viče, poslaću ga...Inače, nije uz Quick Basic koji se dobijao uz
dos 5.0 ( u pravu si, bio je 5.0 ) već uz prvi KOMPAJLER ( ono uz dos
je bio interpreter ). :)
algoritmi.402bokir,
-> #400, firus> 6. Radix
> 9. Ford&Johnson
> Jes' da su svi više-manje poznati, ali možda neki od njih
> nisi već iskoristio, pa vikaj za informacije ...
Za ova dva jesam čuo, ali ih nikad nisam video :)
Može malo informacija o njima?
algoritmi.403dr.grba,
-> #401, popovics>> Da, ja ga imam :)). Program se zove sortdemo.bas i ako zaista nekom
>> treba, neka viče, poslaću ga...Inače, nije uz Quick Basic koji se dobijao
Daj, pošalji ga ovamo. Poslužiće dobro svakome ko želi da nauči
algoritme sortiranja, a posebno čoveku za ovaj rad.
Da, imao sam i taj QB kompajler, davno beše. Zaboravio sam da je
program mogao biti tamo, a ne uz interpreter.
algoritmi.404popovics,
-> #403, dr.grba
Izvinjavam se što ne citiram, ali ovo pišem online. Evo, uz poruku
SORTDEMO.BAS.
sortdemo.basalgoritmi.405bokir,
-> #404, popovics> Izvinjavam se što ne citiram, ali ovo pišem online. Evo, uz poruku
> SORTDEMO.BAS.
A jel bi to moglo kao običan ASCII fajl, a ne ove kuke i kvake?
algoritmi.406speedy,
-> #402, bokir
Pregledaj stare brojeve racunara, mislim da je bila neka serija clanaka
o sortiranju.
algoritmi.407popovics,
-> #405, bokir
Opet se izvinjavam što ne citiram, ali opet radim online. Pored
ovog, izvinjavam se na "kukama & kvakama" jer je to bio onaj fajl,
ali u binarnom obliku u koji ga smešta QB, radi bržeg učitavanja i
manjeg prostora. Evo, šaljem ASCII verziju...
P.S Izvinjenje opet
sortdemo.basalgoritmi.408jjerry,
Mozhe li neko da mi opishe najbolji i brz algoritam za ,uslovno
recheno, "renderovanje" odnosno jednostavno prikazivanje 3d
objekata na ekranu.Dosad sam video nekoliko jednachina,koje
naizgled nemaju veze jedna s drugom a koje sve sluzhe da prikazhu
tachku bilo gde u virtuelnom 3d svetu na ekranu. Inache,kako se
implementiraju matrice u kod i kako se to "vektori predstavljaju
i transformishu matricama". (Znam operacije sa matricama
,mnozhenje,sabiranje itd.) Takodje bi dobro doshli i algoritmi za
rotaciju objekta.
Hvala in advance :)
algoritmi.409jujo,
-> #408, jjerry# Mozhe li neko da mi opishe najbolji i brz algoritam za ,uslovno
# recheno, "renderovanje" odnosno jednostavno prikazivanje 3d
# objekata na ekranu.Dosad sam video nekoliko jednachina,koje
# naizgled nemaju veze jedna s drugom a koje sve sluzhe da prikazhu
# tachku bilo gde u virtuelnom 3d svetu na ekranu. Inache,kako se
# implementiraju matrice u kod i kako se to "vektori predstavljaju
# i transformishu matricama". (Znam operacije sa matricama
# ,mnozhenje,sabiranje itd.) Takodje bi dobro doshli i algoritmi za
# rotaciju objekta.
#
# Hvala in advance :)
Pa prijavi se u grupu DemoScene pa ce ti neko mozda pomoci.
yooyo:
P.S.: Mozda bih mogao i ja, al me mrzi da opisujem sve od pocetka.
Javi se kad provalis kako radi "wireframe" 3d grafika. pa ces posle
lako..
algoritmi.410jjerry,
-> #409, jujoOtprilike sam provalio predstavljanje wireframe objekata,s tim
shto je ,poshto sam to sam radio nekim svojim principom,pomalo
primitivno ali sam npr. uspeo da se zezam sa kvadrima,da ih
transliram po x,y,z ,skaliram (squash itd.) i sad se zezam malo sa
jednachinama rotacije. Btw. ja sam do sada predstavljao objekte
koordinatama svake tachke,i to drzhao u nizu.Da li postoji neki
bolji nachin ?
P.S Ako bi pomenuo makar neke Web strane ,bilo bi super.
P.P.S Ko je owner grupe DemoScene ?
algoritmi.411jjerry,
-> #409, jujo Ako bi mogao da mi opishesh (i napishesh) jednachine koje si ti
koristio za prikazivanje tachke i otprilike ,u kratkim crtama, da
mi objasnish kako se definishu slozheniji objekti (ja sam recimo
koordinate svake tachke kocke stavljao u jedan niz,mora da postoji
bolji nachin).
Ako bi nasho vremena za reply,bio bih ti zahvalan..