/** * General superclass for {@link QueuedEntityPlacerConfig} and {@link PooledEntityPlacerConfig}. */ @XStreamInclude({ QueuedEntityPlacerConfig.class, QueuedValuePlacerConfig.class, PooledEntityPlacerConfig.class }) public abstract class EntityPlacerConfig<C extends EntityPlacerConfig> extends AbstractConfig<C> { // ************************************************************************ // Builder methods // ************************************************************************ public abstract EntityPlacer buildEntityPlacer(HeuristicConfigPolicy configPolicy); @Override public void inherit(C inheritedConfig) { } }
@XStreamInclude({ ConstraintMatchTotalBestScoreSubSingleStatistic.class, ConstraintMatchTotalStepScoreSubSingleStatistic.class,
@XStreamAlias("PjsResource") @XStreamInclude({ GlobalResource.class, LocalResource.class }) public abstract class Resource extends AbstractPersistable { private int capacity; public int getCapacity() { return capacity; } public void setCapacity(int capacity) { this.capacity = capacity; } // ************************************************************************ // Complex methods // ************************************************************************ public abstract boolean isRenewable(); }
@XStreamAlias("ContractLine") @XStreamInclude({ BooleanContractLine.class, MinMaxContractLine.class
@XStreamAlias("Pattern") @XStreamInclude({ ShiftType2DaysPattern.class, ShiftType3DaysPattern.class,
/** * Subclasses need to implement {@link Object#equals(Object) equals()} and {@link Object#hashCode() hashCode()} * which are used by {@link ProblemBenchmarksConfig#buildProblemBenchmarkList}. * @param <Solution_> the solution type, the class with the {@link PlanningSolution} annotation */ @XStreamAlias("problemProvider") @XStreamInclude({ InstanceProblemProvider.class, FileProblemProvider.class }) public interface ProblemProvider<Solution_> { /** * @return never null */ String getProblemName(); /** * @return never null */ Solution_ readProblem(); /** * @param solution never null * @param subSingleBenchmarkResult never null */ void writeSolution(Solution_ solution, SubSingleBenchmarkResult subSingleBenchmarkResult); }
@XStreamAlias("VrpDepot") @XStreamInclude({ TimeWindowedDepot.class })
@XStreamInclude({ CustomPhaseConfig.class, NoChangePhaseConfig.class,
@XStreamAlias("TspLocation") @XStreamInclude({ AirLocation.class, RoadLocation.class
@XStreamAlias("CsgBus") @XStreamInclude({ Coach.class, Shuttle.class
@XStreamAlias("VrpLocation") @XStreamInclude({ AirLocation.class, RoadLocation.class
@PlanningEntity(difficultyWeightFactoryClass = ExamDifficultyWeightFactory.class) @XStreamInclude({ LeadingExam.class, FollowingExam.class
@XStreamInclude({ BestScoreProblemStatistic.class, StepScoreProblemStatistic.class,
@PlanningEntity(difficultyWeightFactoryClass = DepotAngleCustomerDifficultyWeightFactory.class) @XStreamAlias("VrpCustomer") @XStreamInclude({ TimeWindowedCustomer.class })
@XStreamInclude({ UnionMoveSelectorConfig.class, CartesianProductMoveSelectorConfig.class, ChangeMoveSelectorConfig.class, SwapMoveSelectorConfig.class,
@PlanningSolution @XStreamAlias("VrpVehicleRoutingSolution") @XStreamInclude({ TimeWindowedVehicleRoutingSolution.class })
@XStreamInclude({ PureSubSingleStatistic.class })
@XStreamAlias("PjsResource") @XStreamInclude({ GlobalResource.class, LocalResource.class }) public abstract class Resource extends AbstractPersistable { private int capacity; public int getCapacity() { return capacity; } public void setCapacity(int capacity) { this.capacity = capacity; } // ************************************************************************ // Complex methods // ************************************************************************ public abstract boolean isRenewable(); }
@XStreamAlias("ContractLine") @XStreamInclude({ BooleanContractLine.class, MinMaxContractLine.class
@XStreamAlias("Pattern") @XStreamInclude({ ShiftType2DaysPattern.class, ShiftType3DaysPattern.class,