public UmlaufInterpolator(Network network, final PlanCalcScoreConfigGroup config) { super(); this.network = network; FreespeedTravelTimeAndDisutility travelTimes = new FreespeedTravelTimeAndDisutility(config); this.routingAlgo = new DijkstraFactory().createPathCalculator(network, travelTimes, travelTimes); }
@Override public LeastCostPathCalculatorFactory getFactory(final Network network, final TravelDisutility costCalc, final TravelTime timeCalc) { return new DijkstraFactory(); } });
@Override public List<? extends PlanElement> calcRoute(Facility fromFacility, Facility toFacility, double departureTime, Person person) { List<? extends PlanElement> trip = DefaultRoutingModules.createPureNetworkRouter("car", scenario.getPopulation().getFactory(), scenario.getNetwork(), leastCostAlgoFactory.createPathCalculator(scenario.getNetwork(), disutilityFactory.createTravelDisutility(travelTime), travelTime) ).calcRoute(fromFacility, toFacility, departureTime, person); ((NetworkRoute) TripStructureUtils.getLegs(trip).get(0).getRoute()).setVehicleId(newVehicleId); return trip; }
@Override public LeastCostPathCalculatorFactory getFactory(final Network network, final TravelDisutility costCalc, final TravelTime timeCalc) { return new DijkstraFactory(true); } });
public SimpleCircleScheduleProvider(String pIdentifier, TransitSchedule scheduleWithStopsOnly, Network network, RandomStopProvider randomStopProvider, double vehicleMaximumVelocity, double driverRestTime, final String transportMode) { this.pIdentifier = pIdentifier; this.net = network; this.scheduleWithStopsOnly = scheduleWithStopsOnly; this.randomStopProvider = randomStopProvider; this.transportMode = transportMode; FreespeedTravelTimeAndDisutility tC = new FreespeedTravelTimeAndDisutility(-6.0, 0.0, 0.0); this.routingAlgo = new DijkstraFactory().createPathCalculator(this.net, tC, tC); @SuppressWarnings("serial") Set<String> modes = new HashSet<String>(){{ // this is the networkmode and explicitly not the transportmode add(TransportMode.car); }}; ((Dijkstra)this.routingAlgo).setModeRestriction(modes); this.vehicleMaximumVelocity = vehicleMaximumVelocity; this.driverRestTime = driverRestTime; }
config.plans().setInputFile("plans1.xml"); final Scenario scenario = ScenarioUtils.loadScenario(config); final DijkstraFactory leastCostAlgoFactory = new DijkstraFactory(); final OnlyTimeDependentTravelDisutilityFactory disutilityFactory = new OnlyTimeDependentTravelDisutilityFactory(); final FreeSpeedTravelTime travelTime = new FreeSpeedTravelTime();
@Inject public OneTruckOptimizer(@Named(DvrpRoutingNetworkProvider.DVRP_ROUTING) Network network, @DvrpMode(TransportMode.truck) Fleet fleet, MobsimTimer timer) { this.timer = timer; travelTime = new FreeSpeedTravelTime(); router = new DijkstraFactory().createPathCalculator(network, new TimeAsTravelDisutility(travelTime), travelTime); vehicle = fleet.getVehicles().values().iterator().next(); vehicle.resetSchedule(); vehicle.getSchedule() .addTask(new StayTaskImpl(vehicle.getServiceBeginTime(), vehicle.getServiceEndTime(), vehicle.getStartLink(), "wait")); }
LinkToLinkTravelTimeStub tt = new LinkToLinkTravelTimeStub(); TravelDisutilityFactory tc = new RandomizingTimeDistanceTravelDisutilityFactory( TransportMode.car, f.s.getConfig().planCalcScore() ); LeastCostPathCalculatorFactory lcpFactory = new DijkstraFactory();
@Inject public OneTaxiOptimizer(@Named(DvrpRoutingNetworkProvider.DVRP_ROUTING) Network network, @DvrpMode(TransportMode.taxi) Fleet fleet, MobsimTimer timer) { this.timer = timer; travelTime = new FreeSpeedTravelTime(); router = new DijkstraFactory().createPathCalculator(network, new TimeAsTravelDisutility(travelTime), travelTime); vehicle = fleet.getVehicles().values().iterator().next(); vehicle.resetSchedule(); vehicle.getSchedule() .addTask(new StayTaskImpl(vehicle.getServiceBeginTime(), vehicle.getServiceEndTime(), vehicle.getStartLink(), "wait")); }
public ComplexCircleScheduleProvider(TransitSchedule scheduleWithStopsOnly, Network network, RandomStopProvider randomStopProvider, double vehicleMaximumVelocity, double planningSpeedFactor, double driverRestTime, final String transportMode) { this.net = network; this.scheduleWithStopsOnly = scheduleWithStopsOnly; FreespeedTravelTimeAndDisutility tC = new FreespeedTravelTimeAndDisutility(-6.0, 0.0, 0.0); // Here, it may make sense to use the variable cost parameters given in the config. Ihab/Daniel may'14 this.routingAlgo = new DijkstraFactory().createPathCalculator(this.net, tC, tC); @SuppressWarnings("serial") Set<String> modes = new HashSet<String>(){{ // this is the networkmode and explicitly not the transportmode add(TransportMode.car); }}; ((Dijkstra)this.routingAlgo).setModeRestriction(modes); // register all stops by their corresponding link id this.linkId2StopFacilityMap = new LinkedHashMap<>(); for (TransitStopFacility stop : this.scheduleWithStopsOnly.getFacilities().values()) { if (stop.getLinkId() == null) { log.warn("There is a potential paratransit stop without a corresponding link id. Shouldn't be possible. Check stop " + stop.getId()); } else { this.linkId2StopFacilityMap.put(stop.getLinkId(), stop); } } this.randomStopProvider = randomStopProvider; this.vehicleMaximumVelocity = vehicleMaximumVelocity; this.planningSpeedFactor = planningSpeedFactor; this.driverRestTime = driverRestTime; this.transportMode = transportMode; }
this.scheduleWithStopsOnly = scheduleWithStopsOnly; FreespeedTravelTimeAndDisutility tC = new FreespeedTravelTimeAndDisutility(-6.0, 0.0, 0.0); // Here, it may make sense to use the variable cost parameters given in the config. Ihab/Daniel may'14 this.routingAlgo = new DijkstraFactory().createPathCalculator(this.net, tC, tC); @SuppressWarnings("serial") Set<String> modes = new HashSet<String>(){{
/** * @author cdobler */ private void createTripRouter() { com.google.inject.Injector injector = Injector.createInjector(scenario.getConfig(), new AbstractModule() { @Override public void install() { install(AbstractModule.override(Arrays.asList(new TripRouterModule()), new AbstractModule() { @Override public void install() { install(new ScenarioByInstanceModule(scenario)); addTravelTimeBinding("car").toInstance(new FreeSpeedTravelTime()); addTravelDisutilityFactoryBinding("car").toInstance(new OnlyTimeDependentTravelDisutilityFactory()); } })); } }); tripRouter = injector.getInstance(TripRouter.class); TravelTime timeFunction = new FreeSpeedTravelTime() ; TravelDisutility costFunction = new OnlyTimeDependentTravelDisutility( timeFunction ) ; this.pathCalculator = new DijkstraFactory().createPathCalculator(scenario.getNetwork(), costFunction, timeFunction) ; }
private TransitRoute createRoute(Id<TransitRoute> routeID, TransitStopFacility startStop, TransitStopFacility endStop){ LeastCostPathCalculator routingAlgo = new DijkstraFactory().createPathCalculator(this.net, tC, tC); @SuppressWarnings("serial") Set<String> modes = new HashSet<String>(){{
private static List<Person> createPersons(Id<Link> homeId, Id<Link> workId,Scenario scenario) { LeastCostPathCalculator lcpa = new DijkstraFactory().createPathCalculator(scenario.getNetwork(), new FreespeedTravelTimeAndDisutility(-1.0, -1.0, -1.0), new FreespeedTravelTimeAndDisutility(-1.0, -1.0, -1.0)); PopulationFactory popFactory = (PopulationFactory) scenario.getPopulation().getFactory();
TravelDisutility travelDisutility = new OnlyTimeDependentTravelDisutility(travelTime); LeastCostPathCalculator router = new DijkstraFactory().createPathCalculator(network, travelDisutility, travelTime); NetworkRoutingModule routingModule = new NetworkRoutingModule("car", population.getFactory(), network,