OptimizationStrategy

Trait OptimizationStrategy 

Source
pub trait OptimizationStrategy:
    Send
    + Sync
    + Debug {
    // Required methods
    fn name(&self) -> &str;
    fn optimize(
        &self,
        current_allocations: &[ResourceAllocation],
        available_resources: &ResourceUsage,
        pending_requests: &[TaskRequirements],
    ) -> SklResult<OptimizationResult>;
    fn score(
        &self,
        allocations: &[ResourceAllocation],
        usage: &ResourceUsage,
    ) -> f64;
}
Expand description

Optimization strategy trait

Required Methods§

Source

fn name(&self) -> &str

Get strategy name

Source

fn optimize( &self, current_allocations: &[ResourceAllocation], available_resources: &ResourceUsage, pending_requests: &[TaskRequirements], ) -> SklResult<OptimizationResult>

Optimize resource allocations

Source

fn score( &self, allocations: &[ResourceAllocation], usage: &ResourceUsage, ) -> f64

Get optimization score for current state

Implementors§