ULSAlgorithms 1.1.0-g3e5595996d
High-performance exact and heuristic algorithms for uncapacitated lot sizing
Loading...
Searching...
No Matches
ILsCutSeparator.cs
Go to the documentation of this file.
4
6
7/// <summary>
8/// Separates classical ULS (l,S) inequalities from a fractional aggregate
9/// lot-sizing solution.
10/// </summary>
11public interface ILsCutSeparator
12{
13 /// <summary>Gets the stable separator name.</summary>
14 string Name { get; }
15
16 /// <summary>Gets the traceability method identifier.</summary>
18
19 /// <summary>Tests whether the separator is applicable to the problem.</summary>
21 UlsProblem problem);
22
23 /// <summary>
24 /// Generates the separator's candidate inequalities at one LP point.
25 /// </summary>
26 IReadOnlyList<LsSeparatedCut> Separate(
27 UlsProblem problem,
28 UlsFormulation formulation,
29 IReadOnlyDictionary<int, double> variableValues);
30}
Solver-independent ULS mathematical formulation plus semantic variable map.
Represents a validated classical uncapacitated lot-sizing problem.
Definition UlsProblem.cs:23
Separates classical ULS (l,S) inequalities from a fractional aggregate lot-sizing solution.
CutSeparationMethod Method
Gets the traceability method identifier.
bool IsApplicable(UlsProblem problem)
Tests whether the separator is applicable to the problem.
IReadOnlyList< LsSeparatedCut > Separate(UlsProblem problem, UlsFormulation formulation, IReadOnlyDictionary< int, double > variableValues)
Generates the separator's candidate inequalities at one LP point.
CutSeparationMethod
Identifies the separation procedure that generated a cut.