SpecializedOptimizer

Trait SpecializedOptimizer 

Source
pub trait SpecializedOptimizer:
    Send
    + Sync
    + Debug {
    // Required methods
    fn name(&self) -> &str;
    fn domain(&self) -> OptimizationDomain;
    fn initialize(&mut self) -> SklResult<()>;
    fn analyze_performance(
        &self,
        metrics: &PerformanceMetrics,
    ) -> SklResult<PerformanceAnalysis>;
    fn generate_recommendations(
        &self,
        analysis: &PerformanceAnalysis,
    ) -> SklResult<Vec<OptimizationRecommendation>>;
    fn apply_optimizations(
        &mut self,
        recommendations: &[OptimizationRecommendation],
    ) -> Pin<Box<dyn Future<Output = SklResult<OptimizationResult>> + Send + '_>>;
    fn get_metrics(&self) -> SklResult<OptimizerMetrics>;
    fn update_config(
        &mut self,
        config: HashMap<String, String>,
    ) -> SklResult<()>;
}
Expand description

Specialized optimizer trait

Required Methods§

Source

fn name(&self) -> &str

Get optimizer name

Source

fn domain(&self) -> OptimizationDomain

Get optimization domain

Source

fn initialize(&mut self) -> SklResult<()>

Initialize the optimizer

Source

fn analyze_performance( &self, metrics: &PerformanceMetrics, ) -> SklResult<PerformanceAnalysis>

Analyze current performance

Source

fn generate_recommendations( &self, analysis: &PerformanceAnalysis, ) -> SklResult<Vec<OptimizationRecommendation>>

Generate optimization recommendations

Source

fn apply_optimizations( &mut self, recommendations: &[OptimizationRecommendation], ) -> Pin<Box<dyn Future<Output = SklResult<OptimizationResult>> + Send + '_>>

Apply optimizations

Source

fn get_metrics(&self) -> SklResult<OptimizerMetrics>

Get optimizer metrics

Source

fn update_config(&mut self, config: HashMap<String, String>) -> SklResult<()>

Update optimizer configuration

Implementors§