# ---
# jupyter:
#   jupytext:
#     text_representation:
#       extension: .py
#       format_name: light
#       format_version: '1.5'
#       jupytext_version: 1.14.4
#   kernelspec:
#     display_name: Python 3
#     language: python
#     name: python3
# ---

from matopt_review.BOtest  import BOtest
import numpy as np

#Run a single randomly initialized optimization of Foncesa using PA
minmax_pareto_solutions = [[0.001,0.981], [0.001,0.981]]
random_goal = [np.random.uniform(d[0], d[1]) for d in minmax_pareto_solutions]
bo = BOtest(funcname="MulFonseca")
bo.run_BO("Recsat", 
          max_iter=10,# Number of Bayesian optimization steps (200 in the paper). 
          sampling=1, 
          goals=random_goal,
          exact_feval=True,
          )
Y_results = np.concatenate(bo.bowrap.bo_org.y_mult, axis=0)
X_results = bo.bowrap.bo_org.X

#Run a single randomly initialized optimization of Kursawe using PA
minmax_pareto_solutions = [[-19.9,-13.0], [-10.7,0.09]]
random_goal = [np.random.uniform(d[0], d[1]) for d in minmax_pareto_solutions]
bo = BOtest(funcname="MulKursawe")
bo.run_BO("Recsat", 
          max_iter=10,# Number of Bayesian optimization steps (200 in the paper).
          sampling=1, 
          goals=random_goal,
          exact_feval=True,
          )
Y_results = np.concatenate(bo.bowrap.bo_org.y_mult, axis=0)
X_results = bo.bowrap.bo_org.X

#Run a single randomly initialized optimization of Viennet using PA
minmax_pareto_solutions = [[0.0,67.6],[15.0,17.0],[-0.10,0.183]]
random_goal = [np.random.uniform(d[0], d[1]) for d in minmax_pareto_solutions]
bo = BOtest(funcname="MulViennet")
bo.run_BO("Recsat", 
          max_iter=10,# Number of Bayesian optimization steps (200 in the paper).
          sampling=1, 
          goals=random_goal,
          exact_feval=True,
          )
Y_results = np.concatenate(bo.bowrap.bo_org.y_mult, axis=0)
X_results = bo.bowrap.bo_org.X

#Run a single randomly initialized optimization of ZDT1 using PA
minmax_pareto_solutions = [[0.000,1.000],[0.00,1.01]]
random_goal = [np.random.uniform(d[0], d[1]) for d in minmax_pareto_solutions]
bo = BOtest(funcname="MulZDT1")
bo.run_BO("Recsat", 
          max_iter=10,# Number of Bayesian optimization steps (200 in the paper).
          sampling=1, 
          goals=random_goal,
          exact_feval=True,
          )
Y_results = np.concatenate(bo.bowrap.bo_org.y_mult, axis=0)
X_results = bo.bowrap.bo_org.X

#Run a single randomly initialized optimization of ZDT2 using PA
minmax_pareto_solutions = [[0.000,1.000],[0.00,1.00]]
random_goal = [np.random.uniform(d[0], d[1]) for d in minmax_pareto_solutions]
bo = BOtest(funcname="MulZDT2")
bo.run_BO("Recsat", 
          max_iter=10,# Number of Bayesian optimization steps (200 in the paper).
          sampling=1, 
          goals=random_goal,
          exact_feval=True,
          )
Y_results = np.concatenate(bo.bowrap.bo_org.y_mult, axis=0)
X_results = bo.bowrap.bo_org.X

#Run a single randomly initialized optimization of ZDT3 using PA
minmax_pareto_solutions = [[0.000,0.853], [-0.77,1.00]]
random_goal = [np.random.uniform(d[0], d[1]) for d in minmax_pareto_solutions]
bo = BOtest(funcname="MulZDT3")
bo.run_BO("Recsat", 
          max_iter=10,# Number of Bayesian optimization steps (200 in the paper).
          sampling=1, 
          goals=random_goal,
          exact_feval=True,
          )
Y_results = np.concatenate(bo.bowrap.bo_org.y_mult, axis=0)
X_results = bo.bowrap.bo_org.X

StarcoderdataJupyterScriptsDedupFiltered