Example 7: Model Calibration — Bayesian Optimization

(GitHub link)

This notebook calibrates the virus-mac-new model against observed data using Bayesian Optimization (BO). BO fits a Gaussian Process surrogate to the parameter-to-QoI mapping and uses an acquisition function to decide which parameter set to simulate next — far more efficient than grid search for expensive models.

What you will learn:

  • How to configure bo.CalibrationContext with observed data, QoI functions, and a search space

  • How multi-objective BO works and what the Pareto front represents

  • How to read the Pareto front: each point is a parameter set that minimizes QoI discrepancy with no dominated alternative

  • How to visualize parameter–fitness relationships to assess identifiability

Ground truth (in-silico data from ex7_ObsData.csv):

  • mac_phag_rate_infected = 1.0

  • epi2infected_hfm = 0.4

import warnings
import matplotlib.pyplot as plt
warnings.filterwarnings('ignore', message='.*not p.d., added jitter.*')

from uq_physicell.bo import CalibrationContext, run_bayesian_optimization, analyze_pareto_results, plot_parameter_space, plot_qoi_param, plot_parameter_vs_fitness, get_observed_qoi
from uq_physicell.database.bo_db import load_structure

db_path = "ex7_Calib_BO.db"
obs_data_path = "ex7_ObsData.csv"
dic_real_value = {"mac_phag_rate_infected": 1.0, "epi2infected_hfm": 0.4}

model_config = {"ini_path": "uq_pc_struc.ini", "struc_name": "Model_struc_Calib"}

# df_cell → cell DataFrame (see ex1 for the full dispatch table)
qoi_functions = {
    "epi_":         lambda df_cell: len(df_cell[df_cell['cell_type'] == 'epithelial']),
    "epi_infected": lambda df_cell: len(df_cell[df_cell['cell_type'] == 'epithelial_infected']),
}

obs_data_columns = {
    "time":         "Time",
    "epi_":         "Healthy Epithelial Cells",
    "epi_infected": "Infected Epithelial Cells",
}

search_space = {
    "mac_phag_rate_infected": {"type": "real", "lower_bound": 0.7, "upper_bound": 1.5},
    "epi2infected_hfm":       {"type": "real", "lower_bound": 0.1, "upper_bound": 0.5},
}

bo_options = {
    "num_initial_samples": 10,  # initial random evaluations before GP fitting starts
    "num_iterations": 30,       # BO iterations after initial samples
    "max_workers": 10,
}

Create context and run Bayesian Optimization

# Create the calibration context
calib_context = CalibrationContext(
    db_path=db_path,
    obsData=obs_data_path,
    obsData_columns=obs_data_columns,
    model_config=model_config,
    qoi_functions=qoi_functions,
    search_space=search_space,
    bo_options=bo_options,
)
# Run the Bayesian Optimization calibration
run_bayesian_optimization(calib_context)
2026-02-18 12:21:23,447 - INFO - 📊 Estimating weights from observational data ranges:
  📈 epi_ - weight: 4.44e-04 (range=2.50e+02)
  📈 epi_infected - weight: 1.19e-04 (range=9.36e+02)

