In realtà lo farà qualsiasi schema prestabilito coerente.
Per esempio:
- Girare sempre a sinistra
- Se sei in un vicolo cieco indietro alla svolta precedente e gira a destra
- Uno dovrà camminare il doppio della velocità (pre-organizzata) dell'altro (o in termini più teorici dei numeri, le velocità dei due agenti dovrebbero essere relativamente prime, o più in generale essere linearmente indipendenti).
O ancora più semplice
- Un agente rimane nello stesso posto
- Mentre l'altro usa uno schema coerente per esplorare il labirinto (ad esempio usando un approccio di thread di Ariadne ).
- Alla fine, a tempo finito, si incontreranno.
Questo schema garantirà che le persone si incontreranno eventualmente (ma potrebbe richiedere del tempo)
Perché? Perché lo schema è coerente per entrambi e non porta a un vicolo cieco. Quindi, poiché il labirinto è finito ed è collegato, dopo un tempo limitato si incontreranno.
Se lo schema non è coerente, non vi è alcuna garanzia che si incontreranno poiché possono provocare cicli chiusi.
Se hanno la stessa velocità, a seconda dell'architettura del labirinto, ad esempio un labirinto ciclico, è possibile che possano sempre trovarsi in punti anti-diametrici del labirinto, quindi non incontrarsi mai, anche se lo schema è coerente.
Da quanto precede risulta chiaramente che lo schema deve essere predisposto, ma lo farà qualsiasi schema concordato coerente.
Altrimenti si può fare affidamento sull'analisi probabilistica e dedurre che con una grande probabilità si incontreranno, ma questa probabilità non è una (cioè in tutti i casi).
Si può anche considerare il contrario del problema dell'appuntamento, il problema di evitamento in cui l'obiettivo è che gli agenti si evitino sempre l'un l'altro .
La soluzione al problema di evitamento è che gli agenti si riflettano reciprocamente esattamente. Ciò significa che ciò che un agente fa all'altro dovrebbe riflettere ciò. Poiché anche il problema dell'evitamento ha una soluzione , è chiaro che le strategie per il problema dell'appuntamento che possono portare al comportamento riflessivo degli agenti, non possono garantire la soluzione.
Si può dire che la strategia per il problema di evitamento è la parallelizzazione (cioè il punto divergente massimo) mentre la strategia per il problema dell'appuntamento è l' ortogonalità (cioè il punto meno convergente)
L'analisi sopra può essere trasformata in un algoritmo randomizzato che non assume ruoli prestabiliti per gli agenti, come il seguente:
- Ogni agente lancia una moneta su quale ruolo scegliere (ad es. Rimanere sul posto o esplorare il labirinto)
- Quindi procedono come descritto sopra.
Questo in media porterà alla fine alla riunione delle persone, ma non è garantito in tutti i casi.
Se assumiamo che gli agenti possano lasciare tracce , ad esempio etichette della loro direzione (corrente) e velocità. Quindi, l'altro agente, può utilizzare queste tracce come informazioni per regolare sia la propria direzione che la propria velocità (vedere sotto).
Questo tipo di problema è un esempio di ottimizzazione globale che utilizza solo informazioni locali . O, in altre parole, un modo per mappare i vincoli globali ai vincoli locali . Questo, più generale, problema (che sottrae il problema dell'appuntamento) è affrontato in questo post di math.se (e riferimenti in esso) "Metodi per tradurre i vincoli globali in vincoli locali"