Skip to content

Commit a1c3e04

Browse files
committed
Fix error due do variable name change
1 parent 7fd9048 commit a1c3e04

1 file changed

Lines changed: 5 additions & 6 deletions

File tree

src/popt/loop/optimize.py

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,6 @@ def __init__(self, **options):
9393

9494
# Initialize variables (set in subclasses)
9595
self.options = None
96-
self.mean_state = None
9796
self.obj_func_values = None
9897
self.obj_func_tol = None # objective tolerance limit
9998

@@ -147,7 +146,7 @@ def run_loop(self):
147146
epf_not_converged = True
148147
previous_state = None
149148
if self.epf:
150-
previous_state = self.mean_state
149+
previous_state = self.xk
151150
self.logger(
152151
f'─────> EPF-EnOpt: {self.epf_iteration}, {self.epf["r"]} (outer iteration, penalty factor)'
153152
) # print epf info
@@ -192,14 +191,14 @@ def run_loop(self):
192191
if self.epf_iteration > self.epf['max_epf_iter']: # max epf_iterations set to 10
193192
self.logger(f'─────> EPF-EnOpt: maximum epf iterations reached') # print epf info
194193
break
195-
p = np.abs(previous_state-self.mean_state) / (np.abs(previous_state) + 1.0e-9)
194+
p = np.abs(previous_state-self.xk) / (np.abs(previous_state) + 1.0e-9)
196195
conv_crit = self.epf['conv_crit']
197196
if np.any(p > conv_crit):
198197
epf_not_converged = True
199-
previous_state = self.mean_state
198+
previous_state = self.xk
200199
self.epf['r'] *= self.epf['r_factor'] # increase penalty factor
201200
self.obj_func_tol *= self.epf['tol_factor'] # decrease tolerance
202-
self.obj_func_values = self.fun(self.mean_state, **self.epf)
201+
self.obj_func_values = self.fun(self.xk, **self.epf)
203202
self.iteration = 0
204203
self.epf_iteration += 1
205204
optimize_result = ot.get_optimize_result(self)
@@ -210,7 +209,7 @@ def run_loop(self):
210209
self.logger(f'─────> EPF-EnOpt: {self.epf_iteration}, {r} (outer iteration, penalty factor)') # print epf info
211210
else:
212211
self.logger(f'─────> EPF-EnOpt: converged, no variables changed more than {conv_crit*100} %') # print epf info
213-
final_obj_no_penalty = str(round(float(self.fun(self.mean_state)),4))
212+
final_obj_no_penalty = str(round(float(self.fun(self.xk)),4))
214213
self.logger(f'─────> EPF-EnOpt: objective value without penalty = {final_obj_no_penalty}') # print epf info
215214
def save(self):
216215
"""

0 commit comments

Comments
 (0)