2026-02-18 12:21:23,447 - INFO - 🔧 CalibrationContext initialized with 10 max workers, 5 inner workers, and 2 outer workers.
2026-02-18 12:21:23,447 - INFO - 🆕 Starting fresh optimization with database: ex7_Calib_BO.db
2026-02-18 12:21:23,452 - INFO - 🎲 Generating 10 initial samples...
2026-02-18 12:28:19,477 - INFO - 🔬 Detected multiple QoIs - using multi-objective Bayesian optimization loop.
2026-02-18 12:28:19,478 - INFO - ============================================================
2026-02-18 12:28:19,478 - INFO - 🔄 Multi-Objective BO Iteration 1/30
2026-02-18 12:28:19,479 - INFO - ============================================================
2026-02-18 12:28:19,479 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:28:19,921 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:28:20,221 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:28:20,222 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.5, 'epi2infected_hfm': 0.5}
2026-02-18 12:28:52,727 - INFO - 	 Results for Sample ID 10: Objectives = {'epi_': np.float64(6.904451696603849e-22), 'epi_infected': np.float64(9.51323044221627e-41)}, Noise Std = {'epi_': np.float64(1.3808845488099218e-21), 'epi_infected': np.float64(1.9026460751201044e-40)}
2026-02-18 12:28:52,732 - INFO - 📊 Iteration 1 Sample(s) [10] : Hypervolume = 3.3318883059853214e-07
2026-02-18 12:28:52,732 - INFO - ✅ Completed iteration 1/30 - Total samples: 11
2026-02-18 12:28:52,732 - INFO - 🎯 Best fitness values:
2026-02-18 12:28:52,733 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:28:52,733 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:28:52,733 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:28:52,734 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:28:52,734 - INFO - ============================================================
2026-02-18 12:28:52,734 - INFO - 🔄 Multi-Objective BO Iteration 2/30
2026-02-18 12:28:52,734 - INFO - ============================================================
2026-02-18 12:28:52,734 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:28:52,766 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:28:53,067 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:28:53,068 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 0.7, 'epi2infected_hfm': 0.5}
2026-02-18 12:29:26,961 - INFO - 	 Results for Sample ID 11: Objectives = {'epi_': np.float64(2.801304338306533e-19), 'epi_infected': np.float64(1.888821579468422e-30)}, Noise Std = {'epi_': np.float64(3.393452973197422e-19), 'epi_infected': np.float64(2.1140782962970733e-30)}
2026-02-18 12:29:26,966 - INFO - 📊 Iteration 2 Sample(s) [11] : Hypervolume = 2.827772313037443e-07
2026-02-18 12:29:26,967 - INFO - ✅ Completed iteration 2/30 - Total samples: 12
2026-02-18 12:29:26,967 - INFO - 🎯 Best fitness values:
2026-02-18 12:29:26,967 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:29:26,967 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:29:26,968 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:29:26,968 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:29:26,968 - INFO - ============================================================
2026-02-18 12:29:26,968 - INFO - 🔄 Multi-Objective BO Iteration 3/30
2026-02-18 12:29:26,968 - INFO - ============================================================
2026-02-18 12:29:26,969 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:29:26,998 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:29:27,295 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:29:27,295 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 0.7, 'epi2infected_hfm': 0.1}
2026-02-18 12:30:43,621 - INFO - 	 Results for Sample ID 12: Objectives = {'epi_': np.float64(3.522708646794959e-26), 'epi_infected': np.float64(6.004458643581347e-74)}, Noise Std = {'epi_': np.float64(0.0), 'epi_infected': np.float64(1.2008916813613292e-73)}
2026-02-18 12:30:43,627 - INFO - 📊 Iteration 3 Sample(s) [12] : Hypervolume = 2.7539351069161347e-07
2026-02-18 12:30:43,627 - INFO - ✅ Completed iteration 3/30 - Total samples: 13
2026-02-18 12:30:43,627 - INFO - 🎯 Best fitness values:
2026-02-18 12:30:43,628 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:30:43,628 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:30:43,628 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:30:43,628 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:30:43,629 - INFO - ============================================================
2026-02-18 12:30:43,629 - INFO - 🔄 Multi-Objective BO Iteration 4/30
2026-02-18 12:30:43,629 - INFO - ============================================================
2026-02-18 12:30:43,629 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:30:43,661 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:30:44,010 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:30:44,010 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.5, 'epi2infected_hfm': 0.1}
2026-02-18 12:32:07,409 - INFO - 	 Results for Sample ID 13: Objectives = {'epi_': np.float64(3.522708646794959e-26), 'epi_infected': np.float64(2.146640432509137e-97)}, Noise Std = {'epi_': np.float64(0.0), 'epi_infected': np.float64(4.2932808644486864e-97)}
2026-02-18 12:32:07,414 - INFO - 📊 Iteration 4 Sample(s) [13] : Hypervolume = 2.543430155109e-07
2026-02-18 12:32:07,414 - INFO - ✅ Completed iteration 4/30 - Total samples: 14
2026-02-18 12:32:07,415 - INFO - 🎯 Best fitness values:
2026-02-18 12:32:07,415 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:32:07,415 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:32:07,416 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:32:07,416 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:32:07,416 - INFO - ============================================================
2026-02-18 12:32:07,416 - INFO - 🔄 Multi-Objective BO Iteration 5/30
2026-02-18 12:32:07,417 - INFO - ============================================================
2026-02-18 12:32:07,417 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:32:07,449 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:32:07,998 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:32:07,998 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 0.7, 'epi2infected_hfm': 0.5}
2026-02-18 12:32:41,466 - INFO - 	 Results for Sample ID 14: Objectives = {'epi_': np.float64(6.159261103291327e-16), 'epi_infected': np.float64(5.177666197383322e-25)}, Noise Std = {'epi_': np.float64(5.258524721271365e-16), 'epi_infected': np.float64(6.295747418606901e-25)}
2026-02-18 12:32:41,471 - INFO - 📊 Iteration 5 Sample(s) [14] : Hypervolume = 2.2023433760537272e-07
2026-02-18 12:32:41,472 - INFO - ✅ Completed iteration 5/30 - Total samples: 15
2026-02-18 12:32:41,472 - INFO - 🎯 Best fitness values:
2026-02-18 12:32:41,472 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:32:41,472 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:32:41,473 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:32:41,473 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:32:41,473 - INFO - ============================================================
2026-02-18 12:32:41,473 - INFO - 🔄 Multi-Objective BO Iteration 6/30
2026-02-18 12:32:41,473 - INFO - ============================================================
2026-02-18 12:32:41,474 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:32:41,505 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:32:41,807 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:32:41,808 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.5, 'epi2infected_hfm': 0.5}
2026-02-18 12:33:16,013 - INFO - 	 Results for Sample ID 15: Objectives = {'epi_': np.float64(1.7628941529757444e-15), 'epi_infected': np.float64(1.9888973973706661e-22)}, Noise Std = {'epi_': np.float64(3.525785646889657e-15), 'epi_infected': np.float64(3.9777947947209247e-22)}
2026-02-18 12:33:16,017 - INFO - 📊 Iteration 6 Sample(s) [15] : Hypervolume = 2.6121420082173e-07
2026-02-18 12:33:16,018 - INFO - ✅ Completed iteration 6/30 - Total samples: 16
2026-02-18 12:33:16,018 - INFO - 🎯 Best fitness values:
2026-02-18 12:33:16,018 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:33:16,019 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:33:16,019 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:33:16,019 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:33:16,019 - INFO - ============================================================
2026-02-18 12:33:16,019 - INFO - 🔄 Multi-Objective BO Iteration 7/30
2026-02-18 12:33:16,020 - INFO - ============================================================
2026-02-18 12:33:16,020 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:33:16,051 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:33:16,370 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:33:16,370 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 0.7, 'epi2infected_hfm': 0.1}
2026-02-18 12:34:35,612 - INFO - 	 Results for Sample ID 16: Objectives = {'epi_': np.float64(3.522708646794959e-26), 'epi_infected': np.float64(3.010188869094858e-95)}, Noise Std = {'epi_': np.float64(0.0), 'epi_infected': np.float64(6.020377738189715e-95)}
2026-02-18 12:34:35,617 - INFO - 📊 Iteration 7 Sample(s) [16] : Hypervolume = 2.445780075847768e-07
2026-02-18 12:34:35,617 - INFO - ✅ Completed iteration 7/30 - Total samples: 17
2026-02-18 12:34:35,617 - INFO - 🎯 Best fitness values:
2026-02-18 12:34:35,618 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:34:35,618 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:34:35,618 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:34:35,618 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:34:35,618 - INFO - ============================================================
2026-02-18 12:34:35,619 - INFO - 🔄 Multi-Objective BO Iteration 8/30
2026-02-18 12:34:35,619 - INFO - ============================================================
2026-02-18 12:34:35,619 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:34:35,704 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:34:36,051 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:34:36,051 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.5, 'epi2infected_hfm': 0.1}
2026-02-18 12:35:55,820 - INFO - 	 Results for Sample ID 17: Objectives = {'epi_': np.float64(3.522708646794959e-26), 'epi_infected': np.float64(1.6342927341065665e-82)}, Noise Std = {'epi_': np.float64(0.0), 'epi_infected': np.float64(3.268585466183488e-82)}
2026-02-18 12:35:55,825 - INFO - 📊 Iteration 8 Sample(s) [17] : Hypervolume = 2.259433614404301e-07
2026-02-18 12:35:55,825 - INFO - ✅ Completed iteration 8/30 - Total samples: 18
2026-02-18 12:35:55,825 - INFO - 🎯 Best fitness values:
2026-02-18 12:35:55,826 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:35:55,826 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:35:55,826 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:35:55,826 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:35:55,826 - INFO - ============================================================
2026-02-18 12:35:55,827 - INFO - 🔄 Multi-Objective BO Iteration 9/30
2026-02-18 12:35:55,827 - INFO - ============================================================
2026-02-18 12:35:55,827 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:35:55,859 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:35:56,201 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:35:56,201 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.5, 'epi2infected_hfm': 0.1}
2026-02-18 12:37:10,461 - INFO - 	 Results for Sample ID 18: Objectives = {'epi_': np.float64(3.522708646794959e-26), 'epi_infected': np.float64(3.090115602220368e-79)}, Noise Std = {'epi_': np.float64(0.0), 'epi_infected': np.float64(3.784603235826527e-79)}
2026-02-18 12:37:10,466 - INFO - 📊 Iteration 9 Sample(s) [18] : Hypervolume = 1.7718519253522947e-07
2026-02-18 12:37:10,467 - INFO - ✅ Completed iteration 9/30 - Total samples: 19
2026-02-18 12:37:10,467 - INFO - 🎯 Best fitness values:
2026-02-18 12:37:10,467 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:37:10,467 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:37:10,468 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:37:10,468 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:37:10,468 - INFO - ============================================================
2026-02-18 12:37:10,468 - INFO - 🔄 Multi-Objective BO Iteration 10/30
2026-02-18 12:37:10,468 - INFO - ============================================================
2026-02-18 12:37:10,469 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:37:10,503 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:37:10,869 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:37:10,869 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.5, 'epi2infected_hfm': 0.3960050520245887}
2026-02-18 12:37:51,555 - INFO - 	 Results for Sample ID 19: Objectives = {'epi_': np.float64(0.13415081706695936), 'epi_infected': np.float64(0.13026814600514763)}, Noise Std = {'epi_': np.float64(0.12548530482404663), 'epi_infected': np.float64(0.23629883209275723)}
2026-02-18 12:37:51,560 - INFO - 📊 Iteration 10 Sample(s) [19] : Hypervolume = 1.834816265861776e-07
2026-02-18 12:37:51,560 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:37:51,561 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:37:51,562 - INFO - 	📋 Convergence Status: in_progress
2026-02-18 12:37:51,562 - INFO - 	💡 Reason: Slow but steady progress
2026-02-18 12:37:51,563 - INFO - 	🎯 Confidence: 33.35%
2026-02-18 12:37:51,563 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:37:51,563 - INFO - ✅ Completed iteration 10/30 - Total samples: 20
2026-02-18 12:37:51,563 - INFO - 🎯 Best fitness values:
2026-02-18 12:37:51,564 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:37:51,564 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:37:51,564 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:37:51,564 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:37:51,564 - INFO - ============================================================
2026-02-18 12:37:51,564 - INFO - 🔄 Multi-Objective BO Iteration 11/30
2026-02-18 12:37:51,565 - INFO - ============================================================
2026-02-18 12:37:51,565 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:37:51,598 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:37:51,934 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:37:51,934 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 0.7, 'epi2infected_hfm': 0.5}
2026-02-18 12:38:25,776 - INFO - 	 Results for Sample ID 20: Objectives = {'epi_': np.float64(2.85271932026508e-15), 'epi_infected': np.float64(4.295999183593931e-21)}, Noise Std = {'epi_': np.float64(5.704925310411305e-15), 'epi_infected': np.float64(8.591998361684287e-21)}
2026-02-18 12:38:25,781 - INFO - 📊 Iteration 11 Sample(s) [20] : Hypervolume = 1.8742064737827542e-07
2026-02-18 12:38:25,781 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:38:25,781 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:38:25,782 - INFO - 	📋 Convergence Status: in_progress
2026-02-18 12:38:25,782 - INFO - 	💡 Reason: Normal optimization progress
2026-02-18 12:38:25,782 - INFO - 	🎯 Confidence: 33.34%
2026-02-18 12:38:25,782 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:38:25,782 - INFO - ✅ Completed iteration 11/30 - Total samples: 21
2026-02-18 12:38:25,783 - INFO - 🎯 Best fitness values:
2026-02-18 12:38:25,783 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:38:25,783 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:38:25,783 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:38:25,783 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:38:25,784 - INFO - ============================================================
2026-02-18 12:38:25,784 - INFO - 🔄 Multi-Objective BO Iteration 12/30
2026-02-18 12:38:25,784 - INFO - ============================================================
2026-02-18 12:38:25,784 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:38:25,817 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:38:26,188 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:38:26,189 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 0.7, 'epi2infected_hfm': 0.1}
2026-02-18 12:39:49,050 - INFO - 	 Results for Sample ID 21: Objectives = {'epi_': np.float64(3.522708646794959e-26), 'epi_infected': np.float64(4.180928406683552e-81)}, Noise Std = {'epi_': np.float64(0.0), 'epi_infected': np.float64(8.3618568133671035e-81)}
2026-02-18 12:39:49,055 - INFO - 📊 Iteration 12 Sample(s) [21] : Hypervolume = 1.9123079032428408e-07
2026-02-18 12:39:49,055 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:39:49,056 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:39:49,056 - INFO - 	📋 Convergence Status: in_progress
2026-02-18 12:39:49,057 - INFO - 	💡 Reason: Slow but steady progress
2026-02-18 12:39:49,057 - INFO - 	🎯 Confidence: 33.36%
2026-02-18 12:39:49,057 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:39:49,057 - INFO - ✅ Completed iteration 12/30 - Total samples: 22
2026-02-18 12:39:49,057 - INFO - 🎯 Best fitness values:
2026-02-18 12:39:49,058 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:39:49,058 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:39:49,058 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:39:49,058 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:39:49,058 - INFO - ============================================================
2026-02-18 12:39:49,059 - INFO - 🔄 Multi-Objective BO Iteration 13/30
2026-02-18 12:39:49,059 - INFO - ============================================================
2026-02-18 12:39:49,059 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:39:49,091 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:39:49,432 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:39:49,433 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.5, 'epi2infected_hfm': 0.5}
2026-02-18 12:40:22,983 - INFO - 	 Results for Sample ID 22: Objectives = {'epi_': np.float64(9.982310256274536e-15), 'epi_infected': np.float64(2.664742391135821e-25)}, Noise Std = {'epi_': np.float64(1.2225783286694666e-14), 'epi_infected': np.float64(3.263629577123357e-25)}
2026-02-18 12:40:22,988 - INFO - 📊 Iteration 13 Sample(s) [22] : Hypervolume = 1.7626235733113791e-07
2026-02-18 12:40:22,988 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:40:22,988 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:40:22,989 - INFO - 	📋 Convergence Status: in_progress
2026-02-18 12:40:22,989 - INFO - 	💡 Reason: Slow but steady progress
2026-02-18 12:40:22,989 - INFO - 	🎯 Confidence: 33.35%
2026-02-18 12:40:22,990 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:40:22,990 - INFO - ✅ Completed iteration 13/30 - Total samples: 23
2026-02-18 12:40:22,990 - INFO - 🎯 Best fitness values:
2026-02-18 12:40:22,990 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:40:22,991 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:40:22,991 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:40:22,991 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:40:22,991 - INFO - ============================================================
2026-02-18 12:40:22,991 - INFO - 🔄 Multi-Objective BO Iteration 14/30
2026-02-18 12:40:22,991 - INFO - ============================================================
2026-02-18 12:40:22,992 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:40:23,025 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:40:23,383 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:40:23,383 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.5, 'epi2infected_hfm': 0.5}
2026-02-18 12:40:57,164 - INFO - 	 Results for Sample ID 23: Objectives = {'epi_': np.float64(1.0611929182501927e-17), 'epi_infected': np.float64(3.239481183006405e-29)}, Noise Std = {'epi_': np.float64(2.122207503667933e-17), 'epi_infected': np.float64(6.47896236196141e-29)}
2026-02-18 12:40:57,168 - INFO - 📊 Iteration 14 Sample(s) [23] : Hypervolume = 1.7829566238168823e-07
2026-02-18 12:40:57,169 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:40:57,169 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:40:57,170 - INFO - 	📋 Convergence Status: in_progress
2026-02-18 12:40:57,170 - INFO - 	💡 Reason: Slow but steady progress
2026-02-18 12:40:57,170 - INFO - 	🎯 Confidence: 33.35%
2026-02-18 12:40:57,170 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:40:57,171 - INFO - ✅ Completed iteration 14/30 - Total samples: 24
2026-02-18 12:40:57,171 - INFO - 🎯 Best fitness values:
2026-02-18 12:40:57,171 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:40:57,171 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:40:57,172 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:40:57,172 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:40:57,172 - INFO - ============================================================
2026-02-18 12:40:57,172 - INFO - 🔄 Multi-Objective BO Iteration 15/30
2026-02-18 12:40:57,172 - INFO - ============================================================
2026-02-18 12:40:57,172 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:40:57,212 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:40:57,650 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:40:57,651 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 0.7, 'epi2infected_hfm': 0.1}
2026-02-18 12:42:21,367 - INFO - 	 Results for Sample ID 24: Objectives = {'epi_': np.float64(3.522708646794959e-26), 'epi_infected': np.float64(1.9954762218278099e-97)}, Noise Std = {'epi_': np.float64(0.0), 'epi_infected': np.float64(3.990952443655251e-97)}
2026-02-18 12:42:21,372 - INFO - 📊 Iteration 15 Sample(s) [24] : Hypervolume = 1.7667033684454167e-07
2026-02-18 12:42:21,373 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:42:21,373 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:42:21,374 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:42:21,374 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:42:21,374 - INFO - 	🎯 Confidence: 33.34%
2026-02-18 12:42:21,374 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:42:21,374 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:42:21,374 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:42:21,375 - INFO - ✅ Completed iteration 15/30 - Total samples: 25
2026-02-18 12:42:21,375 - INFO - 🎯 Best fitness values:
2026-02-18 12:42:21,375 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:42:21,375 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:42:21,376 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:42:21,376 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:42:21,376 - INFO - ============================================================
2026-02-18 12:42:21,376 - INFO - 🔄 Multi-Objective BO Iteration 16/30
2026-02-18 12:42:21,376 - INFO - ============================================================
2026-02-18 12:42:21,376 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:42:21,411 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:42:21,762 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:42:21,762 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 0.7, 'epi2infected_hfm': 0.5}
2026-02-18 12:42:57,766 - INFO - 	 Results for Sample ID 25: Objectives = {'epi_': np.float64(2.203844942588266e-16), 'epi_infected': np.float64(9.442126965464527e-25)}, Noise Std = {'epi_': np.float64(4.3655547939270984e-16), 'epi_infected': np.float64(1.1500584303556516e-24)}
2026-02-18 12:42:57,771 - INFO - 📊 Iteration 16 Sample(s) [25] : Hypervolume = 1.6137238607367503e-07
2026-02-18 12:42:57,771 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:42:57,772 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:42:57,772 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:42:57,772 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:42:57,772 - INFO - 	🎯 Confidence: 33.34%
2026-02-18 12:42:57,772 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:42:57,773 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:42:57,773 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:42:57,773 - INFO - ✅ Completed iteration 16/30 - Total samples: 26
2026-02-18 12:42:57,773 - INFO - 🎯 Best fitness values:
2026-02-18 12:42:57,774 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:42:57,774 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:42:57,774 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:42:57,774 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:42:57,774 - INFO - ============================================================
2026-02-18 12:42:57,775 - INFO - 🔄 Multi-Objective BO Iteration 17/30
2026-02-18 12:42:57,775 - INFO - ============================================================
2026-02-18 12:42:57,775 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:42:57,808 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:42:58,234 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:42:58,234 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.5, 'epi2infected_hfm': 0.29780231823620695}
2026-02-18 12:43:58,658 - INFO - 	 Results for Sample ID 26: Objectives = {'epi_': np.float64(2.7267232912784007e-11), 'epi_infected': np.float64(7.417162658443315e-19)}, Noise Std = {'epi_': np.float64(2.225091540136075e-11), 'epi_infected': np.float64(6.05608795080377e-19)}
2026-02-18 12:43:58,665 - INFO - 📊 Iteration 17 Sample(s) [26] : Hypervolume = 1.6612659263879304e-07
2026-02-18 12:43:58,666 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:43:58,666 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:43:58,667 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:43:58,667 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:43:58,667 - INFO - 	🎯 Confidence: 33.34%
2026-02-18 12:43:58,667 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:43:58,667 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:43:58,667 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:43:58,668 - INFO - ✅ Completed iteration 17/30 - Total samples: 27
2026-02-18 12:43:58,668 - INFO - 🎯 Best fitness values:
2026-02-18 12:43:58,668 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:43:58,668 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:43:58,669 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:43:58,669 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:43:58,669 - INFO - ============================================================
2026-02-18 12:43:58,669 - INFO - 🔄 Multi-Objective BO Iteration 18/30
2026-02-18 12:43:58,669 - INFO - ============================================================
2026-02-18 12:43:58,670 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:43:58,704 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:43:59,055 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:43:59,055 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.5, 'epi2infected_hfm': 0.1}
2026-02-18 12:45:19,157 - INFO - 	 Results for Sample ID 27: Objectives = {'epi_': np.float64(3.522708646794959e-26), 'epi_infected': np.float64(7.661785434275104e-88)}, Noise Std = {'epi_': np.float64(0.0), 'epi_infected': np.float64(1.5323570868547972e-87)}
2026-02-18 12:45:19,162 - INFO - 📊 Iteration 18 Sample(s) [27] : Hypervolume = 1.633420237316383e-07
2026-02-18 12:45:19,163 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:45:19,163 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:45:19,164 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:45:19,164 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:45:19,164 - INFO - 	🎯 Confidence: 33.34%
2026-02-18 12:45:19,164 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:45:19,165 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:45:19,165 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:45:19,165 - INFO - ✅ Completed iteration 18/30 - Total samples: 28
2026-02-18 12:45:19,166 - INFO - 🎯 Best fitness values:
2026-02-18 12:45:19,166 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:45:19,166 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:45:19,166 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:45:19,166 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:45:19,166 - INFO - ============================================================
2026-02-18 12:45:19,167 - INFO - 🔄 Multi-Objective BO Iteration 19/30
2026-02-18 12:45:19,167 - INFO - ============================================================
2026-02-18 12:45:19,167 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:45:19,201 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:45:19,842 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:45:19,842 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 0.7, 'epi2infected_hfm': 0.25442937810270316}
2026-02-18 12:46:31,252 - INFO - 	 Results for Sample ID 28: Objectives = {'epi_': np.float64(1.869739722454674e-25), 'epi_infected': np.float64(1.2867614210333958e-76)}, Noise Std = {'epi_': np.float64(2.466400341047496e-25), 'epi_infected': np.float64(2.5735228418658415e-76)}
2026-02-18 12:46:31,257 - INFO - 📊 Iteration 19 Sample(s) [28] : Hypervolume = 1.499825628849099e-07
2026-02-18 12:46:31,257 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:46:31,258 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:46:31,258 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:46:31,259 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:46:31,259 - INFO - 	🎯 Confidence: 33.34%
2026-02-18 12:46:31,259 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:46:31,259 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:46:31,260 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:46:31,260 - INFO - ✅ Completed iteration 19/30 - Total samples: 29
2026-02-18 12:46:31,260 - INFO - 🎯 Best fitness values:
2026-02-18 12:46:31,260 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:46:31,261 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:46:31,261 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:46:31,261 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:46:31,261 - INFO - ============================================================
2026-02-18 12:46:31,261 - INFO - 🔄 Multi-Objective BO Iteration 20/30
2026-02-18 12:46:31,262 - INFO - ============================================================
2026-02-18 12:46:31,262 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:46:31,294 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:46:31,685 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:46:31,685 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 0.7, 'epi2infected_hfm': 0.2086123022997175}
2026-02-18 12:47:49,116 - INFO - 	 Results for Sample ID 29: Objectives = {'epi_': np.float64(3.522708646794959e-26), 'epi_infected': np.float64(1.619269507368022e-64)}, Noise Std = {'epi_': np.float64(0.0), 'epi_infected': np.float64(3.238539014736044e-64)}
2026-02-18 12:47:49,121 - INFO - 📊 Iteration 20 Sample(s) [29] : Hypervolume = 1.4051352949658585e-07
2026-02-18 12:47:49,122 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:47:49,122 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:47:49,123 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:47:49,123 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:47:49,123 - INFO - 	🎯 Confidence: 33.34%
2026-02-18 12:47:49,123 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:47:49,124 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:47:49,124 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:47:49,124 - INFO - ✅ Completed iteration 20/30 - Total samples: 30
2026-02-18 12:47:49,125 - INFO - 🎯 Best fitness values:
2026-02-18 12:47:49,125 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:47:49,125 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:47:49,125 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:47:49,125 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:47:49,126 - INFO - ============================================================
2026-02-18 12:47:49,126 - INFO - 🔄 Multi-Objective BO Iteration 21/30
2026-02-18 12:47:49,126 - INFO - ============================================================
2026-02-18 12:47:49,126 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:47:49,159 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:47:49,618 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:47:49,619 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.1010270306065713, 'epi2infected_hfm': 0.5}
2026-02-18 12:48:26,767 - INFO - 	 Results for Sample ID 30: Objectives = {'epi_': np.float64(7.912455302334922e-11), 'epi_infected': np.float64(8.047483828106391e-15)}, Noise Std = {'epi_': np.float64(1.5824910051609545e-10), 'epi_infected': np.float64(1.6094967655869596e-14)}
2026-02-18 12:48:26,772 - INFO - 📊 Iteration 21 Sample(s) [30] : Hypervolume = 1.4147796308417654e-07
2026-02-18 12:48:26,772 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:48:26,772 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:48:26,773 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:48:26,773 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:48:26,773 - INFO - 	🎯 Confidence: 33.34%
2026-02-18 12:48:26,773 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:48:26,773 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:48:26,774 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:48:26,774 - INFO - ✅ Completed iteration 21/30 - Total samples: 31
2026-02-18 12:48:26,774 - INFO - 🎯 Best fitness values:
2026-02-18 12:48:26,774 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:48:26,775 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:48:26,775 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:48:26,775 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:48:26,775 - INFO - ============================================================
2026-02-18 12:48:26,776 - INFO - 🔄 Multi-Objective BO Iteration 22/30
2026-02-18 12:48:26,776 - INFO - ============================================================
2026-02-18 12:48:26,776 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:48:26,808 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:48:27,254 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:48:27,254 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.039128635282658, 'epi2infected_hfm': 0.1}
2026-02-18 12:49:52,049 - INFO - 	 Results for Sample ID 31: Objectives = {'epi_': np.float64(3.522708646794959e-26), 'epi_infected': np.float64(3.1955237977668985e-114)}, Noise Std = {'epi_': np.float64(0.0), 'epi_infected': np.float64(6.3910475955337955e-114)}
2026-02-18 12:49:52,055 - INFO - 📊 Iteration 22 Sample(s) [31] : Hypervolume = 1.3706512326801445e-07
2026-02-18 12:49:52,055 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:49:52,056 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:49:52,056 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:49:52,056 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:49:52,056 - INFO - 	🎯 Confidence: 33.34%
2026-02-18 12:49:52,057 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:49:52,057 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:49:52,057 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:49:52,057 - INFO - ✅ Completed iteration 22/30 - Total samples: 32
2026-02-18 12:49:52,058 - INFO - 🎯 Best fitness values:
2026-02-18 12:49:52,058 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:49:52,058 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:49:52,058 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:49:52,059 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:49:52,059 - INFO - ============================================================
2026-02-18 12:49:52,059 - INFO - 🔄 Multi-Objective BO Iteration 23/30
2026-02-18 12:49:52,059 - INFO - ============================================================
2026-02-18 12:49:52,059 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:49:52,094 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:49:52,602 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:49:52,603 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 0.7, 'epi2infected_hfm': 0.5}
2026-02-18 12:50:29,165 - INFO - 	 Results for Sample ID 32: Objectives = {'epi_': np.float64(1.371183105099572e-11), 'epi_infected': np.float64(2.174102551812975e-15)}, Noise Std = {'epi_': np.float64(1.4128152098980658e-11), 'epi_infected': np.float64(4.111223627589928e-15)}
2026-02-18 12:50:29,172 - INFO - 📊 Iteration 23 Sample(s) [32] : Hypervolume = 1.4630331093911723e-07
2026-02-18 12:50:29,172 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:50:29,173 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:50:29,173 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:50:29,174 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:50:29,174 - INFO - 	🎯 Confidence: 33.35%
2026-02-18 12:50:29,174 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:50:29,174 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:50:29,174 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:50:29,175 - INFO - ✅ Completed iteration 23/30 - Total samples: 33
2026-02-18 12:50:29,175 - INFO - 🎯 Best fitness values:
2026-02-18 12:50:29,175 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:50:29,175 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:50:29,176 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:50:29,176 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:50:29,176 - INFO - ============================================================
2026-02-18 12:50:29,176 - INFO - 🔄 Multi-Objective BO Iteration 24/30
2026-02-18 12:50:29,176 - INFO - ============================================================
2026-02-18 12:50:29,176 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:50:29,214 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:50:29,587 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:50:29,587 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 0.7, 'epi2infected_hfm': 0.5}
2026-02-18 12:51:06,445 - INFO - 	 Results for Sample ID 33: Objectives = {'epi_': np.float64(2.3272009839907876e-13), 'epi_infected': np.float64(1.0301420173836829e-17)}, Noise Std = {'epi_': np.float64(1.9001458443694612e-13), 'epi_infected': np.float64(8.411074350637656e-18)}
2026-02-18 12:51:06,451 - INFO - 📊 Iteration 24 Sample(s) [33] : Hypervolume = 1.3881996584273743e-07
2026-02-18 12:51:06,451 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:51:06,452 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:51:06,452 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:51:06,452 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:51:06,453 - INFO - 	🎯 Confidence: 33.34%
2026-02-18 12:51:06,453 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:51:06,453 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:51:06,453 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:51:06,453 - INFO - ✅ Completed iteration 24/30 - Total samples: 34
2026-02-18 12:51:06,454 - INFO - 🎯 Best fitness values:
2026-02-18 12:51:06,454 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:51:06,454 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:51:06,454 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:51:06,454 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:51:06,455 - INFO - ============================================================
2026-02-18 12:51:06,455 - INFO - 🔄 Multi-Objective BO Iteration 25/30
2026-02-18 12:51:06,455 - INFO - ============================================================
2026-02-18 12:51:06,455 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:51:06,485 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:51:06,886 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:51:06,887 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 0.7, 'epi2infected_hfm': 0.1}
2026-02-18 12:52:27,382 - INFO - 	 Results for Sample ID 34: Objectives = {'epi_': np.float64(3.522708646794959e-26), 'epi_infected': np.float64(2.924557505580308e-62)}, Noise Std = {'epi_': np.float64(0.0), 'epi_infected': np.float64(5.849115011160616e-62)}
2026-02-18 12:52:27,389 - INFO - 📊 Iteration 25 Sample(s) [34] : Hypervolume = 1.3180275135170288e-07
2026-02-18 12:52:27,389 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:52:27,390 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:52:27,391 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:52:27,391 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:52:27,391 - INFO - 	🎯 Confidence: 33.34%
2026-02-18 12:52:27,391 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:52:27,392 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:52:27,392 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:52:27,392 - INFO - ✅ Completed iteration 25/30 - Total samples: 35
2026-02-18 12:52:27,392 - INFO - 🎯 Best fitness values:
2026-02-18 12:52:27,393 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:52:27,393 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:52:27,393 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:52:27,393 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:52:27,393 - INFO - ============================================================
2026-02-18 12:52:27,396 - INFO - 🔄 Multi-Objective BO Iteration 26/30
2026-02-18 12:52:27,398 - INFO - ============================================================
2026-02-18 12:52:27,399 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:52:27,487 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:52:27,947 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:52:27,948 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.5, 'epi2infected_hfm': 0.5}
2026-02-18 12:53:04,431 - INFO - 	 Results for Sample ID 35: Objectives = {'epi_': np.float64(1.2823088991691388e-11), 'epi_infected': np.float64(2.9184257097353474e-15)}, Noise Std = {'epi_': np.float64(2.5533903404224433e-11), 'epi_infected': np.float64(5.836821106120516e-15)}
2026-02-18 12:53:04,436 - INFO - 📊 Iteration 26 Sample(s) [35] : Hypervolume = 1.3466395642030761e-07
2026-02-18 12:53:04,436 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:53:04,436 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:53:04,437 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:53:04,437 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:53:04,438 - INFO - 	🎯 Confidence: 33.35%
2026-02-18 12:53:04,438 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:53:04,438 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:53:04,438 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:53:04,438 - INFO - ✅ Completed iteration 26/30 - Total samples: 36
2026-02-18 12:53:04,438 - INFO - 🎯 Best fitness values:
2026-02-18 12:53:04,439 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:53:04,439 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:53:04,439 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:53:04,439 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:53:04,440 - INFO - ============================================================
2026-02-18 12:53:04,440 - INFO - 🔄 Multi-Objective BO Iteration 27/30
2026-02-18 12:53:04,440 - INFO - ============================================================
2026-02-18 12:53:04,440 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:53:04,470 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:53:04,984 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:53:04,984 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.5, 'epi2infected_hfm': 0.3213625630354267}
2026-02-18 12:54:00,824 - INFO - 	 Results for Sample ID 36: Objectives = {'epi_': np.float64(3.7247919672227634e-10), 'epi_infected': np.float64(9.060625189458948e-17)}, Noise Std = {'epi_': np.float64(3.073402915965217e-10), 'epi_infected': np.float64(1.1096944199011393e-16)}
2026-02-18 12:54:00,831 - INFO - 📊 Iteration 27 Sample(s) [36] : Hypervolume = 1.394256400865417e-07
2026-02-18 12:54:00,831 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:54:00,832 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:54:00,833 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:54:00,833 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:54:00,833 - INFO - 	🎯 Confidence: 33.33%
2026-02-18 12:54:00,833 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:54:00,833 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:54:00,834 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:54:00,834 - INFO - ✅ Completed iteration 27/30 - Total samples: 37
2026-02-18 12:54:00,834 - INFO - 🎯 Best fitness values:
2026-02-18 12:54:00,834 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:54:00,835 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:54:00,835 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:54:00,835 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:54:00,835 - INFO - ============================================================
2026-02-18 12:54:00,835 - INFO - 🔄 Multi-Objective BO Iteration 28/30
2026-02-18 12:54:00,835 - INFO - ============================================================
2026-02-18 12:54:00,836 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:54:00,873 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:54:01,321 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:54:01,322 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.2774053689060576, 'epi2infected_hfm': 0.1}
2026-02-18 12:55:22,749 - INFO - 	 Results for Sample ID 37: Objectives = {'epi_': np.float64(3.522708646794959e-26), 'epi_infected': np.float64(6.914038480543755e-104)}, Noise Std = {'epi_': np.float64(0.0), 'epi_infected': np.float64(1.3828076961085382e-103)}
2026-02-18 12:55:22,754 - INFO - 📊 Iteration 28 Sample(s) [37] : Hypervolume = 1.2077457981889272e-07
2026-02-18 12:55:22,754 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:55:22,755 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:55:22,755 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:55:22,755 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:55:22,756 - INFO - 	🎯 Confidence: 33.34%
2026-02-18 12:55:22,756 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:55:22,756 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:55:22,756 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:55:22,756 - INFO - ✅ Completed iteration 28/30 - Total samples: 38
2026-02-18 12:55:22,757 - INFO - 🎯 Best fitness values:
2026-02-18 12:55:22,757 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:55:22,757 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:55:22,757 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:55:22,758 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:55:22,758 - INFO - ============================================================
2026-02-18 12:55:22,758 - INFO - 🔄 Multi-Objective BO Iteration 29/30
2026-02-18 12:55:22,758 - INFO - ============================================================
2026-02-18 12:55:22,758 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:55:22,794 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:55:23,199 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:55:23,199 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.5, 'epi2infected_hfm': 0.5}
2026-02-18 12:55:56,690 - INFO - 	 Results for Sample ID 38: Objectives = {'epi_': np.float64(9.434521699421294e-17), 'epi_infected': np.float64(5.3604852184266915e-28)}, Noise Std = {'epi_': np.float64(1.8867362761481427e-16), 'epi_infected': np.float64(1.0720970431862703e-27)}
2026-02-18 12:55:56,695 - INFO - 📊 Iteration 29 Sample(s) [38] : Hypervolume = 1.2737830332079182e-07
2026-02-18 12:55:56,695 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:55:56,696 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:55:56,696 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:55:56,697 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:55:56,697 - INFO - 	🎯 Confidence: 33.34%
2026-02-18 12:55:56,697 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:55:56,697 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:55:56,697 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:55:56,698 - INFO - ✅ Completed iteration 29/30 - Total samples: 39
2026-02-18 12:55:56,698 - INFO - 🎯 Best fitness values:
2026-02-18 12:55:56,698 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:55:56,699 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:55:56,699 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:55:56,699 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:55:56,699 - INFO - ============================================================
2026-02-18 12:55:56,699 - INFO - 🔄 Multi-Objective BO Iteration 30/30
2026-02-18 12:55:56,699 - INFO - ============================================================
2026-02-18 12:55:56,700 - INFO - 🔧 Fitting Gaussian Process models...
2026-02-18 12:55:56,812 - INFO - 🎯 Optimizing acquisition function...
2026-02-18 12:55:57,309 - INFO - 📊 Evaluating 1 new candidate(s)...
2026-02-18 12:55:57,310 - INFO - 	 Candidate 1: {'mac_phag_rate_infected': 1.5, 'epi2infected_hfm': 0.1}
2026-02-18 12:57:19,246 - INFO - 	 Results for Sample ID 39: Objectives = {'epi_': np.float64(3.522708646794959e-26), 'epi_infected': np.float64(1.8678654579021542e-91)}, Noise Std = {'epi_': np.float64(0.0), 'epi_infected': np.float64(3.7357309158043084e-91)}
2026-02-18 12:57:19,253 - INFO - 📊 Iteration 30 Sample(s) [39] : Hypervolume = 1.2915195113349911e-07
2026-02-18 12:57:19,253 - INFO - 🔍 Analyzing convergence...
2026-02-18 12:57:19,254 - WARNING - ⚠️  High noise detected (max 112.1%) - using relaxed convergence criteria
2026-02-18 12:57:19,254 - INFO - 	📋 Convergence Status: stuck_suboptimal
2026-02-18 12:57:19,255 - INFO - 	💡 Reason: Stuck in suboptimal region: poor exploration or quality despite stagnation
2026-02-18 12:57:19,255 - INFO - 	🎯 Confidence: 33.34%
2026-02-18 12:57:19,255 - INFO - 	📊 Noise level: max=112.1%, avg=96.7%, SNR=0.9
2026-02-18 12:57:19,255 - INFO - 	💡 Suggestion: Poor fitness values: check distance function weights or try different acquisition strategy
2026-02-18 12:57:19,255 - WARNING - 	⚠️  Suboptimal stagnation detected - consider restarting with different settings
2026-02-18 12:57:19,255 - INFO - ✅ Completed iteration 30/30 - Total samples: 40
2026-02-18 12:57:19,256 - INFO - 🎯 Best fitness values:
2026-02-18 12:57:19,256 - INFO - 	 Best parameters for best fitness of epi_ (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:57:19,256 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:57:19,256 - INFO - 	 Best parameters for best fitness of epi_infected (sample 9): {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
2026-02-18 12:57:19,257 - INFO - 	 Fitness: {'epi_': 0.19017990271039606, 'epi_infected': 0.2508230722131106}.
2026-02-18 12:57:19,257 - INFO - ✅ Multi-objective Bayesian optimization completed successfully!
# Load the database and perform analysis
df_metadata, df_param_space, df_qois, df_gp_models, df_samples, df_output = load_structure(db_path)
   

Pareto front analysis

Each Pareto point is a parameter set that minimizes QoI discrepancy for at least one objective without being dominated across all objectives.

# Comprehensive Pareto analysis
pareto_data = analyze_pareto_results(df_qois, df_samples, df_output)
# Plot with pareto front points
pareto_points = {f"Pareto Point {i}": param for i, param in enumerate(pareto_data['pareto_front']['parameters'])}
plot_parameter_space(df_samples, df_param_space, params=pareto_points, real_value=dic_real_value)
df_obs_qoi = get_observed_qoi(df_metadata['ObsData_Path'].values[0], df_qois)
============================================================
🔍 COMPREHENSIVE PARETO ANALYSIS
============================================================

📊 Extracting all Pareto points ...
🎯 Current Pareto front size: 1

🎯 CURRENT PARETO FRONT:
   Number of Pareto optimal points: 1
   Sample IDs: [9]

   📋 Pareto Front Details:
   Point 1 (Sample 9):
      Fitness: {'epi_': np.float64(0.19017990271039606), 'epi_infected': np.float64(0.2508230722131106)}
      Parameters: {'mac_phag_rate_infected': 0.9920958995819091, 'epi2infected_hfm': 0.39502637386322026}
../../_images/ba7529137574d13bda5038de03ac1a501e4ed6e2198976286eb85df5cd8ec576.png

Visualize QoIs from Pareto front points

# Plot QoIs of best parameters
for qoi in df_qois['QoI_Name']:
    print(f"Plotting {qoi}")
    plot_qoi_param(df_obs_qoi, df_output, pareto_data['pareto_front']['sample_ids'], x_var='time', y_var=qoi)
Plotting epi_
Sample ID: [9]
Objective Function Values:
{'epi_': np.float64(0.19017990271039606), 'epi_infected': np.float64(0.2508230722131106)}
Noise of Objective Function:
{'epi_': np.float64(0.16660431304183063), 'epi_infected': np.float64(0.1889275558955298)}
Plotting epi_infected
Sample ID: [9]
Objective Function Values:
{'epi_': np.float64(0.19017990271039606), 'epi_infected': np.float64(0.2508230722131106)}
Noise of Objective Function:
{'epi_': np.float64(0.16660431304183063), 'epi_infected': np.float64(0.1889275558955298)}
../../_images/95b1e0e3b653fd18ed19b77a59cb9f933885b3082a8057fb7b01a1a88c37efce.png ../../_images/63f2f9152f5c0a4240d36b96a2d03c725405dd2ee1bd373f006cfc14efd76bcf.png

Visualize QoI fitness vs parameter values

# Plot each parameter vs each QoI
fig, axes = plt.subplots(len(df_param_space), len(df_qois['QoI_Name']), figsize=(12, 10))
fig.subplots_adjust(hspace=0.5, wspace=0.5)  # Increased spacing
for i, param in enumerate(df_param_space['ParamName']):
    for j, qoi in enumerate(df_qois['QoI_Name']):
        print(f"Plotting {param} vs {qoi}")
        plot_parameter_vs_fitness(df_samples, df_output, param, qoi, samples_id=pareto_data['pareto_front']['sample_ids'], axis= axes[i, j])

# Ensure proper layout and save the figure
plt.tight_layout()  # This will automatically adjust spacing to prevent overlaps
Plotting mac_phag_rate_infected vs epi_
Plotting mac_phag_rate_infected vs epi_infected
Plotting epi2infected_hfm vs epi_
Plotting epi2infected_hfm vs epi_infected
../../_images/386294a72a146b58c1f405eecf037f9ae04c28705159c4092e8e8336161a31d5.png

Next: ex8 calibrates the same model using ABC-SMC — returns full posterior distributions over parameters rather than point estimates.