HardActivityConstraint womenSecurityConstraint = new HardActivityConstraint() {
@Override public ConstraintsStatus fulfilled(JobInsertionContext iFacts, TourActivity prevAct, TourActivity newAct, TourActivity nextAct, double prevActDepTime) { if(((JobActivity)newAct).getJob().getId().equals("1")) { if(iFacts.getRoute().isEmpty()||nextAct.getName().equals("end")) { return ConstraintsStatus.NOT_FULFILLED_BREAK; } } return ConstraintsStatus.FULFILLED; }
};
[costs=26.0][#vehicles=2]+--------------------------+| problem |+---------------+----------+| indicator | value |+---------------+----------+| noJobs | 3 | | noServices | 3 | | noShipments | 0 | | fleetsize | FINITE | +--------------------------++----------------------------------------------------------+| solution |+---------------+------------------------------------------+| indicator | value |+---------------+------------------------------------------+| costs | 26.0 | | noVehicles | 2 | | unassgndJobs | 0 | +----------------------------------------------------------++--------------------------------------------------------------------------------------------------------------------------------+| detailed solution |+---------+----------------------+-----------------------+-----------------+-----------------+-----------------+-----------------+| route | vehicle | activity | job | arrTime | endTime | costs |+---------+----------------------+-----------------------+-----------------+-----------------+-----------------+-----------------+| 1 | vehicle1 | start | - | undef | 0 | 0 || 1 | vehicle1 | service | 3 | 0 | 0 | 5 || 1 | vehicle1 | service | 1 | 0 | 0 | 6 || 1 | vehicle1 | end | - | 0 | undef | 6 |+---------+----------------------+-----------------------+-----------------+-----------------+-----------------+-----------------+| 2 | vehicle | start | - | undef | 0 | 0 || 2 | vehicle | service | 2 | 0 | 0 | 20 || 2 | vehicle | end | - | 0 | undef | 20 |+--------------------------------------------------------------------------------------------------------------------------------+