ALGORITMI GENETICI Giancarlo Oriani Gli strumenti della complessità Complessità e semplicità (*) G. Oriani, Consulente Festo e Vice Direttore di Sistemi & Impresa La complessità ambientale, con l’aumento della connettività e della reattività consentita dagli sviluppi tecnologici, sta sempre più aumentando. Come conseguenza, strumenti che affondino le proprie logiche nella cosiddetta “teoria della complessità”, stanno diventando sempre più importanti, e soprattutto sempre più utilizzati, nel mondo della gestione aziendale. La forza di questi strumenti non consiste tanto nella loro capacità di risolvere problemi complessi, molti dei quali sono teoricamente insolubili, ma nella loro capacità di arrivare più vicini degli strumenti classici ad una soluzione soddisfacente, anche utilizzando minori risorse di calcolo. Prendiamo il caso del famoso “problema del commesso viaggiatore”. Questi deve visitare i propri clienti, situati in città diverse. In che ordine il venditore deve visitare le diverse città, in modo da visitarle tutte facendo il percorso più breve? Il problema sembra semplice: bisogna ipotizzare tutti i possibili percorsi, sommare le distanze fra le città, e selezionare il giro più breve. Se vi sono 6 città da visitare, le alternative possibili sono 120. Ma già se le città diventassero 50, le alternative possibili sarebbero circa 608.281.864.034.268. 000.000.000.000.000.000.000.000.000.000.000.000.000.00 0.000.000: anche il computer più veloce impiegherebbe anni per individuare la migliore. Si tratta quindi di un problema pragmaticamente non risolvibile in modo ottimale. Un modo per risolverlo in modo soddisfacente è attraverso l’applicazione degli algoritmi genetici. Gli algoritmi genetici sono una tecnica di ricerca che, a partire da un insieme iniziale di possibili soluzioni, le migliora attraverso generazioni successive, utilizzando metodi matematici basati sui principi della biologia delle popolazioni quali la selezione, gli incroci e le mutazioni. In altre parole, invece che trovare una risposta definitiva e ottimizzata attraverso la soluzione di un sistema finito di equazioni, gli algoritmi genetici perseguono un continuo miglioramento di tali risposte, attraverso l’evoluzione di generazioni successive di risposte. Si tratta di un ribaltamento dell’approccio tradizionale: invece di cercare soluzioni ottimali attraverso metodi analitici, si cercano soluzioni in via di continuo miglioramento attraverso un metodo casuale, anche se controllato. La soluzione “migliore” si evolve dunque attraverso mutazioni e selezioni successive di soluzioni intermedie (ognuna delle quali, nell’esempio in parola, corrisponde ad un possibile percorso). In realtà, un’applicazione “pura” degli algoritmi genetici potrebbe portare, se il numero di fasi evolutive non è enorme, a soluzioni molto lontane dall’ottimale, o alla perdita (per mutazione) di soluzioni interessanti. Si devono quindi supportare gli algoritmi con una serie di condizioni accessorie. Facciamo un esempio: per la risoluzione del problema del commesso viaggiatore nel caso di 8 città, ad uno dato stadio di evoSistemi & Impresa N.1 - Gennaio/Febbraio 2002 - 47 ALGORITMI GENETICI luzione appaiono due percorsi alternativi 12348756 e 76813245. Una mutazione casuale dei due (crossover degli ultimi due “geni”) potrebbe generare 12348745 e76813256. Sono entrambi due percorsi senza senso, in quanto in entrambi manca una città e una è ripetuta due volte. Si potrebbero anche generare 12843756 e 76318245 (scambio dei “geni” nella 3° e 5° posizione), che potrebbero essere entrambi più lunghi dei due “padri”. Per risolvere questi problemi Brady introdusse una variante: cercare nelle soluzioni padre sequenze diverse delle stesse città, e selezionare quella più breve. Esempio: 123465789 e 925436871 contengono entrambe il gruppo 2,3,4,5 e 6. Se la sequenza 23465 è più breve della sequenza 25436, la prima viene selezionata e la secondo scompare. Le due soluzioni figlie saranno dunque 123465789 (invariata) e 923465871. In tal senso è in effetti più appropriato dire che gli algoritmi genetici seguono una logica lamarckiana più che darwiniana, in quanto le mutazioni non devono essere completamente casuali: i padri tramandano ai figli ciò che hanno “appreso”. I cosiddetti “algoritmi formica” si basano su una logica analoga, in quanto utilizzano “feromoni artificiali” per rinforzare le soluzioni migliori ed arrivare il più vicino possibile ed il più in fretta possibile alle soluzioni ottimali. Un altro problema è che le evoluzioni successive dipendono dal punto di partenza, ovvero, sempre nel caso del nostro commesso viaggiatore, dall’insieme di percorsi casualmente scelti da cui parte l’evoluzione. È la cosiddetta trappola del minimo locale, da cui si può cercare di scappare, come propose per primo Shen Lin, ripetendo più percorsi evolutivi partendo da punti iniziali diversi. Va inoltre ricordato che esistono semplici regole euristiche per affrontare in modo pragmaticamente soddisfacente questo problema. Una di questa ad esempio può essere quella di muoversi sempre verso la città più vicina non ancora toccata. È dimostrabile che questa semplice regola costruisce un giro che, per 10n città, non è (n+1)/2 volte la lunghezza del tour ottimale. Nel caso di 100 città, avremmo un tour al massimo più lungo del 50% di quello ottimale, che peraltro 48 - Sistemi & Impresa N.1 - Gennaio/Febbraio 2002 non potrebbe in pratica essere calcolato, mentre con l’euristica della città più vicina non è richiesta alcuna capacità di calcolo. Pertanto, di fronte a problemi complessi irrisolvibili (perlomeno in senso pragmatico) la scienza della complessità propone strumenti nuovi (algoritmi genetici, algoritmi formica, soluzioni euristiche “semplici”) che consentono di individuare soluzioni soddisfacenti in tempi ragionevoli. Di fronte a problemi concreti, questi strumenti vanno peraltro inseriti in un quadro più ampio, vanno cioè integrati in un modello che rappresenti in un qualche modo il problema da risolvere, specificando gli attori o le parti in gioco e soprattutto le interazioni tra di essi. I “complessologi” (dall’inglese “complexologist” che ho visto utilizzato da qualcuno) ricorrono principalmente a: ● modelli di una qualche natura che descrivano il “sistema reale”; ● “agenti” inseriti nel modello che simulano il comportamento degli “attori veri” del “sistema reale”; essi sono programmi autonomi che possono anche modificare il proprio comportamento sulla base dell’esperienza; ● descrizioni delle interazioni tra gli agenti (come dice Van Parunak, chief scientist al Environmental Research Institute of Michigan “L’idea base è che la maggior parte dei sistemi sono costituiti da componenti interattivi. La scienza della complessità consiste nel comprendere queste interazioni.”); ● gli strumenti descritti, cui possiamo aggiungere le reti neurali artificiali e l’utilizzo delle logiche fuzzy, ecc., per individuare soluzioni; ● ed infine ricorrono alle simulazioni, ovvero fanno “funzionare” il sistema descritto, per individuare i comportamenti e le situazioni emergenti all’interno del “sistema reale”, al modificarsi dei comportamenti degli agenti e delle relazioni. Da questo quadro risultano evidenti alcuni elementi caratterizzanti la scienza della complessità: 1 - innanzitutto che l’“intelligenza è nelle relazioni”, prima ancora che nelle unità componenti, non solo nel senso che i singoli agenti possono essere “stupi- ALGORITMI GENETICI di” (come nel caso delle formiche”) ma che la comprensione del sistema sta soprattutto nella comprensione delle relazioni; con ciò si ribalta il paradigma cartesiano che è alla base di molti strumenti manageriali di gran moda (per esempio la FMEA o il QFD) e si pone il problema di ripensare a questi stessi strumenti. 2 - Che vi deve essere una ricerca di “semplicità sottostante la complessità”, la quale ci consenta di comprendere e gestire quest’ultima, pur nell’ambito della nostra razionalità limitata. Paradigmatico in questo senso è il caso dello stormo di “uccelloidi” di Craig Reynolds. Per descriverne (e prevederne) il comportamento (cioè il volo di questo stesso stormo in un ambiente mutevole) Reynolds introdusse solo tre regole semplici di interazione locale: a - rispettare una distanza minima da altri oggetti dell’ambiente, compresi altri uccelloidi; b - mantenere la stessa velocità degli altri uccelloidi nelle sue vicinanze; c - muoversi verso quello che viene percepito come centro di massa degli uccelloidi nelle sue vicinanze. In tal modo era possibile simulare in modo molto realistico il comportamento del sistema “stormo di uccelli in movimento in un ambiente naturale”. Se si fosse tentato di ottenere lo stesso risultato con un singolo insieme di istruzioni di alto livello si sarebbe ottenuto un sistema molto ingombrante e complicato, con un’infinità di regole per dire ad ogni uccelloide come comportarsi in ogni caso possibile. 3 - Che, poiché la simulazione è il cuore dell’indagine, la potenza di calcolo oggi disponibile risulta essere un abilitatore vitale. Come dice Stuart Kauffmann, cofondatore del Santa Fe Institute per gli studi sulla complessità: “Grazie alla potenza di calcolo ora disponibile, i ricercatori possono andare oltre l’approccio riduzionista ed affrontare il problema opposto di rimettere insieme i pezzi per guardare al sistema complesso”. 4 - Infine, il superamento del dilemma tra ottica sistemica ed individualismo metodologico, soprattutto nella capacità di individuare le responsabilità individuali. Se tutti gli agenti sono legati in relazioni tra di loro, anche se nel sistema si possono generare situazioni emergenti che vanno al di là delle scelte dei singoli, attraverso le catene di relazioni è sempre possibile arrivare ad individuare i comportamenti (e quindi le responsabilità) dei singoli che generano i comportamenti del sistema (scoprendo spesso anche responsabilità controintuitive) Esempi di applicazioni aziendali Di recente, si è cercato di applicare questi concetti al mondo delle aziende. Ciò ha significato, per lo più, creare modelli software in grado di simulare un qualche processo aziendale, per poi intervenire per il suo miglioramento. In questo articolo verranno descritte tre applicazioni: ● alla supply chain, ● allo scheduling, ● alla gestione dei trasporti aerei. Dalla supply chain al supply network Le “adaptive supply chain network” sono un’evoluzione delle supply chain “tradizionali”, e cercano di sostituirne la logica rigida e lineare. In ogni nodo della supply chain devono essere prese decisioni. Esse coinvolgono variabili come il prezzo, la qualità, la disponibilità dei materiali, l’affidabilità dei fornitori, i volumi, il lead time, le modalità di consegna, le localizzazioni, ecc. Ad esempio, se il prezzo delle materie prime diminuisce, un responsabile acquisti dovrebbe confrontare i risparmi dovuti all’acquisto di più materiale con i costi del suo immagazzinamento. Inoltre ogni trade-off influenza tutte le altre decisioni della supply chain; migliaia di decisioni sono prese contemporaneamente, dai vari responsabili degli acquisti, della produzione e della logistica, senza però che nessuno di essi possa avere una visione sistemica. Ciò significa, ad esempio, che gli approvvigionatori comprano materie prime senza alcuna conoscenza circa la domanda effettiva del prodotto finito. Si tratta quindi di un sistema molto complesso, e che deve essere oltretutto gestito su un orizzonte temporale molto ristretto, nell’ordine del giorno se non dell’ora. Sistemi & Impresa N.1 - Gennaio/Febbraio 2002 - 49 ALGORITMI GENETICI Gli strumenti della “adaptive supply network” raccolgono continuamente dati relativi alla domanda e all’offerta da tutti i punti della rete, li integrano, e li comunicano in tempo reale lungo tutta la rete, riducendone così i tempi di risposta. A fronte degli eventi che si manifestano nella supply chain, gli agenti intelligenti, situati nei punti decisionali della rete, azionano automaticamente una serie di tecniche di risoluzioni dei problemi, analizzando questi dati con gli algoritmi della complessità, e producendo grafici tridimensionali che individuano l’opzione migliore per l’acquisto di materie prime. Si ritiene che con questi approcci sia possibile dimezzare i tempi e i costi lungo la catena logistica riducendo i costi di magazzino, di trasporto, ed amministrativi. SAP ed il BiosGroup (una joint venture tra Cap Gemini Ernst & Young e Stuart Kauffman, di cui sono azionisti - nonché clienti - anche Procter & Gamble e Ford) ad esempio stanno cercando di passare dalla visione statica e lineare delle supply chain al concetto di rete adattiva (supply network). È stata annunciata la nuova versione di mySAP™ Supply Chain Management, che dovrebbe essere pronta per il secondo trimestre del 2002, e che gestirà appunto reti adattive di approvvigionamento attraverso l’uso di agenti intelligenti. Degli agenti intelligenti vengono posti in ogni punto decisionale della supply chain, con l’obiettivo di monitorare e coordinare l’intera rete, dall’approvvigionamento di materie prime fino alla consegna al cliente finale, passando per la produzione di componenti e l’assemblaggio. Gli agenti nei nodi stabiliscono una comunicazione con gli altri sistemi, relativamente alla situazione delle operazioni ed alle eccezioni. Vi sono regole interne alla rete - specifiche per settore - che determinano come gli agenti interagiscono tra di loro. In tal modo, non solo tutte le decisioni di acquisto routinarie vengono automatizzate (consentendo agli impiegati di concentrarsi sulle attività a valore), ma tutte le decisioni lungo la supply chain vengono prese in modo coordinato e sincrono, anziché sequenzialmente. Gli agenti, cumulando conoscenze sulla base dell’esperienza, aumentano la loro capacità di predire eccezioni e di implementare automaticamente 50 - Sistemi & Impresa N.1 - Gennaio/Febbraio 2002 risposte efficienti. Quando nella rete si presentano delle anomalie cui gli agenti non sanno rispondere in modo automatico, l’applicazione elabora delle simulazioni di scenari alternativi, che vengono fornite ai decisori aziendali per un intervento manuale. La Procter & Gamble ha esperimentato il Market ProwessTM del Prowess Software, una divisione del BiosGroup per ottimizzare il flusso delle materie prime per molti dei suoi detergenti e shampoo. È uno strumento di supporto alla decisioni che può essere inserito all’interno di sistemi di scambio elettronico o di e-procurement già esistenti, ed è complementare a soluzioni di e-commerce offerte da SAP, Commerce One od Oracle. Acquirenti e venditori devono fornire le loro preferenze e le loro capability per i vari acquisti. Le capability dei fornitori possono essere differenziate (ad esempio prezzi diversi per diverse date di consegna). Lo strumento effettua analisi di tradeoff basate su algoritmi avanzati, e produce grafici tridimensionali che evidenziano la migliore opportunità di acquisto per le parti coinvolti: i fornitori vengono classificati secondo il livello di soddisfacimento dei requisiti degli acquirenti per ogni specifica transazione. I risultati sono stati sinora soddisfacenti. Ad esempio, per tagliare i costi di spedizione, P&G prima inviava solo automezzi a pieno carico. Ci si è però poi accorti che questo metodo non solo causava un incremento dei costi di magazzino dei clienti, ma anche la mancanza di prodotti di P&G negli scaffali dei negozi mentre gli automezzi mezzi pieni venivano tenuti fermi nelle zone di carico. Complessivamente gli eccessi e i mancanti di magazzino sono stati ridotti del 75%. Lo scheduling Un altro caso molto interessante è quello dell’utilizzo degli algoritmi genetici alla John Deere e alla Volvo per problemi di schedulazione con vincoli di risorse. Questi sono tra i problemi di ottimizzazione più difficili. Tanto le tecniche di programmazione matematica che gli approcci euristici hanno ottenuto un successo limitato. Le prime producono programmi ottimali, ma scontano un’esplosione combinatoria che fa aumentare esponenzialmente il tempo per l’indi- ALGORITMI GENETICI viduazione della soluzione all’aumento del numero di attività da programmare. I secondi, basati su regole di priorità, non garantiscono soluzioni ottimali. Gli algoritmi genetici costituiscono una soluzione che cerca di ovviare ai problemi appena citati: attraverso molti cicli di valutazione, selezione e ricombinazione, si ottiene un’evoluzione verso buone soluzioni in un periodo di tempo accettabile. Alla John Deere Harvester Works, una fabbrica che produce macchine agricole, gli ordini venivano evasi selezionando insiemi di componenti ed optional dal magazzino della fabbrica per essere inviati ai distributori locali che si occupavano dell’assemblaggio finale. Per migliorare la qualità e ridurre i magazzini, la Deere cominciò ad assemblare le macchine in fabbrica, per poi spedirli direttamente al distributore senza passare per il magazzino. Questo cambiamento generò nuove problematiche di non poco conto, in quanto il livello di complessità era significativo: il cliente poteva ordinare all’interno di una gamma di prodotti che comprendeva teoricamente più di sei milioni di possibili diverse combinazioni. Stessi problemi di complessità sono presenti nello stabilimento New River Valley Assembly Plant della Volvo, che produce tutti gli autocarri per il nord America. Secondo gli esperti, il numero di configurazioni in cui l’azienda può costruire un autocarro è virtualmente infinito. Le sfide alla produzione includono i tempi di consegna, i vincoli posti dai fornitori, le risorse di lavoro, il cambio negli ordini, e la logistica. Poiché molti veicoli sono personalizzati, quelli che richiedono materiali speciali o tempi extra per l’assemblaggio devono essere posti in una sequenza appropriata per bilanciare il carico di lavoro. Tornando alla Deere, la programmazione della produzione si trovò sotto pressione. Macchine semi assemblate erano presto riunite in una stazione di lavoro, mentre altre stazioni rimanevano inattive. Nell’ufficio responsabile della programmazione della produzione, il personale compilava freneticamente a mano fogli di lavoro cercando di livellare il flusso di macchine e di conciliare questo con le esigenze di spedizione degli autocarri ordinati. Nacquero anche problemi di relazioni interne: l’organizzazione di produzione prevedeva che i lavoratori fossero inquadrati in gruppi di lavoro autonomi, ognuno dei quali responsabile di un particolare sistema con le sue infinite combinazioni. In presenza di incentivi monetari, i gruppi di lavoratori cominciarono a litigare. Fulkerson ebbe l’idea di utilizzare gli algoritmi genetici per supportare la schedulazione. Fu sviluppato il software di ottimizzazione basato sugli algoritmi genetici chiamato OptiFlex, della Optimax Systems Corporation di Cambridge, Massachusettes, USA. Optimax (ora con i2Technologies) è stata una delle prime aziende a offrire una piattaforma basata sugli algoritmi genetici orientata a risolvere problemi complessi di pianificazione e scheduling per aziende di produzione su larga scala. Optiflex è in grado di affrontare il problema estremamente complesso di produrre tutti i modelli di macchine su un’unica linea di assemblaggio. Esso utilizza gli algoritmi genetici, nonché ovviamente la potenza di calcolo dei moderni computer, per creare rapidamente il programma di produzione coerente con le attese dei clienti e compatibile con i vincoli presenti, a partire dall’insieme di tutti i possibili programmi alternativi. Come spiega Tom Murphy, vice president della produzione alla Volvo, che ha successivamente adottato lo stesso Optiflex, “Gli algoritmi genetici fanno evolvere buoni programmi di produzione a partire da una popolazione di possibili programmi. Il sistema riproduce l’operato della biologia evolutiva, creando molti programmi e provando la loro idoneità nei termini della efficienza produttiva che essi possono consentire. La verifica dei vincoli allerta il sistema circa i limiti fisici e logistici che devono essere considerati in ogni scenario”. Centinaia di migliaia di dettagli, comprendenti gli ordini dei clienti, la disponibilità di materiali e risorse, le capacità produttive e distributive, e le date di consegna sono mappate nel sistema. Gli algoritmi genetici introducono “mutazioni” ed “incroci” sugli scheduling presenti generandone di nuovi: questi ultimi vengono valuSistemi & Impresa N.1 - Gennaio/Febbraio 2002 - 51 ALGORITMI GENETICI tati e quindi selezionati sulla base di funzioni di preferenza (“fitness function”). Gli ingegneri della conoscenza della Optimax crearono il prototipo del modello dei vincoli di Optiflex per la Harvester Works attraverso interviste ai supervisori di produzione e cercando di capire e “tradurre” nel sistema le “regole di buon senso” applicate dai programmatori, sviluppando così un’applicazione specifica per lo scheduling alla linea di assemblaggio. Il sistema è in grado di bilanciare un numero crescente di vincoli produttivi, quali le ore disponibili, le sequenze, gli spazi, i cambi, la disponibilità di parti e componenti, le priorità degli ordini, ecc. Anche in Volvo i vincoli furono forniti al sistema dando tutte le informazioni necessarie per individuare il migliore programma per gli ordini correnti. Ogni notte il sistema prende gli ordini ricevuti quel giorno e produce quanti scenari possibili, il che può voler dire migliaia di differenti combinazioni. La migliore di queste viene selezionata ed “evolve” attraverso migliaia di generazioni successive, fino ad arrivare alla opzione “migliore”. In John Deere si parla di persino 600.000 programmi diversi ogni notte. Alla Volvo, ogni mattina, il programmatore della fabbrica verifica il risultato del lavoro del computer e sceglie il programma più adatto per le necessità della settimana. Se gli ordini vengono modificati, il programmatore fornisce semplicemente le nuove informazioni e Optiflex aggiorna il programma. Alla Volvo il ciclo di pianificazione si è così ridotto da due giorni per ogni linea di assemblaggio a quattro ore per entrambe. Alla John Deere, le macchine ora scorrono senza intoppi lungo la linea di assemblaggio, con la produzione mensile in rapido aumento. Gli straordinari sono stati quasi annullati. Più in generale, questa applicazione consente di: programmare gli ordini per l’assemblaggio giornalmente invece che settimanalmente; rivedere gli ordini dei clienti in prossimità della data di preparazione; ridurre i costi di magazzino; bilanciare i differenti obiettivi delle vendite e della produzione. Ha effetti positivi anche per il personale: il carico di lavoro giornaliero tra le varie celle di produzione viene meglio 52 - Sistemi & Impresa N.1 - Gennaio/Febbraio 2002 livellato; migliora le comunicazioni dei team attraverso i report di OptiFlex; aumenta le possibilità di incentivi aumentando l’efficienza operativa. La nuova frontiera degli algoritmi sembra essere quella degli “algoritmi formica”. Questi utilizzano agenti che, come formiche, lasciano dei feromoni: ciò consente di “tracciare” le soluzioni individuate, riadattandole al mutare delle condizioni. Pertanto ogni soluzione successiva ha “memoria” di quanto appreso in precedenza. Essi sono stati utilizzati ad esempio in un grande stabilimento della Unilever, per individuare il miglior layout delle linee di confezionamento e dei magazzini ed il miglior flusso dei materiali. Approcci simili sono allo studio in France Telecom, BT ed MCI Worldcom per ottimizzare il convogliamento del traffico attraverso le loro reti telefoniche. Come si nota, al momento il miglior utilizzo sembra essere quello per l’ottimizzazione dei percorsi. La programmazione dei trasporti La Southwest Airlines è famosa per molti motivi: non gestisce posti assegnati, ha tariffe basse, frequenza dei voli molto alta, un ottimo servizio. Applica i concetti della velocità e dell’efficienza non solo al trasporto passeggeri, ma anche a quello delle merci. Ciononostante, nel settore merci la linea aerea stava incontrando problemi di congestione in alcune aree e di eccesso di capacità in altre. Con l’assistenza del Bios Group, la Southwest ha analizzato il suo sistema di movimentazione delle merci secondo le logiche dei sistemi complessi adattivi, finendo per cambiare le strategie di carico e ottenendo risultati notevoli. Southwest stava esaminando il business merci da alcuni anni, con il forte sospetto che questo business potesse essere espanso. Uno degli elementi chiave era la capacità di carico. I dati operativi suggerivano che, nei 56 aeroporti serviti, in media solo il 7% dei voli era pieno (in peso e volume), mentre i concorrenti riempivano il 35% dello stiva. Inoltre, spesso gli aeromobili dovevano portare molto carico, ma mancava lo spazio per ciò. Si poteva arrivare a ritardare la partenza del volo per sistemare il carico, cosa assurda ALGORITMI GENETICI per una aerolinea principalmente addetta al trasporto passeggeri. Gli addetti al carico pagante, essendo concentrati sulla velocità, in caso di problemi erano propensi ha spostare il carico sul prossimo volo utile, creando problemi agli addetti del volo successivo, che si trovavano così merce aggiuntiva rispetto al loro piano di carico, e venivano spinti a loro volta a rimandare la merce a qualcun’altro. Questo scaricabarile era particolarmente preoccupante in aeroporti con molto traffico merci, come Phoenix, Houston, Las Vegas, e St. Louis. Secondo lo stile Southwest Airlines, fu lanciato un team di brainstorming per individuare una soluzione. Il team era composto di esperti del tema, di addetti al carico, e di supervisori delle operazioni di carico che conoscessero le modalità di lavoro nelle diverse aree. Il modo di lavorare del team era quello di studiare i problemi locali sperimentati in ogni stazione, ed estrapolare da questi soluzioni applicabili ovunque: il risultato finale era una lista di possibili soluzioni. Mentre l’azienda eccelleva nel sapere che cosa funzionava nel singolo aeroporto, le mancava una figura d’insieme che le consentisse di ottimizzare la rete. Perciò la Southwest prese specialisti delle reti da altri settori, come quello dei trasporti o delle comunicazioni, per rianalizzare il problema. Inoltre consultò gli scienziati del Bios Group. La prima soluzione consistette in un “libro delle regole”, che ogni addetto al carico doveva tenere a portato di mano per ridirigere i carichi dagli aeroporti molto utilizzati verso quelli meno utilizzati. In tal modo Southwest sperava di risolvere i problemi che stavano incontrando, ad esempio, in aeroporti come quelli di Phoenix e di Los Angeles. Nel realizzare questo libro di regole, vennero utilizzate quelle della teoria della complessità: capire il comportamento degli elementi più semplici dell’organismo, per poi scoprire le loro proprietà che determinano comportamenti emergenti su larga scala. Seguendo questa logica, il team creò un modello basato sugli agenti, che riproduceva le operazioni della Southwest attraverso la simulazione. Furono raccolti dati storici, dalle descrizioni delle spedizioni, dai programmi dei voli, e dai carichi. Fu utilizzata una lista delle spedizioni, articolate per peso, numero di pezzi, origine, destinazione e classe di servizio (Next Flight Guaranteed, per il quale la spedizione è effettuata con il primo volo diretto disponibile; Priority Rush, che garantisce la consegna in 24-48 ore a seconda della distanza; Freight, con il quale le spedizioni vengono fatte dove vi sia spazio di carico). Inoltre, poiché i bagagli e la posta hanno la priorità, fu inserita nel modello un’ipotesi circa la percentuale di stiva già occupata. Spedizioni e voli furono inseriti nel sistema, così come spedizionieri ed addetti ai carichi e le loro azioni: ricezione di una spedizione, sua assegnazione ad un volo, carico dell’aereo, volo, scarico, trasferimento su altro volo. Furono aggiunte delle variabili probabilistiche legate a situazioni particolari, come ad esempio la possibilità di un carico sbagliato dovuto al sovraccarico di lavoro di un addetto. Per verificare le prestazioni del sistema, si misurarono tre indicatori: la quantità di merce manipolata in ogni aeroporto (cercare di evitare manipolazioni aggiuntive al carico iniziale e allo scarico finale), la quantità di merce da immagazzinare ogni notte (per ragioni di sicurezza, il carico va messo sotto chiave di notte per essere riportato all’aereo il mattino), il conseguimento del livello di servizio. Attraverso la simulazione si evidenziò che la strategia attualmente utilizzata dai gestori dei carichi di indirizzare la merce sulla prima sequenza di voli disponibili dall’aeroporto di partenza a quello di arrivo, seppur intuitivamente la migliore, non era la più efficace. Infatti si poteva utilizzare una sequenza “meno ottimale” se questo voleva dire non cambiare aereo senza mancare gli obiettivi di tempo. Come risulta dalla tabella seguente, dovendo inviare della merce da Albuquerque a Oakland, la strategia classica prevedeva di imbarcare la merce sul volo 1547 diretto a San Diego, lì movimentarla per il volo 807. Alle 15.35 la merce sarebbe stata ad Oakland con due operazioni di carico e scarico. Con la “strategia della rotta”, si poteva lasciare la merce sull’aereo che doveva percorrere la rotta 102: questa sarebbe arrivata ad Oakland alle 18.10 (comunque in tempo) ma senza trasferimenti. Sistemi & Impresa N.1 - Gennaio/Febbraio 2002 - 53 ALGORITMI GENETICI NUMERO DEL VOLO ORIGINE DESTINAZIONE PARTENZA ARRIVO ROTTA 1547 ALBUQUERQUE LOS ANGELES 10.30 11.55 102 1547 LOS ANGELES SAN DIEGO 12.15 13.15 102 807 SAN DIEGO OAKLAND 14.15 15.35 91 1547 SAN DIEGO SAN JOSÈ 13.35 14.55 102 1406 SAN JOSÈ SAN DIEGO 15.15 16.30 102 1171 SAN DIEGO OAKLAND 16.50 18.10 102 Non essendoci rotte che colleghino attraverso uno stesso aereo alcune città, alcuni trasferimenti erano inevitabili, però la simulazione dimostrava che con questa strategia la Southwest poteva ridurre complessivamente l’immagazzinamento notturno da 240.000 tonnellate la settimana a 50.000, e la movimentazione tra aerei da 3.250.000 a 2.500.000. Dal modello risultò che anche il livello di servizio relativo alla tipologia “Next Flight Guaranteed” migliorava. Non sono state condotte analisi approfondite per capire questo fenomeno, ma la sensazione è che il motivo risieda nel fatto che, aspettando l’aereo che avesse la giusta rotta per quella merce, si liberava spazio sui primi aerei per i pacchi NFG. Invece il servizio Priority Rush peggiorava dell’1%. Per i servizi Freight si pose un obiettivo di 3 giorni, che veniva considerato accettabile. Per implementare la strategia della rotta, la Southwest inviò dei gruppi negli aeroporti di Phoenix, Houston, Las Vegas, St. Louis, Midway, e Kansas City. Questi spiegarono per tre settimane agli addetti al carico la nuova strategia, aiutandoli a cambiare le scelte abituali, e combattendo la cultura intuitiva fino ad allora diffusa. Attualmente la Southwest sta applicando la strategia in venti aeroporti, senza bisogno del supporto dell’automazione. Gli addetti utilizzano il “libro delle regole” che l’azienda fornì sin dall’inizio: un semplice documento di tre pagine che dice loro come indirizzare i carichi di merci. I risultati nel mondo rea54 - Sistemi & Impresa N.1 - Gennaio/Febbraio 2002 le sono stati ottimi. Il trasferimento di merci è sceso dal 50 all’85% nei sei aeroporti più trafficati, che corrisponde ad una riduzione tra il 15 ed il 20% del carico di lavoro degli addetti. Una forte riduzione dell’immagazzinamento notturno ha consentito alla Southwest di ridurre i propri magazzini, e di risparmiare quindi i dollari dei costosissimi noleggi di spazi aeroportuali. La riduzione dei trasferimenti notturni, ha anche ridotto la manodopera necessaria alla movimentazione. Come la simulazione aveva suggerito, le spedizioni sono effettuate con maggiore puntualità. In particolare, con gli NFG e i Priority Rush, la merce arriva da 1 a 4 ore prima, risultato che ha un notevole impatto sul livello di soddisfazione del cliente. Data la natura reticolare del sistema dei trasporti, accoppiata alla natura imprevedibile delle capacità di carico, la Southwest necessitava di un quadro d’insieme per risolvere il suo problema della gestione delle merci. Il modello basato su agenti del Bios Group ha scoperto regole di comportamento, relative al modo di fare i manifesti e alle strategie di carico, che possono migliorare significativamente l’operatività dell’azienda e ha suggerito una soluzione che sembra decisamente intuitiva, con il senno di poi. In effetti, è decisamente intuitiva: infatti essa fu proposta dal personale della Southwest durante le sessioni di brainstorming. Però, senza un modello d’insieme ed una simulazione, non era possibile capire quali sarebbe stati gli impatti complessivi. ALGORITMI GENETICI Ostacoli Quali possono essere gli ostacoli allo sviluppo di questi “strumenti della complessità” nelle applicazioni aziendali? Possiamo individuare due categorie di problemi: quelli “concettuali” e quelli “manageriali”. È evidente che i sistemi basti su agenti tendono a risolvere in via semplificata, locale e soddisfacente, problemi che non possono essere ottimizzati. Resta però il dubbio, particolarmente evidente nel caso della supply chain, dove la razionalità locale può portare all’effetto amplificazione, se sia meglio perseguire la strada dell’autoorganizzazione, o non sia invece preferibile cercare l’implementazione di un sistema di controllo generale centralizzato. Per Bak, professore dell’università di Copenhagen, studiando il traffico afferma che “a meno che non si abbia un sistema controllato globalmente, dove sia possibile controllare ogni singola automobile, un sistema in cui le auto siano agenti adattivi individuali che non possono comunicare globalmente è il sistema migliore”. Il che vuol dire che, potenziate le capacità di elaborazione e di comunicazione delle informazioni, un sistema autoorganizzato potrebbe esser meno “efficiente” di uno centralizzato. In questo caso i problemi fondamentali sarebbero quelli del riconoscimento “politico” di un attore che possa interpretare il “centro” e quelli della predisposizione di strumenti abbastanza potenti di informazione. Il centro peraltro non dovrebbe “ottimizzare la soluzione”, che non è, almeno pragmaticamente, possibile. La domanda chiave sarebbe quindi: quale, tra un sistema autoorganizzato, che utilizza le soluzioni emergenti dall’interazione tra agenti che seguono semplici regole di comportamento, e un sistema diretto centralmente, che coordina l’applicazione delle soluzioni soddisfacenti ottenute con gli strumenti della complessità, può produrre in un ambiente complesso, mutevole ed incerto, la “soluzione soddisfacente migliore”? Un altro problema interessante è l’ambito di applicabilità di questi strumenti: solo finché il comportamento degli agenti è prevedibile (perlomeno per quanto riguarda quei comportamenti che hanno impatto sulle prestazioni del sistema allo studio) le simulazioni hanno un loro significato. Ma ciò è vero solo quando i comportamenti d’interesse sono abbastanza semplici, come dovrebbe risultare chiaro ripensando agli esempi portati in quest’articolo. Gli unici comportamenti un po’ complessi erano quelli legati agli errori degli addetti al carico nel caso Southwest, in seguito a stress sul lavoro. Gli errori però, anche tenuto conto del loro impatto significativo ma non discriminante - sulle prestazioni complessive del sistema, potevano essere stimati su base probabilistica in modo soddisfacente. Se dovessimo simulare situazioni che implicano un coinvolgimento molto maggiore dei comportamenti umani - agenti imprevedibili - emergerebbero i limiti di questi strumenti. Inoltre, come evidenzia Simon, la maggior parte di questi modelli non tengono in dovuta considerazione la vera modalità attraverso cui le persone prendono le decisioni. Gli ostacoli “manageriali” sono ancor più significativi. Vi è infatti in questi strumenti una grossa sfida a come è stato concepito il management fino ad ora. Con questi strumenti si deve abbandonare il concetto classico di controllo manageriale, che implica una pianificazione, la previsione dei risultati, l’esecuzione di quanto pianificato, la verifica. Si deve guidare senza guidare. Il manager (forse è meglio dire il leader) deve creare un contesto, una vision, delle regole base di riferimento, e poi lasciare che il sistema (l’insieme delle persone) operi autonomamente. Può verificare solo ex-post “cosa è successo”: intervenendo per correggere se non è soddisfatto, oppure cogliendo le opportunità, ovvero sfruttando i fatti imprevisti Sistemi & Impresa N.1 - Gennaio/Febbraio 2002 - 55