mg-pso-gui 0.2.125__tar.gz → 0.2.127__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.2.125 → mg_pso_gui-0.2.127}/PKG-INFO +1 -1
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mg_pso_gui.egg-info/PKG-INFO +1 -1
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mg_pso_gui.egg-info/SOURCES.txt +3 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/HomePage.py +5 -5
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/SetupTab/ListParametersView.py +1 -1
- mg_pso_gui-0.2.127/mgpsogui/util/recosu/pso/csip_access.py +75 -0
- mg_pso_gui-0.2.127/mgpsogui/util/recosu/pso/pso modified.py +585 -0
- mg_pso_gui-0.2.127/mgpsogui/util/recosu/pso/pso.py +383 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/setup.py +1 -1
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mg_pso_gui.egg-info/dependency_links.txt +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mg_pso_gui.egg-info/entry_points.txt +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mg_pso_gui.egg-info/requires.txt +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mg_pso_gui.egg-info/top_level.txt +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/General/NoticeWindow.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/General/ParameterView.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/General/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/OptionManager.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/OptionManager_backup.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/PlatformTab/PlatformTab.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/PlatformTab/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/RunTab/OptimalParameterView.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/RunTab/RunTab.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/RunTab/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/SetupTab/BoundsEditorWindow.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/SetupTab/BoundsList.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/SetupTab/CustomFunctionEditorWindow.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/SetupTab/CustomFunctionMetrics.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/SetupTab/FunctionsList.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/SetupTab/ListEditor.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/SetupTab/OverrideParameterMetrics.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/SetupTab/OverrideParameterWindow.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/SetupTab/SamplingListView.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/SetupTab/SamplingNameListWindow.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/SetupTab/SetupTab.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/SetupTab/StepView.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/SetupTab/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/VisualizeTab/MatrixEditor.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/VisualizeTab/SideBar.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/VisualizeTab/VisualizeTab.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/VisualizeTab/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/defaults/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/defaults/optimization.json +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/defaults/sampling.json +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/defaults/sensitivity.json +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/images/collapse.png +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/images/down.png +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/images/expand.png +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/images/play.png +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/images/plus.png +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/images/refresh.png +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/images/refresh_hd.png +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/images/stop.png +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/images/test.png +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/images/trash.png +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/images/up.png +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/gui/messages/welcome.txt +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/mgpsogui.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/start.yaml +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/CTkToolTip/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/CTkToolTip/ctk_tooltip.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/GraphGenerator.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/PSORunner.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/debug.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/helpers.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/pso/__init__.py +0 -0
- /mg_pso_gui-0.2.125/mgpsogui/util/recosu/pso/csip_access.py → /mg_pso_gui-0.2.127/mgpsogui/util/recosu/pso/csip_access_new.py +0 -0
- /mg_pso_gui-0.2.125/mgpsogui/util/recosu/pso/pso.py → /mg_pso_gui-0.2.127/mgpsogui/util/recosu/pso/pso_new.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/sampling/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/sampling/halton/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/sampling/halton/halton.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/sampling/halton/prime.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/sampling/random/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/sampling/random/random_sampler.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/sampling/sample_trace_writer.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/sampling/sampler_task.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/sampling/sampling.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/utils/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/utils/plot/__init__.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/utils/plot/cost_steps.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/utils/trace_writer.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/recosu/utils/utils.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/mgpsogui/util/sampler_test_driver.py +0 -0
- {mg_pso_gui-0.2.125 → mg_pso_gui-0.2.127}/setup.cfg +0 -0
@@ -65,7 +65,10 @@ mgpsogui/util/CTkToolTip/ctk_tooltip.py
|
|
65
65
|
mgpsogui/util/recosu/__init__.py
|
66
66
|
mgpsogui/util/recosu/pso/__init__.py
|
67
67
|
mgpsogui/util/recosu/pso/csip_access.py
|
68
|
+
mgpsogui/util/recosu/pso/csip_access_new.py
|
69
|
+
mgpsogui/util/recosu/pso/pso modified.py
|
68
70
|
mgpsogui/util/recosu/pso/pso.py
|
71
|
+
mgpsogui/util/recosu/pso/pso_new.py
|
69
72
|
mgpsogui/util/recosu/sampling/__init__.py
|
70
73
|
mgpsogui/util/recosu/sampling/sample_trace_writer.py
|
71
74
|
mgpsogui/util/recosu/sampling/sampler_task.py
|
@@ -145,7 +145,7 @@ class App(customtkinter.CTk):
|
|
145
145
|
self.sidebar_frame.grid_columnconfigure(4, weight=1)
|
146
146
|
self.logo_label = customtkinter.CTkLabel(self.sidebar_frame, text="COSU Manager (" + version + ")", font=customtkinter.CTkFont(size=20, weight="bold"))
|
147
147
|
self.logo_label.grid(row=0, column=0, padx=(20, 10), pady=header_padding_y)
|
148
|
-
self.save_button = customtkinter.CTkButton(self.sidebar_frame, text="Save", width=60, command=self.save_project)
|
148
|
+
self.save_button = customtkinter.CTkButton(self.sidebar_frame, text="Save As", width=60, command=self.save_project)
|
149
149
|
self.save_button.grid(row=0, column=1, padx=header_padding_x, pady=header_padding_y)
|
150
150
|
self.load_button = customtkinter.CTkButton(self.sidebar_frame, text="Load", width=60, command=self.load_project)
|
151
151
|
self.load_button.grid(row=0, column=2, padx=header_padding_x, pady=header_padding_y)
|
@@ -258,11 +258,11 @@ class App(customtkinter.CTk):
|
|
258
258
|
os.makedirs(os.path.join(folder, "results"))
|
259
259
|
|
260
260
|
self.save_button.configure(text="Saved!")
|
261
|
-
self.after(3000, lambda: self.save_button.configure(text="Save"))
|
261
|
+
self.after(3000, lambda: self.save_button.configure(text="Save As"))
|
262
262
|
except Exception as e:
|
263
263
|
self.save_button.configure(text="Error!")
|
264
264
|
print(e)
|
265
|
-
self.after(3000, lambda: self.save_button.configure(text="Save"))
|
265
|
+
self.after(3000, lambda: self.save_button.configure(text="Save As"))
|
266
266
|
|
267
267
|
def auto_save_project(self):
|
268
268
|
data = self.option_manager.get_project_data()
|
@@ -281,8 +281,6 @@ class App(customtkinter.CTk):
|
|
281
281
|
if not os.path.exists(os.path.join(folder, "results")):
|
282
282
|
os.makedirs(os.path.join(folder, "results"))
|
283
283
|
|
284
|
-
self.save_button.configure(text="Saved!")
|
285
|
-
self.after(1000, lambda: self.save_button.configure(text="Save"))
|
286
284
|
except Exception as e:
|
287
285
|
self.save_button.configure(text="Error!")
|
288
286
|
print(e)
|
@@ -445,6 +443,8 @@ class App(customtkinter.CTk):
|
|
445
443
|
NW(title="Error", message="A process is already running!", x = 400, y = 200)
|
446
444
|
return 0
|
447
445
|
|
446
|
+
self.auto_save_project()
|
447
|
+
|
448
448
|
data = self.option_manager.get_all_data()
|
449
449
|
mode = self.option_manager.get_mode()
|
450
450
|
data = data[mode]
|
@@ -138,7 +138,7 @@ class ListParametersView(CTkScrollableFrame):
|
|
138
138
|
row += 1
|
139
139
|
|
140
140
|
CTkButton(self.containerFrame, text="Open", command=self.open_csv).grid(row=row, column=0, padx=(5, 5), pady=(5, 5), sticky="ew")
|
141
|
-
CTkButton(self.containerFrame, text="
|
141
|
+
CTkButton(self.containerFrame, text="Paste", command=self.import_csv).grid(row=row, column=1, padx=(5, 5), pady=(5, 5), sticky="ew")
|
142
142
|
row += 1
|
143
143
|
|
144
144
|
|
@@ -0,0 +1,75 @@
|
|
1
|
+
from cosu import utils
|
2
|
+
from csip import Client
|
3
|
+
from typing import List, Dict, Tuple
|
4
|
+
import queue, os
|
5
|
+
|
6
|
+
|
7
|
+
def csip_worker(reqq: queue.Queue, thread_no: int, stop, full_trace,
|
8
|
+
url, files, arg_params, conf: Dict, metainfo: Dict) -> None:
|
9
|
+
async_call = conf.get('async_call', True) # default is async
|
10
|
+
save_resp = conf.get('save_response_to', None) # save response, set it to a folder if responses should be saved.
|
11
|
+
|
12
|
+
while not stop():
|
13
|
+
|
14
|
+
try:
|
15
|
+
(rnd, step, iteration, particle, x, step_param_names, calib_params, objfunc, resq) = reqq.get(True, 0.5)
|
16
|
+
# print(thread_no, particle)
|
17
|
+
|
18
|
+
c = Client(metainfo=metainfo)
|
19
|
+
|
20
|
+
# static params (from args)
|
21
|
+
for param in arg_params:
|
22
|
+
c.add_data(param['name'], param['value'])
|
23
|
+
|
24
|
+
# particle params (generated from steps)
|
25
|
+
# for i, value in enumerate(x):
|
26
|
+
for idx, value in enumerate(x[particle, :]):
|
27
|
+
c.add_data(step_param_names[idx], value)
|
28
|
+
|
29
|
+
# other, previously calibrated params (other steps)
|
30
|
+
for name, value in calib_params.items():
|
31
|
+
c.add_data(name, value)
|
32
|
+
|
33
|
+
# objective function info
|
34
|
+
for of in objfunc:
|
35
|
+
c.add_cosu(of['name'], of['of'], of['data'])
|
36
|
+
# c.add_data(of['name'], (of['data'][0], of['data'][1]))
|
37
|
+
|
38
|
+
print('.', end='', flush=True)
|
39
|
+
|
40
|
+
try:
|
41
|
+
# print(c)
|
42
|
+
if async_call:
|
43
|
+
res = c.execute_async(url, files=files, conf=conf)
|
44
|
+
else:
|
45
|
+
res = c.execute(url, files=files, conf=conf)
|
46
|
+
|
47
|
+
if res.is_failed():
|
48
|
+
print(res)
|
49
|
+
|
50
|
+
if save_resp:
|
51
|
+
res.save_to(os.path.join(save_resp, 'r{}s{}i{}p{}.json'.format(rnd, step, iteration, particle)))
|
52
|
+
|
53
|
+
# print(res)
|
54
|
+
print('O', end='', flush=True)
|
55
|
+
|
56
|
+
cost = utils.calc_cost(res, objfunc)
|
57
|
+
|
58
|
+
if full_trace is not None:
|
59
|
+
all_params = {}
|
60
|
+
# for i, value in enumerate(x):
|
61
|
+
for idx, value in enumerate(x[particle, :]):
|
62
|
+
all_params[step_param_names[idx]] = value
|
63
|
+
|
64
|
+
for name, value in calib_params.items():
|
65
|
+
all_params[name] = value
|
66
|
+
full_trace.append((all_params, cost))
|
67
|
+
|
68
|
+
resq.put((particle, cost))
|
69
|
+
except Exception as e:
|
70
|
+
print(res)
|
71
|
+
print(e)
|
72
|
+
|
73
|
+
reqq.task_done()
|
74
|
+
except queue.Empty:
|
75
|
+
continue
|