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

Kompresija šahovskih partija

[es] :: Art of Programming :: Kompresija šahovskih partija

Strane: 1 2

[ Pregleda: 26457 | Odgovora: 24 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8410
82.208.242.*



+2728 Profil

icon Kompresija šahovskih partija25.03.2015. u 21:03 - pre 72 meseci
Evo moje metode za kompresiju šahovskih partija:

Ako je dat tok partije do neke faze u igri, na osnovu njega je moguće odrediti ko je na potezu i koje ima poteze na raspolaganju (ako ih uopšte i ima) i samim tim koliko ih je. Ako igrač na potezu ima poteza na raspolaganju, na primer i igrač odigra potez , onda ćemo to predstaviti parom . Pritom, predaju igrača na potezu i sporazuni remi tretiramo kao dva specijalna poteza igrača na potezu kojima se završava partija. Dakle, u početnoj poziciji je jer je beli na potezu i može da povuče jedan od 20 mogućih poteza.

Ako toku partije odgovara niz parova , onda toj partiji možemo pridružiti ceo broj , gde je

,
za .

Dakle,
Code:

c=0
j=k
while j>=k:
    c = c*n[j]+i[j]


Naravno, to je matematički ceo broj, tj. ne postoji granica dužine u bitovima, pa treba koristiti bigint tip podataka.

Obrnuto, ako je dat broj , onda možemo za trenutnu poziciju odrediti , a samim tim i , što je redni broj poteza koji treba odigrati, nakon čega delimo sa i onda sve računamo opet za novu poziciju.

Prilažem implementaciju u python-u i primer partije od 171 poteza. Prethodno je potrebno instalirati python--chess biblioteku.

https://github.com/niklasf/python-chess
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
Prikačeni fajlovi
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1230



+92 Profil

icon Re: Kompresija šahovskih partija26.03.2015. u 23:19 - pre 72 meseci
Koja je upotrebna vrednost ovoga? Treba sačuvati milijardu partija na smart telefonu?

Uzgred, neki potezi su u svakom trenutku smisleniji od ostalih, pa bi možda mogao da ućariš još koji bit, tako što bi recimo razdvojio prvih par izglednih poteza u svakom stanju u posebnu grupu, zajedno sa specijalnom vrednošću koja označava da konkretni potez nije u toj grupi, nego u sledećoj. Nešto kao Hafmanovo kodiranje. Naravno, potreban je algoritam koji bi za svako stanje efikasno određivao koji su potezi izgledniji.
 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8410
82.208.242.*



+2728 Profil

icon Re: Kompresija šahovskih partija26.03.2015. u 23:55 - pre 72 meseci
Vrednost je u ideji koja se može prienjivati i u drugim slučajevima.

Kad god na osnovu dekomprimovanog dela možeš da određuješ broj mogućnosti u sledećem koraku, primenljiva je.
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

djoka_l
Beograd

Član broj: 56075
Poruke: 2998

Jabber: djoka_l


+1268 Profil

icon Re: Kompresija šahovskih partija27.03.2015. u 08:13 - pre 72 meseci
Ni ja ne vidim upotrebnu vrednost, ali shvatam kao što je Nedeljko napisao - vežba koja pokazuje na koji način nešto može da se kodira na prilično efikasan način.

Nedostaci:

- Ne postoji opšte prihvaćen način da se numerišu mogući potezi. Zbog toga je način zapisivanja šahovske partija zavisan od načina na koji se uradi implementacija. Nisam detaljno pregledao program, ali jedan od načina na koji bi to moglo da se uradi je da se generišu svi potezi, zapišu u notaciji početno polje, krajnje polje, pa da se leksikografski sortiraju. Na primer a2a3 bi bio ispred a2a4 u redosledu mogućih poteza.
- Ne postoji način (ovako kako je urađeno) da se zabeleže NEREGULARNI potezi. Kod odigravanja šahovskih partija oba igrača vode zapisnik o potezima. Ukoliko se u toku partije primeti da je situacija na tabli neregularna, partija se vraća do poslednje poznate regularne pozicije. Naravno, partija može i da bude završena, a da se ne primeti da je bilo neregularnih poteza, ali i takva partija treba da se zapiše.
-Kao što je Mihajlo primetio, neki potezi su verovatniji od drugih, tako da numerisanje ne daje optimalnu dužinu zapisa.
 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8410
82.208.242.*



+2728 Profil

icon Re: Kompresija šahovskih partija28.03.2015. u 00:51 - pre 72 meseci
Drago mi je što je ova tema podstakla neke članove na razmišljanje i diskusiju. U tom smislu je uspela. No, da odgovorim na primedbe.

Citat:
djoka_l: - Ne postoji opšte prihvaćen način da se numerišu mogući potezi. Zbog toga je način zapisivanja šahovske partija zavisan od načina na koji se uradi implementacija. Nisam detaljno pregledao program, ali jedan od načina na koji bi to moglo da se uradi je da se generišu svi potezi, zapišu u notaciji početno polje, krajnje polje, pa da se leksikografski sortiraju. Na primer a2a3 bi bio ispred a2a4 u redosledu mogućih poteza.

To nije mana jer se redosled vrlo lako izabere, kao što sam napominješ.
Citat:
djoka_l: - Ne postoji način (ovako kako je urađeno) da se zabeleže NEREGULARNI potezi. Kod odigravanja šahovskih partija oba igrača vode zapisnik o potezima. Ukoliko se u toku partije primeti da je situacija na tabli neregularna, partija se vraća do poslednje poznate regularne pozicije. Naravno, partija može i da bude završena, a da se ne primeti da je bilo neregularnih poteza, ali i takva partija treba da se zapiše.

Postoji. Ako je to zahtev, onda u poziciji kada igrač na potezu ima n poteza na raspolaganju, onda se toj poziciji pridružuje n+3 mogućnosti - jedan od n ispravnih poteza, predaja, sporazumni remi i neregularan potez. U slučaju beleženja poslednje mogućnosti posle tog broja ide redni broj mogućeg neispravnog poteza (mora se nekako definisati skup mogućih neispravnih poteza).
Citat:
djoka_l: -Kao što je Mihajlo primetio, neki potezi su verovatniji od drugih, tako da numerisanje ne daje optimalnu dužinu zapisa.

Verovatno je tako, ali nisam siguran da bi se išta dobilo. Trebalo bi proveriti. Hafman beleži svako slovo celim brojem bitova, što ovde nije slučaj. Ako treba zabeležiti 3 vrednosti od kojih svaka ima po 5 mogućnosti, za to je dovoljno 7 bitova. To je prednost ove metode. Trebalo bi proveriti da li se Hafman može uopštiti tako da se ovde može primeniti. U svakom slučaju, dobra je tema za razmišljanje.

Poboljšanje koje je moguće je da ako igrač na potezu ima n poteza na raspolaganju, da se pamti broj u opsegu od 0 do n, pri čemu brojevi od 0 do n-1 predstavljaju moguće poteze, a n vanrednu situaciju. U slučaju vanrene situacije sledi broj koji je opisuje. Recimo, sporazuni remi, predaja ili neispravan potez, za šta su potrebne tri vrednosti, a u slučaju neispravnog poteza da sledi njegov redni broj.
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8410
82.208.242.*



+2728 Profil

icon Re: Kompresija šahovskih partija28.03.2015. u 11:24 - pre 72 meseci
Ako bi se n mogućnosti nejednakih verovatnoća podelile u tri skupa A, B i C gde su mogućnosti iz skupa A najverovatnije, a mogućnosti iz skupa C najmanje verovatne. Ako su brojevi elemenata tih skupova a, b i c tim redom. Mogao bi se pamtiti najpre broj u opsegu od 0 do a, pri čemu rednosti u opsegu od 0 do a-1 predstavljaju mogućnosti iz supa A, a vrednost a "nešto drugo", kada se beleži broj iz opsega od 0 do b, pri čemu vrednosti iz opsega od 0 do b-1 predstavljau mogućnosti iz skupa B, a vrednost b "nešto drugo", kada se beleži broj u opsegu od 0 do c-1, koji predstavlja mogućnost iz skupa C.

Neka ima mogućnosti i neka su podeljene u skupove , pri čemu je verovatnoća da mogućnost pripada skupu , a je broj elemenata skupa . Ako je

,

onda to ima smisla. Ovakva izmena Hafmanove metode bi se mogla primeniti.

Dakle, poenta je u izboru skupova tako da se minimizuje vrednost izraza sa leve strane nejednakosti.
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

MajorFatal
Milija Jakic
opravljam oluke, 1337LAB
Bg

Član broj: 36595
Poruke: 920
*.dynamic.sbb.rs.



+371 Profil

icon Re: Kompresija šahovskih partija23.05.2015. u 01:24 - pre 70 meseci
Koliki je stepen kompresije? Obicno ga izrazavaju u procentima na osnovu ovakve formule:

( 1 - ( compressed_size / raw_size ) ) * 100

:)

