mg-pso-gui 0.1.243__py3-none-any.whl → 0.2.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,54 +3,96 @@ from tkinter import IntVar as iv
3
3
  from tkinter import BooleanVar as bv
4
4
  from tkinter import DoubleVar as dv
5
5
  import json
6
+ import os
6
7
 
7
8
  class OptionManager():
8
9
 
9
10
  def __init__(self):
10
-
11
- self.project_data = {"name": "", "path": ""}
12
- self.arguments = {"param": [],
13
- "url": sv(),
14
- "urls": {},
15
- "mode": sv(),
16
- "files": {},
17
- "calibration_parameters": [],
18
- "service_parameters": [],
19
- "figure_parameters": [],
20
- "sensitivity_parameters": [],
21
- "sensitivity_positiveBestMetrics": [],
22
- "sensitivity_negativeBestMetrics": []}
23
- self.steps = []
24
- self.service_parameters = {}
25
11
 
26
- self.service_modes = ["Sampling", "Sensitivity Analysis", "Optimization"]
27
- for mode in self.service_modes:
28
- self.arguments["urls"][mode] = sv()
12
+ self._service_modes = ["Sampling: Halton", "Sampling: Random", "Sensitivity Analysis", "Optimization"]
13
+
14
+ self._default_sampling = json.load(open(os.path.join("./defaults", "sampling.json")))
15
+ self._default_sensitivity = json.load(open(os.path.join("./defaults", "sensitivity.json")))
16
+ self._default_optimization = json.load(open(os.path.join("./defaults", "optimization.json")))
17
+
18
+ self._mode_sv = sv()
19
+ self.init_lists()
20
+
21
+ def init_lists(self):
22
+ self._project_data = {"name": "", "path": ""}
23
+ self._data = {}
29
24
 
25
+ self._data["mode"] = self._mode_sv
26
+
27
+ for service in self._service_modes:
28
+ self._data[service] = {
29
+ "url": sv(),
30
+ "files": {},
31
+ "steps": [],
32
+ "model_parameters": [],
33
+ "hyperparameters": [],
34
+ "service_parameters": [],
35
+ "service_request_data": [],
36
+ "figure_parameters": [],
37
+ "sensitivity_parameters": [],
38
+ "sensitivity_positiveBestMetrics": [],
39
+ "sensitivity_negativeBestMetrics": []}
30
40
 
31
- def clear(self):
32
- self.arguments['param'].clear()
33
- self.arguments['url'].set("")
34
- for mode in self.service_modes:
35
- self.arguments["urls"][mode].set("")
36
- self.arguments['mode'].set("Optimization")
37
- self.arguments['files'] = {}
38
- self.arguments['calibration_parameters'].clear()
39
- self.arguments['service_parameters'].clear()
40
- self.arguments['figure_parameters'].clear()
41
- self.arguments['sensitivity_parameters'].clear()
42
- self.arguments['sensitivity_positiveBestMetrics'].clear()
43
- self.arguments['sensitivity_negativeBestMetrics'].clear()
44
- self.steps = []
45
- self.service_parameters = {}
46
-
41
+ if service == "Sampling: Halton" or service == "Sampling: Random":
42
+ self._data[service]["model_parameters"] = self._default_sampling["model_parameters"]
43
+ self._data[service]["hyperparameters"] = self._default_sampling["hyperparameters"]
44
+ self._data[service]["service_parameters"] = self._default_sampling["service_parameters"]
45
+ elif service == "Sensitivity Analysis":
46
+ self._data[service]["model_parameters"] = self._default_sensitivity["model_parameters"]
47
+ self._data[service]["hyperparameters"] = self._default_sensitivity["hyperparameters"]
48
+ self._data[service]["service_parameters"] = self._default_sensitivity["service_parameters"]
49
+ elif service == "Optimization":
50
+ self._data[service]["model_parameters"] = self._default_optimization["model_parameters"]
51
+ self._data[service]["hyperparameters"] = self._default_optimization["hyperparameters"]
52
+ self._data[service]["service_parameters"] = self._default_optimization["service_parameters"]
53
+
54
+
55
+ def serialize_data(self, data):
56
+ if isinstance(data, dict):
57
+ return {key: self.serialize_data(value) for key, value in data.items()}
58
+ elif isinstance(data, list):
59
+ return [self.serialize_data(item) for item in data]
60
+ elif isinstance(data, sv):
61
+ return data.get()
62
+ else:
63
+ return data
64
+
65
+ def deserialize_data(self, data):
66
+ if isinstance(data, dict):
67
+ return {key: self.deserialize_data(value) for key, value in data.items()}
68
+ elif isinstance(data, list):
69
+ return [self.deserialize_data(item) for item in data]
70
+ elif isinstance(data, (str, int, float)):
71
+ return sv(value=str(data))
72
+ else:
73
+ return data
74
+
75
+ def save_project(self, filename):
76
+ with open(filename, 'w') as file:
77
+ results = {"project_data": self._project_data,
78
+ "mode": self._mode_sv.get(),
79
+ "data": self.serialize_data(self._data)}
80
+ json.dump(results, file)
81
+
82
+ def load_project(self, filename):
83
+ with open(filename, 'r') as file:
84
+ results = json.load(file)
85
+ self._project_data = results["project_data"]
86
+ self._mode_sv.set(results["mode"])
87
+ self._data = self.deserialize_data(results["data"])
88
+
47
89
  def add_arguments(self, arguments):
