LotSizingDataModel.Solver
2.0.1
Solver-independent modeling, execution, monitoring and adapter infrastructure.
Loading...
Searching...
No Matches
IStandardLotSizingConstraintFamilyBuilder.cs
Go to the documentation of this file.
1
using
System.Threading;
2
using
System.Threading.Tasks;
3
using
LotSizingDataModel.Instance;
4
using
LotSizingDataModel.Solver.Building
;
5
6
namespace
LotSizingDataModel.Solver.Formulation
;
7
8
/// <summary>
9
/// Defines one constraint family of the standard lot-sizing
10
/// formulation.
11
/// </summary>
12
public
interface
IStandardLotSizingConstraintFamilyBuilder
13
{
14
/// <summary>
15
/// Gets the unique identifier of the constraint family.
16
/// </summary>
17
string
ConstraintFamilyId
18
{
19
get
;
20
}
21
22
/// <summary>
23
/// Determines whether this constraint family is enabled.
24
/// </summary>
25
/// <param name="instance">
26
/// Source lot-sizing instance.
27
/// </param>
28
/// <param name="options">
29
/// Standard formulation options.
30
/// </param>
31
/// <returns>
32
/// <see langword="true"/> when this family must be built;
33
/// otherwise, <see langword="false"/>.
34
/// </returns>
35
bool
IsEnabled
(
36
LotSizingInstance instance,
37
StandardLotSizingFormulationOptions
options);
38
39
/// <summary>
40
/// Builds all constraints belonging to this family.
41
/// </summary>
42
/// <param name="instance">
43
/// Source lot-sizing instance.
44
/// </param>
45
/// <param name="context">
46
/// Mathematical-model build context.
47
/// </param>
48
/// <param name="options">
49
/// Standard formulation options.
50
/// </param>
51
/// <param name="cancellationToken">
52
/// Token used to cancel constraint construction.
53
/// </param>
54
/// <returns>
55
/// Task representing constraint-family construction.
56
/// </returns>
57
ValueTask
BuildAsync
(
58
LotSizingInstance instance,
59
MathematicalModelBuildContext
context,
60
StandardLotSizingFormulationOptions
options,
61
CancellationToken cancellationToken =
default
);
62
}
LotSizingDataModel.Solver.Building.MathematicalModelBuildContext
Provides the shared state required while constructing a solver-independent mathematical model.
Definition
MathematicalModelBuildContext.cs:18
LotSizingDataModel.Solver.Formulation.StandardLotSizingFormulationOptions
Configures the standard solver-independent mixed-integer lot-sizing formulation.
Definition
StandardLotSizingFormulationOptions.cs:10
LotSizingDataModel.Solver.Formulation.IStandardLotSizingConstraintFamilyBuilder
Defines one constraint family of the standard lot-sizing formulation.
Definition
IStandardLotSizingConstraintFamilyBuilder.cs:13
LotSizingDataModel.Solver.Formulation.IStandardLotSizingConstraintFamilyBuilder.ConstraintFamilyId
string ConstraintFamilyId
Gets the unique identifier of the constraint family.
Definition
IStandardLotSizingConstraintFamilyBuilder.cs:18
LotSizingDataModel.Solver.Formulation.IStandardLotSizingConstraintFamilyBuilder.IsEnabled
bool IsEnabled(LotSizingInstance instance, StandardLotSizingFormulationOptions options)
Determines whether this constraint family is enabled.
LotSizingDataModel.Solver.Formulation.IStandardLotSizingConstraintFamilyBuilder.BuildAsync
ValueTask BuildAsync(LotSizingInstance instance, MathematicalModelBuildContext context, StandardLotSizingFormulationOptions options, CancellationToken cancellationToken=default)
Builds all constraints belonging to this family.
LotSizingDataModel.Solver.Building
Definition
InventoryBalanceConstraintBuilder.cs:5
LotSizingDataModel.Solver.Formulation
Definition
BacklogCostObjectiveTermBuilder.cs:9
LotSizingDataModel.Solver
Formulation
IStandardLotSizingConstraintFamilyBuilder.cs
Generated by
1.17.0