Ako je za partiju od 100 polupoteza potrebno 450 bita, ispada da je to otprilike 4,5 bita po polupotezu, opet za nekih 100 informacija razlicitih (kao 100 polupoteza) potrebno je bar po 7 bita (2^7=128) da bi ih uopste imenovao a kamoli opisao? U cemu je tajna?
Nemoj da pricas?
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1230



+92 Profil

icon Re: Kompresija šahovskih partija23.05.2015. u 09:53 - pre 70 meseci
U svakom trenutku na šahovskoj tabli šahisti je dostupno nekih dvadesetak poteza u vr' glave. Za kodiranje 20 poteza u vr' glave treba ti 5 bitova (a kako se partija odvija sve manje i manje). Zato se uzima prosek 4,5 bita po potezu. To je to, nema tajne.
 
Odgovor na temu

MajorFatal
Milija Jakic
opravljam oluke, 1337LAB
Bg

Član broj: 36595
Poruke: 920
*.dynamic.sbb.rs.



+371 Profil

icon Re: Kompresija šahovskih partija23.05.2015. u 10:13 - pre 70 meseci
Dvadesetak poteza u vr' glave pri 218 maximalno? http://www.elitemadzone.org/t476770-14#3575968 Kako se partija odvija ne mora da bude sve manje i manje (jer ima manje figura na tabli koje mogu da odigraju pretpostavka) vec moze da bude i sve vise i vise jer neke figure dobijaju veci stepen slobode kretanja kada su usamljenije na tabli, kraljica sama na sredini table ima oko 20-tak mogucih poteza ako joj druge figure ne zaklanjaju pravce kretanja...
Nemoj da pricas?
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1230



