지역 기금 모금의 투어를 최적화하는 것에 대해 생각합니다. 우리는 한 위치에서 다른 위치로 이동하는 고정 된 양의 그룹을 가지고 있습니다. 목표는 총 시간을 최소화하고 모든 그룹이 동일한 시간을 사용한다는 것입니다.jsprit의 총 시간을 최소화하십시오.
지금까지 자동차 조작 당 비용 (거리, 수정, 전송 시간, ...) 만 발견했습니다.
누구든지 jsprit에서이 목표를 구현하는 방법을 알고 있습니까?
지역 기금 모금의 투어를 최적화하는 것에 대해 생각합니다. 우리는 한 위치에서 다른 위치로 이동하는 고정 된 양의 그룹을 가지고 있습니다. 목표는 총 시간을 최소화하고 모든 그룹이 동일한 시간을 사용한다는 것입니다.jsprit의 총 시간을 최소화하십시오.
지금까지 자동차 조작 당 비용 (거리, 수정, 전송 시간, ...) 만 발견했습니다.
누구든지 jsprit에서이 목표를 구현하는 방법을 알고 있습니까?
문제에 대해 사용자 지정된 제약 조건을 추가해야합니다.
총 시간은 맞춤 설정없이 JSprit에 의해 최적화되어야합니다. 같은 시간에 대해서 - 가장 쉬운 방법은 시간이 같지 않으면 사용자 정의 SolutionCostCalculator
을 작성하고 경로 비용을 늘리는 것입니다.
VehicleRoutingProblem vrp = vrpBuilder.build();
// init your vrp
VehicleRoutingAlgorithm algorithm = Jsprit.Builder.newInstance(vrp)
.setObjectiveFunction(new SPSolutionCostCalculator(stateManager))
.buildAlgorithm();
Collection<VehicleRoutingProblemSolution> searchSolutions = algorithm.searchSolutions();
VehicleRoutingProblemSolution solution = Solutions.bestOf(searchSolutions);
: 알고리즘을 만드는 동안 다음
public class CustomSolutionCostCalculator implements SolutionCostCalculator {
private StateManager stateManager;
public SPSolutionCostCalculator(StateManager aStateManager) {
stateManager = aStateManager;
}
@Override
public double getCosts(VehicleRoutingProblemSolution solution) {
double cost = 0.0;
// calculate cost
return cost;
}
}
및 사용