Package-level declarations
Types
Link copied to clipboard
class AircraftMover
Moves aircraft one discrete tick along their active route.
Link copied to clipboard
class ConflictDetector(aircraftMover: AircraftMover = AircraftMover(), safetyReasoner: SafetyReasoner = TuPrologSafetyReasoner.fromClasspath())
Detects current and predicted conflicts between aircraft.
Link copied to clipboard
class ManagedSimulationEngine(safetyReasoner: SafetyReasoner, aircraftMover: AircraftMover = AircraftMover(), maneuverApplier: ManeuverApplier = ManeuverApplier(), predictionHorizonTicks: Int = 8, conflictDetector: ConflictDetector = ConflictDetector(
aircraftMover = aircraftMover,
safetyReasoner = safetyReasoner,
), resolutionPlanner: ResolutionPlanner = SecondaryConflictAwareResolutionPlanner(
safetyReasoner = safetyReasoner,
aircraftMover = aircraftMover,
maneuverApplier = maneuverApplier,
predictionHorizonTicks = predictionHorizonTicks,
))
Managed simulation engine integrating movement, planning, maneuver application, and dynamic replanning.
Link copied to clipboard
data class ManagedSimulationRunResult(val runResult: SimulationRunResult, val conflictResolutionPlan: ResolutionPlan?, val appliedManeuvers: List<ScheduledManeuver>, val weatherReplanningDecisions: List<WeatherReplanningDecision> = emptyList())
Link copied to clipboard
class ManeuverApplier
Applies selected maneuvers physically to a simulation state.
Link copied to clipboard
Maneuver scheduled for application at a specific simulation tick.
Link copied to clipboard
class SimulationEngine(aircraftMover: AircraftMover = AircraftMover(), conflictDetector: ConflictDetector = ConflictDetector(aircraftMover), predictionHorizonTicks: Int = 5)
Baseline simulation engine that advances aircraft and detects conflicts without managed planning feedback.
Link copied to clipboard
data class SimulationRunResult(val scenarioName: String, val states: List<SimulationState>, val currentConflicts: List<Conflict>, val predictedConflicts: List<Conflict>)
Link copied to clipboard
data class SimulationTickResult(val state: SimulationState, val currentConflicts: List<Conflict>, val predictedConflicts: List<Conflict>)