+92 Profil

icon Re: Kompresija šahovskih partija24.05.2015. u 01:56 - pre 70 meseci
Moguće je da si u pravu, ko to zna... Ali ako je kraljica sama na sredini table onda nema mnogo preostalih figura, pa i ako ima 40 mogućih poteza to nije mnogo važno, jer je ta partija je pri kraju.

Uzgred, pokušavam da izguglam prosečan broj mogućih poteza u svakom potezu (hm, može li ovo bolje da se formuliše), i našao sam ovu seriju brojeva A083276. Po njoj 10 prvih poteza u šahu može da proizvede 85375278064 mogućih različitih šahovskih pozicija, što u proseku znači 12.3 moguća poteza u jednom potezu (stvarno, kako se ovo kaže?)
 
Odgovor na temu

3okc
Χoᴘᴦoѡ

Član broj: 811
Poruke: 1289

Jabber: 3okc@elitesecurity.org


+110 Profil

icon Re: Kompresija šahovskih partija24.05.2015. u 07:57 - pre 70 meseci
Citat:
The Shannon number, named after Claude Shannon, is an estimated lower bound on the game-tree complexity of chess. Shannon calculated it as an aside in his 1950 paper "Programming a Computer for Playing Chess".[1] (This influential paper introduced the field of computer chess.)

Shannon also estimated the number of possible positions, "of the general order of , or roughly 1043 ". This includes some illegal positions (e.g., pawns on the first rank, both kings in check) and excludes legal positions following captures and promotions. Taking these into account, Victor Allis calculated an upper bound of 5×1052 for the number of positions, and estimated the true number to be about 1050.[2] Recent results[3]improve that estimate, by proving an upper bound of only 2155, which is less than 1046.7 and showing[4] an upper bound 2×1040 in the absence of promotions.

