Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pa:regulament-proiect-2020 [2020/04/05 02:10]
dragos.corlatescu
pa:regulament-proiect-2020 [2020/05/01 14:42] (current)
dragos.corlatescu [Etapa 3]
Line 76: Line 76:
 Această etapă va avea **4 săptămâni**. Punctajul alocat acestei etape este de **0.5 puncte**. Această etapă va avea **4 săptămâni**. Punctajul alocat acestei etape este de **0.5 puncte**.
  
-Deadline-ul acestei etape este **14 aprilie 2020, ora 23:55**.+Deadline-ul acestei etape este **21 aprilie 2020, ora 23:55**.
  
  
Line 84: Line 84:
  
 Comanda care va fi rulată pentru testare va arăta (foarte) asemănător cu comanda de mai jos: Comanda care va fi rulată pentru testare va arăta (foarte) asemănător cu comanda de mai jos:
-<note important>​xboard -fcp "make run" ​-firstProtocolVersion 1 -scp "​fairymax"​ -secondInitString "​new\nrandom\nsd 2\n" -tc 5 -inc 2 -autoCallFlag true -mg 10 -sgf partide.txt ​ -reuseFirst false</​note>​+<note important>​xboard -fcp "make run" -scp "​fairymax"​ -secondInitString "​new\nrandom\nsd 2\n" -tc 5 -inc 2 -autoCallFlag true -mg 10 -sgf partide.txt ​ -reuseFirst false</​note>​
  
 Explicarea parametrilor:​ Explicarea parametrilor:​
   * **xboard** - aplicația pe care o folosim :-D poate fi atât xboard cât și winboard, dar checkerul va rula cel mai probabil pe linux deci vom folosi xboard.   * **xboard** - aplicația pe care o folosim :-D poate fi atât xboard cât și winboard, dar checkerul va rula cel mai probabil pe linux deci vom folosi xboard.
   * **-fcp "make run"** - setează primul engine ca fiind engine-ul vostru. Vă reamintim că "make run" ar trebui doar să vă pornească engine-ul, nu și xboard-ul.   * **-fcp "make run"** - setează primul engine ca fiind engine-ul vostru. Vă reamintim că "make run" ar trebui doar să vă pornească engine-ul, nu și xboard-ul.
-  * **-firstProtocolVersion 1** - setează xboard-ul să trimită engine-ului vostru mutările partidei în formatul de coordonate (ex: g1f3). Default este "​2",​ protocolul în care se trimite piesa și poziția unde aceasta va ajunge (ex: Nf3). //​Observație://​ Dacă ați implementat protocolul 2 spuneți-ne această informație în readme pentru a scoate/​modifica acest parametru când rulăm noi. 
   * **-scp "​fairymax"​** - setează al doilea engine ca fiind engine-ul FairyMax.   * **-scp "​fairymax"​** - setează al doilea engine ca fiind engine-ul FairyMax.
   * **-secondInitString "​new\nrandom\nsd 2\n"** - string de inițializare pentru FairyMax care îi limitează adâncimea de căutare (depth) la 2.   * **-secondInitString "​new\nrandom\nsd 2\n"** - string de inițializare pentru FairyMax care îi limitează adâncimea de căutare (depth) la 2.
