Skip to content

faq 80642227

Billy Charlton edited this page Sep 5, 2018 · 2 revisions

If no end-time or duration for an activity is provided but a default duration is, should tis work?

by Gerald Richter on 2016-08-30 09:13:21


this is the log-tail where the trouble starts

2016-08-30 10:43:16,330  INFO Counter:61 [PersonPrepareForSim] handled person # 64
 2016-08-30 10:43:16,556 ERROR ParallelPersonAlgorithmRunner$ExceptionHandler:163 Thread PersonPrepareForSim.1 died with exception while handling events.
 java.lang.RuntimeException: activity has neither end-time nor duration.[type=leisure][coord=[x=16.4817842667][y=48.2915034833]] [linkId=43940][startTime=undefined][endTime=undefined][duration=undefined][facilityId=null]
 	at org.matsim.core.router.PlanRouter.updateNow(PlanRouter.java:197)
 	at org.matsim.core.router.PlanRouter.calcEndOfActivity(PlanRouter.java:169)
 	at org.matsim.core.router.PlanRouter.run(PlanRouter.java:89)
 	at org.matsim.core.population.algorithms.PersonPrepareForSim.run(PersonPrepareForSim.java:138)
 	at org.matsim.core.population.algorithms.ParallelPersonAlgorithmRunner$PersonAlgoThread.run(ParallelPersonAlgorithmRunner.java:144)
 	at java.lang.Thread.run(Thread.java:745)
 2016-08-30 10:43:19,877  INFO Counter:61 [PersonPrepareForSim] handled person # 128
 2016-08-30 10:43:22,407 ERROR ParallelPersonAlgorithmRunner$ExceptionHandler:163 Thread PersonPrepareForSim.0 died with exception while handling events.
 java.lang.RuntimeException: activity has neither end-time nor duration.[type=shop][coord=[x=16.4004702574][y=48.2579545908]] [linkId=65737][startTime=undefined][endTime=undefined][duration=undefined][facilityId=null]
 	at org.matsim.core.router.PlanRouter.updateNow(PlanRouter.java:197)
 	at org.matsim.core.router.PlanRouter.calcEndOfActivity(PlanRouter.java:169)
 	at org.matsim.core.router.PlanRouter.run(PlanRouter.java:89)
 	at org.matsim.core.population.algorithms.PersonPrepareForSim.run(PersonPrepareForSim.java:138)
 	at org.matsim.core.population.algorithms.ParallelPersonAlgorithmRunner$PersonAlgoThread.run(ParallelPersonAlgorithmRunner.java:144)
 	at java.lang.Thread.run(Thread.java:745)
 2016-08-30 10:43:22,408  INFO Counter:67 [PersonPrepareForSim] handled person # 183
 2016-08-30 10:43:22,409  INFO MatsimRuntimeModifications:58 S H U T D O W N   ---   start shutdown.
 2016-08-30 10:43:22,410  INFO ControlerListenerManagerImpl:121 calling notifyShutdown on org.matsim.core.controler.corelisteners.EventsHandlingImpl
 2016-08-30 10:43:22,410  INFO ControlerListenerManagerImpl:121 calling notifyShutdown on org.matsim.core.controler.corelisteners.DumpDataAtEndImpl
 2016-08-30 10:43:22,410  INFO ControlerListenerManagerImpl:126 calling notifyShutdown on org.matsim.analysis.ScoreStatsControlerListener
 2016-08-30 10:43:22,411  INFO ControlerListenerManagerImpl:126 calling notifyShutdown on org.matsim.analysis.TravelDistanceStatsControlerListener
 2016-08-30 10:43:22,411  INFO ControlerListenerManagerImpl:129 all ControlerShutdownListeners called.
 2016-08-30 10:43:22,412  INFO MatsimRuntimeModifications:81 S H U T D O W N   ---   shutdown completed.
 2016-08-30 10:43:22,408 ERROR MatsimRuntimeModifications:54 Getting uncaught Exception in Thread main
 java.lang.RuntimeException: Exception while processing persons. Cannot guarantee that all persons have been fully processed.
 	at org.matsim.core.population.algorithms.ParallelPersonAlgorithmRunner.run(ParallelPersonAlgorithmRunner.java:119)
 	at org.matsim.core.controler.PrepareForSimImpl.run(PrepareForSimImpl.java:68)
 	at org.matsim.core.controler.NewControler.prepareForSim(NewControler.java:109)
 	at org.matsim.core.controler.AbstractController$1.run(AbstractController.java:90)
 	at org.matsim.core.controler.MatsimRuntimeModifications.run(MatsimRuntimeModifications.java:48)
 	at org.matsim.core.controler.MatsimRuntimeModifications.run(MatsimRuntimeModifications.java:31)
 	at org.matsim.core.controler.AbstractController.run(AbstractController.java:99)
 	at org.matsim.core.controler.NewControler.run(NewControler.java:79)
 	at org.matsim.core.controler.Controler.run(Controler.java:191)
 	at org.matsim.run.Controler.run(Controler.java:56)
 	at org.matsim.run.Controler.main(Controler.java:60)
 2016-08-30 10:43:22,409 ERROR MatsimRuntimeModifications:60 ERROR --- This is an unexpected shutdown!
 2016-08-30 10:43:22,409 ERROR MatsimRuntimeModifications:63 Shutdown possibly caused by the following Exception:
 java.lang.RuntimeException: Exception while processing persons. Cannot guarantee that all persons have been fully processed.
 	at org.matsim.core.population.algorithms.ParallelPersonAlgorithmRunner.run(ParallelPersonAlgorithmRunner.java:119)
 	at org.matsim.core.controler.PrepareForSimImpl.run(PrepareForSimImpl.java:68)
 	at org.matsim.core.controler.NewControler.prepareForSim(NewControler.java:109)
 	at org.matsim.core.controler.AbstractController$1.run(AbstractController.java:90)
 	at org.matsim.core.controler.MatsimRuntimeModifications.run(MatsimRuntimeModifications.java:48)
 	at org.matsim.core.controler.MatsimRuntimeModifications.run(MatsimRuntimeModifications.java:31)
 	at org.matsim.core.controler.AbstractController.run(AbstractController.java:99)
 	at org.matsim.core.controler.NewControler.run(NewControler.java:79)
 	at org.matsim.core.controler.Controler.run(Controler.java:191)
 	at org.matsim.run.Controler.run(Controler.java:56)
 	at org.matsim.run.Controler.main(Controler.java:60)
 2016-08-30 10:43:22,411 ERROR MatsimRuntimeModifications:78 ERROR --- MATSim unexpectedly terminated. Please check the output or the logfile with warnings and errors for hints.
 2016-08-30 10:43:22,412 ERROR MatsimRuntimeModifications:79 ERROR --- results should not be used for further analysis.
 2016-08-30 10:43:22,412 ERROR MatsimRuntimeModifications:83 ERROR --- This was an unexpected shutdown! See the log file for a possible reason.
 Exception in thread "main" java.lang.RuntimeException: Exception while processing persons. Cannot guarantee that all persons have been fully processed.
 	at org.matsim.core.population.algorithms.ParallelPersonAlgorithmRunner.run(ParallelPersonAlgorithmRunner.java:119)
 	at org.matsim.core.controler.PrepareForSimImpl.run(PrepareForSimImpl.java:68)
 	at org.matsim.core.controler.NewControler.prepareForSim(NewControler.java:109)
 	at org.matsim.core.controler.AbstractController$1.run(AbstractController.java:90)
 	at org.matsim.core.controler.MatsimRuntimeModifications.run(MatsimRuntimeModifications.java:48)
 	at org.matsim.core.controler.MatsimRuntimeModifications.run(MatsimRuntimeModifications.java:31)
 	at org.matsim.core.controler.AbstractController.run(AbstractController.java:99)
 	at org.matsim.core.controler.NewControler.run(NewControler.java:79)
 	at org.matsim.core.controler.Controler.run(Controler.java:191)
 	at org.matsim.run.Controler.run(Controler.java:56)
 	at org.matsim.run.Controler.main(Controler.java:60)

 The simulation did not run properly. Error/Exit code: 1