Allis also estimated the game-tree complexity to be at least 10123, "based on an average branching factor of 35 and an average game length of 80". As a comparison, the number of atoms in the observable universe, to which it is often compared, is estimated to be between 4×1079 and 4×1081.

Izvor: vikipedija

Apropos "prosečan broj mogućih poteza u svakom potezu" - to bi trebalo da je u citatu "based on an average branching factor of 35".
Have you found helpful examples, solutions or ideas-in-work, please consider the
following:
• Citation of *actual page* you are going to using is welcome.
• Have you saw "Value Added" examples you are going to incorporate to your
profitable blog, daily job or any money making venture: How about online donation?
↗Ana & Vlade Divac Foundation
Hvala!
 
Odgovor na temu

MajorFatal
Milija Jakic
opravljam oluke, 1337LAB
Bg

Član broj: 36595
Poruke: 920
*.dynamic.sbb.rs.



+371 Profil

icon Re: Kompresija šahovskih partija23.07.2015. u 16:29 - pre 68 meseci
Neka ideja sa onim pitanjem o stepenu kompresije je bila da Nedeljko ne moze bas lepo da odgovori na pitanje...sahovsku partiju ne moze da kompresuje (dvojica zaseli raskrilili tablu sa drvenim figurama) vec samo tok partije, za koji pak sahisti imaju razlicite notacije prosirenu: 1. e2-e4, 2. e7-e6... skracenu 1. e2-e4 (za taj isti potez) i gomilu varijanti izmedju, posto kod njega pajton biblioteke odredjuju u svakom trenutku koliko poteza igrac ima na raspolaganju onda bi one morale da procitaju i razumeju bilo koju od tih notacija tako da ne moze bilo sta od toga da proglasi za row_size iz one jednacine tj. nema sa cime da poredi...ako bi poredio sa prosirenom notacijom imao bi veci stepen kompresije i obrnuto...

Nego recimo: imam na kompu zabelezenu sahovsku partiju koja mi zauzima celih 2000 bita i odlucim da je kompresujem ovom Nedeljkovom metodom, downloadujem pajton biblioteke koje zauzimaju 8M, Nedeljkov program jos 2K i kompresujem zapis partije sa 2000 bita na 500 bita, na pocetku sam imao 2000 bita a na kraju procesa 8M + 2K + 500 bita tako da mu ovo dodje ekspanzija.

Pa i ono pocetno pitanje mogu da preformulisem u: koliki je faktor ekspanzije?

Ili da nam Nedeljko saopsti pod kojim uslovima mozemo da koristimo ovaj program a da radi kako bi trebalo?

Inace ne razumem cemu skepsa, malodusnost, sta vec koji je izraz odgovarajuci, dva pitanja o upotrebnoj vrednosti, nista bolje u skorije vreme nisam procitao od ovog sto je Nedeljko predlozio, upotrebna vrednost bi valjda bila u bilo kom procesu, toku desavanja koji ima odredjene stepene slobode pri svakom sledecem koraku, belezis odabrani stepen i sve pakujes u jedan broj...video igrice recimo i tok kako je igrac odigravao...

Citat:
Mihajlo Cvetanović:

Uzgred, pokušavam da izguglam prosečan broj mogućih poteza u svakom potezu (hm, može li ovo bolje da se formuliše), i našao sam ovu seriju brojeva A083276. Po njoj 10 prvih poteza u šahu može da proizvede 85375278064 mogućih različitih šahovskih pozicija, što u proseku znači 12.3 moguća poteza u jednom potezu (stvarno, kako se ovo kaže?)


Sto se tice formulacije i meni je bilo malo blesavo u pocetku ali valjda zbog ovakve notacije koju primenjuju sami sahisti najcesce 1. e4 e5 2. Nf3 Nc6 3. Bb5 Nf6 gde je pod svakim rednim brojem zabelezeno sta je igrac odigrao i odgovor protivnika, ima smisla reci polupotez kad odigrava jedan igrac, a potez kad su odigrali obojica...sad sta znam

