|
STAR
Cal STAR — firmware, DAQ server, and engine design
|
Public Member Functions | |
| __init__ (self, int n_params, float forgetting_factor=0.995) | |
| update_from_sensor (self, int sensor_id, np.ndarray posterior_mean, np.ndarray posterior_cov, float quality) | |
| Tuple[np.ndarray, np.ndarray, float] | get_prior (self) |
| Tuple[np.ndarray, np.ndarray] | predict_future_drift (self, float time_horizon) |
Public Attributes | |
| n_params = n_params | |
| forgetting_factor = forgetting_factor | |
| tuple | prior_mean = np.zeros(n_params) |
| tuple | prior_covariance |
| dict | sensor_posteriors = {} |
| int | update_count = 0 |
| float | effective_sample_size = 1.0 |
| deque | history = deque(maxlen=100) |
| drift_detector = DriftDetector(n_params) | |
Protected Member Functions | |
| _empirical_bayes_update (self) | |
| float | _compute_confidence (self) |
Evolves population prior based on ongoing system performance. Uses empirical Bayes to continuously improve prior from all sensors.
Definition at line 56 of file autonomous_calibration_engine.py.
| autonomous_calibration_engine.AdaptivePriorEvolution.__init__ | ( | self, | |
| int | n_params, | ||
| float | forgetting_factor = 0.995 ) |
Definition at line 62 of file autonomous_calibration_engine.py.
|
protected |
Compute confidence in current prior
Definition at line 183 of file autonomous_calibration_engine.py.
Referenced by update_from_sensor().
|
protected |
Empirical Bayes: Estimate population prior from sensor posteriors. Model: θⱼ ~ N(μ_pop, Σ_pop) (sensors drawn from population) Estimate μ_pop = mean(θⱼ) and Σ_pop = var(θⱼ) + mean(Σⱼ)
Definition at line 132 of file autonomous_calibration_engine.py.
References effective_sample_size, n_params, prior_covariance, prior_mean, and sensor_posteriors.
Referenced by update_from_sensor().
| Tuple[np.ndarray, np.ndarray, float] autonomous_calibration_engine.AdaptivePriorEvolution.get_prior | ( | self | ) |
Get current prior (mean, covariance, confidence)
Definition at line 200 of file autonomous_calibration_engine.py.
| Tuple[np.ndarray, np.ndarray] autonomous_calibration_engine.AdaptivePriorEvolution.predict_future_drift | ( | self, | |
| float | time_horizon ) |
Predict how parameters will drift over time horizon. Returns: (predicted_mean, predicted_covariance)
Definition at line 208 of file autonomous_calibration_engine.py.
| autonomous_calibration_engine.AdaptivePriorEvolution.update_from_sensor | ( | self, | |
| int | sensor_id, | ||
| np.ndarray | posterior_mean, | ||
| np.ndarray | posterior_cov, | ||
| float | quality ) |
Update population prior from individual sensor posterior. Uses empirical Bayes: prior is the mean of all sensor posteriors.
Definition at line 86 of file autonomous_calibration_engine.py.
References _compute_confidence(), _empirical_bayes_update(), drift_detector, effective_sample_size, forgetting_factor, history, feedtwin.session.core.Session.history, prior_covariance, prior_mean, sensor_posteriors, time.time(), and update_count.
| autonomous_calibration_engine.AdaptivePriorEvolution.drift_detector = DriftDetector(n_params) |
Definition at line 80 of file autonomous_calibration_engine.py.
Referenced by update_from_sensor().
| float autonomous_calibration_engine.AdaptivePriorEvolution.effective_sample_size = 1.0 |
Definition at line 76 of file autonomous_calibration_engine.py.
Referenced by _empirical_bayes_update(), and update_from_sensor().
| autonomous_calibration_engine.AdaptivePriorEvolution.forgetting_factor = forgetting_factor |
Definition at line 64 of file autonomous_calibration_engine.py.
Referenced by robust_calibration.RobustCalibrationFramework.add_calibration_point(), robust_calibration.RobustCalibrationFramework.get_calibration_summary(), robust_calibration.RobustCalibrationFramework.recursive_least_squares_update(), and update_from_sensor().
| deque autonomous_calibration_engine.AdaptivePriorEvolution.history = deque(maxlen=100) |
Definition at line 79 of file autonomous_calibration_engine.py.
Referenced by update_from_sensor().
| autonomous_calibration_engine.AdaptivePriorEvolution.n_params = n_params |
Definition at line 63 of file autonomous_calibration_engine.py.
Referenced by _empirical_bayes_update().
| tuple autonomous_calibration_engine.AdaptivePriorEvolution.prior_covariance |
Definition at line 69 of file autonomous_calibration_engine.py.
Referenced by _empirical_bayes_update(), and update_from_sensor().
| tuple autonomous_calibration_engine.AdaptivePriorEvolution.prior_mean = np.zeros(n_params) |
Definition at line 67 of file autonomous_calibration_engine.py.
Referenced by _empirical_bayes_update(), and update_from_sensor().
| autonomous_calibration_engine.AdaptivePriorEvolution.sensor_posteriors = {} |
Definition at line 74 of file autonomous_calibration_engine.py.
Referenced by _empirical_bayes_update(), and update_from_sensor().
| int autonomous_calibration_engine.AdaptivePriorEvolution.update_count = 0 |
Definition at line 75 of file autonomous_calibration_engine.py.
Referenced by update_from_sensor().