:: Yahoo!
:: Credits
|
# FAQ ver.1.3 - 14-dic-2007
- D: Io non ho mai scritto un robot ? È difficile ? Cosa devo fare ?
R: Affatto, scrivere un robot non è difficile. Il manuale di Crobots (in
inglese), i documenti e il
tutorial forniscono le basi per costruire
un valido robot. Centinaia di sorgenti di robot sono disponibili per attingere
ulteriori informazioni.
- D: Posso scrivere i robot in un altro linguaggio di programmazione diverso
dal C (Pascal, C++, BASIC) ?
R: No. Crobots accetta soltanto un subset dell'ANSI C.
- D: Posso usare Crobots32 (Pascal Robots o altri cloni) per testare i miei
robot?
R: No, non conviene, non sono compatibili (neanche Crobots32) con Crobots.
- D: Esiste un'interfaccia grafica per Crobots ?
R: Per la visualizzazione del match no: per le piattaforme Ms-DOS/Linux non esiste e comunque non serve.
Crobots per Amiga ha un'interfaccia grafica molto carina ma il compilatore
non è 100% compatibile con l'originale Ms-DOS/Linux.
- D: Esiste Crobots per Windows9x/NT oppure OS/2 ?
R: Sì. Crobots esiste compilato anche per Windows32. Crobots Ms-DOS può girare in una
finestra Ms-DOS di Windows 9x o in una virtual machine box di NT od OS/2, ma è più lento.
- D: Posso far girare Crobots su altri sistemi operativi ?
R: Crobots può girare senza problemi in qualsiasi sistema operativo che
abbia il supporto o l'emulazione x86 Ms-DOS o Linux. Ora esistono anche i binari per HP-UX, Solaris, IBM AIX, Playstation e Mac OS X.
- D: Quale versione di Linux può far girare crobots ?
R: Qualsiasi! In linea (clicca qui) si trovano i binari.
- D: Ci sono differenze fra le varie versioni precompilate di Crobots ?
R: Non sono state riscontrate differenze evidenti fra le diverse versioni.
La versione Linux è quella "ufficiale".
- D: Quali sono i robot migliori con cui misurarsi per i benchmark ?
R: Di default si usano i robot giunti in finale nell'ultimo torneo ufficiale disputato, o quelli della finale
del torneo con tutti i robot scritti dal 91 ad oggi.
- D: Come faccio ad analizzare tutti i log di crobots ?
R: In linea, nella pagina principale dei download, sono
disponibili le utilities usate per l'analisi dei log di crobots,
realizzate da Simone Ascheri e Michelangelo Messina.
- D: Che cosa devo fare per testare il mio robot?
R: Alla pagina Tutorial è sono descritte
alcune metodologie. Si può utilizzare un file batch creato con
CRUtils od usare Torneo configurando opportunamente il file
'torneo.rob' oppure sfruttare il client Java in accoppiata con un database MySQL. Tutte le utility
sono in linea a questo link.
- D: Come va configurato il programma Torneo per i test del mio robot ?
R: La maggior parte delle risposte si trovano nel file README allegato nel
pacchetto Torneo, reperibile nella pagina iniziale del sito Crobots.
Prendiamo come esempio il torneo 1991-1998; se il nostro robot si
chiama pippo.r e sta nella directory test/ e tutti gli altri robot del
1991-1998 sono nella directory torneo9198/, un possibile 'torneo.rob' (per
Linux!) è questo:
----------------- inizio file 'torneo.rob -------------
24
5
test/pippo.r
torneo9198/goblin.r
torneo9198/\!.r
torneo9198/1\&1.r
torneo9198/ai1.r
torneo9198/arale.r
torneo9198/bartali.r
torneo9198/colossus.r
torneo9198/coppi.r
torneo9198/diabolik.r
torneo9198/fable.r
torneo9198/freedom.r
torneo9198/goldrake.r
torneo9198/gundam.r
torneo9198/kill\!.r
torneo9198/ncmplt.r
torneo9198/rudolf.r
torneo9198/rudolf_2.r
torneo9198/rudolf_3.r
torneo9198/son-goku.r
torneo9198/sottolin.r
torneo9198/stay.r
torneo9198/tornado.r
torneo9198/vision.r
L=1
T
O
M=10%
C=aggiorna.sh
----------------- fine file 'torneo.rob' -------------
Con queste opzioni vengono calcolati tutti e soli gli incontri del nostro
robot da testare (pippo.r), con 5 ripetizioni per ogni quartetto e
seguendo l'ordine dei robot inseriti nella lista. Per il calcolo dei punteggi
viene richiamato lo script 'aggiorna.sh' che conterrà i comandi da impartire a Count per
aggiornare la classifica. La classifica viene aggiornata con una frequenza del 10%.
Se vogliamo seguire il comportamento completo del nostro robot e del
campione 1991-1998 goblin.r è necessario cambiare L=1 con L=2. Per
eseguire un torneo completo eliminare L=1 e O.
Per il test Torneo9198 face2face è necessario cambiare il numero di
ripetizioni da 5 a 100 ed usare l'opzione "-f" del programma Torneo, oppure usare l'opzione
"-a=xxx" che esegue xxx incontri per il face2face e a seguire il torneo 4vs4.
- D: Come calcolo il numero di ripetizioni degli scontri (da inserire in
'torneo.rob') ?
R: Bisogna stabilire quanti incontri vogliamo far disputare ad ogni coppia
distinta di robot (che si incontrera` nel 4 contro 4, di volta in volta);
se per esempio questo numero è TOT, la formula generale è :
TOT
------- (prendendo l'intero appena superiore)
(N-2) C 2
Dove N è il numero di robot da testare e l'operatore nCr restituisce il
numero di combinazioni di 'n' elementi presi 'r' per volta.
Es: 1000 incontri per coppia, 24 robot totali
1000 1000
---------- = ------ = 4.329 , per cui si usa 5
(24 - 2) C 2 231
Per il face2face il numero di incontri per coppia è uguale, naturalmente,
al numero di ripetizioni.
- D: Quanti test devo fare per ottenere risultati attendibili?
R: La varianza dei risultati, espressa in punti percentuali
dell'efficienza del robot testato è, con un fattore di ripetizione pari a
5 e 24 robot totali (tornei standard 1998, 1991-1998), circa 1-1.5%; se si
ottengono miglioramenti o peggiormanti fuori di quell'intervallo si è
ragionevolmente sicuri dei risultati, altrimenti è consigliabile ripetere
i test oppure usare un numero maggiore di ripetizioni oppure fidarsi :-)
--
mailto:crobots(at)deepthought.it
|
|