Kako iz 10 poteza i 85375278064 dobijas 12.3 mogucih polupoteza po potezu? :)

Sto se tice eventualnog poboljsanja vec postojeceg modela moj predlog bi bio: 200 najcescih otvaranja se moze zabeleziti sa po samo 8 bita pa posle onih poteza koji cine dato otvaranje nastaviti po vec predlozenom modelu...

Nemoj da pricas?
 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8410
*.ptt.rs.



+2728 Profil

icon Re: Kompresija šahovskih partija23.07.2015. u 17:53 - pre 68 meseci
Citat:
MajorFatal: Ili da nam Nedeljko saopsti pod kojim uslovima mozemo da koristimo ovaj program a da radi kako bi trebalo?

A po čemu priloženi program ne radi kako bi trebalo?
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

MajorFatal
Milija Jakic
opravljam oluke, 1337LAB
Bg

Član broj: 36595
Poruke: 920
*.dynamic.sbb.rs.



+371 Profil

icon Re: Kompresija šahovskih partija23.07.2015. u 20:00 - pre 68 meseci
Po tome sto ako sam na pocetku imao samo 2000 bita zauzetog prostora a kad kompresujem zapis o toku partije imacu 500 bita kompresovana partija plus 2k bita program plus 8M bita pajton biblioteke pa ispada da nisam ustedeo prostor na disku nego mi je sad zauzeto vise prostora. Mozda kad downloadujem sve sto sto mi treba za kompresiju program da drzim u memoriji racunara a arhiviranu partiju na drugom disku, ili je najracionalnije da onu pocetnu partiju ni ne pokusavam da kompresujem, ipak zauzima samo 2000 bita?
Nemoj da pricas?
 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8410
*.ptt.rs.



+2728 Profil

icon Re: Kompresija šahovskih partija23.07.2015. u 20:44 - pre 68 meseci
Pa, za svaki format ti treba softver koji će to da prikaže. Trebaju i fontovi pored ostalog.

Zamisli da imaš ogromnu količinu partija. Šta bi koristio?
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

MajorFatal
Milija Jakic
opravljam oluke, 1337LAB
Bg

Član broj: 36595
Poruke: 920
*.dynamic.sbb.rs.



+371 Profil

icon Re: Kompresija šahovskih partija23.07.2015. u 22:31 - pre 68 meseci
Ma koristio bih softwer koji ti predlazes, nego nesto drugo me zanima...malopre sam proverio tvoj program ima dva puta bolje rezultate nego zip, naravno za ovu specificnu namenu, opet zip su dugo brusili za svakojake fajlove...

Zanima me gde je tacno granica, nije problem za ogroman broj partija, nije ni za jako mali broj, ako vec arhiver mogu da drzim na netu, mogu da ga izbrisem na kraju kad kompresujem sve fajlove,i to mu dodje neki vid ustede prostora kad drzimo stvari na netu, mene zanima kad mogu da zadrzim arhiver na disku, tj. za koliku kolicinu partija treba da sam zainterosovan da ustedim prostor tako da arhiver ustedi vise prostora nego sto on sam zauzima zajedno sa kompresovanim partijama...valjda je jasno

Tj. ja ako pocnem da racunam 2000 bita / 8 dobijem 250B (bajta) to je jedna partija, tj 4 partije je oko 1K, sad mi treba 1024K do Mega tj. to je vec 4096partija pa puta 8 jer je arhiver toliko to je 32768 partija, medjutim kolicina prostora koju zauzima arhiver i kompresovani fajlovi sa svakom kompresovanom partijom raste za 500 / 8 = 62.5B (bajta) i tu se vec potpuno pogubim sa racunicom... dakle sa koliko tacno partija mi se isplati da instaliram arhiver sa namerom da ga zadrzim...?

Sve ovo naravno zato jer ni Shannon '48, ni Kolmogorov '63 nisu poznavali koncept arhivera koji se pojavio tek '76 pa mi deluje malo zanemaren u racunicama, koje su tacne same za sebe naravno i ono suvo teoretski...