48
90
 
49
91
  if ("mode" in arguments):
50
- self.arguments["mode"].set(arguments["mode"])
92
+ self._data["mode"].set(arguments["mode"])
51
93
 
52
94
  if ("url" in arguments):
53
- self.arguments["urls"][self.arguments["mode"].get()].set(arguments["url"])
95
+ self._data["url"][self._data["mode"].get()].set(arguments["url"])
54
96
 
55
97
  if ("files" in arguments):
56
98
  for file in arguments["files"]:
@@ -59,23 +101,23 @@ class OptionManager():
59
101
  obj = {"name": sv(), "value": sv()}
60
102
  obj["name"].set(name)
61
103
  obj["value"].set(value)
62
- self.arguments["files"][name] = obj
104
+ self._data["files"][name] = obj
63
105
 
64
- for param in arguments["param"]:
106
+ for param in arguments["model_parameters"]:
65
107
  name = param["name"]
66
108
  value = param["value"]
67
109
  obj = {"name": sv(), "value": sv()}
68
110
  obj["name"].set(name)
69
111
  obj["value"].set(value)
70
- self.arguments["param"].append(obj)
112
+ self._data["model_parameters"].append(obj)
71
113
 
72
- for param in arguments["calibration_parameters"]:
114
+ for param in arguments["hyperparameters"]:
73
115
  name = param["name"]
74
116
  value = param["value"]
75
117
  obj = {"name": sv(), "value": sv()}
76
118
  obj["name"].set(name)
77
119
  obj["value"].set(value)
78
- self.arguments["calibration_parameters"].append(obj)
120
+ self._data["hyperparameters"].append(obj)
79
121
 
80
122
  for param in arguments["service_parameters"]:
81
123
  name = param["name"]
@@ -83,21 +125,23 @@ class OptionManager():
83
125
  obj = {"name": sv(), "value": sv()}
84
126
  obj["name"].set(name)
85
127
  obj["value"].set(value)
86
- self.arguments["service_parameters"].append(obj)
128
+ self._data["service_parameters"].append(obj)
87
129
 
88
130
  def add_steps(self, steps):
89
131
  for step in steps:
