CoinWarmStart

Abstract base class for warm start information.

Abstract base class for warm start information.

Derived classes: CoinWarmStartVector< double >, CoinWarmStartVector< U >, CoinWarmStartBasis, CoinWarmStartDual, CoinWarmStartPrimalDual, CoinWarmStartVector< T >, CoinWarmStartVectorPair< T, U >

Description

Provides the interface for warm start objects that store solver state enabling faster re-optimization. Derived classes implement solver-specific storage (e.g., variable/constraint basis status for simplex methods). The class supports a diff mechanism for efficient incremental updates:generateDiff() computes changes from another warm startapplyDiff() applies a diff to update this warm start

Public Methods

~CoinWarmStart

Virtual destructor for proper cleanup of derived classes.

 ~CoinWarmStart()

clone

Create a deep copy of this warm start object.

CoinWarmStart * clone()

Returns: Pointer to newly allocated copy (caller owns memory)

generateDiff

Generate a diff representing changes from another warm start.

CoinWarmStartDiff * generateDiff(const CoinWarmStart *const oldWarmStart)

Parameters:

Returns: Pointer to diff object (caller owns memory), or nullptr if not supported

applyDiff

Apply a diff to update this warm start.

void applyDiff(const CoinWarmStartDiff *const diff)

Parameters:

Source

Header: layer-0/CoinUtils/src/CoinWarmStart.hpp