@Override protected final void runMobSim() { this.mobsimProvider.get().run(); }
private void sim(Carriers carriers) { EventsManager events = EventsUtils.createEventsManager(); CarrierAgentTracker carrierAgentTracker = new CarrierAgentTracker(carriers, scenario.getNetwork(), new CarrierScoringFunctionFactory() { @Override public ScoringFunction createScoringFunction(Carrier carrier) { return getNoScoring(); } }); CarrierConfig carrierConfig = new CarrierConfig(); carrierConfig.setPhysicallyEnforceTimeWindowBeginnings(true); FreightQSimFactory mobsimFactory = new FreightQSimFactory(scenario, events, carrierAgentTracker, carrierConfig); config.qsim().setSnapshotStyle(QSimConfigGroup.SnapshotStyle.queue); Mobsim mobsim = mobsimFactory.get(); OnTheFlyServer server = OTFVis.startServerAndRegisterWithQSim(config, scenario, events, (QSim) mobsim); OTFClientLive.run(config, server); mobsim.run(); }
public void makeMVI(Carriers carriers, String outfile, double snapshotInterval){ OTFFileWriter otfFileWriter = new OTFFileWriter(scenario, outfile); EventsManager events = EventsUtils.createEventsManager(); CarrierAgentTracker carrierAgentTracker = new CarrierAgentTracker(carriers, scenario.getNetwork(), new CarrierScoringFunctionFactory() { @Override public ScoringFunction createScoringFunction(Carrier carrier) { return getNoScoring(); } }); CarrierConfig carrierConfig = new CarrierConfig(); carrierConfig.setPhysicallyEnforceTimeWindowBeginnings(true); FreightQSimFactory mobsimFactory = new FreightQSimFactory(scenario, events, carrierAgentTracker, carrierConfig); Mobsim mobsim = mobsimFactory.get(); SnapshotGenerator visualizer = new SnapshotGenerator(scenario.getNetwork(), snapshotInterval, scenario.getConfig().qsim()); visualizer.addSnapshotWriter(otfFileWriter); events.addHandler(visualizer); mobsim.run(); visualizer.finish(); otfFileWriter.finish(); }