pub struct SolverMetrics3D {
pub iterations: usize,
pub explored_states: usize,
pub extreme_points_generated: usize,
pub branch_and_bound_nodes: usize,
pub notes: Vec<String>,
}Expand description
Metrics captured while running a 3D solver.
Fields§
§iterations: usizeNumber of top-level solver iterations performed. The exact meaning
depends on the algorithm: deterministic constructive heuristics
(extreme_points*, deepest_bottom_left*, wall_building,
column_building, layer_building*,
first_fit_decreasing_volume, best_fit_decreasing_volume)
report 1; multi_start reports the number of restart loops it
executed; local_search reports the total number of improvement
passes; grasp reports the number of restart loops; guillotine_3d*
reports the number of beam-expansion steps; branch_and_bound
reports the number of outer search depths visited.
explored_states: usizeNumber of states explored during search.
extreme_points_generated: usizeNumber of extreme points generated by EP-family solvers. Set to 0 by every other algorithm.
branch_and_bound_nodes: usizeNumber of branch-and-bound nodes expanded by the exact backend. Set to 0 by every other algorithm.
notes: Vec<String>Free-form notes emitted by the solver for diagnostics.
Trait Implementations§
Source§impl Clone for SolverMetrics3D
impl Clone for SolverMetrics3D
Source§fn clone(&self) -> SolverMetrics3D
fn clone(&self) -> SolverMetrics3D
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SolverMetrics3D
impl Debug for SolverMetrics3D
Source§impl Default for SolverMetrics3D
impl Default for SolverMetrics3D
Source§fn default() -> SolverMetrics3D
fn default() -> SolverMetrics3D
Source§impl<'de> Deserialize<'de> for SolverMetrics3D
impl<'de> Deserialize<'de> for SolverMetrics3D
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for SolverMetrics3D
impl PartialEq for SolverMetrics3D
Source§impl Serialize for SolverMetrics3D
impl Serialize for SolverMetrics3D
impl Eq for SolverMetrics3D
impl StructuralPartialEq for SolverMetrics3D
Auto Trait Implementations§
impl Freeze for SolverMetrics3D
impl RefUnwindSafe for SolverMetrics3D
impl Send for SolverMetrics3D
impl Sync for SolverMetrics3D
impl Unpin for SolverMetrics3D
impl UnsafeUnpin for SolverMetrics3D
impl UnwindSafe for SolverMetrics3D
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more