All Superinterfaces:
NamedConstants
All Known Implementing Classes:
FactorEstimation

public interface Estimation extends NamedConstants
Estimation of neighbor headway, speed and acceleration.

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, Wouter Schakel
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final Estimation
    No estimation errors.
  • Method Summary

    Modifier and Type
    Method
    Description
    estimate(LaneBasedGtu perceivingGtu, LaneBasedObject reference, LaneBasedGtu perceivedGtu, org.djunits.value.vdouble.scalar.Length distance, boolean downstream, org.djunits.value.vdouble.scalar.Duration when)
    Estimate headway, speed and acceleration.
    default org.djunits.value.vdouble.scalar.Length
    getDelayedDistance(LaneBasedGtu perceivingGtu, LaneBasedObject reference, LaneBasedGtu perceivedGtu, org.djunits.value.vdouble.scalar.Length distance, boolean downstream, org.djunits.value.vdouble.scalar.Duration when)
    Returns a delayed distance.
    default org.djunits.value.vdouble.scalar.Speed
    getDelayedReferenceSpeed(LaneBasedGtu perceivingGtu, LaneBasedObject reference, org.djunits.value.vdouble.scalar.Duration when)
    Returns the reference speed.
    default org.djunits.value.vdouble.scalar.Speed
    getDelayedSpeedDifference(LaneBasedGtu perceivingGtu, LaneBasedObject reference, LaneBasedGtu perceivedGtu, org.djunits.value.vdouble.scalar.Duration when)
    Returns a delayed speed difference (other minus reference speed).

    Methods inherited from interface org.opentrafficsim.base.NamedConstants

    name
  • Field Details

    • NONE

      static final Estimation NONE
      No estimation errors.
  • Method Details

    • estimate

      NeighborTriplet estimate(LaneBasedGtu perceivingGtu, LaneBasedObject reference, LaneBasedGtu perceivedGtu, org.djunits.value.vdouble.scalar.Length distance, boolean downstream, org.djunits.value.vdouble.scalar.Duration when) throws ParameterException
      Estimate headway, speed and acceleration.
      Parameters:
      perceivingGtu - perceiving GTU
      reference - reference object, e.g. the perceiving GTU, or a Conflict
      perceivedGtu - perceived GTU
      distance - actual headway at 'now' (i.e. not at 'when' if there is a reaction time)
      downstream - downstream (or upstream) neighbor
      when - moment of perception, reaction time included
      Returns:
      perceived headway, speed and acceleration
      Throws:
      ParameterException - on invalid parameter value or if parameter is not available
    • getDelayedDistance

      default org.djunits.value.vdouble.scalar.Length getDelayedDistance(LaneBasedGtu perceivingGtu, LaneBasedObject reference, LaneBasedGtu perceivedGtu, org.djunits.value.vdouble.scalar.Length distance, boolean downstream, org.djunits.value.vdouble.scalar.Duration when)
      Returns a delayed distance. If the reference is not the perceiving GTU (e.g. a static object) this is the current distance minus the odometer difference of the perceived GTU over the delay. In case the reference is the perceiving GTU, the odometer difference over the delay of the perceiving GTU is added.
      Parameters:
      perceivingGtu - perceiving GTU
      reference - reference object, e.g. the perceiving GTU, or a Conflict
      perceivedGtu - perceived GTU
      distance - actual distance at 'now' (i.e. not at 'when' if there is a reaction time)
      downstream - downstream (or upstream) neighbor
      when - moment of perception, reaction time included
      Returns:
      delayed headway
    • getDelayedReferenceSpeed

      default org.djunits.value.vdouble.scalar.Speed getDelayedReferenceSpeed(LaneBasedGtu perceivingGtu, LaneBasedObject reference, org.djunits.value.vdouble.scalar.Duration when)
      Returns the reference speed. If the perceiving GTU is the reference, it is the speed of the perceiving GTU. Otherwise zero speed is returned, assuming a static reference.
      Parameters:
      perceivingGtu - perceiving GTU
      reference - reference object, e.g. the perceiving GTU, or a Conflict
      when - moment of perception, reaction time included
      Returns:
      ego speed
    • getDelayedSpeedDifference

      default org.djunits.value.vdouble.scalar.Speed getDelayedSpeedDifference(LaneBasedGtu perceivingGtu, LaneBasedObject reference, LaneBasedGtu perceivedGtu, org.djunits.value.vdouble.scalar.Duration when)
      Returns a delayed speed difference (other minus reference speed). If the perceiving GTU is the reference, this is the speed difference between the two GTUs. Otherwise it is the speed of the perceived GTU (i.e. speed difference to a static object).
      Parameters:
      perceivingGtu - perceiving GTU
      reference - reference object, e.g. the perceiving GTU, or a Conflict
      perceivedGtu - perceived GTU
      when - moment of perception, reaction time included
      Returns:
      delayed speed difference (other minus ego)