OptiRoute evaluates the itineraries you give it against hard constraints and soft preferences, then ranks them transparently — every option carries the score breakdown that put it there. The model never invents a flight.
Validity, scoring, and ranking are computed by code — the same inputs always produce the same order.
The LLM layer is replaceable and never fabricates flights, prices, or times. It explains; it doesn't decide.
Violate one — a self-transfer, a broken buffer — and the itinerary is rejected outright, not just penalised.
Cost, comfort, and airline choice shape the ranking without ever invalidating an otherwise-legal option.