because I can not see which person exactly is causing the problem, I suspect it is the first that comes up after #64

  <person id="74">
     <plan>
       <act end_time="11:30:00" type="home" x="16.499358494" y="48.2836335954"/>
       <leg mode="car"/>
       <act end_time="13:30:00" type="leisure" x="16.4817842667" y="48.2915034833"/>
       <leg mode="car"/>
       <!--zweck chain: old z(70) - q(870) / w(50)-->
       <act end_time="14:00:00" type="leisure" x="16.4817842667" y="48.2915034833"/>
       <leg mode="walk"/>
       <!--zweck chain: old z(70) - q(50) / w(50)-->
       <act type="leisure" x="16.4817842667" y="48.2915034833"/>
       <leg mode="walk"/>
       <act end_time="18:00:00" type="leisure" x="16.4817842667" y="48.2915034833"/>
       <leg mode="walk"/>
       <act type="home" x="16.499358494" y="48.2836335954"/>
     </plan>
   </person>

but I have defined a default duration "typicalDuration" for leisure

  • should that not remedy the situation?



Comments: 1


Re: If no end-time or duration for an activity is provided but a default duration is, should tis work?

by Kai Nagel on 2016-08-30 13:20:33

Dear Gerald, the typical duration is only used for scoring.  In the plans file, for each plan

  1. the first activity needs to have an endTime, 
  2. all other ones except the last one either a duration or an endTime.  
  3. (For the last activity of a plan, it does not matter.) 

Best wishes, Kai

Clone this wiki locally