Line 97: Line 96:
   * **-sgf partide.txt** - în acest fișier se vor salva partidele jucate.   * **-sgf partide.txt** - în acest fișier se vor salva partidele jucate.
   * **-reuseFirst false** - acest parametru îi specifică lui xboard să reîncarce engine-ul vostru după fiecare partidă. Dacă nu este prezent se va da "new game". Puteți să-l vedeți ca pe o plasă de siguranță:​ dacă cumva engine-ul vostru se "​strică"​ în timpul unei partide, el se va reseta la următoarea deci teoretic eroarea nu se va propaga.   * **-reuseFirst false** - acest parametru îi specifică lui xboard să reîncarce engine-ul vostru după fiecare partidă. Dacă nu este prezent se va da "new game". Puteți să-l vedeți ca pe o plasă de siguranță:​ dacă cumva engine-ul vostru se "​strică"​ în timpul unei partide, el se va reseta la următoarea deci teoretic eroarea nu se va propaga.
 +
 +<note important>​Pentru fi siguri că primiți de la xboard/​winboard mutările în formatul de coordonate (g1f3, care mută piesa de la g1 la f3) în momentul în care primiți "​protover"​ de la xboard răspundeți cu "​feature san=0"​. Dacă ați implementat mutările in formatul "​piesă la câmp" (ex: Nf3, care mută calul la f3) atunci nu mai este nevoie să trimiteți acest "​feature"​.
 +
 +"​feature"​-ul puteți să-l trimiteți pe tot odată: foarte mulți dintre voi ați implementat în etapa 1 să răspundeți cu "​feature sigterm=0"​. Acum puteți trimite "​feature sigterm=0 san=0"</​note>​
  
 Mai multe detalii pentru configurarea xboard-ului din linie de comandă puteți găsi aici [[https://​www.gnu.org/​software/​xboard/​manual/​xboard.html#​|documentație xboard]]. Mai multe detalii pentru configurarea xboard-ului din linie de comandă puteți găsi aici [[https://​www.gnu.org/​software/​xboard/​manual/​xboard.html#​|documentație xboard]].
Line 110: Line 113:
 Punctele se vor acorda după următoarea formulă: Punctele se vor acorda după următoarea formulă:
  
-''​punctaj_etapă = 0.2 * (număr_de_partide_terminate_corect / 10) ++<​code>​ 
 +punctaj_etapă = 0.2 * (număr_de_partide_terminate_corect / 10) +
                 0.2 * (număr_de_partide_terminate_după_mutarea_20 / 10) +                 0.2 * (număr_de_partide_terminate_după_mutarea_20 / 10) +
-                min(0.1, 0.1 * (număr_de_puncte_din_meci / 5))''​+                min(0.1, 0.1 * (număr_de_puncte_din_meci / 5))</​code>​
                 ​                 ​
 Clarificări:​ Clarificări:​
Line 127: Line 131:
  
 Deadline-ul acestei etape este **19 mai 2020, ora 23:55**. Deadline-ul acestei etape este **19 mai 2020, ora 23:55**.
 +
 +==== Testare ====
 +Pentru testare ne vom folosi de engine-ul FairyMax care vine preinstalat cu xboard/​winboard. În funcție de caz, acesta va fi limitat ori la depth=3 ori la depth=4. Acest lucru îl va face să joace mai bine decât la etapa precedentă.
 +
 +Comenzile care vor fi rulate pentru testare vor arăta (foarte) asemănător cu comenzile de mai jos. Diferența constantă în string-ul de inițializare pentru FairyMax (depth 3 vs depth 4):
 +<note important>​xboard -fcp "make run" -scp "​fairymax"​ -secondInitString "​new\nrandom\nsd 3\n" -tc 5 -inc 2 -autoCallFlag true -mg 4 -sgf partide.txt ​ -reuseFirst false</​note>​
 +<note important>​xboard -fcp "make run" -scp "​fairymax"​ -secondInitString "​new\nrandom\nsd 4\n" -tc 5 -inc 2 -autoCallFlag true -mg 4 -sgf partide.txt ​ -reuseFirst false</​note>​
 +
 +Pentru detalii legate de parametrii comenzilor analizați instrucțiunile de la etapa precedentă.
 +
 +
 +==== Punctare ====
 +Punctajul de **0.5 puncte** se va acorda în felul următor:
 +  * **0.35 puncte** obținerea a 2 puncte (orice combinație de remize + victorii) din 4 partide vs FairyMax cu depth-ul 3
 +  * **0.15 puncte** obținerea a 2 puncte (orice combinație de remize + victorii) din 4 partide vs FairyMax cu depth-ul 4
 +
 +
 +Punctele se vor acorda după următoarea formulă:
 +
 +<​code>​
 +punctaj_etapă = min(0.35, 0.35 * (număr_puncte_din_meci_vs_fm3 / 2)) +
 +                min(0.15, 0.15 * (număr_puncte_din_meci_vs_fm4 / 2))</​code>​
 +
 ===== Etapa 4 ===== ===== Etapa 4 =====
  
pa/regulament-proiect-2020.1586041856.txt.gz · Last modified: 2020/04/05 02:10 by dragos.corlatescu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0