Hvala unapred
Nemoj da pricas?
 
Odgovor na temu

3okc
Χoᴘᴦoѡ

Član broj: 811
Poruke: 1289

Jabber: 3okc@elitesecurity.org


+110 Profil

icon Re: Kompresija šahovskih partija24.07.2015. u 16:34 - pre 68 meseci
Zanimljivo, u današnjem izdanju brojofila upravo diskutuju o mogućem broju šahovskih partija.

Koga zanima:

    

Have you found helpful examples, solutions or ideas-in-work, please consider the
following:
• Citation of *actual page* you are going to using is welcome.
• Have you saw "Value Added" examples you are going to incorporate to your
profitable blog, daily job or any money making venture: How about online donation?
↗Ana & Vlade Divac Foundation
Hvala!
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1230



+92 Profil

icon Re: Kompresija šahovskih partija26.07.2015. u 13:45 - pre 68 meseci
Citat:
MajorFatal:
Kako iz 10 poteza i 85375278064 dobijas 12.3 mogucih polupoteza po potezu? :)


12.310 je približno 85375278064.
 
Odgovor na temu

MajorFatal
Milija Jakic
opravljam oluke, 1337LAB
Bg

Član broj: 36595
Poruke: 920
*.dynamic.sbb.rs.



+371 Profil

icon Re: Kompresija šahovskih partija28.07.2015. u 11:06 - pre 68 meseci
Sta je tesko odgovoriti koliki je procenat iskoriscenja ili kada se ljudima isplati da nabave arhiver...?

Citat:
Mihajlo Cvetanović: 12.310 je približno 85375278064.


A ja izvlacio log10 iz onog broja u istom cilju :)

Mislim da ovo definitivno nije tacan rezultat, a ne umem da objasnim kako bi se drugacije racunalo ili zasto ovo nije tacno, doduse i koncentracija mi je na nuli, ovo nije tacno jer nikako ne odgovara situaciji na tabli, na pocetku imas po 20 mogucih poteza svakog igraca, (bez predaje i ponudjenog remija da ih ne racunamo), sta god igraci da odigraju u prvih deset poteza nema sansi da se broj polupoteza smanji nego samo da poveca eventualno ostane isti, situacije kad je broj mogucih polupoteza manji od 12 su tipa: oba kralja u uglovima table i jedan pesak (3 polupoteza na raspolaganju jednom igracu), kraljevi pored ivice table (5 polupoteza), vec ako su prema sredini table jedan igrac ima 8 polupoteza na raspolaganju, a na pocetku partije cim pocnes da igras pomerajuci pesake oslobadjas mesto za ostale figure da odigravaju, cak i da pomeris sve pesake za 1 polje sada topovi, lovci, kralj i kraljica mogu da odigraju 12 novih poteza, cak i da svojim skakacem blokiras svog pesaka tada top moze da odigra za 1 polje (ok ovde bi se smanjilo na 18 polupoteza za dva takva odigrana) itd...

Nego, pokusao sam sledece: imas igru, dva igraca imaju po jedan zeton crni i beli, i te zetone u svakom potezu mogu da pomere za jedno polje na tabli izdeljenoj na kvadrate slicno sahovskoj ili kao kockice u svesci na kocke, mogu da ih pomeraju u svim pravcima ali samo za po jedno polje prilikom jednog pomeranja, kao kralj sto se krece u sahu, naravno odigravaju naizmenicno, i na pocetku partije udaljeni su 20 polja jedan zeton od drugog, na primer posle po tri pomeranja zetona od strane svakog igraca (6 polupoteza, tri poteza) svaki od njihovih zetona moze da zauzme 49 pozicija maksimalno, tj. partija do te tacke (posle prva tri poteza) moze da bude u jednoj od 49 * 49 = 2401 pozicija, i sad ako pokusam da izvucem koliko poteza je u svakom trenutku neki od njih imao na raspolaganju...ne mogu? 8^3 = 512 a ne 2401? (svako od igraca je u svakom trenutku partije imao po 8 poteza na raspolaganju) i obrnuto log8(2401) = 3,7 ??? logx(2401) = 3, sledi x = 13,4 ??? a trebalo bi da je 8.

