@Override public boolean handleActivity(MobsimAgent agent) { // We expect all the agents to appear here at the beginning of the simulation (starting their // overnight activity.) That's when we enter them into JDEQSim and never let them out. new Vehicle(scheduler, ((HasPerson) agent).getPerson(), scenario.getConfig().plans().getActivityDurationInterpretation()); numberOfAgents++; return true; }
@Override public void run() { events.initProcessing(); Timer t = new Timer(); t.startTimer(); Scheduler scheduler = new Scheduler(new MessageQueue(), config.getSimulationEndTime()); Road.setAllRoads(new HashMap<Id<Link>, Road>()); // initialize network Road road; for (Link link : this.scenario.getNetwork().getLinks().values()) { road = new Road(scheduler, link); Road.getAllRoads().put(link.getId(), road); } for (Person person : this.scenario.getPopulation().getPersons().values()) { new Vehicle(scheduler, person, activityDurationInterpretation); // the vehicle registers itself to the scheduler } scheduler.startSimulation(); t.endTimer(); log.info("Time needed for one iteration (only JDEQSimulation part): " + t.getMeasuredTime() + "[ms]"); events.finishProcessing(); } }
public void testMessageFactory6(){ MessageFactory.GC_ALL_MESSAGES(); JDEQSimConfigGroup.setGC_MESSAGES(false); Scheduler scheduler=new Scheduler(new MessageQueue()); Person person= PopulationUtils.getFactory().createPerson(Id.create("abc", Person.class)); Vehicle vehicle=new Vehicle(scheduler, person, PlansConfigGroup.ActivityDurationInterpretation.minOfDurationAndEndTime ); assertEquals(true,MessageFactory.getEndLegMessage(scheduler, vehicle).scheduler==scheduler); assertEquals(true,MessageFactory.getEnterRoadMessage(scheduler, vehicle).scheduler==scheduler); assertEquals(true,MessageFactory.getStartingLegMessage(scheduler, vehicle).scheduler==scheduler); assertEquals(true,MessageFactory.getLeaveRoadMessage(scheduler, vehicle).scheduler==scheduler); assertEquals(true,MessageFactory.getEndRoadMessage(scheduler, vehicle).scheduler==scheduler); assertEquals(true,MessageFactory.getDeadlockPreventionMessage(scheduler, vehicle).scheduler==scheduler); assertEquals(true,MessageFactory.getEndLegMessage(scheduler, vehicle).vehicle==vehicle); assertEquals(true,MessageFactory.getEnterRoadMessage(scheduler, vehicle).vehicle==vehicle); assertEquals(true,MessageFactory.getStartingLegMessage(scheduler, vehicle).vehicle==vehicle); assertEquals(true,MessageFactory.getLeaveRoadMessage(scheduler, vehicle).vehicle==vehicle); assertEquals(true,MessageFactory.getEndRoadMessage(scheduler, vehicle).vehicle==vehicle); assertEquals(true,MessageFactory.getDeadlockPreventionMessage(scheduler, vehicle).vehicle==vehicle); }
public void testMessageFactory5(){ MessageFactory.GC_ALL_MESSAGES(); JDEQSimConfigGroup.setGC_MESSAGES(true); Scheduler scheduler=new Scheduler(new MessageQueue()); Person person= PopulationUtils.getFactory().createPerson(Id.create("abc", Person.class)); Vehicle vehicle=new Vehicle(scheduler, person, PlansConfigGroup.ActivityDurationInterpretation.minOfDurationAndEndTime ); assertEquals(true,MessageFactory.getEndLegMessage(scheduler, vehicle).scheduler==scheduler); assertEquals(true,MessageFactory.getEnterRoadMessage(scheduler, vehicle).scheduler==scheduler); assertEquals(true,MessageFactory.getStartingLegMessage(scheduler, vehicle).scheduler==scheduler); assertEquals(true,MessageFactory.getLeaveRoadMessage(scheduler, vehicle).scheduler==scheduler); assertEquals(true,MessageFactory.getEndRoadMessage(scheduler, vehicle).scheduler==scheduler); assertEquals(true,MessageFactory.getDeadlockPreventionMessage(scheduler, vehicle).scheduler==scheduler); assertEquals(true,MessageFactory.getEndLegMessage(scheduler, vehicle).vehicle==vehicle); assertEquals(true,MessageFactory.getEnterRoadMessage(scheduler, vehicle).vehicle==vehicle); assertEquals(true,MessageFactory.getStartingLegMessage(scheduler, vehicle).vehicle==vehicle); assertEquals(true,MessageFactory.getLeaveRoadMessage(scheduler, vehicle).vehicle==vehicle); assertEquals(true,MessageFactory.getEndRoadMessage(scheduler, vehicle).vehicle==vehicle); assertEquals(true,MessageFactory.getDeadlockPreventionMessage(scheduler, vehicle).vehicle==vehicle); }