Il Motore

Non è una lista
ordinata per distanza.
È matematica.

Iteroo usa il Travelling Salesman Problem with Time Windows per costruire itinerari che rispettano orari, trasporti e la realtà della città. Questa pagina spiega come funziona — senza semplificare troppo.

naiveBrera09:30Duomo11:15Navigli13:30CastelloPinacoteca15:00naiveTSPTW

Il problema

Visitare N posti
nel minor tempo
possibile. Con vincoli.

Hai salvato 8 luoghi a Milano. Vuoi visitarli tutti in un giorno. Qual è l'ordine migliore? Se fossero solo 3 posti, ci sono 6 ordini possibili. Con 8, ci sono 40.320 combinazioni. Con 12, più di 479 milioni.

Questo è il Travelling Salesman Problem — uno dei problemi più studiati in informatica. Iteroo lo risolve nella sua forma estesa: con finestre temporali (ogni posto è aperto solo in certi orari), tempi di percorrenza variabili (metro, a piedi, bus), e aggiornamenti in tempo reale (ritardi live).

Non è banale. Ed è esattamente per questo che vale la pena farlo bene.

TSP
Travelling Salesman Problem
Dato un insieme di nodi e una matrice di costi, trovare il percorso di costo minimo che visita tutti i nodi esattamente una volta. Problema NP-hard nella forma generale.
TW
Time Windows
Estensione del TSP in cui ogni nodo può essere visitato solo in una finestra temporale [earliest, latest]. Riflette orari di apertura, prenotazioni e constraint reali.
TSPTW
Il problema che risolve Iteroo
La combinazione dei due: trovare il percorso ottimale rispettando tutte le finestre temporali, i tempi di viaggio reali e i ritardi dei trasporti pubblici.

Come funziona

Quattro passi, un itinerario.

Ogni volta che generi o aggiorni il tuo percorso, Iteroo esegue questi quattro passaggi in sequenza — in pochi secondi.

PASSO 01
start
Raccolta dei nodi
Ogni luogo salvato diventa un nodo del grafo. Gli attributi di ogni nodo includono coordinate GPS, finestra temporale di apertura, durata media della visita e categoria.
PASSO 02
12min8min
Matrice dei costi
Per ogni coppia di nodi si calcola il tempo di spostamento reale usando dati di trasporto pubblico, tempi a piedi stimati e — in tempo reale — eventuali ritardi o interruzioni.
PASSO 03
9:0011:0014:0017:00
Applicazione dei vincoli
Ogni nodo ha una finestra [earliest, latest]. L'algoritmo non può pianificare una visita fuori da questo intervallo. Se arrivi troppo presto, aspetti (e il tempo è sprecato). Se arrivi troppo tardi, il posto è chiuso.
PASSO 04
min cost
Ottimizzazione del percorso
L'algoritmo esplora le combinazioni usando euristiche (nearest neighbor, 2-opt) e, dove la dimensione lo permette, branch-and-bound. Il risultato è la sequenza che minimizza il tempo totale rispettando tutti i vincoli.

I vincoli

Cosa rende il problema difficile.

Un semplice "vai dal più vicino al successivo" non funziona. Ecco perché.

Vincolo 1
Orari di apertura
Ogni luogo ha orari di apertura e chiusura che variano per giorno della settimana, stagione e festività. Una tappa pianificata senza tener conto degli orari è una tappa persa.
La Pinacoteca di Brera chiude alle 19:15. Arrivare alle 18:45 significa solo 30 minuti — o sprecare il tragitto.
Vincolo 2
Trasporti variabili
Lo stesso spostamento può richiedere tempi molto diversi a seconda dell'orario, della linea metro disponibile e dei ritardi in tempo reale. La matrice dei costi non è statica.
Navigli → Duomo: 12 minuti alle 10:00, 22 minuti alle 17:30 per traffico e frequenza ridotta.
Vincolo 3
Durata della visita
Ogni luogo ha una durata media di visita che occupa tempo nel planning. Non puoi visitare il Duomo in 5 minuti. Iteroo usa stime per tipo di luogo, aggiustabili manualmente.
Duomo di Milano: 45–90 minuti stimati. La visita alla terrazza richiede slot prenotato — Iteroo lo sa.

Perché non basta Google Maps

Ordinare per distanza
è sbagliato.

L'approccio "greedy" — vai sempre al posto più vicino — sembra intuitivo ma produce percorsi subottimali. Ecco il confronto.

Approccio greedy / distanza
Visiti il posto più vicino, che però apre alle 14 — arrivi troppo presto e aspetti
Il ristorante più vicino per pranzo è pieno — nessun piano B integrato
La metro è in ritardo ma il percorso non si aggiorna — arrivi tardi alla tappa successiva
Non tiene conto della durata delle visite — il calendario si sfasa dal secondo posto in poi
Routing TSPTW di Iteroo
Ogni tappa è pianificata per l'orario ottimale — arrivi quando il posto è aperto e accessibile
Slot pranzo integrato nel routing: il ristorante è sul percorso, non una deviazione
Ritardi metro recepiti in tempo reale: il percorso si ricalcola automaticamente
Durata visite inclusa nel planning — l'itinerario rimane coerente per tutta la giornata

Dati in tempo reale

Il routing non si ferma
quando esci di casa.

L'itinerario generato è un punto di partenza. In città, tutto cambia. Iteroo si aggiorna con te.

Ritardi metro live
I dati ATM di Milano vengono aggiornati costantemente. Quando una linea è in ritardo o interrotta, Iteroo ricalcola il percorso dal punto in cui sei — non dall'inizio.
Ricalcolo sul posto
Hai deciso di saltare una tappa o ne hai aggiunta una nuova? Il routing TSPTW viene rieseguito per le tappe rimanenti. In pochi secondi hai un piano aggiornato.
Avvisi intelligenti
Iteroo ti avvisa quando stai rischiando di perdere una tappa per ritardo, quando un posto sta per chiudere, o quando c'è un'alternativa migliore a portata di mano.

Vuoi provare il motore
su Milano?

Iteroo è in pre-lancio. Lascia la tua mail e sarai tra i primi a provarlo.

Entra in lista →Torna alla home