pub struct SimuratedAnnealing {
pub iter_count: usize,
pub now: Instant,
pub time: f64,
pub temperture: f64,
pub log_table: Vec<f64>,
pub rand: Xorshift,
pub is_maximize: bool,
pub start_temp: f64,
pub end_temp: f64,
pub time_limit: f64,
pub update_interval: usize,
}
Fields§
§iter_count: usize
§now: Instant
§time: f64
§temperture: f64
§log_table: Vec<f64>
§rand: Xorshift
§is_maximize: bool
§start_temp: f64
§end_temp: f64
§time_limit: f64
§update_interval: usize
Implementations§
Source§impl SimuratedAnnealing
impl SimuratedAnnealing
pub const LOG_TABLE_SIZE: usize = 65_536usize
pub const SEED: u64 = 3_203_386_110u64
pub fn new() -> Self
pub fn minimize(self) -> Self
pub fn set_start_temp(self, start_temp: f64) -> Self
pub fn set_end_temp(self, end_temp: f64) -> Self
pub fn set_time_limit(self, time_limit: f64) -> Self
pub fn set_update_interval(self, update_interval: usize) -> Self
pub fn is_accepted(&mut self, current_score: f64, next_score: f64) -> bool
pub fn is_end(&mut self) -> bool
Trait Implementations§
Source§impl Debug for SimuratedAnnealing
impl Debug for SimuratedAnnealing
Auto Trait Implementations§
impl Freeze for SimuratedAnnealing
impl RefUnwindSafe for SimuratedAnnealing
impl Send for SimuratedAnnealing
impl Sync for SimuratedAnnealing
impl Unpin for SimuratedAnnealing
impl UnwindSafe for SimuratedAnnealing
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more