-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsettings.ini
88 lines (73 loc) · 3.72 KB
/
settings.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
[DEFAULT]
#size, cycles, processes, length, distance
##archived 0-3 Global Masters
## 0 GM 1 8000, 80000, 64, 100, 100
## 1 GM 2 160, 1600, 160, 6, 6
## 2 GM 3 8000, 80000, 8000, 80, 80 #and use SANITIZE 9
## 3 GM 4 800, 8000, 4, 20, 20
##
# 0 Nano 80, 800, 80, 5, 5
# 1 Tiny 800, 8000, 800, 20, 20
# 2 Tiny LP 800, 8000, 8, 50, 50
# 3 94 Medium P 8000, 80000, 64, 100, 100
# 4 94/Std/NOP 8000, 80000, 8000, 100, 100
# 5 94 LP 8000, 80000, 8, 100, 100
# 6 Tourney 8192, 100000, 8000, 300, 300
# 7 Experimental 55440, 500000, 10000, 200, 200
LAST_ARENA=7
#A LAST_ARENA of 7 means you are running 8 arenas
CORESIZE_LIST=80,800,800,8000,8000,8000,8192,55440
SANITIZE_LIST=80,800,800,8000,8000,8000,8192,55440
#usually the same as above but may be needed for arenas like Global Masters Round 3.
CYCLES_LIST=800,8000,8000,80000,80000,80000,100000,500000
PROCESSES_LIST=80,800,8,64,8000,8,8000,10000
WARLEN_LIST=5,20,50,100,100,100,300,200
WARDISTANCE_LIST=5,20,50,100,100,100,300,200
NUMWARRIORS=500
ALREADYSEEDED=True
################# Set to False on first or it will not work.
CLOCK_TIME=24.0
#actual wall clock time in hours you want to take
BATTLE_LOG_FILE=battle_log.csv
#log file to study progress. leave blank for no log
FINAL_ERA_ONLY=False
#if True, skip the first two eras and go straight to the last one(i.e. if you want to continue fine-tuning where you left off)
#Or you're doing other research into the parameters and don't want them changing.
#Five strategies for mutating a single instruction. Think of it like a bag of marbles of six different colours, and a different number of each colour.
NOTHING_LIST=10,18,27
#one of the colours of marbles will do nothing to the instruction
RANDOM_LIST=2,1,1
#This colour of marbles will create a completely random instruction.
NAB_LIST=4,4,2
#This will nab an instruction from a different arena. (Set to 0 if you are only running one arena.)
MINI_MUT_LIST=3,4,2
#This will do a mini mutation. (One part of the instruction replaced with something random.)
MICRO_MUT_LIST=3,4,3
#This will do a micro mutation. (One of the numbers in the instruction increased or decreased by 1.)
LIBRARY_LIST=6,2,1
#LIBRARY_LIST=0,0,0
#This will grab an instruction from the instruction library (not included). (Set to 0 if you haven't made a library.)
MAGIC_NUMBER_LIST=3,3,2
#This will replace a constant with the magic number (chosen at beginning of warrior)
#my intuition is that at first, unarchiving should be rare:
#-if sharing archive with other runs, will allow unique adaptations to optimize before turning optimized warriors loose
#later on, unarchiving should be more common:
#-plenty of archived warriors to cycle through
ARCHIVE_LIST=2000,3000,3000
UNARCHIVE_LIST=4000,2000,1000
#ARCHIVE_LIST=0,0,0
#UNARCHIVE_LIST=0,0,0
#******* Not included with distribution. You do not need to use this. ***********
LIBRARY_PATH=instructions.txt
#instructions to pull from. Maybe a previous evolution run, maybe one or more hand-written warriors.
#one instruction per line. Just assembled instructions, nothing else. If multiple warriors, just concatenated with no breaks.
CROSSOVERRATE_LIST=10,2,5
# 1 in this chance of switching to picking lines from other warrior, per instruction
TRANSPOSITIONRATE_LIST=10,12,20
# 1 in this chance of swapping location of multiple instructions, per warrior
BATTLEROUNDS_LIST=1,20,100
PREFER_WINNER_LIST=True, False, False
#Biasing toward more viable warriors. Most popular instructions more likely.
INSTR_SET=MOV,MOV,MOV,MOV,MOV,MOV,MOV,MOV,MOV,MOV,SPL,SPL,SPL,SPL,SPL,DJN,DJN,DJN,DJN,ADD,SUB,MUL,DIV,MOD,JMP,JMZ,CMP
INSTR_MODES=#,$,*,@,{,<,},>
INSTR_MODIF=A,B,AB,BA,F,X,I