Feasibility Restoration under Conflicting STL Specifications with Pareto-Optimal Refinement

Dit artikel presenteert een tweestapsframework dat conflicterende Signal Temporal Logic-specificaties in veiligheidskritieke toepassingen, zoals autonoom rijden, oplost door eerst haalbaarheid te herstellen via minimale versoepeling en vervolgens een Pareto-optimale oplossing te vinden die interpreteerbare afwegingen tussen concurrerende doelen mogelijk maakt.

Tianhao Wu, Yiwei Lyu

Gepubliceerd Tue, 10 Ma
📖 5 min leestijd🧠 Diepgaand

Each language version is independently generated for its own context, not a direct translation.

Stel je voor dat je een zelfrijdende auto bestuurt die een heel strikte set regels volgt, alsof het een robot is met een onbuigzame moraal. Deze regels zijn geschreven in een speciale taal (STL) die zegt: "Altijd stoppen bij een stopbord," "Nooit de gele lijn overschrijden" en "Altijd een veilige afstand houden."

Het probleem is dat het echte leven soms deze regels met elkaar in conflict brengt. Stel je voor: je staat in een smalle straat. Achter je komt een ambulance die razendsnel moet passeren. Voor je loopt plotseling een voetganger over de weg.

  • Als je stopt voor de voetganger, blokkeer je de ambulance (en riskeer je een achteroprijd-ongeluk).
  • Als je doorrijdt om de ambulance niet te blokkeren, riskeer je de voetganger aan te raken.

Een traditionele computer zou hier "in de war" raken. Omdat hij geen oplossing kan vinden die alle regels perfect volgt, doet hij het veiligste wat hij kan: bevriezen. Hij stopt en wacht, waardoor hij een obstakel wordt in een noodsituatie. Dit is gevaarlijk.

Dit artikel introduceert een slimme nieuwe manier om dit op te lossen, met een tweestapsplan dat de auto weer laat bewegen zonder gevaarlijk te worden.

Stap 1: De "Minimale Uitzondering" (Feasibility Restoration)

De eerste stap is als het oplossen van een knoop. De computer zegt: "Oké, we kunnen niet alles perfect doen. Laten we kijken welke regels we net iets kunnen opofferen om überhaupt een oplossing te vinden, zonder de levensgevaarlijke regels te breken."

  • De strikte regels: "Blijf op de weg" en "Raak niemand aan" zijn heilig. Die mogen nooit worden overtreden.
  • De onderhandelbare regels: "Rij niet over de gele lijn" of "Bereik je bestemming snel" zijn iets flexibeler.

De computer zoekt nu de kleinste mogelijke uitzondering. Misschien moet hij wel 10 centimeter over de gele lijn rijden om de ambulance door te laten, maar dat is beter dan helemaal stil te staan. Dit zorgt ervoor dat de auto niet meer "bevriest", maar weer beweegt.

Stap 2: De "Slimme Keuze" (Pareto-Optimal Refinement)

Nu de auto weer beweegt, is er vaak meer dan één manier om die kleine uitzondering te maken. Stel, de computer kan:

  1. Een beetje hard remmen en iets naar links sturen.
  2. Een beetje harder accelereren en iets naar rechts sturen.

Beide opties zijn "mogelijk" (ze breken de regels net iets, maar redden de situatie). Maar welke is het slimst?

Hier komt de tweede stap om de hoek kijken. In plaats van zomaar één keuze te maken, maakt de computer een lijst met de beste opties (een "Pareto-front"). Hij vergelijkt de gevolgen van elke optie als een weegschaal:

  • Optie A: Risico op de voetganger is laag, maar risico op de ambulance is hoog.
  • Optie B: Risico op de voetganger is iets hoger, maar risico op de ambulance is heel laag.

De computer toont deze opties aan de bestuurder (of het systeem) en zegt: "Kijk, als je Optie A kiest, red je de voetganger, maar riskeer je een botsing achteraan. Als je Optie B kiest, red je de ambulance, maar moet je de voetganger iets meer risico laten lopen."

De auto kiest dan de optie die de minste totale schade veroorzaakt, of de optie die het beste past bij de situatie, in plaats van willekeurig te kiezen.

De Analogie: De Chef-kok en de Ingrediënten

Je kunt dit vergelijken met een chef-kok die een gerecht moet maken, maar er ontbreekt een cruciaal ingrediënt (de regels zijn in conflict).

  1. Stap 1 (De Reddingsactie): De chef zegt: "Ik kan dit gerecht niet perfect maken zoals het recept zegt. Maar ik kan wel een klein beetje zout weghalen en een beetje peper toevoegen om het eetbaar te houden." Hij zorgt ervoor dat het gerecht niet "onmogelijk" is.
  2. Stap 2 (De Veredeling): Nu het gerecht eetbaar is, zijn er verschillende manieren om het te proeven. De chef proeft verschillende combinaties van peper en zout. Hij ziet: "Als ik meer peper doe, wordt het pittiger maar minder zout. Als ik minder peper doe, is het milder maar misschien saai." Hij kiest de combinatie die het beste smaakt (de veiligste en meest efficiënte route), in plaats van zomaar de eerste de beste optie te nemen.

Waarom is dit belangrijk?

Vroeger zouden robots in zo'n situatie "bevriezen" en de weg blokkeren, wat in het echt al gebeurd is (bijvoorbeeld met robotaxi's die ambulances blokkeren).

Met deze nieuwe methode:

  • Geen bevriezen: De auto blijft bewegen.
  • Slimme compromissen: De auto maakt bewuste keuzes over welke regel hij het minst breekt om het grootste gevaar te vermijden.
  • Duidelijkheid: Het systeem kan uitleggen waarom hij een bepaalde keuze heeft gemaakt ("Ik heb de gele lijn iets overreden om de ambulance te redden, omdat dat veiliger was dan te wachten").

Kortom: Het maakt zelfrijdende auto's minder star en meer in staat om slimme, menselijke keuzes te maken in chaotische situaties, zonder hun veiligheidswaarden uit het oog te verliezen.