/
test_etri2.py
305 lines (289 loc) · 23.9 KB
/
test_etri2.py
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
import sys
import random_data
import debug
import glpk
import etri
# Lambda
lbda = 0.76
# Weights
weights = {'g1': 0.02, 'g2': 0.05, 'g3': 0.06, 'g4': 0.06, 'g5': 0.07, 'g6':0.09, 'g7':0.09, 'g8':0.11, 'g9': 0.13, 'g10': 0.15, 'g11': 0.17}
# Criteria
criteria = weights.keys()
# Actions
pt = {
0: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':4, 'g9':2, 'g10':3, 'g11':5},
1: {'g1':1, 'g2':2, 'g3':2, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
2: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
3: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
4: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':4, 'g6':3, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
5: {'g1':1, 'g2':3, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':3, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
6: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
7: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':4, 'g9':2, 'g10':3, 'g11':5},
8: {'g1':1, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':3, 'g8':1, 'g9':2, 'g10':3, 'g11':4},
9: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':2, 'g10':1, 'g11':1},
10: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
11: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':3, 'g6':4, 'g7':2, 'g8':1, 'g9':2, 'g10':3, 'g11':5},
12: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':3, 'g6':4, 'g7':2, 'g8':1, 'g9':2, 'g10':3, 'g11':5},
13: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
14: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
15: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
16: {'g1':1, 'g2':3, 'g3':3, 'g4':2, 'g5':1, 'g6':4, 'g7':3, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
17: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':3, 'g10':1, 'g11':1},
18: {'g1':1, 'g2':2, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
19: {'g1':2, 'g2':3, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':4, 'g9':2, 'g10':3, 'g11':1},
20: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':1, 'g6':1, 'g7':3, 'g8':4, 'g9':3, 'g10':3, 'g11':4},
21: {'g1':1, 'g2':3, 'g3':2, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
22: {'g1':1, 'g2':3, 'g3':2, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
23: {'g1':2, 'g2':2, 'g3':1, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':2, 'g10':3, 'g11':5},
24: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':2, 'g10':1, 'g11':1},
25: {'g1':2, 'g2':3, 'g3':1, 'g4':2, 'g5':1, 'g6':3, 'g7':3, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
26: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
27: {'g1':1, 'g2':2, 'g3':2, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
28: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':3, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
29: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
30: {'g1':1, 'g2':2, 'g3':1, 'g4':1, 'g5':3, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
31: {'g1':3, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':3, 'g8':5, 'g9':1, 'g10':3, 'g11':5},
32: {'g1':1, 'g2':3, 'g3':2, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':3, 'g10':1, 'g11':4},
33: {'g1':1, 'g2':2, 'g3':1, 'g4':2, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
34: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':3, 'g6':1, 'g7':2, 'g8':4, 'g9':2, 'g10':3, 'g11':1},
35: {'g1':1, 'g2':3, 'g3':2, 'g4':1, 'g5':3, 'g6':3, 'g7':2, 'g8':1, 'g9':2, 'g10':1, 'g11':4},
36: {'g1':2, 'g2':2, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':2, 'g10':1, 'g11':1},
37: {'g1':1, 'g2':2, 'g3':2, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
38: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':4, 'g6':1, 'g7':2, 'g8':5, 'g9':1, 'g10':3, 'g11':1},
39: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
40: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
41: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':3, 'g6':3, 'g7':1, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
42: {'g1':2, 'g2':2, 'g3':2, 'g4':1, 'g5':3, 'g6':1, 'g7':1, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
43: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
44: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
45: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':3, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
46: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':4, 'g6':1, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
47: {'g1':1, 'g2':3, 'g3':1, 'g4':1, 'g5':3, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
48: {'g1':2, 'g2':2, 'g3':1, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
49: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':2, 'g10':3, 'g11':4},
50: {'g1':1, 'g2':2, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
51: {'g1':1, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
52: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':3, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
53: {'g1':2, 'g2':3, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':4, 'g9':2, 'g10':3, 'g11':1},
54: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':3, 'g7':1, 'g8':4, 'g9':2, 'g10':1, 'g11':1},
55: {'g1':1, 'g2':2, 'g3':1, 'g4':2, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
56: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
57: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
58: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
59: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
60: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
61: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
62: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
63: {'g1':2, 'g2':2, 'g3':1, 'g4':1, 'g5':3, 'g6':1, 'g7':1, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
64: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
65: {'g1':1, 'g2':3, 'g3':2, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
66: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':3, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
67: {'g1':1, 'g2':2, 'g3':1, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
68: {'g1':1, 'g2':3, 'g3':1, 'g4':1, 'g5':3, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
69: {'g1':2, 'g2':2, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':2, 'g10':1, 'g11':1},
70: {'g1':2, 'g2':3, 'g3':2, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
71: {'g1':2, 'g2':2, 'g3':2, 'g4':2, 'g5':4, 'g6':3, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
72: {'g1':1, 'g2':3, 'g3':2, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
73: {'g1':1, 'g2':2, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
74: {'g1':1, 'g2':3, 'g3':2, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':3, 'g10':3, 'g11':1},
75: {'g1':2, 'g2':1, 'g3':3, 'g4':1, 'g5':3, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
76: {'g1':2, 'g2':2, 'g3':2, 'g4':2, 'g5':3, 'g6':3, 'g7':1, 'g8':4, 'g9':2, 'g10':3, 'g11':1},
77: {'g1':2, 'g2':2, 'g3':2, 'g4':1, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
78: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
79: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
80: {'g1':1, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':4},
81: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':5, 'g9':1, 'g10':3, 'g11':5},
82: {'g1':1, 'g2':2, 'g3':2, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
83: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
84: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
85: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
86: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
87: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
88: {'g1':1, 'g2':2, 'g3':2, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
89: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':3, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
90: {'g1':1, 'g2':3, 'g3':3, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':2, 'g10':3, 'g11':1},
91: {'g1':1, 'g2':2, 'g3':2, 'g4':1, 'g5':3, 'g6':1, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':4},
92: {'g1':3, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
93: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
94: {'g1':2, 'g2':2, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':2, 'g10':1, 'g11':1},
95: {'g1':1, 'g2':3, 'g3':2, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':2, 'g10':3, 'g11':1},
96: {'g1':1, 'g2':2, 'g3':1, 'g4':2, 'g5':3, 'g6':3, 'g7':1, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
97: {'g1':2, 'g2':3, 'g3':1, 'g4':2, 'g5':4, 'g6':1, 'g7':1, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
98: {'g1':1, 'g2':2, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
99: {'g1':2, 'g2':2, 'g3':2, 'g4':2, 'g5':1, 'g6':3, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
100: {'g1':2, 'g2':1, 'g3':2, 'g4':2, 'g5':3, 'g6':3, 'g7':2, 'g8':1, 'g9':2, 'g10':3, 'g11':1},
101: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
102: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
103: {'g1':1, 'g2':2, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':4, 'g9':3, 'g10':3, 'g11':1},
104: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':5, 'g9':1, 'g10':3, 'g11':5},
105: {'g1':1, 'g2':3, 'g3':2, 'g4':1, 'g5':3, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
106: {'g1':1, 'g2':3, 'g3':2, 'g4':1, 'g5':1, 'g6':3, 'g7':1, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
107: {'g1':2, 'g2':3, 'g3':2, 'g4':2, 'g5':4, 'g6':3, 'g7':1, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
108: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
109: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':5, 'g9':1, 'g10':3, 'g11':1},
110: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
111: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':1, 'g6':3, 'g7':3, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
112: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':3, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
113: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':4, 'g9':1, 'g10':1, 'g11':1},
114: {'g1':1, 'g2':3, 'g3':1, 'g4':1, 'g5':1, 'g6':3, 'g7':2, 'g8':5, 'g9':1, 'g10':3, 'g11':4},
115: {'g1':2, 'g2':3, 'g3':1, 'g4':1, 'g5':1, 'g6':3, 'g7':2, 'g8':5, 'g9':1, 'g10':3, 'g11':1},
116: {'g1':1, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':3, 'g8':1, 'g9':3, 'g10':3, 'g11':5},
117: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':3, 'g6':4, 'g7':2, 'g8':1, 'g9':2, 'g10':3, 'g11':5},
118: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':1, 'g6':3, 'g7':3, 'g8':1, 'g9':2, 'g10':3, 'g11':1},
119: {'g1':2, 'g2':2, 'g3':1, 'g4':2, 'g5':3, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
120: {'g1':2, 'g2':2, 'g3':1, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
121: {'g1':2, 'g2':2, 'g3':3, 'g4':1, 'g5':3, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
122: {'g1':2, 'g2':1, 'g3':1, 'g4':1, 'g5':3, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
123: {'g1':2, 'g2':2, 'g3':1, 'g4':1, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
124: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
125: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
126: {'g1':1, 'g2':3, 'g3':2, 'g4':1, 'g5':4, 'g6':1, 'g7':2, 'g8':5, 'g9':1, 'g10':3, 'g11':4},
127: {'g1':2, 'g2':3, 'g3':3, 'g4':1, 'g5':3, 'g6':3, 'g7':3, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
128: {'g1':1, 'g2':3, 'g3':2, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
129: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
130: {'g1':1, 'g2':3, 'g3':2, 'g4':2, 'g5':3, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
131: {'g1':2, 'g2':3, 'g3':2, 'g4':1, 'g5':4, 'g6':3, 'g7':1, 'g8':4, 'g9':1, 'g10':1, 'g11':1},
132: {'g1':2, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
133: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
134: {'g1':1, 'g2':2, 'g3':1, 'g4':1, 'g5':1, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':4},
135: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':3, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
136: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':1, 'g11':1},
137: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':3, 'g10':3, 'g11':5},
138: {'g1':2, 'g2':3, 'g3':1, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':5, 'g9':1, 'g10':3, 'g11':4},
139: {'g1':1, 'g2':3, 'g3':3, 'g4':1, 'g5':1, 'g6':3, 'g7':3, 'g8':1, 'g9':2, 'g10':3, 'g11':5},
140: {'g1':2, 'g2':3, 'g3':2, 'g4':2, 'g5':4, 'g6':3, 'g7':1, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
141: {'g1':2, 'g2':3, 'g3':1, 'g4':1, 'g5':1, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
142: {'g1':2, 'g2':3, 'g3':1, 'g4':1, 'g5':3, 'g6':1, 'g7':1, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
143: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':4, 'g6':3, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
144: {'g1':2, 'g2':3, 'g3':2, 'g4':2, 'g5':3, 'g6':3, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
145: {'g1':2, 'g2':2, 'g3':1, 'g4':2, 'g5':1, 'g6':3, 'g7':1, 'g8':1, 'g9':2, 'g10':1, 'g11':1},
146: {'g1':1, 'g2':2, 'g3':1, 'g4':2, 'g5':3, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
147: {'g1':2, 'g2':3, 'g3':2, 'g4':1, 'g5':4, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
148: {'g1':1, 'g2':2, 'g3':2, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
149: {'g1':1, 'g2':2, 'g3':2, 'g4':2, 'g5':3, 'g6':4, 'g7':2, 'g8':4, 'g9':2, 'g10':3, 'g11':1},
150: {'g1':1, 'g2':2, 'g3':2, 'g4':2, 'g5':1, 'g6':3, 'g7':1, 'g8':4, 'g9':1, 'g10':1, 'g11':1},
151: {'g1':1, 'g2':2, 'g3':1, 'g4':1, 'g5':1, 'g6':3, 'g7':3, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
152: {'g1':2, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
153: {'g1':2, 'g2':3, 'g3':2, 'g4':1, 'g5':4, 'g6':3, 'g7':3, 'g8':4, 'g9':2, 'g10':3, 'g11':5},
154: {'g1':1, 'g2':3, 'g3':1, 'g4':1, 'g5':3, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
155: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':1, 'g6':3, 'g7':3, 'g8':4, 'g9':3, 'g10':1, 'g11':5},
156: {'g1':2, 'g2':1, 'g3':2, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':1, 'g9':2, 'g10':3, 'g11':1},
157: {'g1':1, 'g2':3, 'g3':2, 'g4':2, 'g5':3, 'g6':3, 'g7':2, 'g8':5, 'g9':1, 'g10':3, 'g11':4},
158: {'g1':2, 'g2':3, 'g3':3, 'g4':1, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
159: {'g1':2, 'g2':3, 'g3':1, 'g4':1, 'g5':3, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
160: {'g1':1, 'g2':3, 'g3':3, 'g4':1, 'g5':1, 'g6':3, 'g7':3, 'g8':1, 'g9':2, 'g10':3, 'g11':5},
161: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':1, 'g11':1},
162: {'g1':2, 'g2':3, 'g3':1, 'g4':1, 'g5':1, 'g6':3, 'g7':2, 'g8':5, 'g9':1, 'g10':3, 'g11':5},
163: {'g1':2, 'g2':2, 'g3':2, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
164: {'g1':2, 'g2':3, 'g3':1, 'g4':2, 'g5':4, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
165: {'g1':2, 'g2':1, 'g3':2, 'g4':2, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
166: {'g1':2, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
167: {'g1':2, 'g2':3, 'g3':1, 'g4':1, 'g5':3, 'g6':1, 'g7':2, 'g8':1, 'g9':3, 'g10':3, 'g11':1},
168: {'g1':1, 'g2':3, 'g3':2, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
169: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':4, 'g9':2, 'g10':3, 'g11':1},
170: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
171: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':4, 'g6':3, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
172: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
173: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':3, 'g8':1, 'g9':1, 'g10':1, 'g11':4},
174: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':1, 'g6':3, 'g7':1, 'g8':5, 'g9':1, 'g10':3, 'g11':5},
175: {'g1':1, 'g2':3, 'g3':3, 'g4':2, 'g5':1, 'g6':4, 'g7':2, 'g8':1, 'g9':3, 'g10':3, 'g11':4},
176: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':1, 'g9':3, 'g10':3, 'g11':1},
177: {'g1':1, 'g2':3, 'g3':1, 'g4':1, 'g5':1, 'g6':3, 'g7':2, 'g8':5, 'g9':2, 'g10':3, 'g11':4},
178: {'g1':2, 'g2':3, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
179: {'g1':2, 'g2':2, 'g3':1, 'g4':1, 'g5':1, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
180: {'g1':1, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':1, 'g8':1, 'g9':2, 'g10':3, 'g11':4},
181: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':1, 'g6':3, 'g7':3, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
182: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':1, 'g8':5, 'g9':1, 'g10':3, 'g11':5},
183: {'g1':1, 'g2':3, 'g3':2, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
184: {'g1':1, 'g2':1, 'g3':2, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
185: {'g1':1, 'g2':1, 'g3':1, 'g4':2, 'g5':1, 'g6':3, 'g7':1, 'g8':1, 'g9':2, 'g10':1, 'g11':1},
186: {'g1':1, 'g2':2, 'g3':1, 'g4':2, 'g5':1, 'g6':1, 'g7':3, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
187: {'g1':1, 'g2':3, 'g3':2, 'g4':2, 'g5':1, 'g6':3, 'g7':3, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
188: {'g1':3, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
189: {'g1':1, 'g2':3, 'g3':2, 'g4':2, 'g5':4, 'g6':3, 'g7':3, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
190: {'g1':1, 'g2':3, 'g3':1, 'g4':1, 'g5':3, 'g6':1, 'g7':1, 'g8':5, 'g9':1, 'g10':3, 'g11':1},
191: {'g1':1, 'g2':3, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':3, 'g10':3, 'g11':4},
192: {'g1':1, 'g2':3, 'g3':3, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':2, 'g10':3, 'g11':1},
193: {'g1':1, 'g2':2, 'g3':2, 'g4':1, 'g5':3, 'g6':1, 'g7':2, 'g8':4, 'g9':2, 'g10':3, 'g11':4},
194: {'g1':2, 'g2':2, 'g3':3, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
195: {'g1':2, 'g2':3, 'g3':1, 'g4':2, 'g5':4, 'g6':3, 'g7':3, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
196: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':3, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
197: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
198: {'g1':1, 'g2':2, 'g3':1, 'g4':2, 'g5':1, 'g6':3, 'g7':1, 'g8':5, 'g9':1, 'g10':3, 'g11':5},
199: {'g1':1, 'g2':2, 'g3':3, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
200: {'g1':3, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
201: {'g1':1, 'g2':2, 'g3':1, 'g4':1, 'g5':3, 'g6':3, 'g7':3, 'g8':4, 'g9':1, 'g10':3, 'g11':4},
202: {'g1':1, 'g2':3, 'g3':1, 'g4':1, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
203: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':4, 'g6':3, 'g7':3, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
204: {'g1':1, 'g2':2, 'g3':2, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':1, 'g9':2, 'g10':3, 'g11':1},
205: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':4, 'g9':1, 'g10':1, 'g11':1},
206: {'g1':2, 'g2':3, 'g3':1, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
207: {'g1':2, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':3, 'g7':3, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
208: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':3, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
209: {'g1':1, 'g2':3, 'g3':1, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
210: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
211: {'g1':3, 'g2':2, 'g3':1, 'g4':1, 'g5':4, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':1},
212: {'g1':2, 'g2':1, 'g3':1, 'g4':1, 'g5':4, 'g6':3, 'g7':3, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
213: {'g1':1, 'g2':3, 'g3':2, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
214: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':3, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
215: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
216: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
217: {'g1':2, 'g2':3, 'g3':1, 'g4':2, 'g5':1, 'g6':3, 'g7':3, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
218: {'g1':1, 'g2':3, 'g3':1, 'g4':1, 'g5':3, 'g6':3, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
219: {'g1':3, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':4, 'g9':1, 'g10':3, 'g11':5},
220: {'g1':1, 'g2':2, 'g3':3, 'g4':2, 'g5':1, 'g6':3, 'g7':2, 'g8':1, 'g9':3, 'g10':1, 'g11':1},
221: {'g1':1, 'g2':3, 'g3':2, 'g4':1, 'g5':3, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
222: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':1},
223: {'g1':1, 'g2':3, 'g3':3, 'g4':1, 'g5':1, 'g6':3, 'g7':3, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
224: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
225: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':1, 'g11':1},
226: {'g1':1, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':1, 'g9':1, 'g10':3, 'g11':5},
227: {'g1':2, 'g2':1, 'g3':1, 'g4':1, 'g5':1, 'g6':3, 'g7':1, 'g8':1, 'g9':1, 'g10':3, 'g11':4},
228: {'g1':2, 'g2':3, 'g3':3, 'g4':2, 'g5':4, 'g6':3, 'g7':2, 'g8':5, 'g9':3, 'g10':3, 'g11':5},
}
alternatives = pt.keys()
# Reference actions
b1 = {'g1':1, 'g2':2, 'g3': 1, 'g4':1, 'g5':1, 'g6':1, 'g7':2, 'g8':4, 'g9':1, 'g10':1, 'g11':1}
b2 = {'g1':2, 'g2':2, 'g3': 2, 'g4':2, 'g5':3, 'g6':1, 'g7':3, 'g8':4, 'g9':2, 'g10':3, 'g11':4}
b3 = {'g1':2, 'g2':3, 'g3': 3, 'g4':2, 'g5':3, 'g6':1, 'g7':3, 'g8':5, 'g9':3, 'g10':3, 'g11':5}
# Indifference, Preference and Veto
q = {'g1':0, 'g2':0, 'g3': 0, 'g4':0, 'g5':0, 'g6':0, 'g7':0, 'g8':0, 'g9':0, 'g10':0, 'g11':0}
p = {'g1':1, 'g2':1, 'g3': 1, 'g4':1, 'g5':1, 'g6':1, 'g7':1, 'g8':1, 'g9':1, 'g10':2, 'g11':1}
#v = {'g11':4}
v = {}
prof1 = { 'refs': b1, 'q': q, 'p': p, 'v': v }
prof2 = { 'refs': b2, 'q': q, 'p': p, 'v': v }
prof3 = { 'refs': b3, 'q': q, 'p': p, 'v': v }
profiles = [ prof1, prof2, prof3 ]
# Categories
categories = [(i+1) for i in range(len(profiles)+1)]
categories_rank = {}
for i, cat in enumerate(categories):
categories_rank[cat] = i+1
learning_alts = pt.keys()[0:50]
# ELECTRE TRI model
model = etri.electre_tri(pt, profiles, weights, lbda)
pessimist = model.pessimist()
optimist = model.optimist()
#debug.print_performance_table_with_assignements(pt, alternatives, criteria, pessimist)
infile = glpk.create_input_file(learning_alts, criteria, pt, categories, categories_rank, pessimist)
(status, output) = glpk.solve_normalized(infile.name)
infile.close()
if status:
sys.exit("gklp returned status %d" % status)
(iweights, iprofiles, ilbda, icompat) = glpk.parse_output(output, learning_alts, criteria)
if iweights == None:
sys.exit("Invalid weights");
if iprofiles == None:
sys.exit("Invalid profiles")
if ilbda == None:
sys.exit("Invalid lambda")
if icompat == None:
sys.exit("Invalid compat");
# Apply ELECTRE TRI model
modeli = etri.electre_tri(pt, iprofiles, iweights, ilbda)
ipessimist = model.pessimist()
debug.print_lambda(lbda, ilbda)
debug.print_weights(weights, criteria, iweights)
debug.print_profiles(profiles, criteria, iprofiles)
debug.print_performance_table_with_assignements(pt, alternatives, criteria, pessimist, ipessimist, icompat)