Perché l’ascensore ti sta ignorando (e no, non è un complotto contro di te)

Perché l'ascensore ti sta ignorando (e no, non è un complotto contro di te)

Smettete di insultare il tasto dell’ascensore come se fosse un bug di un software scritto male da uno stagista sottopagato; il problema è molto più profondo e riguarda la pura teoria dei sistemi.

Quante volte vi è capitato di fissare quella porticina metallica, aspettando un miracolo, mentre mentalmente calcolate quanto tempo perderete per arrivare in ufficio? Tutti pensiamo che l’ascensente sia pigro o, peggio, che ci stia prendendo in giro. In realtà, dietro quel movimento meccanico c’è un groviglio di logica che farebbe invidia a un kernel Linux ben ottimizzato.

L’articolo che ho trovato su Hacker News scava proprio in questo. Si parte dalle basi: l’algoritmo SCAN, un classico del 1961 che va dal piano terra al top e torna giù, come un treno senza sosta. Poi c’è il ‘LOOK’, che è un po’ più intelligente perché non si ostina ad andare al piano più alto se non c’è nessuno che ha chiesto di salire. È il minimo sindacale, no?

Ma la vera magia (e il vero mal di testa) inizia quando abbiamo più cabine. Qui entra in gioco il RSR (Relative System Response) di casa Otis. Non è solo questione di ‘prendi quello più vicino’. È un sistema che calcola punteggi basati su carico, direzione, traffico e persino il rischio di creare ‘effetto treno’ (ovvero due ascensori che si inseguono facendo lo stesso identico tragitto, una cosa che fa impazzire chiunque abbia un minimo di rispetto per l’efficienza).

La cosa più interessante, e che sfida il nostro bias verso il ‘nuovo e tecnologico’, è il confronto con il Destination Dispatch. Avete presente quei totem modernissimi dove devi inserire il piano prima di entrare? Sembrano l’apoteosi del progresso, ma i dati dicono che, spesso, sono un disastro. Perché? Perché introducono rigidità. Il sistema ti assegna la cabina A, ma dopo dieci secondi la situazione del traffico è cambiata e la cabina B sarebbe stata perfetta. Tuttavia, poiché il sistema ti ha già ‘promesso’ la A, non può cambiare idea senza rompere la logica del flusso. È il classico errore di chi progetta soluzioni ‘smart’ senza considerare la dinamicità del mondo reale: troppa informazione che blocca la flessibilità.

In un mondo dove tutto deve essere tracciato, pesato e ottimizzato, a volte l’algoritmo più semplice, quello che non cerca di fare il genio, è quello che ti fa arrivare in ufficio senza traspirare dopo dieci minuti di attesa. Quindi, la prossima volta che l’ascensore tarda, ricordate: non è un guasto, è solo un’ottimizzazione che sta decidendo che la vostra fretta non è prioritaria rispetto al bilanciamento del carico del sistema.

Insomma, meno gadget inutili e più flessibilità. Un concetto che, purtroppo, si applica benissimo anche al resto del software (e della vita).

Source: Elevators

Lascia un commento