Interface StrategicalPlanner


public interface StrategicalPlanner
A strategicalPlanner is the planner responsible for the overall 'mission' of the GTU, usually indicating where it needs to go. It operates by instantiating tactical planners to do the actual work, which is generating operational plans (paths over time) to follow to reach the destination that the strategical plan is aware of.

Copyright (c) 2013-2026 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.

Author:
Alexander Verbraeck, Peter Knoppers
  • Method Details

    • getGtu

      Gtu getGtu()
      Returns the GTU.
      Returns:
      GTU
    • getRoute

      Optional<Route> getRoute()
      Returns the route.
      Returns:
      route, empty if not present
    • getOrigin

      Optional<Node> getOrigin()
      Returns the origin.
      Returns:
      origin, empty if not present
    • getDestination

      Optional<Node> getDestination()
      Returns the destination.
      Returns:
      destination, empty if not present
    • getTacticalPlanner

      TacticalPlanner<?,?> getTacticalPlanner()
      Get tactical planner for the GTU. The stratigical planner is free to dynamically change this.
      Returns:
      tactical planner
    • getTacticalPlanner

      TacticalPlanner<?,?> getTacticalPlanner(org.djunits.value.vdouble.scalar.Duration time)
      Get tactical planner for the GTU. The stratigical planner is free to dynamically change this.
      Parameters:
      time - simulation time at which to obtain the tactical planner
      Returns:
      tactical planner
    • nextNode

      default Node nextNode(Link link, GtuType gtuType) throws NetworkException
      Determine the next node in a network based on a current Link we are on.
      Parameters:
      link - the link we are on
      gtuType - the GtuType to determine the next node for
      Returns:
      the next node in the route AFTER the current link
      Throws:
      NetworkException - when no route planner is present or the final node in the current link cannot be found in the route
    • nextLink

      Link nextLink(Link previousLink, GtuType gtuType) throws NetworkException
      Determine the next link in a network based on a current Link we are on.
      Parameters:
      previousLink - the link before the node to avoid U-turn
      gtuType - the GtuType to determine the next node for
      Returns:
      the next link in the route AFTER the current link
      Throws:
      NetworkException - when no route planner is present or the final node in the current link cannot be found in the route