Constraints Tables
User may add custom constraints with respect to capacity or counts. These tables are:
- Flow Constraint
- Flow Count Constraint
- Inventory Constraint
- Inventory Count Constraint
- Production Constraint
- Production Count Constraint
- Demand Constraint
- Expression Constraint
Flow Constraint
User may add flow constraint based on minimum, maximum or conditional minimum requirements.
- Flow Constraint Name: User may give unique constraint name for any constraint, it is an optional field.
- ItemType/Source Type/Destination Type: User may choose For All/For Each based on constraint.
- “For All” is selected to apply constraint at aggregated level.
- “For Each” is selected to apply constraint for each member.
- Item/Source Location/Destination Location: Specify All/group/individual member for which this constraint applies to.
- Flow Requirement/ Flow Basis: Enter constraint quantity/volume/weight as per constraint requirement in Flow Requirement and Flow Basis.
- Constraint Type: Enter Min/Max/Fixed/Condition Min/Define as per constraint requirement. Define is used to define custom constraint in expression constraints. For Define type, user must provide unique constraint name and must not have “For Each” type of constraint.
- Constraint Status: Enable or Disable a constraint by setting this field to Active/Inactive.
E.g. (1): Total outbound flow from DC_001 cannot exceed 1000 KGS
ColumnNames |
Values |
FlowConstraintName |
Test_001 |
ItemType |
ForAll |
Item |
All |
SourceType |
ForEach |
SourceLocation |
DC_001 |
DestinationType |
ForAll |
DestinationLocation |
All |
PeriodType |
ForAll |
PeriodName |
All |
FlowRequirement |
1000 |
FlowBasis |
Weight |
ConstraintType |
Max |
ConstraintStatus |
Active |
E.g. (2): Total outbound flow from DC_001 for each period cannot exceed 200 Units
ColumnNames |
Values |
FlowConstraintName |
Test_001 |
ItemType |
ForAll |
Item |
All |
SourceType |
ForEach |
SourceLocation |
DC_001 |
DestinationType |
ForAll |
DestinationLocation |
All |
PeriodType |
ForAll |
PeriodName |
All |
FlowRequirement |
200 |
FlowBasis |
Quantity |
ConstraintType |
Max |
ConstraintStatus |
Active |
E.g. (3): Total outbound flow from Any DC should be at least 1200 units
ColumnNames |
Values |
FlowConstraintName |
Test_001 |
ItemType |
ForAll |
Item |
All |
SourceType |
ForEach |
SourceLocation |
(Group) All DC |
DestinationType |
ForAll |
DestinationLocation |
All |
PeriodType |
ForAll |
PeriodName |
All |
FlowRequirement |
1200 |
FlowBasis |
Quantity |
ConstraintType |
ConditionalMinimum |
ConstraintStatus |
Active |
Flow Count Constraint
User may add flow count constraint to restrict count w.r.t to facility, customer, period, or items.
- Flow Constraint Name: User may give unique constraint name for any constraint, it is an optional field.
- ItemType/Source Type/Destination Type/Period Type: User may choose For All/For Each/ For Any based on constraint.
- “For All” is selected to apply constraint at aggregated level.
- “For Each” is selected to apply constraint for each member.
- “For Any” is selected to apply constraint count out of these items/source/destination.
- Item/Source Location/Destination Location/Period Type: Specify All/group/individual member for which this constraint applies to.
- Flow Count Value: Enter constraint count as per constraint requirement.
- Constraint Type: Enter Min/Max/Fixed/Condition Min/Define as per constraint requirement. Define is used to define custom constraint in expression constraints. For Define type, user must provide unique constraint name and must not have “For Each” type of constraint.
- Constraint Status: Enable or Disable a constraint by setting this field to Active/Inactive
E.g. (1): A facility ‘DC_001’ can procure from maximum of 2 facilities
ColumnNames |
Values |
FlowConstraintName |
Test_001 |
ItemType |
ForAll |
Item |
All |
SourceType |
ForAny |
SourceLocation |
All |
DestinationType |
ForEach |
DestinationLocation |
DC_001 |
PeriodType |
ForAll |
PeriodName |
All |
FlowCountValue |
2 |
ConstraintType |
Max |
ConstraintStatus |
Active |
E.g. (2): Each customer can have each item from maximum of 1 facility
ColumnNames |
Values |
FlowConstraintName |
Test_001 |
ItemType |
ForEach |
Item |
All |
SourceType |
ForAny |
SourceLocation |
All |
DestinationType |
ForEach |
DestinationLocation |
All |
PeriodType |
ForAll |
PeriodName |
All |
FlowCountValue |
1 |
ConstraintType |
Max |
ConstraintStatus |
Active |
E.g. (3): At most 2 DC’S can be used in the supply chain
ColumnNames |
Values |
FlowConstraintName |
Test_001 |
ItemType |
ForAll |
Item |
All |
SourceType |
ForAll |
SourceLocation |
All |
DestinationType |
ForAny |
DestinationLocation |
(Group) All DC |
PeriodType |
ForAll |
PeriodName |
All |
FlowCountValue |
1 |
ConstraintType |
Max |
ConstraintStatus |
Active |
Production Constraint
User may add production specific constraint with respect to capacities or requirements.
- Production Constraint Name: User may give unique constraint name for any constraint, it is an optional field.
- ItemType/Location Type/Period Type: User may choose For All/For Each based on constraint.
- “For All” is selected to apply constraint at aggregated level.
- “For Each” is selected to apply constraint for each member.
- Item/Location/Period: Specify All/group/individual member for which this constraint applies to.
- Production Requirement/ Production Basis: Enter constraint quantity/volume/weight as per constraint requirement in Production Requirement and Production Basis
- Constraint Type: Enter Min/Max/Fixed/Condition Min/Define as per constraint requirement. Define is used to define custom constraint in expression constraints. For Define type, user must provide unique constraint name and must not have “For Each” type of constraint.
- Constraint Status: Enable or Disable a constraint by setting this field to Active/Inactive
E.g.: Any facility should produce any item at least 10000 KGS for the model horizon
ColumnNames |
Values |
ProductionConstraintName |
Test_001 |
ItemType |
ForEach |
Item |
All |
LocationType |
ForEach |
Location |
All |
PeriodType |
ForAll |
PeriodName |
All |
ProductionRequirement |
10000 |
ProductionBasis |
Weight |
ConstraintType |
ConditionalMinimum |
ConstraintStatus |
Active |
Production Count Constraint
User may add count constraint to restrict number of location, item or period or any combination.
- Production Constraint Name: User may give unique constraint name for any constraint, it is an optional field.
- ItemType/Location Type/Period Type: User may choose For All/For Each/For Any based on constraint.
- “For All” is selected to apply constraint at aggregated level.
- “For Each” is selected to apply constraint for each member.
- “For Any” is selected to apply constraint count out of these items/location/period.
- Item/Location/Period: Specify All/group/individual member for which this constraint applies to.
- Production Count Value: Enter constraint count as per constraint requirement.
- Constraint Type: Enter Min/Max/Fixed/Condition Min/Define as per constraint requirement. Define is used to define custom constraint in expression constraints. For Define type, user must provide unique constraint name and must not have “For Each” type of constraint.
- Constraint Status: Enable or Disable a constraint by setting this field to Active/Inactive
E.g.: A facility ‘MFG_001’ can produce at most 3 items per period
ColumnNames |
Values |
ProductionConstraintName |
Test_001 |
ItemType |
ForAny |
Item |
All |
LocationType |
ForEach |
Location |
MFG_001 |
PeriodType |
ForEach |
PeriodName |
All |
ProductionCountValue |
3 |
ConstraintType |
Max |
ConstraintStatus |
Active |
Inventory Constraint
User may add inventory specific constraint with respect to capacities or requirements.
- Inventory Constraint Name: User may give unique constraint name for any constraint, it is an optional field.
- ItemType/Location Type/Period Type: User may choose For All/For Each based on constraint.
- “For All” is selected to apply constraint at aggregated level.
- “For Each” is selected to apply constraint for each member.
- Item/Location/Period: Specify All/group/individual member for which this constraint applies to.
- Inventory Requirement/ Inventory Basis: Enter constraint quantity/volume/weight as per constraint requirement in Inventory Requirement and Inventory Basis
- Inventory Type: Enter inventory type on which constraint is applicable. Inventory Types can be: Ending Inventory/Cycle Stock/Total Inventory/Turn Estimated Inventory. Check “Inventory Output” table to understand what each inventory type means.
- Constraint Type: Enter Min/Max/Fixed /Condition Min/Define as per constraint requirement. Define is used to define custom constraint in expression constraints. For Define type, user must provide unique constraint name and must not have “For Each” type of constraint.
- Constraint Status: Enable or Disable a constraint by setting this field to Active/Inactive
E.g.: Max inventory for a site DC_001 can be 1000 KGS
ColumnNames |
Values |
InventoryConstraintName |
Test_001 |
ItemType |
ForEach |
Item |
All |
LocationType |
ForEach |
Location |
All |
PeriodType |
ForAll |
PeriodName |
All |
InventoryRequirement |
10000 |
InventoryBasis |
Weight |
InventoryType |
EndingInventory |
ConstraintType |
ConditionalMinimum |
ConstraintStatus |
Active |
Inventory Count Constraint
User may add count constraint to restrict number of location, item or period or any combination.
- Inventory Constraint Name: User may give unique constraint name for any constraint, it is an optional field.
- ItemType/Location Type/Period Type: User may choose For All/For Each/For Any based on constraint.
- “For All” is selected to apply constraint at aggregated level.
- “For Each” is selected to apply constraint for each member.
- “For Any” is selected to apply constraint count out of these items/location/period.
- Item/Location/Period: Specify All/group/individual member for which this constraint applies to.
- Inventory Count Value: Enter constraint count as per constraint requirement.
- Constraint Type: Enter Min/Max/Fixed /Condition Min/Define as per constraint requirement. Define is used to define custom constraint in expression constraints. For Define type, user must provide unique constraint name and must not have “For Each” type of constraint.
- Constraint Status: Enable or Disable a constraint by setting this field to Active/Inactive
For E.g.: A warehouse ‘DC_001’ can have at most 2 items in its warehouse
ColumnNames |
Values |
InventoryConstraintName |
Test_001 |
ItemType |
ForAny |
Item |
All |
LocationType |
ForEach |
Location |
DC_001 |
PeriodType |
ForAll |
PeriodName |
All |
InventoryCountValue |
3 |
ConstraintType |
Max |
ConstraintStatus |
Active |
Demand Constraint
In case of variable demand, user may add demand constraint at an aggregated level.
- Inventory Constraint Name: User may give unique constraint name for any constraint, it is an optional field.
- ItemType/Customer Type/Period Type: User may choose For All/For Each based on constraint.
- “For All” is selected to apply constraint at aggregated level.
- “For Each” is selected to apply constraint for each member.
- Item/Customer/Period: Specify All/group/individual member for which this constraint applies to.
- Demand Requirement/ Demand Basis: Enter constraint quantity/volume/weight as per constraint requirement in Inventory Requirement and Inventory Basis.
- Constraint Type: Enter Min/Max/Fixed/Condition Minimum as per constraint requirement.
- Constraint Status: Enable or Disable a constraint by setting this field to Active/Inactive
E.g. (1). Total demand for a customer CZ_001 in each period should be minimum 100 KGS
ColumnNames |
Values |
ItemType |
ForEach |
Item |
All |
CustomerType |
ForEach |
Customer |
All |
PeriodType |
ForAll |
PeriodName |
All |
DemandRequirement |
100 |
DemandBasis |
Weight |
ConstraintType |
Min |
ConstraintStatus |
Active |
Expression Constraint
User may define expression based on “Define” type expressions in other constraint tables.
- Constraint Name: User may give unique constraint name for any constraint, it is an optional field.
- Coefficient1: Coefficient which is multiplied by expression 1.
- Expression1: “Define” type constraint name which is defined in any constraint table.
- Coefficient2: Coefficient which is multiplied by expression 2.
- Expression2: “Define” type constraint name which is defined in any constraint table.
- Constraint Type: Enter Min/Max/Fixed/Condition Minimum as per constraint requirement.
- Constraint Value: Enter constraint value as per constraint requirement.
- Constraint Status: Enable or Disable a constraint by setting this field to Active/Inactive.
E.g. production_count_001 + flow_count_001 <= 1
ColumnNames |
Values |
ConstraintName |
Test_001 |
Coefficient1 |
1 |
Expression1 |
production_count_001 |
Coefficient2 |
1 |
Expression2 |
flow_count_001 |
ConstraintValue |
1 |
ConstraintType |
Max |
ConstraintStatus |
Active |