Interface LaneBasedTacticalPlanner

    • Method Detail

      • getCarFollowingModel

        CarFollowingModel getCarFollowingModel()
        Returns the car-following model.
        Returns:
        car following model
      • chooseLaneAtSplit

        default LaneDirection chooseLaneAtSplit​(LaneDirection from,
                                                Set<LaneDirection> lanes)
                                         throws ParameterException
        Selects a lane from a possible set. This set contains all viable lanes in to which a lanes splits.
        Parameters:
        from - LaneDirection; lane we come from
        lanes - Set<LaneDirection>; set of lane directions possible
        Returns:
        LaneDirection; preferred lane direction
        Throws:
        ParameterException - in case of a missing parameter
      • okDistance

        default Length okDistance​(LaneDirection lane,
                                  Length distance,
                                  Route route,
                                  Length maxDistance)
        Helper method for default chooseLaneAtSplit implementation that returns the distance from this lane onwards where the route can be followed.
        Parameters:
        lane - LaneDirection; lane and direction
        distance - Length; distance so far
        route - Route; route
        maxDistance - Length; max search distance
        Returns:
        Length; distance from this lane onwards where the route can be followed
      • mostOnSide

        static LaneDirection mostOnSide​(LaneDirection lane1,
                                        LaneDirection lane2,
                                        LateralDirectionality lat)
        Returns the right-most of two lanes.
        Parameters:
        lane1 - LaneDirection; lane 1
        lane2 - LaneDirection; lane 2
        lat - LateralDirectionality; lateral side
        Returns:
        LaneDirection; right-most of two lanes
      • buildLanePathInfo

        LanePathInfo buildLanePathInfo​(Length maxHeadway)
                                throws GtuException,
                                       NetworkException
        Build a list of lanes forward, with a maximum headway relative to the reference point of the GTU.
        Parameters:
        maxHeadway - Length; the maximum length for which lanes should be returned
        Returns:
        LanePathInfo; an instance that provides the following information for an operational plan: the lanes to follow, and the path to follow when staying on the same lane.
        Throws:
        GtuException - when the vehicle is not on one of the lanes on which it is registered
        NetworkException - when the strategic planner is not able to return a next node in the route
      • buildLanePathInfo

        LanePathInfo buildLanePathInfo​(Length maxHeadway,
                                       Lane startLane,
                                       Length position,
                                       GtuDirectionality startDirectionality)
                                throws GtuException,
                                       NetworkException
        Build a list of lanes forward, with a maximum headway relative to the reference point of the GTU.
        Parameters:
        maxHeadway - Length; the maximum length for which lanes should be returned
        startLane - Lane; the lane in which the path starts
        position - Length; the position on the start lane
        startDirectionality - GtuDirectionality; the driving direction on the start lane
        Returns:
        LanePathInfo; an instance that provides the following information for an operational plan: the lanes to follow, and the path to follow when staying on the same lane.
        Throws:
        GtuException - when the vehicle is not on one of the lanes on which it is registered
        NetworkException - when the strategic planner is not able to return a next node in the route
        GtuException - when the vehicle is not on one of the lanes on which it is registered
        NetworkException - when the strategic planner is not able to return a next node in the route
      • determineNextSplit

        NextSplitInfo determineNextSplit​(Length maxHeadway)
                                  throws GtuException,
                                         NetworkException
        Calculate the next location where the network splits, with a maximum headway relative to the reference point of the GTU. Note: a lane drop is also considered a split (!).
        Parameters:
        maxHeadway - Length; the maximum length for which lanes should be returned
        Returns:
        NextSplitInfo; an instance that provides the following information for an operational plan: whether the network splits, the node where it splits, and the current lanes that lead to the right node after the split node.
        Throws:
        GtuException - when the vehicle is not on one of the lanes on which it is registered
        NetworkException - when the strategic planner is not able to return a next node in the route