mg-pso-gui 0.1.82__tar.gz → 0.1.84__tar.gz
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.
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/PKG-INFO +1 -1
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mg_pso_gui.egg-info/PKG-INFO +1 -1
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/HomePage.py +1 -1
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/OptionManager.py +6 -1
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/SetupTab/StepView.py +18 -6
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/VisualizeTab/SideBar.py +7 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/util/recosu/pso/pso.py +2 -2
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/setup.py +1 -1
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mg_pso_gui.egg-info/SOURCES.txt +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mg_pso_gui.egg-info/dependency_links.txt +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mg_pso_gui.egg-info/entry_points.txt +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mg_pso_gui.egg-info/requires.txt +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mg_pso_gui.egg-info/top_level.txt +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/__init__.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/PlatformTab/PlatformTab.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/PlatformTab/__init__.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/RunTab/RunTab.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/RunTab/__init__.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/SetupTab/BoundsEditorWindow.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/SetupTab/BoundsList.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/SetupTab/CalibrationParametersView.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/SetupTab/FunctionsList.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/SetupTab/ListParametersView.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/SetupTab/OptimalParameterView.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/SetupTab/SetupTab.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/SetupTab/StaticParameterView.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/SetupTab/__init__.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/VisualizeTab/VisualizeTab.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/VisualizeTab/__init__.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/__init__.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/images/IGOW 4 Logo.png +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/images/collapse.png +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/images/down.png +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/images/expand.png +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/images/play.png +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/images/refresh.png +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/images/refresh_hd.png +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/images/stop.png +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/images/test.png +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/images/trash.png +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/gui/images/up.png +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/mgpsogui.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/start.yaml +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/util/CTkToolTip/__init__.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/util/CTkToolTip/ctk_tooltip.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/util/GraphGenerator.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/util/PSORunner.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/util/__init__.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/util/recosu/__init__.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/util/recosu/pso/__init__.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/util/recosu/pso/csip_access.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/util/recosu/utils/__init__.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/util/recosu/utils/plot/__init__.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/util/recosu/utils/plot/cost_steps.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/util/recosu/utils/trace_writer.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/mgpsogui/util/recosu/utils/utils.py +0 -0
- {mg-pso-gui-0.1.82 → mg-pso-gui-0.1.84}/setup.cfg +0 -0
|
@@ -174,7 +174,7 @@ class App(customtkinter.CTk):
|
|
|
174
174
|
self.footer_progress_bar.grid(row=0, column=4, padx=(50, 100), pady=header_padding_y, sticky="ew")
|
|
175
175
|
self.footer_progress_bar.set(0)
|
|
176
176
|
|
|
177
|
-
self.algorithm_optionmenu = customtkinter.CTkOptionMenu(self.footer_frame, values=["PSO", "Halton"], width=50)
|
|
177
|
+
self.algorithm_optionmenu = customtkinter.CTkOptionMenu(self.footer_frame, textvariable=self.option_manager.get_arguments()['mode'], values=["PSO", "Halton"], width=50)
|
|
178
178
|
self.algorithm_optionmenu.grid(row=0, column=6, padx=header_padding_x, pady=header_padding_y)
|
|
179
179
|
self.algorithm_optionmenu.set("PSO")
|
|
180
180
|
|
|
@@ -11,6 +11,7 @@ class OptionManager():
|
|
|
11
11
|
self.project_data = {"name": "", "path": ""}
|
|
12
12
|
self.arguments = {"param": [],
|
|
13
13
|
"url": sv(),
|
|
14
|
+
"mode": sv(),
|
|
14
15
|
"files": {},
|
|
15
16
|
"calibration_parameters": []}
|
|
16
17
|
self.steps = []
|
|
@@ -19,6 +20,7 @@ class OptionManager():
|
|
|
19
20
|
def clear(self):
|
|
20
21
|
self.arguments['param'].clear()
|
|
21
22
|
self.arguments['url'].set("")
|
|
23
|
+
self.arguments['mode'].set("PSO")
|
|
22
24
|
self.arguments['files'] = {}
|
|
23
25
|
self.arguments['calibration_parameters'].clear()
|
|
24
26
|
self.steps = []
|
|
@@ -29,6 +31,9 @@ class OptionManager():
|
|
|
29
31
|
if ("url" in arguments):
|
|
30
32
|
self.arguments["url"].set(arguments["url"])
|
|
31
33
|
|
|
34
|
+
if ("mode" in arguments):
|
|
35
|
+
self.arguments["mode"].set(arguments["mode"])
|
|
36
|
+
|
|
32
37
|
if ("files" in arguments):
|
|
33
38
|
for file in arguments["files"]:
|
|
34
39
|
name = file["name"]
|
|
@@ -240,7 +245,7 @@ class OptionManager():
|
|
|
240
245
|
result['service_parameters'] = {}
|
|
241
246
|
result['project_data'] = self.project_data
|
|
242
247
|
for key, value in self.arguments.items():
|
|
243
|
-
if key == 'url':
|
|
248
|
+
if key == 'url' or key == 'mode':
|
|
244
249
|
result['arguments'][key] = value.get()
|
|
245
250
|
elif key == 'files':
|
|
246
251
|
result['arguments'][key] = {}
|
|
@@ -64,8 +64,16 @@ class StepView(CTkScrollableFrame):
|
|
|
64
64
|
self.containerFrame.grid_columnconfigure((0, 1), weight=1)
|
|
65
65
|
|
|
66
66
|
self.steps = self.option_manager.get_steps()
|
|
67
|
+
self.mode = self.option_manager.get_arguments()['mode'].get()
|
|
68
|
+
|
|
69
|
+
tempSteps = self.steps
|
|
70
|
+
if self.mode == "Halton":
|
|
71
|
+
# Collapse all steps
|
|
72
|
+
tempSteps = []
|
|
73
|
+
if len(self.steps) > 0:
|
|
74
|
+
tempSteps.append(self.steps[0])
|
|
67
75
|
|
|
68
|
-
for step in
|
|
76
|
+
for step in tempSteps:
|
|
69
77
|
|
|
70
78
|
up_image = CTkImage(Image.open(os.path.join("./images", "up.png")), size=(20, 20))
|
|
71
79
|
down_image = CTkImage(Image.open(os.path.join("./images", "down.png")), size=(20, 20))
|
|
@@ -89,9 +97,11 @@ class StepView(CTkScrollableFrame):
|
|
|
89
97
|
CTkEntry(self.containerFrame, textvariable=step['name'], width=500).grid(row=row, column=0, padx=(20, 20), pady=(20, 20), sticky="nsw")
|
|
90
98
|
#CTkLabel(self.containerFrame, textvariable=step['message']).grid(row=row, column=1, padx=(20, 20), pady=(20, 20), sticky="nsew")
|
|
91
99
|
CTkButton(button_container, width=30, text=None, image=expand_image if not step['open'] else collapse_image, command=expand_func).grid(row=0, column=0, padx=(10, 10), pady=(10, 10), sticky="nsew")
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
100
|
+
|
|
101
|
+
if (self.mode == "PSO"):
|
|
102
|
+
CTkButton(button_container, width=30, text=None, image=up_image, state="disabled" if index==0 else "normal", fg_color="gray" if index==0 else None, command=up_func).grid(row=0, column=1, padx=(10, 10), pady=(10, 10), sticky="nsew")
|
|
103
|
+
CTkButton(button_container, width=30, text=None, image=down_image, state="disabled" if index==(len(self.steps)-1) else "normal", fg_color="gray" if index==(len(self.steps)-1) else None, command=down_func).grid(row=0, column=2, padx=(10, 10), pady=(10, 10), sticky="nsew")
|
|
104
|
+
CTkButton(button_container, width=30, text=None, image=trash_image, command=remove_func).grid(row=0, column=3, padx=(10, 10), pady=(10, 10), sticky="nsew")
|
|
95
105
|
|
|
96
106
|
row += 1
|
|
97
107
|
|
|
@@ -114,5 +124,7 @@ class StepView(CTkScrollableFrame):
|
|
|
114
124
|
index += 1
|
|
115
125
|
|
|
116
126
|
# Create an "Add step button that is centered
|
|
117
|
-
|
|
118
|
-
|
|
127
|
+
|
|
128
|
+
if (self.mode == "PSO" or len(self.steps) == 0):
|
|
129
|
+
CTkButton(self.containerFrame, text="Add Group", command=self.create_new_step).grid(
|
|
130
|
+
row=row, columnspan=2, column=0, padx=(10, 10), pady=(10, 10), sticky="ew")
|
|
@@ -210,6 +210,13 @@ class SideBar(CTkScrollableFrame):
|
|
|
210
210
|
with open(file_path, "r") as file:
|
|
211
211
|
lines = file.readlines()
|
|
212
212
|
|
|
213
|
+
if (not lines[0].startswith("@")):
|
|
214
|
+
return {
|
|
215
|
+
"file_attributes": {},
|
|
216
|
+
"data_attributes": {},
|
|
217
|
+
"data": pd.read_csv(file_path)
|
|
218
|
+
}
|
|
219
|
+
|
|
213
220
|
for line in lines:
|
|
214
221
|
if (line.startswith("@H,")):
|
|
215
222
|
mode = "data_metadata"
|
|
@@ -168,7 +168,7 @@ def global_best(steps: Dict, rounds: Tuple, args: Dict, n_particles: int, iters:
|
|
|
168
168
|
step_trace['min_rounds'] = min_rounds
|
|
169
169
|
step_trace['max_rounds'] = max_rounds
|
|
170
170
|
step_trace['iters'] = iters
|
|
171
|
-
step_trace['ftol'] = ftol
|
|
171
|
+
#step_trace['ftol'] = ftol BUG DOES NOT HANDLE -INF
|
|
172
172
|
step_trace['ftol_iter'] = ftol_iter
|
|
173
173
|
step_trace['rtol'] = rtol
|
|
174
174
|
step_trace['rtol_iter'] = rtol_iter
|
|
@@ -176,7 +176,7 @@ def global_best(steps: Dict, rounds: Tuple, args: Dict, n_particles: int, iters:
|
|
|
176
176
|
step_trace['n_particles'] = n_particles
|
|
177
177
|
step_trace['n_steps'] = len(steps)
|
|
178
178
|
step_trace['steps'] = copy.deepcopy(steps)
|
|
179
|
-
step_trace['args'] = args
|
|
179
|
+
#step_trace['args'] = args BUG MUST BE REMOVED
|
|
180
180
|
|
|
181
181
|
if step_file is not None:
|
|
182
182
|
with open(step_file, "w") as fo:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|