Menu

Tree [r27] /
 History

HTTPS access


File Date Author Commit
 _UpgradeReport_Files 2009-12-04 muogoro [r1] First commit: Perboli version
 data 2010-02-06 jiggo [r27] Final version. Add presentation.
 debug 2010-02-06 jiggo [r27] Final version. Add presentation.
 logs 2010-02-06 jiggo [r27] Final version. Add presentation.
 release 2010-02-06 jiggo [r27] Final version. Add presentation.
 sources 2010-02-06 jiggo [r27] Final version. Add presentation.
 vsbpp-lb 2010-02-06 jiggo [r27] Final version. Add presentation.
 README.txt 2009-12-12 muogoro [r13] Add README. Update visual studio project file.
 TODO.txt 2009-12-16 jiggo [r19] 1. Final fix to BestBinsLast & WorstBinsFirst (...
 UpgradeLog.XML 2009-12-04 muogoro [r1] First commit: Perboli version
 compile.txt 2009-12-04 muogoro [r1] First commit: Perboli version
 lista.txt 2009-12-04 muogoro [r1] First commit: Perboli version
 logMonaci.csv 2009-12-14 muogoro [r14] Minor fixes
 prepara_linux.sh 2009-12-04 muogoro [r3] Add scripts for Linux version
 prepara_vs5.bat 2009-12-04 muogoro [r1] First commit: Perboli version
 prepara_vs8.bat 2009-12-04 muogoro [r1] First commit: Perboli version
 prove_totali.bat 2010-02-06 jiggo [r27] Final version. Add presentation.
 prove_totali.sh 2009-12-17 muogoro [r22] Fix Linux launch-script. Convert sliding delta ...
 vsbpp-lb.ncb 2010-02-06 jiggo [r27] Final version. Add presentation.
 vsbpp-lb.sln 2009-12-12 muogoro [r13] Add README. Update visual studio project file.
 vsbpp-lb.sln.vs5 2009-12-04 muogoro [r1] First commit: Perboli version
 vsbpp-lb.sln.vs8exp 2009-12-04 muogoro [r1] First commit: Perboli version
 vsbpp-lb.suo 2010-02-06 jiggo [r27] Final version. Add presentation.
 vsbpp-lb.suo.vs5 2009-12-04 muogoro [r1] First commit: Perboli version
 vsbpp-lb.suo.vs8exp 2009-12-04 muogoro [r1] First commit: Perboli version

Read Me

Modifiche alla Perboli-version

Oltre all'implementazione delle short term update nel file vsbpp-bound.cpp, è
stato aggiungo un ulteriore parametro -pf che consente di specificare un
"parameter file". Il file in questione istruisce l'eseguibile riguardo:
- quale funzione di short term update eseguire e a quale iterazione;
- che parametri utilizzare per l'esecuzione della funzione di short term update.
La sintassi di un parameter file è la seguente:

# Comment
%% <iteration> -> "<SHORT_TERM_UP_NAME>"
"<PARAMETER_FUNC>" = <VALUE>

Il file consiste in una lista di funzioni STU, seguite dagli eventuali
parametri.

Le possibili STU sono le seguenti:
 - SLIDING;
 - SUBSTRING_SWAP1;
 - SUBSTRING_SWAP2;
 - WORSTBINSFIRST;
 - BESTBINSLAST.
Ogni STU è indicata come una stringa tra virgolette, preceduta dalla
stringa "%% i ->" dove i rappresenta l'iterazione al quale eseguire
la STU.

I possibili parametri per ogni STU sono i seguenti:
 - sliding_M: setta M. Può essere specificato come valore intero
              o come frazione/multiplo del numero di contenitori B.
              Default: B/2;
 - sliding_delta: setta delta. Default 0.15;
 
 - substringswap1_M: setta M. Può essere specificato come valore intero
              o come frazione/multiplo del numero di contenitori B.
              Default: N/2;
 - substringswap1_delta: setta delta Default 3;

 - substringswap2_M: come sopra ma per la seconda versione del
                     substringswap;
 - substringswap2_delta: come sopra ma per la seconda versione del
                         substringswap;
 
 - worstbinsfirst_k: setta k. Default 3;
 - worstbinsfirst_alfa: setta alfa. Default 0.15;

 - bestbinslast_k: setta k. Default 3;
 - bestbinslast_alfa: setta alfa. Default 0.15;

Il parametro è specificato tra virgolette, seguito da un uguale e
dal valore al quale si desidera settarlo.

Sotto un esempio di parameter file:

# Example
%% 0 -> "SLIDING"
"sliding_delta" = 0.15
#"sliding_M" = 20
"sliding_M" = B/3
#%% 250 -> "SUBSTRING_SWAP1"
"substrswap1_delta" = 2
"substrswap1_M" = 10
#%% 600 -> "SUBSTRING_SWAP2"
"substrswap2_delta" = 2
"substrswap2_M" = 10
%% 800 -> "WORSTBINSFIRST"
"worstbinsfirst_k" = 3
"worstbinsfirst_alfa" = 0.3
#%% 800 -> "BESTBINSLAST"
"bestbinslast_k" = 3
"bestbinslast_alfa" = 0.3

Un parameter file (che viene passato di default agli script che
lanciano i test) è presente nella directory data (params_file_test
per linux, params_file_test.txt per windows).

ATTENZIONE: la funzione per il parsing del params file è scritta da
cani. La sua implementazione non è altro che una banale serie di
fgets e chiamate alle funzioni della cstring: è quindi TOTALMENTE
sensibili a spaziature, righe vuote etc. Non è inoltre implementata
alcuna sorta di error checking. Ordunque: immettete valori "sensati"
e attenti alle spaziature. O al limite modificate il codice e
committate!!!