public class MachineReassignmentConstraintProvider extends Object implements org.optaplanner.core.api.score.stream.ConstraintProvider
Constructor and Description |
---|
MachineReassignmentConstraintProvider() |
Modifier and Type | Method and Description |
---|---|
protected org.optaplanner.core.api.score.stream.Constraint |
balanceCost(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
availability(r) = capacity(m, r) - usage(m, r)
balanceCost = sum(max(0, multiplier * availability(m, r1) - availability(m, r2)))
|
org.optaplanner.core.api.score.stream.Constraint[] |
defineConstraints(org.optaplanner.core.api.score.stream.ConstraintFactory factory) |
protected org.optaplanner.core.api.score.stream.Constraint |
loadCost(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
Load: The safety capacity for each resource for each machine should not be exceeded.
|
protected org.optaplanner.core.api.score.stream.Constraint |
machineMoveCost(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
Machine move cost: Moving a process from machine A to machine B has another A-B specific move cost.
|
protected org.optaplanner.core.api.score.stream.Constraint |
maximumCapacity(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
Maximum capacity: The maximum capacity for each resource for each machine must not be exceeded.
|
protected org.optaplanner.core.api.score.stream.Constraint |
processMoveCost(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
Process move cost: A process has a move cost.
|
protected org.optaplanner.core.api.score.stream.Constraint |
serviceConflict(org.optaplanner.core.api.score.stream.ConstraintFactory factory) |
protected org.optaplanner.core.api.score.stream.Constraint |
serviceDependency(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
Dependency: The processes of a service depending on another service must run in the neighborhood of a process
of the other service.
|
protected org.optaplanner.core.api.score.stream.Constraint |
serviceLocationSpread(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
Spread: Processes of the same service must be serviceLocationSpread out across locations.
|
protected org.optaplanner.core.api.score.stream.Constraint |
serviceMoveCost(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
Service move cost: A service has a move cost.
|
protected org.optaplanner.core.api.score.stream.Constraint |
transientUsage(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
Transient usage: Some resources are transient and count towards the maximum capacity of both the original
machine as the newly assigned machine.
|
public MachineReassignmentConstraintProvider()
public org.optaplanner.core.api.score.stream.Constraint[] defineConstraints(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
defineConstraints
in interface org.optaplanner.core.api.score.stream.ConstraintProvider
protected org.optaplanner.core.api.score.stream.Constraint maximumCapacity(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
protected org.optaplanner.core.api.score.stream.Constraint serviceConflict(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
protected org.optaplanner.core.api.score.stream.Constraint serviceLocationSpread(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
protected org.optaplanner.core.api.score.stream.Constraint serviceDependency(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
protected org.optaplanner.core.api.score.stream.Constraint transientUsage(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
protected org.optaplanner.core.api.score.stream.Constraint loadCost(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
protected org.optaplanner.core.api.score.stream.Constraint balanceCost(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
protected org.optaplanner.core.api.score.stream.Constraint processMoveCost(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
protected org.optaplanner.core.api.score.stream.Constraint serviceMoveCost(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
protected org.optaplanner.core.api.score.stream.Constraint machineMoveCost(org.optaplanner.core.api.score.stream.ConstraintFactory factory)
Copyright © 2006–2020 JBoss by Red Hat. All rights reserved.