90
- obj = {"param": [],
91
- "overrideparam": [],
92
- "objfunc": [],
132
+ obj = {"parameter_objects": [],
133
+ "override_parameter": [],
134
+ "objective_functions": [],
93
135
  "name": sv(),
94
136
  "open": False}
95
- obj["name"].set("Group " + str(len(self.steps) + 1))
137
+ obj["name"].set("Group " + str(len(self._data[self._mode_sv.get()]["steps"]) + 1))
96
138
 
97
- if "param" in step:
98
- for param in step["param"]:
139
+ if "parameter_objects" in step:
140
+ for param in step["parameter_objects"]:
99
141
  param_obj = {
100
142
  "name": sv(),
143
+ "min_bound": sv(),
144
+ "max_bound": sv(),
101
145
  "bounds": (sv(), sv()),
102
146
  "default_value": sv(),
103
147
  "optimal_value": sv(),
@@ -105,12 +149,16 @@ class OptionManager():
105
149
  "calibration_strategy": sv()
106
150
  }
107
151
  param_obj["name"].set(param["name"])
108
- if "bounds" in param:
109
- param_obj["bounds"][0].set(param["bounds"][0])
110
- param_obj["bounds"][1].set(param["bounds"][1])
152
+
153
+ if "min_bound" in param:
154
+ param_obj["min_bound"].set(param["min_bound"])
155
+ else:
156
+ param_obj["min_bound"].set(0)
157
+
158
+ if "max_bound" in param:
159
+ param_obj["max_bound"].set(param["max_bound"])
111
160
  else:
112
- param_obj["bounds"][0].set(0)
113
- param_obj["bounds"][1].set(1)
161
+ param_obj["max_bound"].set(0)
114
162
 
115
163
  if "type" in param:
116
164
  param_obj["type"].set(param["type"])
@@ -132,56 +180,54 @@ class OptionManager():
132
180
  else:
133
181
  param_obj["calibration_strategy"].set("none")
134
182
 
135
- obj["param"].append(param_obj)
183
+ obj["parameter_objects"].append(param_obj)
136
184
 
137
- if "overrideparam" in step:
138
- for override in step["overrideparam"]:
185
+ if "override_parameter" in step:
186
+ for override in step["override_parameter"]:
139
187
  override_obj = {"name": sv(), "value": sv()}
140
188
  override_obj['name'].set(override['name'])
141
189
  override_obj['value'].set(override['value'])
142
- obj['overrideparam'].append(override_obj)
190
+ obj['override_parameter'].append(override_obj)
143
191
 
144
- if "objfunc" in step:
145
- for objfunc in step["objfunc"]:
146
- objfunc_obj = {"name": sv(),
147
- "of": sv(),
192
+ if "objective_functions" in step:
193
+ for objective_function in step["objective_functions"]:
194
+ objective_function_object = {"name": sv(),
195
+ "objective_function": sv(),
148
196
  "weight": sv(),
149
197
  "custom_function": sv(),
150
198
  "custom_function_goal": sv(),
151
199
  "custom_function_value": sv(),
152
200
  "data": (sv(), sv())}
153
- objfunc_obj["name"].set(objfunc["name"])
154
- objfunc_obj["of"].set(objfunc["of"])
155
- objfunc_obj["custom_function_goal"].set("Positive Best")
201
+ objective_function_object["name"].set(objective_function["name"])
202
+ objective_function_object["objective_function"].set(objective_function["objective_function"])
203
+ objective_function_object["custom_function_goal"].set("Positive Best")
156
204
 
157
- if ("weight" in objfunc):
158
- objfunc_obj["weight"].set(objfunc["weight"])
205
+ if ("weight" in objective_function):
206
+ objective_function_object["weight"].set(objective_function["weight"])
159
207
  else:
160
- objfunc_obj["weight"].set(1)
208
+ objective_function_object["weight"].set(1)
161
209
 
162
- if ("custom_function" in objfunc):
163
- objfunc_obj["custom_function"].set(objfunc["custom_function"])
164
- if ("custom_function_goal" in objfunc):
165
- objfunc_obj["custom_function_goal"].set(objfunc["custom_function_goal"])
166
- if ("custom_function_value" in objfunc):
167
- objfunc_obj["custom_function_value"].set(objfunc["custom_function_value"])
210
+ if ("custom_function" in objective_function):
211
+ objective_function_object["custom_function"].set(objective_function["custom_function"])
212
+ if ("custom_function_goal" in objective_function):
213
+ objective_function_object["custom_function_goal"].set(objective_function["custom_function_goal"])
214
+ if ("custom_function_value" in objective_function):
215
+ objective_function_object["custom_function_value"].set(objective_function["custom_function_value"])
168
216
 
169
- objfunc_obj["data"][0].set(objfunc["data"][0])
170
- objfunc_obj["data"][1].set(objfunc["data"][1])
171
- obj["objfunc"].append(objfunc_obj)
217
+ objective_function_object["data"][0].set(objective_function["data"][0])
218
+ objective_function_object["data"][1].set(objective_function["data"][1])
219
+ obj["objective_functions"].append(objective_function_object)
172
220
 
173
- self.steps.append(obj)
221
+ self._data[self._mode_sv.get()]["steps"].append(obj)
174
222
 
175
223
  def add_function(self, step_index):
176
224
  obj = {"name": sv(),
177
- "of": sv(),
225
+ "objective_function": sv(),
178
226
  "weight": sv(),
179
227
  "custom_function": sv(),
180
- "custom_function_goal": sv(),
181
- "custom_function_value": sv(),
182
228
  "data": (sv(), sv())}
183
229
  obj["name"].set("ns")
184
- obj["of"].set("ns")
230
+ obj["objective_function"].set("ns")
185
231
  obj["weight"].set(1)
186
232
  obj["data"][0].set("")
187
233
  obj["data"][1].set("")
@@ -189,23 +235,23 @@ class OptionManager():
189
235
  obj["custom_function_goal"].set("")
190
236
  obj["custom_function_value"].set("")
191
237
 
192
- self.steps[step_index]["objfunc"].append(obj)
238
+ self._data[self._mode_sv.get()]["steps"][step_index]["objective_functions"].append(obj)
193
239
 
194
240
  def remove_function(self, step_index, index):
195
- self.steps[step_index]["objfunc"].pop(index)
241
+ self._data[self._mode_sv.get()]["steps"][step_index]["objective_functions"].pop(index)
196
242
 
197
243
  def dupe_function(self, step_index, index):
198
- my_func = self.steps[step_index]["objfunc"][index]
244
+ my_func = self._data[self._mode_sv.get()]["steps"][step_index]["objective_functions"][index]
199
245
 
200
246
  new_object = {"name": sv(),
201
- "of": sv(),
247
+ "objective_function": sv(),
202
248
  "weight": sv(),
203
249
  "custom_function": sv(),
204
250
  "custom_function_goal": sv(),
205
251
  "custom_function_value": sv(),
206
252
  "data": (sv(), sv())}
207
253
  new_object["name"].set(my_func["name"].get())
208
- new_object["of"].set(my_func["of"].get())
254
+ new_object["objective_function"].set(my_func["objective_function"].get())
209
255
  new_object["weight"].set(my_func["weight"].get())
210
256
  new_object["data"][0].set(my_func["data"][0].get())
211
257
  new_object["data"][1].set(my_func["data"][1].get())
@@ -213,7 +259,7 @@ class OptionManager():
213
259
  new_object["custom_function_goal"].set(my_func["custom_function_goal"].get())
214
260
  new_object["custom_function_value"].set(my_func["custom_function_value"].get())
215
261
 
216
- self.steps[step_index]["objfunc"].append(new_object)
262
+ self._data[self._mode_sv.get()]["steps"][step_index]["objective_functions"].append(new_object)
217
263
 
218
264
  def add_bound(self, step_index,
219
265
  name="name",
@@ -225,7 +271,8 @@ class OptionManager():
225
271
  calibration_strategy="none"):
226
272
  obj = {
227
273
  "name": sv(),
228
- "bounds": (sv(), sv()),
274
+ "min_bound": sv(),
275
+ "max_bound": sv(),
229
276
  "default_value": sv(),
230
277
  "optimal_value": sv(),
231
278
  "type": sv(),
@@ -236,146 +283,105 @@ class OptionManager():
236
283
  obj["default_value"].set(default_value)
237
284
  obj["optimal_value"].set(optimal_value)
238
285
  obj["calibration_strategy"].set(calibration_strategy)
239
- obj["bounds"][0].set(min)
240
- obj["bounds"][1].set(max)
241
- self.steps[step_index]["param"].append(obj)
286
+ obj["min_bound"].set(min)
287
+ obj["max_bound"].set(max)
288
+ self._data[self._mode_sv.get()]["steps"][step_index]["parameter_objects"].append(obj)
242
289
 
243
290
  def remove_bound(self, step_index, index):
244
- self.steps[step_index]["param"].pop(index)
291
+ self._data[self._mode_sv.get()]["steps"][step_index]["parameter_objects"].pop(index)
245
292
 
246
293
  def add_override(self, step_index, name, value):
247
294
  obj = {"name": sv(), "value": sv()}
248
295
  obj["name"].set(name)
249
296
  obj["value"].set(value)
250
- self.steps[step_index]["overrideparam"].append(obj)
297
+ self._data[self._mode_sv.get()]["steps"][step_index]["override_parameter"].append(obj)
251
298
 
252
299
  def remove_override(self, step_index, index):
253
- self.steps[step_index]["overrideparam"].pop(index)
300
+ self._data[self._mode_sv.get()]["steps"][step_index]["override_parameter"].pop(index)
254
301
 
255
302
  def get_override(self, step_index):
256
- return self.steps[step_index]["overrideparam"]
257
-
258
- def add_argument(self, key, value):
259
- obj = {"name": sv(), "value": sv()}
260
- obj["name"].set(key)
261
- obj["value"].set(value)
262
- self.arguments["param"].append(obj)
263
-
264
- def add_calibration_param(self, key, value):
265
- obj = {"name": sv(), "value": sv()}
266
- obj["name"].set(key)
267
- obj["value"].set(value)
268
- self.arguments["calibration_parameters"].append(obj)
269
-
270
- def add_service_param(self, key, value):
271
- obj = {"name": sv(), "value": sv()}
272
- obj["name"].set(key)
273
- obj["value"].set(value)
274
- self.arguments["service_parameters"].append(obj)
275
-
276
- def add_figure_param(self, key, value):
277
- obj = {"name": sv(), "value": sv()}
278
- obj["name"].set(key)
279
- obj["value"].set(value)
280
- self.arguments["figure_parameters"].append(obj)
281
-
282
- def add_sensitivity_param(self, key, value):
283
- obj = {"name": sv(), "value": sv()}
284
- obj["name"].set(key)
285
- obj["value"].set(value)
286
- self.arguments["sensitivity_parameters"].append(obj)
303
+ return self._data[self._mode_sv.get()]["steps"][step_index]["override_parameter"]
287
304
 
288
- def add_sensitivity_positiveBestMetrics(self, key, value):
289
- obj = {"name": sv(), "value": sv()}
305
+ def add_key_value(self, list_name, key, value, type="string", destination="calibration_parameters"):
306
+ obj = {"name": sv(), "value": sv(), "type": sv(), "destination": sv()}
290
307
  obj["name"].set(key)
291
308
  obj["value"].set(value)
292
- self.arguments["sensitivity_positiveBestMetrics"].append(obj)
309
+ obj["type"].set(type)
310
+ obj["destination"].set(destination)
311
+ self._data[self._mode_sv.get()][list_name].append(obj)
293
312
 
294
- def add_sensitivity_negativeBestMetrics(self, key, value):
295
- obj = {"name": sv(), "value": sv()}
296
- obj["name"].set(key)
297
- obj["value"].set(value)
298
- self.arguments["sensitivity_negativeBestMetrics"].append(obj)
299
-
300
- def move_argument_up(self, index):
301
- if index > 0:
302
- self.arguments["param"][index], self.arguments["param"][index - 1] = self.arguments["param"][index - 1], self.arguments["param"][index]
303
-
304
- def move_argument_down(self, index):
305
- if index < len(self.arguments["param"]) - 1:
306
- self.arguments["param"][index], self.arguments["param"][index + 1] = self.arguments["param"][index + 1], self.arguments["param"][index]
313
+ def remove_key_value(self, list_name, index):
314
+ self._data[self._mode_sv.get()][list_name].pop(index)
307
315
 
308
316
  def move_step_up(self, index):
309
317
  if index > 0:
310
- self.steps[index], self.steps[index - 1] = self.steps[index - 1], self.steps[index]
318
+ self._data[self._mode_sv.get()]["steps"][index], self._data[self._mode_sv.get()]["steps"][index - 1] = self._data[self._mode_sv.get()]["steps"][index - 1], self._data[self._mode_sv.get()]["steps"][index]
311
319
 
312
320
  def move_step_down(self, index):
313
- if index < len(self.steps) - 1:
314
- self.steps[index], self.steps[index + 1] = self.steps[index + 1], self.steps[index]
321
+ if index < len(self._data[self._mode_sv.get()]["steps"]) - 1:
322
+ self._data[self._mode_sv.get()]["steps"][index], self._data[self._mode_sv.get()]["steps"][index + 1] = self._data[self._mode_sv.get()]["steps"][index + 1], self._data[self._mode_sv.get()]["steps"][index]
315
323
 
316
324
  def toggle_step_open(self, index):
317
- self.steps[index]["open"] = not self.steps[index]["open"]
318
-
319
- def remove_argument(self, index):
320
- self.arguments["param"].pop(index)
321
-
322
- def remove_calibration_parameter(self, index):
323
- self.arguments["calibration_parameters"].pop(index)
324
-
325
- def remove_service_parameter(self, index):
326
- self.arguments["service_parameters"].pop(index)
327
-
328
- def remove_figure_parameter(self, index):
329
- self.arguments["figure_parameters"].pop(index)
330
-
331
- def remove_sensitivity_parameter(self, index):
332
- self.arguments["sensitivity_parameters"].pop(index)
325
+ self._data[self._mode_sv.get()]["steps"][index]["open"] = not self._data[self._mode_sv.get()]["steps"][index]["open"]
333
326
 
334
- def remove_sensitivity_positiveBestMetrics(self, index):
335
- self.arguments["sensitivity_positiveBestMetrics"].pop(index)
336
-
337
- def remove_sensitivity_negativeBestMetrics(self, index):
338
- self.arguments["sensitivity_negativeBestMetrics"].pop(index)
339
-
340
327
  def remove_step(self, index):
341
- self.steps.pop(index)
328
+ self._data[self._mode_sv.get()][self._mode_sv.get()]["steps"].pop(index)
342
329
 
343
330
  def get_project_data(self):
344
- return self.project_data
331
+ return self._project_data
345
332
 
346
333
  def set_path(self, filename):
347
334
  file_name = filename.split("/")[-1].replace(".json", "")
348
335
  path = filename.replace(file_name + ".json", "")
349
- self.project_data["path"] = path
350
- self.project_data["name"] = file_name
336
+ self._project_data["path"] = path
337
+ self._project_data["name"] = file_name
351
338
 
352
- def get_arguments(self):
353
- return self.arguments
339
+ def get_data(self):
340
+ return self._data[self._mode_sv.get()]
354
341
 
355
342
  def get_steps(self):
356
- return self.steps
343
+ return self._data[self._mode_sv.get()]["steps"]
344
+
345
+ def get_mode(self):
346
+ return self._mode_sv.get()
347
+
348
+ def get_mode_sv(self):
349
+ return self._mode_sv
350
+
351
+ def get_service_modes(self):
352
+ return self._service_modes
353
+
354
+ def get_list(self, list_name):
355
+ return self._data[self._mode_sv.get()][list_name]
356
+
357
+ def get(self, key):
358
+ return self._data[self._mode_sv.get()][key]
359
+
360
+ def set_data(self, key, value):
361
+ self._data[self._mode_sv.get()][key] = value
362
+
363
+ def set_var(self, key, value):
364
+ self._data[self._mode_sv.get()][key].set(value)
357
365
 
358
366
  def get_all_as_json(self):
359
- obj = {"arguments": self.arguments, "steps": self.steps}
367
+ obj = {"arguments": self._data, "steps": self._data[self._mode_sv.get()]["steps"]}
360
368
  return obj
361
369
 
362
- def set_service_parameters(self, service_parameters):
363
- self.service_parameters = service_parameters
364
-
365
- def get_service_parameters(self):
366
- return self.service_parameters
370
+ def get_project_folder(self):
371
+ return os.path.join(self._project_data['path'], self._project_data['name'])
367
372
 
373
+ """
368
374
  def get_metrics(self):
369
375
 
370
- self.arguments["url"].set(self.arguments["urls"][self.arguments["mode"].get()].get())
376
+ self._data["url"].set(self._data["urls"][self._data["mode"].get()].get())
371
377
 
372
378
  result = {}
373
379
  result['arguments'] = {}
374
- result['calibration_parameters'] = []
380
+ result['hyperparameters'] = []
375
381
  result['service_parameters'] = []
376
382
  result['service_parameters'] = {}
377
- result['project_data'] = self.project_data
378
- for key, value in self.arguments.items():
383
+ result['project_data'] = self._project_data
384
+ for key, value in self._data.items():
379
385
  if key == 'url' or key == 'mode':
380
386
  result['arguments'][key] = value.get()
381
387
  elif key == 'files':
@@ -386,16 +392,16 @@ class OptionManager():
386
392
  result['arguments'][key] = []
387
393
  for obj in value:
388
394
  result['arguments'][key].append({'name': obj['name'].get(), 'value': obj['value'].get()})
389
- elif key == "calibration_parameters":
390
- #result['calibration_parameters'][key] = []
395
+ elif key == "hyperparameters":
396
+ #result['hyperparameters'][key] = []
391
397
  for obj in value:
392
- result['calibration_parameters'].append({'name': obj['name'].get(), 'value': obj['value'].get()})
398
+ result['hyperparameters'].append({'name': obj['name'].get(), 'value': obj['value'].get()})
393
399
  elif key == "service_parameters":
394
400
  #result['service_parameters'][key] = []
395
401
  for obj in value:
396
402
  result['service_parameters'].append({'name': obj['name'].get(), 'value': obj['value'].get()})
397
403
  result['steps'] = []
398
- for step in self.steps:
404
+ for step in self._data[self._mode_sv.get()]["steps"]:
399
405
  step_result = {}
400
406
  #step_result['name'] = step['name'].get()
401
407
  #step_result['open'] = step['open']
@@ -427,16 +433,9 @@ class OptionManager():
427
433
  'calibration_strategy': param['calibration_strategy'].get()
428
434
  }
429
435
  )
430
- #except ValueError:
431
- # step_result['param'].append(
432
- # {
433
- # 'name': param['name'].get(),
434
- # 'bounds': (param['bounds'][0].get(),
435
- # param['bounds'][1].get())
436
- # }
437
- # )
438
436
  step_result['objfunc'] = []
439
437
  for objfunc in step['objfunc']:
440
438
  step_result['objfunc'].append({'name': objfunc['name'].get(), 'of': objfunc['of'].get(), 'weight': float(objfunc['weight'].get()), 'data': (objfunc['data'][0].get(), objfunc['data'][1].get())})
441
439
  result['steps'].append(step_result)
442
440
  return result
441
+ """