Ona sekvenca sto si prilozio je posle svakog polupoteza 1, 20, 400,... beli odigrao jedan od mogucih 20 polupoteza, i crni odgovorio jenim od 20 mogucih polupoteza to je 400 u tom nizu, tako da je 5 poteza ili 10 polupoteza mada ne verujem da ce to sta pomoci...
Nemoj da pricas?
 
Odgovor na temu

MajorFatal
Milija Jakic
opravljam oluke, 1337LAB
Bg

Član broj: 36595
Poruke: 920
*.dynamic.sbb.rs.



+371 Profil

icon Re: Kompresija šahovskih partija28.07.2015. u 11:07 - pre 68 meseci
Sta je tesko odgovoriti koliki je procenat iskoriscenja ili kada se ljudima isplati da nabave arhiver...?

Citat:
Mihajlo Cvetanović: 12.310 je približno 85375278064.


A ja izvlacio log10 iz onog broja u istom cilju :)

Mislim da ovo definitivno nije tacan rezultat, a ne umem da objasnim kako bi se drugacije racunalo ili zasto ovo nije tacno, doduse i koncentracija mi je na nuli, ovo nije tacno jer nikako ne odgovara situaciji na tabli, na pocetku imas po 20 mogucih poteza svakog igraca, (bez predaje i ponudjenog remija da ih ne racunamo), sta god igraci da odigraju u prvih deset poteza nema sansi da se broj polupoteza smanji nego samo da poveca eventualno ostane isti, situacije kad je broj mogucih polupoteza manji od 12 su tipa: oba kralja u uglovima table i jedan pesak (3 polupoteza na raspolaganju jednom igracu), kraljevi pored ivice table (5 polupoteza), vec ako su prema sredini table jedan igrac ima 8 polupoteza na raspolaganju, a na pocetku partije cim pocnes da igras pomerajuci pesake oslobadjas mesto za ostale figure da odigravaju, cak i da pomeris sve pesake za 1 polje sada topovi, lovci, kralj i kraljica mogu da odigraju 12 novih poteza, cak i da svojim skakacem blokiras svog pesaka tada top moze da odigra za 1 polje (ok ovde bi se smanjilo na 18 polupoteza za dva takva odigrana) itd...

Nego, pokusao sam sledece: imas igru, dva igraca imaju po jedan zeton crni i beli, i te zetone u svakom potezu mogu da pomere za jedno polje na tabli izdeljenoj na kvadrate slicno sahovskoj ili kao kockice u svesci na kocke, mogu da ih pomeraju u svim pravcima ali samo za po jedno polje prilikom jednog pomeranja, kao kralj sto se krece u sahu, naravno odigravaju naizmenicno, i na pocetku partije udaljeni su 20 polja jedan zeton od drugog, na primer posle po tri pomeranja zetona od strane svakog igraca (6 polupoteza, tri poteza) svaki od njihovih zetona moze da zauzme 49 pozicija maksimalno, tj. partija do te tacke (posle prva tri poteza) moze da bude u jednoj od 49 * 49 = 2401 pozicija, i sad ako pokusam da izvucem koliko poteza je u svakom trenutku neki od njih imao na raspolaganju...ne mogu? 8^3 = 512 a ne 2401? (svako od igraca je u svakom trenutku partije imao po 8 poteza na raspolaganju) i obrnuto log8(2401) = 3,7 ??? logx(2401) = 3, sledi x = 13,4 ??? a trebalo bi da je 8.

Ona sekvenca sto si prilozio je posle svakog polupoteza 1, 20, 400,... beli odigrao jedan od mogucih 20 polupoteza, i crni odgovorio jenim od 20 mogucih polupoteza to je 400 u tom nizu, tako da je 5 poteza ili 10 polupoteza mada ne verujem da ce to sta pomoci...
Nemoj da pricas?
 
Odgovor na temu

[es] :: Art of Programming :: Kompresija šahovskih partija

Strane: 1 2

[ Pregleda: 26457 | Odgovora: 24 ] > FB > Twit

Postavi temu Odgovori

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