UNIVERSITA DEGLI STUDI DI PADOVA

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "UNIVERSITA DEGLI STUDI DI PADOVA"

Transcript

1 UNIVERSITA DEGLI STUDI DI PADOVA DIPARTIMENTO DI MATEMATICA CORSO DI LAUREA SPECIALISTICA IN ECONOMIA E DIREZIONE AZIENDALE TESI DI LAUREA VEHICLE ROUTING PROBLEM CON FINESTRE TEMPORALI RELATORE: CHIAR. MA PROF. SSA: ALESSANDRA BURATTO LAUREANDA: CLAUDIA GIORDANO MATRICOLA N ANNO ACCADEMICO

2 INDICE INTRODUZIONE... 3 Capitolo 1 - VRP: Veicle Routing Problem Definizione e concetti principali Descrizione dei problemi Vincolo di capacità (CVRP) Vincoli di lungezza dei route Vincolo di tempo (time windows) Vincolo di precedenza (pickup and delivery) Vincolo con Backaul Capitolo 2 - VRPTW: Veicle Routing Problem wit Time Windows VRPTW Modello Matematico del VRPTW Variante Hard e Soft Veicle Routing Problem wit Hard Time Windows (VRPHTW) Veicle Routing Problem wit Soft Time Windows (VRPSTW) Algoritmi euristici Algoritmi euristici costruttivi Algoritmi euristici a due fasi Algoritmi euristici migliorativi Algoritmi metaeuristici Simulated Annealing (SA) Deterministic Annealing (DA) Tabu Searc (TS) Algoritmi Genetici (AG) Ant Colony System (ACS) Reti Neutrali (RN) VRPTW: diverse definizioni di finestre temporali Tempo di Viaggio Flessibile Tempo dipendente dal tempo di viaggio Capitolo 3 - Tecnice per gestire le finestre temporali attraverso le funzioni Funzioni di costo lineari a tratti Funzione di costo convessa

3 3.2.1 Funzione di costo lineare a tratti convessa della finestra temporale Problemi di regressione isotonica Funzione di costo generale convessa della finestra temporale CONCLUSIONI BIBLIOGRAFIA

4 INTRODUZIONE In questo lavoro verrà approfondito il Veicle Routing Problem (VRP), problema di ottimizzazione con molti risvolti nella vita reale e strumento principale per modellare la realtà della logistica e del trasporto dei beni, attraverso lo studio degli algoritmi euristici e metaeuristici ce lo risolvono. In particolare si analizzerà il problema di VRP con il vincolo di finestra temporale. Questo vincolo implica ce i clienti devono essere serviti all'interno di un certo intervallo cronologico rappresentato dalla finestra temporale. Traendo spunto dall articolo di Hascimoto H., Yagiura M., Imaori S.e Ibaraki T. (2010) Recent progress of local searc in andling te time window of te veicle routing problem, vengono evidenziati gli ultimi sviluppi fatti in materia per quanto riguarda le tecnice per gestire le finestre temporali ce possono essere di due tipologie, come vedremo nel Capitolo 2, Hard o Soft. Nel Capitolo 1 si illustra il VRP in tutti i suoi aspetti fondamentali e nelle sue principali tipologie ce si distinguono per modalità di servizio, caratteristice dei veicoli, struttura dei vincoli, sistema di obiettivi e tipi di vincoli. Nel Capitolo 2, dopo aver presentato le diverse tipologie di problemi collegati al VRP ci concentreremo su uno di questi problemi, quello ce comprende le finestre temporali, ovvero il cosiddetto Veicle Routing Problem wit Time Windows, indicato con la sigla VRPTW. Il Capitolo 3 è dedicato ai recenti sviluppi in relazione alle tecnice di gestione delle finestre temporali attraverso le funzioni di costo lineari a tratti e funzioni di costo convessa, espressi dall'articolo sopra citato. 3

5 Capitolo 1 - VRP: Veicle Routing Problem 1.1 Definizione e concetti principali Il Veicle Routing Problem, ce indiceremo d'ora in poi con la sigla VRP, è un tipico problema operativo nelle reti di distribuzione e consiste nella distribuzione di beni materiali tra un deposito o un insieme di depositi e i clienti. Tale problema è stato introdotto da Dantzig e Ramser (1959); nello specifico con il termine VRP si intende un'intera classe di problemi ce a per oggetto lo studio di tecnice per la pianificazione dei percorsi di una flotta di veicoli, ce svolgono un servizio di distribuzione di beni materiali, servizi o informazioni tra un insieme di depositi ed un insieme di clienti. Nucleo centrale è la pianificazione dei percorsi (route) su cui sono disposti i clienti da raggiungere e servire, con l'obiettivo di minimizzare i costi di routing e di assegnamento dei veicoli ai relativi percorsi. Questo tipo di problema è il più importante tra i problemi di routing, i quali costituiscono un sottoinsieme dei problemi di logistica; questi riguardano il problema di definire un insieme di percorsi coperti da un insieme di veicoli ce trasportano materiali, persone o informazioni e ce partono e terminano nello stesso deposito utilizzando una opportuna rete stradale; la risoluzione di questi problemi prevede la costruzione di un modello a grafo. I problemi di routing più realistici comprendono l'aspetto di sceduling in cui si devono pianificare ance gli orari del servizio; in questo caso si considera oltre alla componente geografica tipica del problema di routing puro ance una componente temporale. Il VRP a molte implicazioni pratice nella realtà in contesti logistici e distributivi di dettaglio, come ad esempio il servizio di scuolabus, la raccolta dei rifiuti, la pulizia delle strade mediante veicoli; tali problemi riguardano non solo le aziende nel settore del trasporto, ma ogni compagnia ce deve affrontare un trasporto effettivo di merce (ad esempio gestire il servizio di posta interna di una grande azienda). Il VRP può essere esplicitato andando a descrivere nel dettaglio le caratteristice dei veicoli, dei clienti e della rete stradale ce ne definiscono il contesto operativo. La rete stradale utilizzata per il trasporto normalmente viene rappresentata mediante un grafo orientato o meno (dipende se per gli arci sia impostato il senso di marcia o meno) i cui arci 4

6 rappresentano i tratti stradali percorribili ed i cui vertici corrispondono ai punti importanti della rete, cioè agli incroci ed ai punti dove sono localizzati clienti e depositi. Si tratta di un grafo pesato, ovvero ad ogni arco è specificato il costo di transito (lungezza del collegamento) ma in alcuni modelli può rappresentare il tempo di percorrenza (dipende dal tipo di veicolo ce percorre tale collegamento o dall'orario durante il quale l'arco è attraversato). Ciascun cliente, è caratterizzato da: un vertice del grafo stradale in cui è localizzato; quantità di merce, ance di diversi tipi, ce deve essere consegnata e/o raccolta (i clienti possono riciedere: consegna della merce, prelievo della merce, entrambi i servizi); intervalli di tempo (time windows) per il servizio, poicè i clienti anno un preciso arco temporale in cui possono ricevere il servizio riciesto (gli orari di apertura di un esercizio ne sono un esempio); tempi di carico e di scarico della merce; eventuali sottoinsiemi di veicoli ce possono essere utilizzati per servirlo (ad esempio, in certe parti della città possono essere adatti solo alcune tipologie di veicoli); una domanda ce se non viene soddisfatta interamente: si definiscono livelli di priorità (vincoli di precedenza definiti tra clienti); oppure se non viene eseguito il servizio in modo totale o parziale si prevede una penalità (in termini di tempo o di costi). I circuiti percorsi anno origine e destinazione in uno o più depositi localizzati nei vertici del grafo. Ogni deposito possiede un numero e determinate tipologie di veicoli inoltre può variare la quantità di merce ce il deposito è in grado di trattare. In alcuni casi è possibile una pre-assegnazione di alcuni clienti ai depositi e i veicoli partono e ritornano allo stesso deposito, per cui ciascun deposito agisce in modo indipendente dagli altri e quindi il problema può essere scomposto in diversi problemi relativi ciascuno ad un solo deposito. È frequente la situazione in cui questa scomposizione non può avvenire percè il veicolo non fa ritorno alla stesso deposito di partenza per la mancata pre-assegnazione dei clienti a 5

7 particolari depositi, questo per far fronte, se necessario, a vincoli ulteriori, ad esempio il vincolo di capacità. Un altra dimensione per la classificazione dei problemi di VRP è data dalle caratteristice dei veicoli: la flotta di veicoli può essere prefissata o variabile; il deposito di partenza, dove i veicoli ritornano o meno alla fine del percorso; capacità del veicolo, ce può essere definita dal peso, volume, numero di unità di imballaggio della merce, con eventuale suddivisione in scomparti dei beni; alcuni veicoli possono non essere idonei al carico di determinati tipi di merce (ad esempio la necessità di celle frigorifere per beni deperibili); metodologia di carico e scarico e disponibilità a bordo di attrezzature per la movimentazione della merce (pianali mobili); impossibilità per il veicolo al transito in alcuni tratti stradali; costo associato all'utilizzo del veicolo, costo prodotto dal tempo utilizzato o dalla distanza percorsa. Il problema è ance caratterizzato dagli autisti ce sono utilizzati per la guida dei veicoli e sono soggetti a vincoli di tipo sindacale diversi a seconda ce siano dipendenti del trasportatore o lavoratori autonomi (ad esempio: orari di lavoro, numero e durata delle pause). Di solito questi vincoli sono associati direttamente ai veicoli. Deposito D Cliente Figura (1.1): rappresentazione grafica del VRP classico Fonte: elaborazione personale 6

8 I principali obiettivi, ance contrastanti, dei problemi di veicle routing, sono: minimizzare il numero di veicoli utilizzati per servire tutti i clienti; minimizzare la distanza totale percorsa dalla flotta; minimizzare il costo totale del trasporto ce dipende dalla distanza totale percorsa, dal tempo totale impiegato e dai costi fissi associati ai veicoli; minimizzare le penali associate al servizio portato a termine solo a una parte dei clienti; bilanciamento dei percorsi per quanto riguarda il tempo di percorrenza e/o carico del veicolo; minimizzare una funzione obiettivo ce corrisponde a una combinazione degli obiettivi precedenti. Il VRP non è un problema puramente geografico dato ce la domanda dei clienti può essere vincolante; infatti la maggior parte delle volte è possibile trovare una soluzione ottima solo se il numero di clienti da visitare è relativamente piccolo. Nello specifico questi problemi appartengono ad una classe di problemi NP-ard, cioè l'esecuzione di algoritmi ce risolvano in modo esatto questi problemi riciede un tempo di calcolo esponenziale nella dimensione del problema. Per comprendere meglio il concetto di NP-ard di seguito una breve esposizione delle varie classi di complessità. I vari problemi possono essere suddivisi in classi a seconda del tempo occorrente all'algoritmo, definito dal numero di operazioni necessarie, per risolvere tale problema. Le principali categorie sono: Problemi P (polinomiale), per i quali esistono algoritmi risolutivi di complessità polinomiale, sono problemi di decisione ce possono essere risolti con una maccina sequenziale deterministica in un tempo ce è polinomiale rispetto alla dimensione dei dati di ingresso. Problemi NP (polinomiale non deterministico), in questa classe rientrano i problemi di decisione le cui soluzioni positive possono essere verificate in tempo polinomiale avendo le giuste informazioni, o equivalentemente, la cui soluzione può essere trovata in tempo polinomiale con una maccina non deterministica. Problemi NP completi, un problema è NP-completo se e solo se appartiene a NP e ogni altro problema in NP è riconducibile ad esso in tempo polinomiale; sono i più 7

9 difficili problemi nella classe NP nel senso ce, se si trovasse un algoritmo in grado di risolvere "velocemente" (nel senso di utilizzare tempo polinomiale) un qualsiasi problema NP-completo, allora si potrebbe usarlo per risolvere velocemente ogni problema in NP. Problemi NP-ard (difficile non deterministico in tempo polinomiale), un problema rientra in questa classe se ogni problema in NP è riducibile ad esso in tempo polinomiale (ance se non appartiene ad NP); questi problemi sono almeno complessi quanto quelli definiti nella versione di ottimizzazione di un problema NP-completo; dimostrare ce un problema di calcolo è equivalente a un problema notoriamente NPdifficile significa dimostrare ce è praticamente impossibile trovare un modo efficiente di risolverlo. I problemi ce andremo a studiare nei prossimi capitoli sono tutti riconducibili a quest ultima classe di problemi esposti. 1.2 Descrizione dei problemi Esistono molte versioni del VRP, conseguenti al tentativo di modellare al meglio le molteplici situazioni pratice riconducibili ad un problema di instradamento. I percorsi devono rispettare determinati vincoli, ce dipendono dalla natura del trasporto effettuato, dalla qualità del servizio desiderato e dalle caratteristice di clienti e dei veicoli. Alcuni tipici vincoli sono i seguenti: la riciesta totale dei clienti posti lungo il percorso non può superare la capacità del veicolo ad esso assegnato; i clienti serviti possono riciedere solo la consegna della merce, solo la raccolta o entrambi i servizi; i clienti possono essere serviti in un arco di tempo limitato (time windows) nel quale ricevono il servizio riciesto e tale attività è eseguita durante il periodo di lavoro degli autisti; possono essere definiti vincoli di precedenza tra i clienti, ne troviamo di due tipi: un primo tipo di vincolo impone ce una parte della merce da consegnare ad un cliente debba essere preventivamente raccolta presso altri clienti, per cui interi gruppi di clienti devono essere serviti dallo stesso veicolo; 8

10 il secondo tipo di vincolo prevede invece ce i veicoli possono effettuare raccolta e distribuzione, a condizione ce quest'ultima attività avvenga per prima. Per una descrizione più approfondita del VRP, analizzeremo di seguito le varianti più importanti studiate Vincolo di capacità (CVRP) La versione più comune della classe di problemi VRP è il Capacitated Veicle Routing Problem (CVRP). La soluzione CVRP consiste nel determinare un sistema di circuiti, ognuno percorso da un singolo veicolo, ce partono da un determinato deposito e vi fanno ritorno, tali da rispettare i vincoli di capacità dei veicoli e da soddisfare i requisiti della clientela e del distributore, con l'obiettivo di minimizzare il costo totale di trasporto in funzione del numero dei percorsi, della loro lungezza complessiva o del tempo di percorrenza. Questa versione del problema a specifice caratteristice: il veicolo deve consegnare la merce e non deve raccoglierla e deve passare per il deposito; la domanda del cliente è nota a priori e deve essere soddisfatta da un solo veicolo; ogni veicolo deve effettuare un solo viaggio; tutti i veicoli sono uguali (K veicoli identici); esiste un singolo deposito centrale (vertice 0); la somma delle domande dei clienti di un circuito deve essere minore o uguale alla capacità C dei veicoli (vincolo di capacità del veicolo). In questo tipo di problema il vincolo di capacità limita l'insieme dei nodi del grafo visitabili da ciascun veicolo percè ogni veicolo a una capacità di carico limitata, per cui questo vincolo riduce il numero di soluzioni possibili. 9

11 Il CVRP può essere formulato in termini di problema su grafo, nel seguente modo: Sia G= (V, A) un grafo completo dove V= {0,...,n} è l' insieme dei vertici e A quello degli arci. I vertici i=1,...,n rappresentano i clienti, mentre il vertice 0 corrisponde al deposito. Ogni arco (i, j) A a un costo non negativo c ij ce corrisponde al costo di trasferimento dal vertice i al vertice j; di solito non è consentito l'uso di loop,cioè un arco (i,i) ce collega un nodo a se stesso e ciò è imposto definendo c ii = +, i V. Se il grafo è completo orientato (diretto), la matrice dei costi c sarà asimmetrica e il corrispondente problema è detto Asymmetric CVRP (ACVRP), altrimenti se il grafo non è orientato c ij = c ij (i, j) A il problema è ciamato Symmetric CVRP (SCVRP). Nel caso il problema si sviluppi in modo simmetrico (SCVRP), l'insieme degli arci A è generalmente sostituito da un insieme di lati E. Dato un lato e E, α(e) e β(e) definiscono i suoi estremi. Per semplicità si indiceranno l'insieme dei lati di un grafo non diretto (completo) G con: A quando i lati sono indicati attraverso i loro estremi (i;j); E quando sono indicati con un singolo simbolo e. Il grafo G è generalmente completo (grafo semplice non orientato a cui ogni vertice è collegato a tutti i vertici rimanenti). Dato un vertice i, si indica con Δ + (i) l'insieme di tutti i vertici j tali ce (i;j) A insieme definito forward star; con Δ - (i) indica il backward star, ce corrisponde all'insieme dei vertici l tali ce (l;i) A. Dato un insieme di vertici S V, δ(s) denota l'insieme dei lati e E con un solo estremo in S, mentre E(S) indica il sottoinsieme dei lati con entrambi gli estremi in S. In molti casi di interesse pratico la matrice dei costi c soddisfa la disuguaglianza triangolare: c ik + c kj c ij, i, j, k V. Questa proprietà viene riciesta a volte da alcuni algoritmi; quando non è presente, si può ovviare alla sua mancanza aggiungendo una quantità positiva M al costo di ogni arco, ance se questa procedura può portare ad una pesante distorsione della metrica di costo delle soluzioni. In alcune istanze i vertici sono associati a punti del piano in cui sono specificate le coordinate, in questi casi il costo generico c ij relativo all'arco (i;j) A è definito come la distanza euclidea tra i due punti corrispondenti ai vertici i e j. 10

12 La matrice dei costi in questo caso è simmetrica, e soddisfa ance la disuguaglianza triangolare; il problema ce si propone è denominato Euclidean SCVRP. Ogni cliente i=1,..., n é associato ad una riciesta non negativa di merce d i (domanda del cliente), mentre il deposito a una domanda fittizia d o =0. Dato un insieme S V, d(s) rappresenta la riciesta complessiva dei clienti in: S : d( S) d s ss indicando con r un route, d(r) è la riciesta complessiva dei vertici visitati. Un insieme K di veicoli, uguali tra loro ed ognuno con capacità C, è disponibile nel deposito. Poniamo una condizione di ammissibilità d i C per ogni cliente i=1,..,n (condizione in cui la domanda del cliente deve essere minore o uguale alla capacità del veicolo assegnato). Ogni veicolo può percorrere un circuito e si assume ce K sia non minore di K min ce corrisponde al numero minimo di veicoli necessari per servire tutti i clienti. Il valore di K min si determina risolvendo il Bin Packing Problem (BPP) associato all'istanza di CVRP: il BPP riciede di inserire tutti gli oggetti nei contenitori in modo ce ciascun oggetto venga inserito in un contenitore; il peso (d i per i = 1,..., n) degli oggetti inseriti in ciascun contenitore non deve superare la capacità C di ogni contenitore con l'obiettivo di minimizzare il numero di contenitori utilizzati. Il BPP è un problema NP-ard, ma esistono algoritmi risolutivi efficienti ance per istanze con molti elementi. Se consideriamo un sottoinsieme S V e indiciamo con r(s) il numero minimo di veicoli necessari per servire tutti i vertici in S, una stima grossolana di r(s) può essere fornita dal lower bound [d(s)/c], essendo r (V \{0}) = K min. Introdotta la seguente variabile binaria utilizzata: x k ij 1 se ( i, j) A appartiene 0 altrimenti al route servito dal veicolo k, k K 11

13 Il problema può essere così formulato: k min c ij x (1.1) ij kk ( i, j) A con i seguenti vincoli: kk jv x 1 i V (1.2) k ij iv d i jv x k ij C k K (1.3) jv x 1 k K (1.4) k oj iv k k x x 0 V, k K (1.5) i jv j iv k x 1 k K (1.6) ( i, n1) x 0,1 i, j V (1.7) k ij La funzione obiettivo (1.1) diciara ce il costo totale di trasporto, dato dalla somma dei costi espressi sugli arci, dovranno essere minimizzati. Il vincolo (1.2) impone ce ogni cliente deve essere visitato esattamente una volta e deve essere assegnato ad un solo veicolo; il vincolo di capacità (1.3) diciara ce nessun veicolo può servire più clienti di quanto permetta la sua capacità. Il vincolo (1.4) impone ce il veicolo parta dal deposito; il vincolo (1.5) definisce ce il veicolo lasci il generico nodo, appartenente all'insieme V, solo se è entrato in tale nodo; il vincolo (1.6) impone ce il veicolo torni al fittizio nodo n+1 (ce può o non può coincidere con il deposito 0) questo ultimo è ripetitivo ma sottolinea la struttura dei percorsi; infine il vincolo (1.7) definisce la natura binaria della variabile 12

14 In letteratura sono state proposte e studiate molte varianti della versione semplice di CVRP vista; di seguito alcuni esempi: caso in cui il numero K di veicoli disponibili è maggiore a, in questa eccezione è consentito lasciare inattivi alcuni veicoli, in questo caso ad ogni mezzo viene associato un costo fisso, e il costo totale di trasporto viene valutato ance tenendo conto di questo aspetto; altro caso molto frequente considera la presenza di veicoli diversi tra loro, ognuno con una propria capacità con k =1,..., K e se riciesto con un proprio costo fisso; in altri casi possono essere vietati circuiti (percorsi) ce visitino un solo cliente. Il CVRP è un problema NP-ard, ce generalizza il primo problema di routing della storia: il problema del commesso viaggiatore, il cosiddetto Travelling Salesman Problem (TSP), dove è disponibile un solo veicolo (commesso) e deve servire un certo numero di clienti, ognuno una sola volta e deve partire dal deposito e tornare alla fine del viaggio. Per questo problema non si considera la capacità di carico del veicolo in quanto necessariamente il veicolo sarà sufficiente al trasporto di tutta la merce. Infatti un'istanza CVRP con un solo veicolo (K=1) e con capacità del veicolo in grado di soddisfare l'intera domanda di servizio, si riduce ad un'istanza di TSP. Il problema si può esplicitare come segue: dato un grafo, ce rappresenta una rete di strade, in cui i nodi rappresentano i clienti da visitare ed ad ogni arco ce congiunge i nodi è associato un costo, il problema consiste nel cercare la rotta più corta o più economica. Nel grafo è compreso un nodo ce rappresenta il deposito da dove si assume parta il veicolo e ce poi finito il percorso di distribuzione vi faccia rientro. Il TSP è puramente geografico percè sia i vincoli ce la funzione obiettivo da ottimizzare dipendo solo da una componente geografica. Ma ance se è semplice la descrizione del problema, trovare la risoluzione tenendo in considerazione tutti i vincoli citati è un problema di difficile risoluzione. 13

15 Di seguito, nella figura 1.2, la rappresentazione grafica del problema: Deposito D Cliente Figura (1.2):TSP Fonte: elaborazione personale Vincoli di lungezza dei route Una importante variante del CVRP è il DVRP Distance-Constrained VRP in cui si introducono dei vincoli sulle lungezze delle distanze percorse in ogni rotta o sui tempi massimi di percorrenza. In questo caso i vincoli di capacità di ogni percorso sono sostituiti da: vincoli di lungezza: una lungezza non negativa viene associata ad ogni arco (i,j), la lungezza totale degli arci ce sono compresi in una route non deve superare un valore massimo pari a T; vincoli di tempo massimo: se il parametro rappresenta il tempo di viaggio, ogni vertice i a assegnato un tempo di servizio s i ce rappresenta il tempo necessario al veicolo per compiere il proprio servizio dal cliente; in alcuni casi i tempi di servizio possono essere inclusi nei costi temporali degli arci, ponendo per ogni arco (i,j) dove è il costo temporale per la sola percorrenza dell' arco (i,j). Possiamo analizzare un seconda variante, il DCVRP- Distance-Constrained CVRP- dove ad ogni rotta si impone, oltre al vincolo di capacità di trasporto, i vincoli di lungezza o tempo di percorrenza massima. In genere le matrici dei costi e delle distanze coincidono, cioè vale l' uguaglianza per tutti gli arci (i,j) A. L' obiettivo del problema è minimizzare la lungezza totale dei circuiti oppure, se il tempo di servizio è incluso nei costi temporali degli arci, la loro durata. 14

16 1.2.3 Vincolo di tempo (time windows) Un' altra variante del problema è il VRP con Time Windows (finestre temporali) -VRPTW- in cui si estende il problema di base attraverso un vincolo aggiuntivo: i clienti devono essere serviti all'interno di un certo intervallo cronologico rappresentato dalle finestre temporali; tale problema tiene in considerazione l'aspetto temporale dei problemi di routing. Di questo particolare vincolo parleremo in modo più approfondito nei prossimi capitoli, ma per introdurre il problema definiamo le caratteristice principali e i concetti più importanti. Questi intervalli di tempo devono essere rispettati, vale a dire ce un veicolo deve visitare un cliente all'interno dell'intervallo di tempo prestabilito. Questo tipo di problema rende realistico il problema di base percé il cliente oltre a riciedere un servizio indica ance gli orari entro i quali deve essere soddisfatta la riciesta (esempio: orario di apertura del cliente, orari di accesso a Z.T.L.) Nello specifico ad ogni cliente i è associato un intervallo di tempo [e i, l i ] denominato time windows. Il servizio di ogni cliente deve iniziare in un istante s i contenuto nella finestra temporale; se arriva prima al vertice i del tempo stabilito il veicolo deve attendere il tempo e i prima di poter effettuare il servizio. Altro elemento del problema è la matrice dei tempi di viaggio, in cui l'elemento generico è pari al tempo di percorrenza dell'arco (i,j) A, inoltre definiamo l'istante di tempo nel quale i veicoli lasciano il deposito. In genere si definisce ce le matrici di costi e di tempi coincidano e si suppone ce tutti i veicoli partano dal deposito all'istante t = 0. Problema di solito rappresentato in modo asimmetrico percé i valori della finestra temporale inducono implicitamente un orientamento dei percorsi. Obiettivo del problema è quello di determinare K circuiti di costo minimo tali ce: ogni circuito visiti il deposito; ogni cliente sia visitato da solo un circuito; la somma delle ricieste dei clienti visitati da una route non ecceda la capacità u dei veicoli ce li serve; per ogni cliente i, il servizio deve avvenire all'interno del time windows [e i,l i ] e il veicolo deve rimanere occupato per un tempo pari a s i. La formulazione matematica di tale variante sarà esplicitata nel Capitolo 2. 15

17 1.2.4 Vincolo di precedenza (pickup and delivery) Un ulteriore versione del problema è il VRP con Pickup and Delivery (VRPPD) in cui viene esplicitato il vincolo di precedenza tra i clienti a causa della necessità di un certo tipo di servizio all'interno dello stesso viaggio. Ogni cliente è associato a due quantità non negative: d riciesta di merce; : quantità di merce da ritirare. i Per semplificare si può definire d i - i (eventualmente negativa). Per ogni vertice i sono introdotti altri due parametri e : ce è pari alla differenza netta di merce necessaria i: sono i vertici ce sono all'origine della domanda di consegna; i: sono i vertici di destinazione, in cui si consegna il materiale. La merce riciesta dal vertice i deve essere prima raccolta dal veicolo dal cliente i; allo stesso modo la merce ritirata presso il cliente i deve essere consegnata al cliente essere visitato successivamente. Per convenzione si definisce ce lo scarico della merce avvenga prima del caricamento. L'obiettivo è quello di determinare K route di costo minimo, tali ce: ce deve ogni circuito visiti il deposito; ogni cliente sia visitato da uno e un solo circuito; il carico del veicolo, in ogni punto della route, sia non negativa e non ecceda la capacità totale C; per ogni cliente i, il vertice i, se diverso dal deposito, venga visitato nello stesso circuito e prima della visita di i; per ogni cliente i, il vertice i, se diverso dal deposito, venga visitato nello stesso circuito e dopo della visita di i. Spesso l'origine i e la destinazione i sono comuni per tutti i vertici e non sono indicati esplicitamente (ad esempio coincidono con il deposito), in questo caso il problema è VRP con Pickup and Delivery simultaneo (VRPSPD). In letteratura esiste ance una variante di VRP ce tiene conto degli ultimi due vincoli analizzati VRP Pickup and Delivery Problem wit Time Windows (VRPPDTW) in cui i 16

18 veicoli durante il percorso (itinerari) consegnano e ritirano le merci all'interno di determinate finestre temporali. VRPPD e VRPSPD generalizzano entrambi il CVRP, e sono quindi NP-ard in senso stretto Vincolo con Backaul Il VRP con Backaul (VRPB) è un'estensione del CVRP in cui l'insieme dei clienti V\{0} è diviso in due sottoinsiemi, si coinvolgono sia i punti di ritiro ce di consegna della merce: il primo L, contiene n clienti Lineaul, ogni cliente a una specifica domanda di merce, sono clienti ce devono ricevere una quantità di merce; il secondo B, contiene m clienti Backaul, dai quali una certa quantità di prodotto deve essere ritirata. In questo caso, la rotta percorsa può servire prima tutti i punti di consegna di merci prelevate da un deposito (clienti Lineaul), e dopo tutti i punti di prelievo merci da trasportare al deposito (clienti Backaul). I vertici sono numerati in modo ce L={1,...,n} e B={n+1,...,n+m}. In questo caso è sottointeso un vincolo di precedenza tra i clienti in L e i clienti in B, se un percorso serve clienti di entrambi i tipi: tutti i clienti di L devono essere visitati prima di ciascuno di quelli in B, questo per evitare di riorganizzare i carici sul veicolo. Ad ogni vertice i è associato un paramento non negativo d i, ce rappresentante la riciesta di merce; al deposito è associato un valore fittizio d 0 =0. La quantità di merce da consegnare e da ritirare è fissa e nota a priori. Se la matrice dei costi è asimmetrica, il problema è detto VRP con Backaul asimmetrico (AVRPB). Esiste ance una variante ce comprende il vincolo di finestra temporale (time windows) denominato VRPBTW. 17

19 In questo problema si riciede di individuare un insieme di K circuiti semplici di costo minimo tali ce: ogni circuito visiti il deposito; ogni vertice sia visitato da uno e un solo circuito; in ogni circuito, tutti i clienti lineaul vengano visitati prima di eventuali clienti backaul; le ricieste totali dei clienti in L e di quelli in B non superino, separatamente, la capacità C del veicolo. Distanza totale percorsa dai veicoli sia minimizzato. In genere circuiti con solo clienti backaul non sono ammessi. Denotati con K L e K B il minimo numero di veicoli necessari a servire tutti i clienti in L e tutti quelli in B, rispettivamente, si deve assumere per l'ammissibilità di un'istanza ce K max{k L, K B }. K L e K B possono essere ricavati risolvendo l'istanza di Bin Packing Problem associata ai rispettivi sottoinsiemi di vertici. VRPB e AVRPB generalizzano rispettivamente SCVRP e ACVRP quando B=Ø, e sono quindi problemi NP-ard in senso stretto. Graficamente, di seguito nella figura (1.3) viene descritto il VRBP: Deposito D Cliente Lineau l Cliente Backaul Figura (1.3):VRPB Fonte: elaborazione personale 18

20 Per riassumere quanto esposto in questo capitolo, di seguito la figura (1.4) dove descriviamo le correlazioni tra le principali classi di problemi, a partire dal caso base il CVRP, ce si differenziano per i vincoli imposti. VRPB Backauling CVRP VRPTW Time Windows Distance Mixed Service DCVRP VRPPD VRPBTW VRPPDTW Figura (1.4): La classificazione dei problemi di Veicle Routing Fonte: TOHT, P., VIGO, D., Te Veicle Routing Problem. SIAM Nella figura (1.4) sono state inserite sono solo alcune possibili estensioni del VRP, quelle maggiormente studiate e note. Nel seguito di questo lavoro focalizzeremo l'attenzione sul problema di routing di veicoli con finestre temporali, cioè la variante del VRP più importante, definiremo un modello matematico ed analizzeremo i principali approcci a tale problema di ottimizzazione combinatoria. 19

21 Capitolo 2 - VRPTW: Veicle Routing Problem wit Time Windows Riprendendo i concetti di base del Veicle Routing Problem wit Time Windows (VRPTW) illustrati nel Capitolo 1 e partendo dall'articolo base di questa tesi: Hascimoto H., Yagiura M., Imaori S. e Ibaraki T. (2010) Recent progress of local searc in andling te time window of te veicle routing problem, andremo ad approfondire tale problema, orientando l'analisi e l'approfondimento delle tematice discusse all'interno dell'articolo. 2.1 VRPTW Ma partiamo dai concetti principali del VRPTW: Tra le tante varianti del VRP (illustrate nel primo capitolo) il VRPTW è la variante più comune e più studiata, infatti tale tipologia di problema è un' importante generalizzazione del VRP classico, tale problema include, oltre a tutti i vincoli definiti per il problema base, ance un vincolo temporale per cui a una maggiore complessità rispetto al VRP. Il VRPTW è molto studiato nel campo della ricerca operativa percè è uno dei problemi di ottimizzazione combinatoria più difficili, e come già accennato, questo problema è rilevante per il progresso nella gestione del modello di base di routing. Il VRPTW coinvolge un certo numero di veicoli ce, partendo da un deposito, devono servire un certo numero di clienti in determinate finestre temporali situati in posti geografici differenti. La finestra temporale (time windows) è un intervallo di tempo specifico all'interno del quale il veicolo deve iniziare e quindi fornire il servizio a ciascun cliente; il lasso di tempo è definito dal cliente stesso, in questa caso i clienti riciedono dei tempi di consegna, vale a dire il momento della giornata in cui le consegne devono avvenire. Come abbiamo già anticipato, a ogni veicolo deve essere assegnato a un circuito (rotta), progettato in modo tale ce ciascun cliente venga servito da un solo veicolo e una sola volta all'interno del percorso e all'interno della finestra temporale specifica. 20

22 Ogni veicolo deve iniziare il proprio percorso da una posizione specifica (il deposito) e al termine del proprio servizio deve tornare al deposito. Ciascun cliente a una specifica domanda ma le ricieste totali di tutti i clienti all'interno di una determinata rotta non devono superare la capacità del veicolo, per cui ogni veicolo non può servire più clienti rispetto alla sua capacità di carico. L'introduzione del vincolo temporale al problema di VRP di base rende più difficile la costruzione ed il mantenimento di un insieme realizzabile di rotte, ma permette la specificazione di funzioni obiettivo più realistice, rispetto alla semplice minimizzazione della distanza totale percorsa sostenuta dalla flotta di veicoli, in modo ce siano rispettati i vincoli di capacità, infatti gli obiettivi del VRPTW sono quelli di minimizzare: il costo complessivo del viaggio; il numero di veicoli utilizzati; la durata totale del percorso. In questa variante con la presenza di finestre temporali, i costi totali ce si devono considerare comprendono i costi fissi di utilizzo del veicolo ma ance i costi variabili, come ad esempio quelli di tempo necessario per gli spostamenti e i tempi di attesa sostenuti quando un veicolo arriva troppo presto dal cliente o quando il veicolo viene caricato o scaricato. Tale problema aggiunge specifice condizioni realistice al VRP, difatti a una vasta gamma di applicazioni nel mondo reale, è un importante problema ce si verifica in molti sistemi di distribuzione con la conseguenza ce la risoluzione del problema contribuisce direttamente alla riduzione dei costi totali nelle attività imprenditoriali (ad esempio nell' area logistica o nella gestione della distribuzione). Di seguito alcuni principali esempi ce evidenziano come il VRPTW si riscontri nelle maggior parte delle attività quotidiane della vita reale, come i servizi di: consegna alle bance (Lambert et al. (1993)), in questo caso la maggior parte delle bance devono inviare dei veicoli in modo regolare alle proprie succursali al fine di raccogliere denaro depositato dai clienti o fornire denaro a filiali o bancomat. Il 21

23 problema è definito come un problema di VRP con l'aggiunta di condizioni specifice del contesto bancario, come ad esempio sanzioni degli interessi persi; scuolabus (Braca et al.(1994)), l'analisi del problema a origine dall'obiettivo di trovare un sistema computerizzato per pianificare il servizio di trasporto per una flotta di autobus scolastici in tutti i distretti di New York, città ce a uno dei sistemi scolastici più estesi al mondo. L'obiettivo, come per tutti i problemi di VRP, è quello di minimizzare il numero di scuolabus necessari a servire la città riducendo così al minimo il costo totale di esercizi; tenendo presente ce oltre al vincolo di capacità (un autobus può contenere solo un numero limitato di studenti in una sola volta) devono ance essere soddisfatti i vincoli temporali, ogni studente non deve viaggiare sul bus per più di un ammontare specifico di tempo, in quanto uno studente è più sicuro quanto meno tempo passa all'interno dello scuolabus. Inoltre è presente una finestra temporale definita di acceso alla scuola, e per questo l'autobus deve svolgere il servizio rispettando gli orari di inizio e fine delle attività scolastice; consegne postali (Mecti et al. (2001)), questo problema si occupa del servizio postale giornaliero presso i clienti sparsi all'interno di una specifica zona urbana, la trattazione di Mecti et al.(2001) a l'obiettivo di progettare una serie di percorsi di costo minimo, ce anno origine e ce terminano in un deposito centrale, per una flotta di veicoli identici ce devono erogare il servizio postale al clienti; raccolta di rifiuti industriali (Golden et al. (2001)), in questo specifico esempio, si analizza la gestione dei rifiuti solidi industriali, infatti molte aziende di rifiuti solidi devono riuscire a erogare il servizio di raccolta rifiuti ottimizzando tempo e numero dei veicoli coinvolti, considerando ance la compattezza del percorso e il bilanciamento del carico per soddisfare le esigenze dei clienti. Inoltre nell'industria della raccolta dei rifiuti, ci sono tre aree principali: la raccolta dei rifiuti commerciale, la raccolta dei rifiuti residenziali e roll-on-roll-off (raccolta ce viene attuata quando sono coinvolti grandi rimorci, per cui bisogna spostare volumi consistenti da cantieri, aree del centro ad un impianto di smaltimento). Oltre ai vincoli del problema VRPTW bisogna, in questo caso considerare le operazioni di smaltimento e gli orari di lavoro (turni e pausa pranzo) dei conducenti. Quando un veicolo è pieno, è necessario passare ad uno degli impianti di smaltimento (discarica o stazione di trasferimento). Si deve quindi tener conto ance di variabili specifice come: la gestione di diverse tipologie 22

24 di rifiuti, le dimensioni delle confezioni di rifiuti, la disposizione in più punti nel territorio delle sedi di smaltimento e le esigenze dei clienti diverse e variabili; consegna di gas industriali (Campbell et al. (2001)), in questa trattazione si è analizzato il problema della gestione e distribuzione del rifornimento di gas industriali da una grande azienda ai singoli clienti. In questo caso il fornitore gestisce il rifornimento delle scorte dei propri clienti, lo stesso determina quando e in quali quantità il cliente dovrà ricevere la fornitura di gas attraverso il monitoraggio, con tecnologie ad oc, a distanza dei livelli delle scorte. I venditori così risparmiano sui costi di distribuzione grazie alla possibilità di coordinare meglio le consegne ai diversi clienti e quest'ultimi non devono dedicare delle risorse per gestire le scorte, questi tipi di problemi sono noti come Inventory Routing Problems (IRP). L'obiettivo è quello di minimizzare il costo totale di distribuzione del prodotto, ma non causando rotture di stock, il cliente non dovrà mai essere sprovvisto del prodotto. In questa analisi si combina la gestione delle scorte presso i clienti con la progettazione delle rotte. Inoltre, nella realtà, i vincoli di tempo e capacità possono, in una certa misura, essere violati. Per cui per quanto riguarda il vincolo temporale, esistono due principali varianti del problema: la prima è la variante in cui le finestre temporali sono ard, in questo caso il vincolo temporale deve essere soddisfatto e rispettato rigidamente, il veicolo può arrivare in anticipo da un cliente ma in tal caso per poterlo servire deve aspettare l'inizio della relativa finestra temporale e comunque non può arrivare dal cliente dopo il termine dell'intervallo di tempo predefinito; la consegna dei beni al cliente non è possibile al di fuori della finestra temprale specificata. Variante definita Veicle Routing Problem wit Hard Time Windows (VRPHTW). nella seconda variante le finestre temporali sono soft, nel senso ce il vincolo di tempo può essere violato al costo dell'introduzione di una penalizzazione all'interno della funzione obiettivo; la consegna è possibile al di fuori del lasso temporale definito dal cliente ma sono previste delle sanzioni. Tale variante è definita Veicle Routing Problem wit Soft Time Windows (VRPSTW). Soprattutto negli ultimi anni, questa 23

25 variante è stata studiata da molti ricercatori come analizzeremo nel prossimo paragrafo. Come definito all'interno della trattazione di Hasimoto et al.(2010), la soluzione al VRPTW è composta da due fasi: routing: si stabiliscono i percorsi dei veicoli per servire tutti i clienti (instradamento dei veicoli, veicles routing); sceduling: in questa fase si definiscono i turni di ogni veicolo, pianificando il tempo di ogni mezzo lungo il suo percorso, avendo come informazioni note la domanda, i luogi e tempi di inizio e di fine del servizio (turnazione dei mezzi, veicles sceduling). Sebbene il calcolo della parte di routing (ad esempio, la distanza e la violazione dei vincoli di capacità) può essere fatto in modo efficiente, la parte di sceduling (ad esempio, la violazione del vincolo della finestra temporale) diventa spesso un collo di bottiglia per un algoritmo, poicé comporta la determinazione dei tempi. Per non avere questo tipo di limite, ci concentreremo sulla parte di sceduling lungo ogni rotta. Infatti ponendo l'attenzione più specifica alla parte di sceduling, si definisce il problema di determinare un'ottima scedulazione dei veicoli in ogni rotta per soddisfare il cliente, Optimal Time Sceduling Problem (abbreviato OTSP), per cui si ottimizza la turnazione dei veicoli per soddisfare la domanda dei clienti. Un tema legato al OTSP è il macine sceduling problems wit time windows si considera la programmazione dei maccinari con il vincolo temporale, per cui si considera il problema di scedulare i maccinari in modo ce rispettino le finestre temporali. Il problema di programmazione della maccina è uno dei problemi classici di ottimizzazione combinatoria. Tali problemi sono strettamente correlati alla VRPTW, in cui un cliente corrisponde a un posto di lavoro e ogni lavoro a un tempo di elaborazione, un tempo di rilascio e una data di scadenza. Ogni attività deve essere elaborata dopo il suo tempo di rilascio e prima della data di scadenza. In questi tipi di problemi il vincolo temporale (vale a dire, tempo di rilascio e/o la data di scadenza) a volte può essere violato, e viene considerata la pena per tale violazione. 24

26 Un'impostazione comune è ce il vincolo di tempo è ard per i tempi di rilascio, ma è soft per le date di scadenza, in tal caso, i programmi vengono valutati da un valore oggettivo in relazione alle date di scadenza, come ad esempio il ritardo totale, ritardo massimo e il tempo totale di anticipo nel attività. 2.2 Modello Matematico del VRPTW Descriviamo ora un modello matematico di programmazione lineare intera per il VRPTW. Il VRPTW è definito da un grafo completo orientato, G = (V, E) dove: V = {1,2,...,n} è l'insieme dei vertici (nodi); E = {(i;j) i,j V, i j } definisce l'insieme degli arci del grafo il quale rappresenta la connessione tra deposito e clienti e tra clienti; M = {1,2,...,m} è l'insieme dei veicoli, ed ogni veicolo a una identica capacità u. Il deposito è rappresentato da 0 in cui partono tutti i veicoli con il carico da consegnare e quello a cui tornano una volta percorsa la relativa rotta. Tutti gli altri vertici rappresentano i clienti i. Ad ogni cliente i ed ad ogni arco (i,j) E della rete vengono associati: la quantità di beni da consegnare al cliente i, è fissa e predeterminata a i ( 0) la domanda dei clienti è nota; una finestra temporale [e i, l i ] ce rappresenta l'intervallo temporale all'interno del quale deve iniziare il servizio al cliente i da parte del veicolo della flotta; un costo di trasporto ( 0) da i a j; un tempo di percorrenza dell'arco ( 0), cioè il tempo di viaggio da i a j. Il tempo di servizio, cioè il tempo in cui il veicolo staziona dal cliente per erogare il servizio per poi passare al cliente successivo, in questo caso è incluso all'interno del tempo di viaggio Il deposito a una finestra temporale [, ], detta ance sceduling orizon. 25

27 Poicé il tempo del servizio è calcolato all'interno del tempo di viaggio non a effetti sui costi, si può supporre senza perdita di generalità ce = =0, cioè ce tutte le rotte partano dal tempo 0 e si assume inoltre ce in deposito il veicolo a quantità di carico pari a 0, =0. Indiciamo con il percorso (rotta/circuito) del veicolo k, dove () indica il cliente è all'interno del percorso. Per cui il percorso σ è dato da: =(,,..., ) comprende tutti i percorsi di tutti i veicoli in gioco all'interno del grafo. Per cui ogni rotta a un numero di cliente definito ce indiciamo con. Per costruire il modello matematico introduciamo: la variabile binaria: (σ) {0,1}, per i V \ {0} e k M, (σ) è pari a 1 se e solo se il veicolo k visita il cliente i, 0 altrimenti; Lo scopo del modello VRPTW è quello di definire un insieme di rotte di costo minimo, una per ogni veicolo, in modo tale ce: ogni cliente i sia servito esattamente una volta dal veicolo k; ogni cliente i è incluso esattamente una volta nel percorso ; ogni rotta abbia origine nel vertice 0 il deposito per cui (0)=0 e (. +1)=0 vale per tutti i veicoli k questo significa ce ogni veicolo k M parte dal deposito, svolge il servizio definito presso i clienti e poi ritorna al deposito; vengano osservati i vincoli: temporali: nel senso ce devono essere soddisfatte le preferenze dei clienti per quanto riguarda il momento della giornata in cui vogliono essere serviti; di capacità: la domanda totale dei clienti della specifica rotta non può essere maggiore alla capacità del veicolo ce deve percorrerla. Il costo di viaggio del percorso del veicolo k è espresso come: d n ( k k ) c( k,( ), k ( 1)) 0 la somma di tutti i costi sostenuti dal veicolo k per visitare tutta la quantità di clienti all'interno del percorso partendo dal deposito per poi al termine del servizio farvi ritorno. 26

28 Definiamo poi: ce indica l'inizio del servizio al cliente i dal veicolo assegnato; il momento di arrivo del veicolo k al deposito al termine del percorso predefinito. Il problema, nella forma classica, può essere formulato come segue min d( k ) (2.1) km con i seguenti vincoli: km y ( ) 1 (2.2) ik iv o a y i ik ( ) u (2.3) (2.4), (2.5) (2.6) (2.7) (2.8) 27

29 La funzione obiettivo (2.1) diciara ce i costi totali di routing del veicolo k dovranno essere minimizzati. I vincoli: (2.2) è il vincolo definito di assegnazione, per cui ogni cliente i \{0}deve essere visitato esattamente una volta e deve essere assegnato ad un veicolo, per cui la consegna non può essere frazionata tra più veicoli; (2.3) è un vincolo di capacità, esplicita ce nessun veicolo deve essere caricato più di quanto sia permesso dalla sua capacità u; I tre vincoli (2.4), (2.5) e (2.6) successivi sono vincoli di flusso: (2.4) questo vincolo si assicura ce ogni veicolo parta dal deposito (cioè dal vertice 0) (2.5) definisce ce il veicolo lasci il cliente i solo se a visitato tale nodo cioè il veicolo dopo aver raggiunto un cliente deve ripartire nuovamente, il veicolo k non può servire il cliente se prima non è arrivato in tale nodo; (2.6) con questo vincolo si definisce ce il veicolo deve tornare alla fine del percorso al deposito, questo ultimo vincolo di flusso è ridondante ma esso è mantenuto nel modello per mettere in evidenza la struttura di rete; (2.7) tale vincolo è specifico della variante VRPTW, è il vincolo temporale per ogni cliente, tale vincolo impone ce ogni finestra temporale sia rispettata e quindi soddisfatta; (2.8) questo ultimo è il vincolo di interezza della variabile decisionale y. Si noti ce le variabili decisionali essenziali in questo formulazione sono i percorsi del veicolo k, poicé i valori di (σ) sono determinati automaticamente da σ, e quando σ è fisso, è facile o trovare valori appropriati per (inizio del servizio al cliente) e (momento di arrivo al deposito) o si conclude ce non è possibile trovare un pianificazione fattibile per la rotta σ. Il numero di veicoli m può ance essere una variabile di decisione, in questo caso l' obiettivo espresso è quello di trovare una soluzione, minimizzando il numero di veicoli e il costo totale delle spese di viaggio in ordine lessicografico, cioè, una soluzione è migliore di un altra se: 1. se il numero dei veicolo è minore o; 2. se i numero del veicolo sono gli stessi ma il costo è minore. 28

30 Omettendo i vincoli specifici della variante di VRP con finestra temporale il modello proposto rappresenta un CVRP classico, questo può essere ottenuto definendo un'istanza caratterizzata dai parametri =0 e =+ per ogni vertice (cliente) i=1,..., n, quello ce ne risulta è un problema generalizzato da VRPTW problema quindi NP-ard in senso stretto. Eliminando invece il vincolo di assegnazione (2.2) il problema diventa un Elementary Sortest Pat Problem wit Time Windows and Capacity Constraints (ESPPTWCC) per ogni veicolo, il problema in questo caso a l'obiettivo di trovare il percorso più corto ce parta dal deposito e termini nello stesso, tenendo presenti e quindi rispettando i vincoli temporali e di capacità, con l'obbligo del veicolo di visitare i clienti sulla rotta al massimo una volta. Dato ce abbiamo assunto ce la flotta di veicoli sia omogenea, i veicolo sono identici tra loro e quindi ance tutti i problemi ESPPTWCC ce si ottengono rimuovendo il vincolo di assegnazione. Oltre ad eliminare il vincolo di assegnazione (2.2) se elimino: il vincolo temporale ottengo un problema denominato ESPPCC in cui resta da rispettare il vincoli di capacità; il vincolo di capacità (2.3) ottengo ESPPTW; entrambi i vincoli temporale e di capacità il problema sarà denominato ESPP. Si può definire ance un rilassamento di ESPPTWCC, il SPPTWCC, il problema in questo caso deve trovare il percorso più corto ce soddisfi sia il vincolo di capacità ce i vincoli di tempo, ma in questo caso non si deve rispettare il vincolo ce il cliente debba essere visitato una sola volta, in questa variante il cliente può essere servito più di una volta. In questo caso se eliminiamo il vincolo (2.2) e: il vincolo temporale abbiamo: SPPCC; il vincolo di capacità troviamo SPPTW; entrambi siamo temporale e di capacità nel caso di SPP. 29

31 2.3 Variante Hard e Soft Come anticipato nel paragrafo 2.1 dedicato all'introduzione del problema VRPTW, in questo paragrafo andremo a definire in modo più dettagliato le due varianti principali del vincolo temporale, ossia il periodo di tempo in cui il servizio al cliente deve essere eseguito, le quali sono definite: Hard e Soft. L'articolo alla base della di questa tesi, propone i risultati di recenti studi su come gestire le due varianti di finestre temporali, andando ad analizzare le diverse definizioni Veicle Routing Problem wit Hard Time Windows (VRPHTW) In questo caso il vincolo temporale è da rispettare rigidamente, in questa variante del problema le violazioni alla finestra temporale sono irrealizzabili, per cui si deve servire il cliente assolutamente all'interno della finestra temporale[e i, l i ] indicata dallo stesso. Le consegne non sono possibili al di fuori del tempo definito dal cliente, per questa sua caratteristica di rigidità, questa variante è studiata dalla maggior parte della ricerca di ottimizzazione esatta. In questo caso il veicolo deve arrivare in i ed iniziare il servizio prima del tempo l i, non è consentito arrivare dopo la fine della finestra temporale e nel caso in cui arrivi prima del tempo e i si è costretti ad aspettare, fino al momento in cui può iniziare il servizio. Il grafico 2.1 di seguito, rappresenta tale problema in cui si evince come le attività svolte dal cliente da parte del veicolo associato deve avvenire all'interno della finestra temporale [e i, l i ] definita e tale vincolo deve essere rispettato. Penalità in termini di costo [e i l i ] Grafico 2.1: VRPHTW Fonte:elaborazione personale 30

32 Il VRPHTW è stato molto studiato in letteratura, percè è un problema con applicazioni pratice nella distribuzione, infatti è comune ce i clienti pongano limiti agli orario di arrivo e partenza dei veicoli per la ricezione o consegna della merce, e nella logistica a causa della crescente importanza del just-in-time (JIT), nei sistemi di produzione e nel coordinamento sempre più breve delle operazioni di supply cain. Pertanto, qualsiasi algoritmo di pianificazione di una flotta di veicoli deve rispettare queste restrizioni. Per VRPHTW trovare un programma realizzabile con un numero determinato di veicoli è noto essere NP-completo, percé comprende un problema monodimensionale come il binpacking (Garey e Jonson (1979)). Pertanto, la ricerca all'interno della regione fattibile VRPHTW può essere inefficiente, soprattutto quando i vincoli sono stretti, per cui questo vincolo troppo rigido può prevenire possibili soluzioni. Inoltre, in molte situazioni del mondo reale, i vincoli di tempo e di capacità, in qualce misura, possono essere violati. La formulazione matematica di tale variante è stata descritta nel paragrafo 2.2, nel modello viene definito il vincolo (2.7) il quale impone ce ogni finestra temporale sia rispettata e quindi soddisfatta, non è possibile erogare il servizio al cliente al di fuori della finestra temporale definita Veicle Routing Problem wit Soft Time Windows (VRPSTW) In questa variante del tema, le finestre temporali possono essere non rispettate, i veicoli sono autorizzati a violare le finestre temporali stabilite, ma viene definita una sanzione nel momento in cui la consegna del servizio al cliente avviene al di fuori delle finestre temporali stabilite. Per cui i limiti inferiore e superiore della finestra temporale non devono essere soddisfatti, ma possono essere violati con una penalità. Questo tipo di vincolo non restrittivo rappresenta una preferenza rispetto al momento in cui il servizio dovrebbe avvenire nella sede dei clienti, se un cliente è visitato all'interno della sua finestra temporale riciesta, non viene applicata nessuna penalità in termini di costi aggiuntivi ce sono a carico di ci eroga il servizio (del distributore). In questo modo è possibile calcolare circuiti fattibili ce sono molto più redditizi per l'operatore logistico. 31

33 Il vantaggio principale della finestra temporale con vincolo soft è quello ce un piano realizzabile può includere più visite rispetto al caso in cui vengono imposte delle finestre temporali "ard"; in questo modo si posso realizzare dei circuiti più redditizi. Tuttavia l'algoritmo di ottimizzazione deve tener conto dei costi aggiuntivi provenienti dalle sanzioni; per cui nella funzione obiettivo, le penalità sono assegnate alle variabili decisionali ce riflettono la violazione di finestre temporali, ciò implica una serie di problemi algoritmici ce devono essere opportunamente indirizzati facendo uso delle tecnice di ottimizzazione matematica. Questa non ristrettezza dei limiti va a discapito della soddisfazione del cliente, ce non vede realizzata la sua preferenza circa il momento temporale in cui il servizio deve avvenire, per cui vengono definite pene adeguate in termini di costi. Il grafico 2.2, di seguito illustrato, rappresenta graficamente il problema; in questo caso si evidenzia ce se il servizio viene svolto al di fuori della finestra temporale specificata [, ] si registra una penalità ce si tramuta in un aumento dei costi ce si devono sostenere. Penalità in termini di costo [e i l i ] Grafico 2.2: VRPSTW Fonte:elaborazione personale Grafico 2.2 VRPST Questo allentamento nel vincolo di tempo rende più flessibile l'erogazione del servizio e diventa utile quando si pianifica la distribuzione quotidiana di un deposito centrale ad un ristretto numero di clienti. Inoltre, questo modello ci permette di valutare le conseguenze di assegnare sanzioni diverse per la violazione delle finestre temporali a seconda del cliente. Infatti il coefficiente della sanzione può essere regolata per ogni cliente. 32

34 Per esempio, un alto coefficiente può essere associato a clienti con requisiti di tempo piuttosto rigidi e un basso coefficiente a clienti con una certa flessibilità. Questa tematica è stata studiata recentemente da molti ricercatori, di seguito un breve elenco degli studiosi con le principali argomentazioni studiate di questa variante: Balakrisnan (1993) con l'obiettivo di sviluppare le soluzioni veloci, a sviluppato tre euristice costruttive con inserimento sequenziale dei clienti nel circuito, le euristice sono basate sul vicino più prossimo, ogni euristica deve determinare contemporaneamente il tempo effettivo per iniziare il servizio e il tempo per passare al cliente successivo, ogni euristica deve utilizzare una misura diversa per confrontare il tempo di attesa dal cliente con la penalità relativa da pagare con il beneficio di lasciare immediatamente il cliente. I risultati sono stati positivi, si è analizzato ce si riducono di molto i veicoli necessari a soddisfare le ricieste dei clienti. Taillard et al. (1997) propongono il tabù searc euristic per risolvere un VRPSTW, cioè con funzioni di penalizzazione lineari. L'algoritmo di tabù searc a prodotto ottimi risultati all'interno del problema VRPHTW, ma nessun risultato viene segnalato per la variante soft. Ciang e Russell (2004) anno definito ce il VRPSTW a diverse peculiarità: (1) a un effetto diretto in una riduzione dei costi totali, senza danneggiare la soddisfazione del cliente in modo significativo; (2) molte applicazioni non riciedono finestre temporali rigide ard - ad esempio la fornitura di combustibile/gas delle stazioni di servizio; (3) in molti settori i tempi di viaggio non posso essere noti a priori, per cui avere questa possibilità facilita la soddisfazione del cliente e la buona riuscita del servizio; tutto questo è un buon compromesso tra dimensioni della flotta e qualità del servizio dato al clienti; (4) questo approccio può essere utilizzato per risolvere i problemi di tipo ard se le sanzioni sono definite in modo appropriato. 33

35 Fu et al. (2008) analizzano i diversi tipi di VRPSTW. Presentano la funzione penalità unificata con cui i diversi tipi di VRPSTW possono essere risolti semplicemente modificando i valori dei parametri corrispondenti nella funzione penalità. Risultati computazionali su problemi di bencmark sono forniti e confrontati con altri metodi in letteratura. Alcune soluzioni migliori per i noti problemi di bencmark nella letteratura sono state migliorate con l'algoritmo. Liberatore et al. (2010) presentano un algoritmo branc-and-price ce è il primo algoritmo di ottimizzazione esatta per questo problema. Infatti il VRPSTW risulta essere molto più difficile della versione ard dal punto di vista computazionale, l'algoritmo esatto può essere utilizzato come un'euristica ce fornisce una garanzia approssimata a posteriori, quando la dimensione del caso impedisce di trovare una soluzione ottimale dimostrabile nel tempo a disposizione per calcolarlo. Il VRPSTW è un rilassamento del VRPHTW, questo modello è più generale. Dal momento ce ci sono meno vincoli rigidi, le soluzioni sono fattibili e sono più facili da trovare. Per cui il VRPSTW può fornire una soluzione alternativa al problema VRPHTW, per fare un esempio di caso generale le finestre temporali ard possono essere mappate come finestre temporali soft ma con costi infiniti dati dalla violazione. Di seguito, dopo aver definito le caratteristice principali della variante con vincolo temporale soft, analizziamo in modo più approfondito il vincolo di finestra temporale soft con sanzioni lineari, caso analizzato e studiato da Hasimoto et al.(2010). Troviamo due diversi approcci per affrontare la violazione del vincolo temporale: 1. Nel primo caso, viene definita una penalità sull'orario di inizio del servizio, il vincolo di tempo può essere violato sostenendo delle penalità per lo svolgimento del servizio in anticipo e/o in ritardo rispetto la finestra temporale definita. Questo tipo di impostazione viene spesso utilizzata per problemi di sceduling in macine (problema di turnazione delle maccine). 2. Nel secondo approccio, si propone una pena sui tempi di percorrenza dei veicoli, in questo caso il vincolo di tempo deve essere soddisfatto, ma i tempi di viaggio tra i clienti può essere abbreviato a costo di introdurre la pena proporzionale al suo 34

36 ammontare. Questo approccio viene ance utilizzato per valutare il grado di inflessibilità del vincolo ard (finestra di tempo rigida). Esponiamo di seguito una serie di impostazioni di algoritmi per il vincolo temporale soft, con l'obiettivo di calcolare il OTSP (Optimal Time Sceduling Problem) ciò significa ottimizzare la turnazione dei veicoli per soddisfare i clienti, in altre parole è il problema di determinare il momento di avviare i servizi presso i clienti in una determinata rotta σ k, in modo tale da minimizzare la pena. Vediamo il primo caso dove viene definita una penalità sull'orario di inizio del servizio: Sia ( ) la sanzione del cliente, quando il servizi in i inizia al momento s i per comodità, assumiamo ce il veicolo k visiti i clienti in questo ordine 1, 2,... in questo ordine e +1 rappresenta il ritorno al deposito. Il OTSP può essere così formulato: min nk 1 1 p ( s ) (2.9) La funzione obiettivo (2.9) definisce ce le sanzioni totali siano ridotte al minimo. Soggetto ai vincoli di: (2.10) (2.11) I due vincoli definiscono ce: (2.10) il tempo in cui il veicolo k lascia il deposito è uguale a 0, tutti i veicoli partono dal deposito; (2.11) diciara ce il veicolo k ce sta visitando tutti i clienti non può arrivare dal cliente prima del tempo ce è la somma del tempo in cui il veicolo k inizia il servizio al cliente e il tempo per spostarsi da un cliente all'altro, i clienti sono visitati in ordine da 1 a. 35

37 Molti algoritmi per il OTSP sono stati proposti in letteratura, di seguito vediamo i principali, ogni studio determina in modo diverso la penalità p : Desrosiers et al. (1995), é stato il primo a definire un algoritmo nel caso in cui il all'interno della finestra temporale, + altrimenti: è lineare, p ( s ) s e,, s e e s s l l In questo caso ogni veicolo dovrebbe iniziare il suo servizio non appena possibile e la tempistica ottimale può essere calcolato nel tempo O( ). Sexton and Bodin (1985), anno soffermato i loro studi nella variante del problema di Pickup and Delivery (VRPPD) applicando le time windows soft ad un problema di VRPPD per poi formulare un algoritmo di tempo O( ). All'interno del problema di VRPPD, c'è un insieme di ricieste, ognuna di queste rappresenta una riciesta ce parte da un'origine fino ad una destinazione, nel loro elaborato ogni servizio presso il cliente (servizio inteso come ritiro della merce dall'origine o consegna della merce al vertice di destinazione), deve iniziare il prima possibile rispetto il tempo. Ogni cliente a un punto desiderato di prelievo e un punto desiderato di consegna e il problema è quello di determinare l'ordine e i tempi di prelievo e consegna in modo da minimizzare tutti i disagi del cliente. Come funzione di costo usano però una combinazione lineare di due addendi: Per ogni riciesta, in cui viene recapitata la merce (il servizio) da i a j, viene calcolata una sanzione α ( - ) (α è una costante) ce rappresenta il tempo cumulativo di violazione delle finestre temporali per aver anticipato la spedizione (la differenza tra il tempo desiderato di consegna e il tempo effettivo in cui avviene), si calcola ance una penalità β ( - ) (β è una costante) il ritardo calcolato dalla ricezione alla consegna (il tempo cumulativo in cui i veicoli sono impiegati). Si tratta di un obiettivo probabilmente più adatto a descrivere un trasporto di merci. 36

38 37 Pertanto, la penalità ( ) può essere rappresentata come: l s l s s s p ) ( dove riciesta della destinazione la è riciesta della origine l è Y ' Koskosidis et al. (1992), Davis and Kanet (1993), Balakrisnan (1993), Tamaki et al. (1999a) and Tamaki et al. (1999b), nella loro analisi si dovrà pagare una penalità in termini di costi, la quale sarà proporzionale a quanto il servizio sarà erogato in anticipo o in ritardo, attraverso i coefficienti non-negativi e se in anticipo se in ritardo. La penalità ( ) è definita come segue: l s l s l s e e s s e s p ) ( 0 ) ( ) ( Tuttavia i veicoli possono attendere senza alcun costo in qualsiasi momento, lungo le loro rotte. Sakuraba et al. (2009), a proposto un O( ) algoritmo di tempo per un problema per un sistema di pianificazione con date di rilascio individuali e una data comune di scadenza. Cioè, ogni posto di lavoro (ossia, un cliente) a un tempo di rilascio e una comune data di scadenza L. La pena è data da: l s L s l s e s L e s s p ) (

39 Taillard et al. (1997), in questo caso la sanzione per il cliente è: + per la precocità e lineare per il ritardo, vale a dire: p ( s ) 0 ( s l ) s e s e s l l si propone un O(1) algoritmo di tempo per calcolare approssimativamente la pena in una soluzione ottimale. Nel secondo approccio, si propone una pena sui tempi di percorrenza dei veicolo: Nagata (2007) a proposto un diverso tipo di sanzione per la violazione del vincoli temporale nella sua definizione infatti il tempo di viaggio tra i clienti può essere ridotto di una quantità arbitraria per soddisfare i rigidi vincoli di tempo in modo ce la penalità sia minimizzata. Il OTSP risultante può essere formulato come: n min k 1 1 T (2.12) soggetto ai seguenti vincoli: (2.13) (2.14) (2.15) (2.16) Si può notare ce, in questa impostazione, il tempo di inizio del servizio significativo per il OTSP, percé il tempo di percorrenza ridotto negativo. non può essere può essere Tuttavia, il valore ottimale per questo problema è una stima del grado di inflessibilità del percorso determinato, e il problema può essere risolto in modo efficace, nel tempo O(, 38

40 mentre il suo valore ottimale può essere ottenuto in O(1) cioè il tempo per ottenere una soluzione in un intorno standard insieme a O( inteso come il tempo di aggiornamento della struttura dei dati quando viene accettato un cambiamento. La complessità di tempo O( dinamica. è ottenuta mediante un algoritmo di programmazione Definito ce è il tempo minimo di percorrenza per arrivare ai clienti 1, 2,..., quando il veicolo k li visita in questo ordine lungo il percorso. Sia insieme con l'ora di inizio del servizio da ce raggiunge. La formula di programmazione dinamica è quindi: = (2.17) - (2.18) Nella formula (2.17), se <, il tempo di percorrenza si riduce per soddisfare il vincolo di tempo e questo importo ridotto è sommato a in (2.18). Si può notare ce può essere calcolata nel tempo O(1) e il valore ottimale può essere ottenuto nel tempo O( ). Una naturale estensione di questo OTSP è quello di utilizzare una funzione obiettivo ponderata invece di utilizzare la formula (2.12). In letteratura Masuda (2001), a illustrato un altro tipo di variante della finestra temporale il Veicle Routing Problem wit General Time Windows (VRPGTW). In questo caso, dopo aver fissato l'ordine dei clienti da visitare per ogni veicolo e definito quindi il suo specifico percorso, si devono determinare il tempi di avvio ottimali per servire i clienti in modo ce la penalizzazione totale sia ridotta al minimo; in questo tipo di problema sono ammesse molteplici finestre temporali per ogni cliente. 39

41 La parte essenziale della VRPGTW è assegnare ai veicoli i clienti e determinare l'ordine di visita di ciascun veicolo, questo problema può essere efficacemente risolto utilizzando la programmazione dinamica ed è risolto dall'algoritmo di ricerca locale (LS). 2.4 Algoritmi euristici Lo sviluppo di questo tipo di algoritmi a l'obiettivo di fornire una soluzione di buona qualità ad un problema difficile con un limitato tempo di calcolo, per cui dal testo di Maffioli (2000), l algoritmo euristico è un metodo ce non pretende di trovare una soluzione ottima al problema, ma solo una soluzione ammissibile il cui valore si è cercato di ottimizzare per quanto possibile. Gli algoritmi euristici sono utili quando dei fattori esterni ciedono di risolvere il problema con tempi di calcolo relativamente brevi fornendo soluzioni di buona qualità. A causa dell' elevata complessità e allo stesso tempo della sua ampia applicabilità alla vita reale, per il VRPTW si è messo in primo piano lo sviluppo di algoritmi euristici proprio per una reale necessità di produrre soluzioni di buona qualità in tempi brevi di elaborazione. La differenza principale tra algoritmi euristici classici e metaeuristici, sta nel livello di profondità ce questi metodi raggiungono nell'esplorazione dello spazio delle soluzioni: euristici: determinano una soluzione ammissibile e di buona qualità in un tempo di calcolo accettabile e limitato; metaeuristice: approfondiscono la ricerca della soluzione ottima nelle zone più promettenti dello spazio delle soluzioni, implementando sofisticate regole di ricerca e di ricombinazione dei risultati parziali ottenuti, questo tipo di metodo impiega un tempo di calcolo maggiore ma ottengono soluzioni migliori rispetto gli algoritmi euristici classici. La costruzione di algoritmi euristici si basa su elementi teorici e semplici regole di buon senso. Una utilità importante di questi algoritmi sta nella necessità di risolvere problemi NPard di grandi dimensioni. 40

42 I metodi euristici sono metodi ce trovano una soluzione attraverso una regola ce viene applicata ad ogni passo dell'algoritmo e si possono dividere in tre classi: Euristici costruttivi: operano costruendo gradualmente una soluzione ammissibile, cercando di contenere il costo totale della soluzione stessa; Euristici a due fasi: scompongono il problema in fasi, si dividono i vertici in gruppi (cluster) e in un'altra fase si costruiscono dei route ammissibili. A loro volta questi metodi si suddividono in due classi: cluster-first, route second: i vertici sono prima raggruppati in cluster e poi viene calcolato un route per ogni cluster; route-first, cluster-second: un route viene costruito su tutti i vertici per poi essere suddiviso. Euristici migliorativi: si applicano ad una soluzione già esistente e non necessariamente ammissibile con l'obiettivo di migliorarla, procedendo con lo scambio di arci o vertici tra diverse rotte. All'interno dell'articolo di Bräysy e Gendreau (2005a) viene spiegato come valutare un metodo euristico, infatti per valutarlo al meglio ci sono vari elementi da analizzare, ad esempio: il tempo di esecuzione, la qualità della soluzione, la facilità di implementazione, la robustezza e la flessibilità, di seguito una breve descrizione: Flessibilità: un algoritmo deve essere in grado di gestire facilmente i cambiamenti nel modello come i vincoli o/e la funzione obiettivo ma poicé i metodi euristici sono progettati per risolvere problemi del mondo reale, la flessibilità è tra le più importanti caratteristice da considerare; Robustezza: un algoritmo non dovrebbe essere troppo sensibile alle diverse caratteristice del problema, un algoritmo deve essere in grado di produrre buone soluzioni ogni volta ce si applica ad una data istanza; Facilità di implementazione: un algoritmo deve essere di facile implementazione per arrivare in tempi ragionevoli ad una buona soluzione; 41

43 Il tempo di esecuzione: il tempo necessario di un algoritmo euristico per produrre soluzioni di buona qualità può essere determinante nella scelta tra diverse tecnice; La qualità della soluzione: è importante percè è misurata dalla funzione obiettivo, la soluzione ottimale è una misura standard di qualità. Vi è generalmente un trade-off tra il tempo di esecuzione e la qualità della soluzione, più a lungo una euristica viene eseguita, migliore è la qualità della soluzione finale. Un compromesso è necessario in modo ce le soluzioni di buona qualità siano prodotte in un ragionevole lasso di tempo. Il metodo più comune per valutare la qualità della soluzione di un algoritmo euristico è l'analisi empirica. In generale, l'analisi empirica testa l'euristica in una vasta gamma di istanze del problema per avere un'idea delle prestazioni generali. Nel contesto VRPTW, il modo più comune per confrontare i metodi euristici sono i risultati ottenuti da Salomone (1987) con i 56 Problemi di Bencmark. Questi problemi anno come oggetto 100 clienti, un deposito centrale con vincoli di capacità e vincoli di tempo, sono definite fasce orarie per la consegna e un tempo totale di percorrenza. I clienti possono essere classificati all interno di gruppi o in posizioni casuali, i gruppi sono definiti dalle classi C1 e C2, i clienti in posizioni casuali sono compresi all'interno delle classi R1 e R2. Le classi RC1 e RC2 contengono un mix di entrambi i tipi di clienti casuali e gruppi. Ogni classe contiene tra gli 8 e i 12 casi di problemi individuali, e tutti i problemi in qualsiasi classe anno lo stesso numero di clienti, gli stessi luogi e le stesse capacità dei veicoli; si differenziano per le fasce orarie. In termini di densità del vincolo temporale (cioè la percentuale di clienti con la finestra di tempo), i problemi anno 25%, 50%, 75%, e le finestre temporali 100%. Le classi C1, R1, e i problemi RC1 per avere un orizzonte di pianificazione di breve periodo riciedono da 9 a 19 veicoli. Questi problemi con un orizzonte di breve periodo anno veicoli ce una piccola portata ed i tempi di percorrenza sono brevi, e non si possono servire molti clienti in una sola volta. 42

44 Le classi C2, R2, e RC2 sono più rappresentativi per un tipo di consegna "a lungo raggio" con orizzonti di pianificazione più lungi con meno (da due a quattro) veicoli. Sia il tempo di percorrenza e la distanza sono dati dalla distanza euclidea tra i punti. I risultati sono generalmente classificati secondo una funzione obiettivo gerarcico, dove è considerato il numero di veicoli come obiettivo primario, e per lo stesso numero di veicoli; l'obiettivo secondario è spesso o la distanza totale percorsa o la durata totale delle rotte. Pertanto, una soluzione ce riciede meno rotte è sempre considerato migliore di una soluzione con più vie, indipendentemente dalla distanza totale percorsa. Secondo Bräysy (2001) questi due obiettivi sono molto spesso in conflitto, ciò significa ce la riduzione nel numero di veicoli è spesso causa di aumento complessivo della distanza percorsa. Così, una soluzione migliore in termini di distanza totale può essere ottenuta aumentando il numero di percorsi Algoritmi euristici costruttivi Questa tipologia di algoritmi parte da una soluzione vuota e determina iterativamente i nuovi elementi da aggiungere alla soluzione fino ad ottenere una soluzione completa (ammissibile). Il procedimento consiste principalmente nell'inserire gradualmente i clienti uno alla volta nelle rotte in base al così detto metodo di saving (metodo del risparmio). Dati due percorsi (0,...i,0) e (0,j,...,0), se queste due rotte possono essere unite in un unico percorso ammissibile (0,...,i,j,...0) si a un risparmio sui costi pari a. Gli algoritmi di costruzione si distinguono per l'ordine in cui vengono selezionati i clienti e dal metodo usato per determinare se un cliente deve essere inserito. I nodi vengono scelti in base a il criterio di minimizzazione dei costi, spesso soggetti ai vincoli di capacità del veicolo o del vincolo finestra temporale. Sono utili percè per determinare il valore della variabili definite nel modello matematico vengono definiti questi algoritmi ce sono eseguiti in tempi molto brevi rispetto agli algoritmi metaeuristici, e possono essere utilizzati per generare una soluzione iniziale ce poi potrà essere sviluppata. 43

45 I metodi costruttivi possono essere divisi in: sequenziali: viene costruito un percorso alla volta sino all'esaurimento dei vertici, in nessun caso si può decidere tra più rotte in cui inserire un vertice; si costruisce una rotta alla volta; paralleli: più percorsi vengono costituiti contemporaneamente, il loro numero può essere fissato a priori o derivare dalla fusione progressiva di percorsi più piccoli già calcolati. Per quanto riguarda i metodi costruttivi sequenziali, Solomon (1987) a sviluppato diversi tipi di questi algoritmi a inserimento sequenziale, tra tutti il più efficiente è quello ce si sviluppa con la scelta prima di tutto del cliente più lontano dal deposito il quale viene definito il cliente centrale. I restanti clienti vengono poi inseriti uno per uno, uno dopo l'altro, selezionando ad ogni iterazione un cliente ce massimizza il risparmio tenendo conto della distanza dal deposito e il costo di inserimento quel cliente nel percorso. Il cliente viene quindi inserito in una posizione in modo da minimizzare una combinazione ponderata tra la distanza supplementare e il tempo aggiuntivo necessario per visitare il cliente. Il processo viene ripetuto fino a quando tutti i clienti siano state inseriti e da questo momento non è più possibile inserire ulteriori clienti senza violare i vincoli di capacità o vincoli di tempo. A questo punto un nuovo percorso viene iniziato selezionando un nuovo cliente base (centrale) questo processo si ripete fino al punto di non avere più clienti da collocare. Ulteriori perfezionamenti al metodo euristico costruttivo sequenziale di Solomon (1987) sono stati descritti da Ioannou, Kritikos e Prastacos (2001) ce anno proposto di modificare i criteri di selezione del cliente per sottolineare ce l'inserimento dei clienti nel percorso corretto a poi degli effetti su tutti i clienti all'interno di quella rotta. La versione parallela di questo tipo di metodo costruttivo è stato successivamente sviluppato da Potvin e Rousseau (1993) i quali anno proposto una misura ce riflette il possibile aumento dei costi ce potrebbe verificarsi se un cliente non è stato assegnato al percorso corretto con l'obiettivo di minimizzare il costo totale del percorso. 44

46 Il più noto algoritmo euristico proposto per il CVRP è l'algoritmo dei risparmi di Clarke e Wrigt (1964), il quale si applica in modo naturale a problemi per i quali il numero dei veicoli non è predefinito ed è senz'altro l'euristica più conosciuta nell'ambito del Veicle Routing Problem, ed è basato sull'idea di risparmio. Questo tipo di algoritmo si suddivide in due fasi: il calcolo dei risparmi e la fusione dei percorsi. Per quanto concerne il calcolo dei risparmi: Definito ce: i,j=1,..., n, i j dove il cliente i è l'ultimo del percorso e il primo cliente dell'altro percorso è j, vale a dire, si a un risparmio sui costi,ovvero la distanza ce si è risparmiata tornando al deposito una volta in meno. Vengono creati n rotte del tipo (0,i,0) per i=1,..., n e i risparmi vengono ordinati in ordine decrescente. Per quanto riguarda la fusione dei percorsi: Si seleziona l'arco (i, j) ce massimizza con la condizione ce il percorso definito sia fattibile, e poi si concatenano i due percorsi. Esistono due modi per procedere alla fusione dei percorsi:sequenziale o parallela. Nella versione sequenziale: Si esamina un percorso per volta, e si ricerca tra i risparmi, sempre dal maggiore al minore, se si può combinare il percorso corrente con un altro rispettando i vincoli di fattibilità per cui si considera a turno ogni generico percorso (0,i,...,j,0) e si determina il primo risparmio (saving) s ki o s jl ce consenta di fonderlo con un altra rotta contenente l'arco (k,0) o l'arco (0,l) per dar luogo ad un nuovo percorso ammissibile. Se questo passaggio va a buon fine si crea con la fusione un nuovo percorso, altrimenti si applica sempre lo stesso passaggio al percorso successivo, l'algoritmo si ferma quando non è più possibile effettuare alcuna unione di percorsi. Per quanto riguarda la versione parallela: Partendo dal massimo risparmio fino al minimo si effettuano le fusioni delle rotte, sempre però cercando di rispettare i vincoli di fattibilità, infatti si considerano i risparmi (saving) ordinati e si procede determinando se è possibile fondere insieme due rotte esistenti, 45

47 contenenti rispettivamente l'arco (0,j) e l'arco (i,0) dato il risparmio percorso ammissibile. ottenendo un nuovo La versione parallela presenta le prestazioni migliori ance se lontane da soluzioni ottime, entrambe le versioni producono buoni percorsi all'inizio ma poi possono presentare il difetto di essere troppo estesi geograficamente. Per ovviare a questo problema è stato proposto l'utilizzo di un parametro di forma di route λ ce modifica i risparmi(saving) secondo la formula Viene in questo modo data più enfasi alla distanza dei vertici da collegare per valori maggiori di λ. I risultati sperimentali dicono ce la versione parallela è più performante di quella sequenziale. Solomon (1987) a applicato questo metodo al VRPTW, il suo approccio è quello di estendere il metodo del risparmio inizialmente proposto per il CVRP da Clarke e Wrigt (1964); definisce ce per adeguare questo tipo di approccio al VRPTW, si deve prima di tutto verificare la fattibilità nel rispettare l'arco temporale (vincolo di tempo); percè in un problema di routing la direzione con cui è attraversato un arco di solito è irrilevante, invece in questa procedura, a causa dell'esistenza di finestre temporali, si deve rappresentare l'orientamento delle rotte. L autore prende in esame due percorsi parziali con i clienti finali i e j, rispettivamente, se i è il primo, e j è l'ultimo, i collegamenti ammissibili sono dall'ultimo cliente (1) su una rotta, al primo cliente (f) su un altra. Se i due percorsi sono combinati, gli orari di partenza sul primo percorso non cambiano invece per il secondo percorso, c'è una condizione necessaria ce deve essere rispettata cioè ci deve essere un limite massimo di attesa nel percorso. Inoltre, si deve tener conto dei vincoli di capacità dei veicoli e si deve verificare di non violare i vincoli di tempo ad ogni passo nel processo euristico. Come definito nel procedimento euristico del risparmio, potrebbe risultare redditizio unire due clienti molto vicini in termini di distanza, ma molto distanti nel tempo. L'algoritmo euristico modifica il grado di collegamento tra i due clienti le cui finestre sono molto distanti nel tempo. Tali collegamenti introducono lungi periodi di tempo di attesa, ce possono avere un costo elevato. 46

48 Quindi per tener conto sia della vicinanza spaziale sia di quella temporale dei clienti, si può ridurre il tempo di attesa quando si uniscono due clienti: lasciando ce è il tempo di attesa se f e 1 dovevano essere uniti, e W è un parametro, vale a dire, se "* > W, in questo caso non si deve utilizzare il collegamento (1, f). Gli orari di partenza lungo il percorso potrebbero essere scalati in avanti nel tempo, e uno di loro potrebbe diventare fattibile Algoritmi euristici a due fasi Questi metodi sono basati sulla decomposizione del problema ce può essere effettuata nuovamente con metodi euristici. La generazione della soluzione viene suddivisa in due fasi denominate: cluster: genera degli insiemi di clienti; route: genera dei percorsi. Esistono due approcci per utilizzare queste due fasi. Nel caso si scelga cluster first, route second si generano prima gli insiemi di clienti ce saranno serviti da un certo veicolo k. Al contrario nel caso route first, cluster second inizialmente si genera un circuito (giant tour), ce non rispetta i vincoli, sulla base delle distanze o del tempo di percorrenza. La seconda fase riguarda la scomposizione del giant tour in modo da soddisfare i vincoli. Ad oggi l'approccio cluster first, route second risulta quello maggiormente seguito, tale algoritmo è stato sviluppato da Fiser e Jaikumar (1981) e proposto per il CVRP, si applica quando sono noti a priori il numero di veicoli K. Di seguito le due fasi dell'algoritmo: Nella prima fase si partizionano i clienti in cluster (insieme di clienti visitati da un veicolo) si deve risolvere un'istanza di assegnamento generalizzato (GAP): cioè si 47

49 attribuisce una disponibilità di merce pari a Q a K vertici, opportunamente scelti per rappresentare i K rotte; Nella seconda fase si risolve il problema di assegnare i percorsi a tutti i clienti del VRP in maniera ottima, senza violare i vincoli di capacità e ce ogni vertice deve essere assegnato ad un solo percorso. Bramel e Simci-Levi (1996) e Koskosidis et al.(1992) anno modificato l'algoritmo FJ per gestire ance le finestre temporali Algoritmi euristici migliorativi Le euristice di miglioramento (o di ricerca locale) effettuano delle modifice a una soluzione completa, esplorando quindi l'intorno di una soluzione, cercando di migliorare il valore della funzione obiettivo. L'obiettivo di questa tipologia di metodi è quello di partire da una soluzione pre-esistente di un'istanza di VRP per cercare di migliorarla. Di seguito i passi fondamentali di un algoritmo migliorativo: 1. Inizializzazione:Si sceglie una soluzione iniziale S di innesco del processo di ricerca. 2. Individuazione dell intorno: Si definisce una mossa ovvero una operazione ce consente di individuare un intorno N(S) della soluzione corrente. 3. Scelta di una nuova soluzione: Si individua la soluzione S N(S) migliore dell intorno. 4. Criterio di arresto: Se S è migliore di S si sostituisce e si pone S=S e si torna al passo 2; altrimenti la procedura si arresta. Questo algoritmo è rilevante percè molto spesso le soluzioni ottenute mediante algoritmi euristici possono essere migliorate attraverso procedure di post-ottimizzazione basate su spostamenti di clienti o scambi di arci. 48

50 Dal punto di vista matematico il processo di ricerca analizza, ad ogni iterazione, un intorno della soluzione corrente. Per questa ragione gli algoritmi migliorativi sono detti ance algoritmi o tecnice di ricerca locale. Gli algoritmi euristici di miglioramento sono caratterizzati principalmente dal tipo di scambi considerati ad ogni iterazione. L'insieme di tutti gli scambi possibili definisce la vicinanza di una soluzione, cioè, l'insieme di soluzioni raggiungibili dalla soluzione corrente eseguendo uno scambio singolo o un trasferimento vertice. Consideriamo un problema di minimizzazione, e una sua soluzione ammissibile x, con associato il valore della funzione obiettivo f(x). La ricerca locale consiste nel definire un intorno di x, e nell'esplorarlo in cerca di soluzioni migliori, se ve ne sono. Se, in questo intorno di x, si scopre una soluzione y per cui f(y) < f(x), allora ci si sposta da x a y e si riparte da y con l'esplorazione del suo intorno. Se invece nell' intorno di x non si scopre nessuna soluzione migliore, allora vuol dire ce x è un minimo locale. Nella ricerca locale classica, arrivati ad un minimo locale, l'algoritmo si ferma e restituisce questo minimo come valore di output. Ovviamente, non si a nessuna garanzia in generale ce tale valore costituisca una soluzione ottima del problema; anzi, tipicamente esso può essere ance molto distante dall'ottimo globale. Bencè ogni applicazione del concetto di ricerca locale a un problema abbia le sue peculiarità, alcuni aspetti sono abbastanza comuni a molte realizzazioni. Generalmente questi algoritmi applicati al problema di VRP sono degli edge excange algoritm ovvero effettuano degli scambi di arci. Alcuni autori parlano di forza di un intorno (Stuetzle, (2003)). Un intorno definito in un certo modo è tanto più forte quanto più la qualità delle soluzioni prodotte dall'algoritmo è indipendente dalla bontà della soluzione di partenza. Ad esempio, 3-opt per il VRP è considerato un intorno forte; questo fatto implica ce si può affrontare il problema senza perdere tempo a generare buone soluzioni iniziali. Anzi, conviene generare molte soluzioni iniziali casualmente, sperando così di avere un campionamento rappresentativo dell'intera regione ammissibile. 49

51 Le prime euristice di miglioramento per il VRPTW, Russell (1977); sono stati infatti adattamenti del 2-opt (Croes, 1958), 3-opt (Lin, 1965) e Or-opt (Or, 1976), meccanismi originariamente introdotti per la TSP. A causa delle finestre temporali, è importante verificare se un dato scambio è fattibile ance in questo caso. A partire dal lavoro di Savelsberg (1985), diversi tentativi sono stati fatti per sviluppare implementazioni efficienti. Un confronto è stato eseguito tra le euristice 2-opt, 3-opt e Or-opt per il VRPTW da Potvin e Rousseau (1995) ce anno ance introdotto una nuova euristica, denominata 2-opt*, un caso speciale di 2-opt ce mantiene l'orientamento delle rotte coinvolte nello scambio. Un altro meccanismo di scambio è stato descritto da Tompson e Psaraftis (1993), i quali anno proposto il trasferimento di gruppi di clienti in maniera ciclica tra i diversi percorsi. Diversi tentativi sono stati compiuti ance per integrare le euristice di costruzione alle euristice di miglioramento. Russell (1995) a sviluppato una procedura ce incorpora un miglioramento del percorso all'interno del processo di costruzione della soluzione. Più precisamente, i clienti possono essere commutati tra percorsi, e i percorsi possono essere eliminati durante la costruzione della soluzione ce viene eseguita con una procedura analoga a quella di Potvin e Rousseau (1993). Più recentemente, Cordone e Wolfler Calvo (2001) anno proposto una algoritmo euristico composito in cui un insieme di soluzioni iniziali vengono costruite utilizzando l'algoritmo euristico di Solomon (1987) e viene quindi applicata una procedura di miglioramento a ciascuno di essi. Questa procedura è valida per 2-opt e 3-opt e tenta di ridurre il numero di rotte spostando i clienti. Per sfuggire agli ottimi locali, si alterna tra gli algoritmi euristici due obiettivi: quello di ridurre al minimo la distanza totale e quello di ridurre al minimo la durata complessiva di percorso; l'obiettivo primario in entrambi i casi, è quello di ridurre al minimo il numero di rotte. Diversi metodi euristici deterministici di ricerca locale sono stati inoltre proposti da Braysy (2002), basati su un nuovo approccio trifase. 50

52 In una prima fase, una soluzione iniziale è stata creata con una delle due euristice proposte per la costruzione del percorso. La seconda fase tenta di ridurre il numero di percorsi applicando un operatore di ricerca locale basato sulle catene di espulsione. Infine, la terza fase si applica O-opt per ridurre la lungezza totale delle linee. Esistono due percorsi per raggiungere l'obiettivo degli algoritmi migliorativi: 1. single-route: si focalizza l'azione al fine di migliorare il singolo route ed è definita dalle operazioni applicate ad un percorso unico; 2. multi-route: si cerca di arrivare alla soluzione ottima attraverso lo scambio di vertici e di collegamenti tra diversi route per cui è definito dalle operazioni applicate a più di una rotta. La prima single-route: Molte delle procedure classificabili in questo percorso possono essere considerate varianti del meccanismo di λ-opt proposto da Lin (1965): λ vertici sono rimossi dai percorsi e per ricomporre la rotta sono necessari λ nuovi collegamenti tra di essi. Nel generare i vari scemi di riconnessione, la procedura si arresta in presenza di un minimo locale quando nessun altro scambio utile può essere effettuato. La verifica della λ-ottimalità della soluzione può essere calcolata in tempo O( ). Sono stati proposti numerosi scemi di scambio per ottenere i risultati migliori, alcuni prevedono, ad esempio, la variazione dinamica del parametro λ in fase di esecuzione, ma i più interessanti sono: Or-opt, proposto da Or (1976), consiste nello spostare stringe di 1, 2 o 3 vertici consecutivi in altre posizioni; é un metodo ce riciede tempo O( ) ed assomiglia molto al 3-opt; 4-opt, ce effettua scambi di catene di vertici di dimensione 2 con catene di dimensione massima w e ottimizza in tempo O(w n ). 51

53 Il secondo il multi-route: I metodi migliorativi multi-route cercano di abbassare il costo di una soluzione mediante lo scambio di vertici o lati tra diversi percorsi. Gli scemi di scambio sono ance qui molto vari, ma focalizzeremo la nostra attenzione soprattutto su due versioni rilevanti: Tompson e Psaraftis (1993) descrivono uno scema di scambio b-ciclico di grado k: considerati b route se ne effettua una permutazione circolare e k vertici sono trasferiti da ogni route al successivo nella permutazione ciclica. Van Breedam (1994) classifica le operazioni di scambio in quattro categorie: string cross (SC): due stringe, o catene, di vertici vengono scambiate tra loro incrociando due lati appartenenti a diversi percosi; string excange (SE): due stringe di più k vertici vengono scambiate tra due diversi percosi; string relocation (SR): una stringa di più k vertici viene riassegnata ad un altro percorso; string mix (SM): viene scelta la mossa migliore tra SR e SE. Per valutare la bontà di una strategia rispetto ad un altra, a seconda dei casi in esame, Van Breedam (1994) a proposto l utilizzo di diversi parametri. Con questi parametri si definiscono la lungezza delle catene di vertici da scambiare (k) e la qualità della soluzione ottenuta. Un altro aspetto ce caratterizza un approccio di ricerca locale è il modo in cui deve essere esplorato l'intorno di una soluzione. Ci sono due strategie: first improvement e best improvement. Nel primo caso l'esplorazione dell'intorno termina non appena si trova una soluzione migliore di quella corrente. Nel secondo, invece, lo si esplora comunque tutto cercando il massimo miglioramento ce quell'intorno consente di ottenere. In genere si preferisce il primo approccio. 52

54 Inoltre la selezione delle mosse può essere effettuata a seconda ce si segua un paradigma del tipo first improvement, nel quale la prima mossa migliorativa viene attuata, o best improvement, con il quale viene praticata la mossa ce realizza il maggior miglioramento. Per quanto riguarda il caso specifico VRPTW la ricerca si è concentrata sugli algoritmi euristici. Tuttavia, quando il problema è sufficientemente vincolato (cioè, quando le finestre temporali sono sufficientemente strette), è possibile ce sia risolto in modo ottimale mediante tecnice di programmazione matematica. Il VRPTW è stato oggetto di intensi sforzi di ricerca a favore sia di approcci esatti ce approcci con metodi euristici o metaeuristici. Vista la difficoltà di realizzazione di metodi esatti veramente efficienti, la maggior parte della ricerca si è focalizzata sullo sviluppo di diverse e efficienti tecnice euristice in grado di fornire in un tempo ragionevole una buona soluzione al problema (ammissibile ma non di certo ottima). 2.5 Algoritmi metaeuristici Questo tipo di algoritmi utilizzano diversi meccanismi per migliorare le soluzioni ottenibili con un metodo migliorativo. La maggior parte delle recenti ricerce sugli algoritmi per risolvere il problema del VRPTW si sono concentrati sulle metaeuristice. Le caratteristice principali degli algoritmi metaeuristici sono l esplorazione approfondita delle regioni, considerate più promettenti, nello spazio delle soluzioni e l impiego di sofisticate regole di ricerca del neigborood (intorni), cioè particolari strutture di dati e metodi di ricombinazione delle soluzioni. Una caratteristica ce spesso distingue questi algoritmi da quelli euristici è il procedimento di ricerca, questo può passare attraverso soluzioni non ammissibili e/o fasi non migliorative. 53

55 Il tempo necessario a questi algoritmi per giungere ad una soluzione ottima è sensibilmente maggiore rispetto alle performance degli algoritmi euristici classici, ma i risultati ottenuti sono solitamente di qualità superiore. Inoltre, l esecuzione di questi algoritmi è subordinata alla corretta valutazione e impostazione di un predeterminato numero di parametri, propri dell algoritmo stesso, al fine di adattare il metodo di risoluzione al problema e ottenere la soluzione migliore possibile. Gli algoritmi metaeuristici proposti per il problema del VRP si può suddividere in sei categorie: 1. Simulated Annealing (SA); 2. Deterministic Annealing (DA); 3. Tabu Searc (TS); 4. Algoritmi Genetici (GA); 5. Ant Colony System (ACS); 6. Reti Neurali (RN). Nei primi tre casi, la ricerca prende il via da una soluzione iniziale ammissibile x i, e passa, ad ogni iterazione t, dalla soluzione corrente x t alla migliore soluzione, contenuta nel neigborood N( ),, fincè non risulta soddisfatto un opportuno criterio di arresto. I metodi metaeuristici possono non rispettare la clausola di diminuire ad ogni iterazione il costo della soluzione ottima, perciò, in generale, non è detto ce, se f(x) denota il costo della soluzione x, f f( ). Infatti, per favorire la diversificazione ed evitare fasi di stallo intorno a punti di minimo locale, può essere necessario attraversare sequenze di soluzioni peggiorative. Nel caso degli Algoritmi Genetici, ad ogni iterazione viene considerata una popolazione di soluzioni: ogni popolazione deriva dalla precedente attraverso la combinazione delle soluzioni migliori e l eliminazione delle peggiori. 54

56 Negli Ant Colony System vengono sfruttate informazioni raccolte alle iterazioni precedenti per creare numerose nuove soluzioni. Le Reti Neurali, invece, sono meccanismi in grado di autoregolare un insieme di coefficienti interni, progredendo verso soluzioni sempre migliori Simulated Annealing (SA) L approccio proposto con il metodo SA prevede ce, ad ogni iterazione t, venga scelta casualmente una soluzione x appartenente al neigborood (intorno) N( ; se `e verificato ce f(x) f( ), allora è posta uguale a x, altrimenti: x t1 x xt con con propabilità p probabilità 1 p t t dove p t `e, in genere, una funzione decrescente di t e di f(x) f( )definita come: in cui `e un parametro proprio dell algoritmo ciamato temperatura all iterazione t. Di solito una funzione decrescente in t, proprio per limitare la probabilità ce all aumentare delle iterazioni venga scelta una soluzione peggiore. I criteri d arresto sono tre: 1. il valore f della migliore soluzione attuale non diminuisce di una percentuale prefissata negli ultimi cicli di iterazioni; 2. il numero di mosse accettate negli ultimi cicli è inferiore ad una percentuale prefissata; 3. sono stati eseguiti un numero predeterminato di cicli. 55

57 2.5.2 Deterministic Annealing (DA) La principale differenza ce distingue la tecnica Deterministic Annealing dal precedente Simulating Annealing consiste nel fatto ce le mosse ce si intendono effettuare sono accettate o rigettate secondo regole deterministice. Due implementazioni standard di questa tecnica sono: 1. tresold accepting: ad ogni iterazione t, la soluzione viene accettata solamente se uest ultimo parametro è controllato dall utente; 2. record-to-record travel: si definisce record la miglior soluzione ottenuta nella ricerca. La soluzione `e accettata se dove θ 2 è un parametro definito dall utente, di solito poco superiore ad 1. In un test con istanze formate da numerosi vertici, questa implementazione a ottenuto ottimi risultati, dal punto di vista delle soluzioni ma soprattutto per quanto riguarda i tempi di calcolo Tabu Searc (TS) La tecnica Tabu Searc é stata introdotta da Glover (1986). Questa tecnica esplora lo spazio delle soluzioni attraverso la determinazione, ad ogni iterazione t, della soluzione migliore contenuta in un sottoinsieme del neigborood N(t). Al fine di evitare cicli all interno della ricerca e lo stazionamento della stessa in un intorno di un minimo locale, le buone soluzioni recentemente visionate vengono marcate da un attributo ce le rende non selezionabili nelle iterazioni successive, sono definite quindi tabu. La soluzione marcata rimane proibita per un intervallo di tempo variabile e il suo stato può cambiare a seconda ce si verificino eventi particolari, ad esempio, una soluzione tabu risulta essere la migliore delle precedenti soluzioni viste. Rendere non selezionabile un determinato gruppo di soluzioni può essere realizzato attraverso l utilizzo di una struttura dati (una tabu list) regolata secondo una politica FIFO. In questa lista nera di soluzioni, possono essere memorizzati solamente gli attributi principali e distintivi di ogni soluzione, per rapidità di consultazione e ricostruzione delle stesse. 56

58 L applicazione di questa tecnica negli ultimi anni a portato ottimi risultati nella maggior parte delle istanze più studiate, al punto ce è opinione comune ce difficilmente possano essere sviluppati nuovi metodi euristici in grado di competere con la tecnica Tabu Searc. Vediamo questo metodo applicato al VRPTW: La prima applicazione del meccanismo Tabu Searc al VRPTW può essere attribuita a Potvin et al. (1996) ce anno utilizzato il metodi di Salomone I1 (euristica di inserimento) per creare una soluzione iniziale ce è stata poi migliorata attraverso gli scemi di scambio 2-opt* e Or-opt. Questo meccanismo è stato usato ance per tentare di spostare i clienti in percorsi contenenti massimo tre clienti o addirittura meno. Un algoritmo più sofisticato è stato successivamente sviluppato da Taillard et al.(1997) per il caso VRPTSW (versione soft del problema) in cui i veicoli possono arrivare in ritardo presso i clienti, ma tutte le violazioni di tempo sono penalizzanti all interno funzione obiettivo. Questa euristica si basa sul concetto di memoria adattativa introdotta da Rocat e Taillard (1995) e sulla decomposizione e sulla procedura di ricostruzione sviluppata da Taillard (1993) per il VRP classico. La memoria adattiva è un insieme di percorsi estratti dalle migliori soluzioni trovate durante la ricerca. Questa memoria viene inizializzata con percorsi prodotti da uno studio euristico randomizzato. Ad ogni iterazione del metodo metaeuristico, una soluzione è costruita con i percorsi nella memoria adattiva e viene migliorata attraverso la Tabu Searc. I percorsi della soluzione risultante vengono quindi registrati nella memoria adattiva se questa soluzione migliora la peggior soluzione già memorizzata. Un'implementazione parallela di questo approccio è descritta in Badeau et al. (1997). Più recentemente, è stato sviluppato da Cordeau, Laporte e Mercier (2001) per il VRPTW un metodo Tabu Searc. In questo caso, una prima soluzione viene ottenuta mediante una scansione euristica modificata. Le soluzioni irrealizzabili sono consentite durante la ricerca, le violazioni del vincolo di capacità e di tempo sono penalizzate nella funzione obiettivo attraverso un aggiornamento dinamico dei fattori di penalità. Ad ogni iterazione della Tabu Searc un cliente viene rimosso dal suo percorso attuale e inserito in un percorso diverso utilizzando almeno un criterio di costo per l' inserimento. Un meccanismo di continua diversificazione ce penalizza gli scambi frequentemente commessi è usato per guidare il processo di ricerca lontano da ottimi locali. 57

59 2.5.4 Algoritmi Genetici (AG) Holland (1975) a proposto il paradigma alla base degli algoritmi genetici; si tratta di una tecnica ce cerca di risolvere problemi imitando i processi tipici dell evoluzione naturale. L idea di fondo consiste nel mantenere memoria di stringe di bit, ciamate cromosomi, rappresentanti la codifica binaria di una soluzione al problema. L evoluzione della popolazione è ottenuta applicando degli operatori ce simulino i più importanti fenomeni naturali: riproduzione e mutazione. Una descrizione generica del paradigma può essere data nelle seguenti modalità: innanzitutto sia definita una popolazione iniziale di cromosomi: X 1 =, alla quale, in ogni iterazione t = 1,..., T, sono applicate k volte (con k N/2) le operazioni descritte dai passi 1-3, seguite dal passo 4: 1. Riproduzione: si selezionano, dalla popolazione X t, due cromosomi generatori, privilegiando statisticamente la scelta dei cromosomi migliori; 2. Ricombinazione: si applica un operatore di crossover ai due generatori in modo da ottenere una nuova coppia di cromosomi discendenti; 3. Mutazione: con piccola probabilità, si applica l operatore di mutazione ai cromosomi discendenti; 4. Rinnovo generazionale: a partire da, si crea la popolazione rimuovendo le 2k peggiori soluzioni e sostituendole con le 2k generate nelle k precedenti applicazioni dei passi 1-3. Al termine delle T iterazioni, si prende come soluzione finale cioè la migliore dell ultima generazione. Ciò ce contraddistingue questo paradigma è l assoluta generalità della sua specifica. Così come è stato descritto, infatti, esso può essere applicato a diverse tipologie di problemi. Il punto ciave riguarda, in realtà, la definizione degli operatori di crossover e mutazione, ce necessariamente si differenzieranno a seconda del problema affrontato. Inoltre, bisogna definire come una soluzione ad un determinato problema deve essere codificata in una stringa di bit, imponendo quindi una serie di regole per l ammissibilità delle soluzioni. 58

60 Nel caso specifico, per i problemi di VRP, la codifica in stringe di bit dei percorsi ce compongono una soluzione non è la traduzione più adatta. Si preferisce codificare le rotte con delle sequenze di interi, dove la posizione dell intero nella stringa indica l ordine di visita, nel percorso, del vertice corrispondente. L intero 0, rappresentante il deposito, può comparire più volte nella stringa ed é spesso utilizzato come carattere separatore tra i percorsi. Così definita la struttura dei dati, gli operatori devono essere costruiti in maniera specifica. Un operatore di crossover per il TSP, ma facilmente adattabile al VRP, è stato definito da Oliver, Smit e Holland (1987) e prende il nome di order crossover. Per quanto riguarda gli operatori di mutazione, sono stati studiati degli scemi di scambio o di rimozione e reinserimento (scemi RAR - Remove-and-Reinsert ). Come applicazioni pratice, gli algoritmi genetici anno dato i maggiori contributi sulla risoluzione di istanze più vincolate rispetto al semplice CVRP. Ottimi risultati sono stati ottenuti su bencmark di VRPTW. Per cui analizziamo questa variante all'interno del caso specifico di VRPTW: Homberger e Gering (1999) anno descritto due strategie evolutive per il VRPTW. Entrambe sono basate sulla strategia (μ, λ): a partire da una popolazione con individui divisi in sottoinsiemi, selezionati in modo casuale e ricombinati per ottenere λ>μ. Ogni progenie viene quindi sottoposta ad un operatore di mutazione, e i più idonei μ sono selezionati per formare la nuova popolazione. Nel primo metodo, nuovi individui vengono generati direttamente attraverso le mutazioni e non attraverso la ricombinazione. Le mutazioni sono ottenuti eseguendo una o diverse mosse dal 2-opt, Or-opt e 1-interscambio di famiglie. Nel secondo metodo, i figli vengono generati tramite una procedura in due fasi di ricombinazione in cui sono coinvolte tre persone. In entrambi i metodi, l'idoneità di un individuo dipende dal numero di veicoli utilizzati e dalla distanza totale percorsa. In seguito, Gering e Homberger (2002) anno proposto un metodo metaeuristico ce si compone di due fasi: nella prima fase si riduce al minimo il numero di veicoli attraverso una strategia di evoluzione, mentre nella seconda si minimizza la distanza totale attraverso la Tabu Searc. 59

61 Berger, Barkaoui e Braysy (2003) inoltre anno sviluppato un algoritmo genetico ce si evolve contemporaneamente in due popolazioni distinte, le quali perseguono obiettivi diversi in relazione al vincolo parziale. La prima popolazione a lo scopo di minimizzare la distanza totale percorsa, mentre la seconda si concentra nel ridurre al minimo le violazioni del vincolo di tempo. Il numero massimo di veicoli definiti nella prima popolazione è uguale a mentre la seconda popolazione è consentito solo veicoli, dove si riferisce al numero di vie trovate all'interno della migliore soluzione fattibile fino a quel momento. Ogni volta ce una nuova soluzione fattibile emerge dalla seconda popolazione, la prima popolazione è sostituita con la seconda e il valore di viene aggiornato di conseguenza. Due operatori di ricombinazione e cinque operatori di mutazione sono utilizzati per evolvere le popolazioni. Questo approccio si è rivelata piuttosto efficace nel ridurre il numero di veicoli utilizzati. Più di recente, Mester e Braysy (2004) anno sviluppato un metodo ciamato metaeuristica iterativa ce unisce il metodo di ricerca locale e le strategie di evoluzione. Una prima soluzione viene creata da un inserimento euristico. Questa soluzione viene quindi migliorata mediante l'applicazione di una procedura in due fasi. La prima fase consiste in una procedura guidata di ricerca locale in cui vengono eseguiti metodi 2-opt* e Or-opt con 1-scambi. La seconda fase rimuove iterativamente un insieme selezionato di clienti dalla soluzione corrente e reinserisce i clienti rimossi con un costo minimo. Queste due fasi sono ripetute iterativamente fino a quando non si può ottenere un miglioramento. Secondo Braysy e Gendreau (2003b), i tre approcci appena descritti sembrano produrre i migliori risultati tra gli algoritmi genetici. 60

62 2.5.5 Ant Colony System (ACS) L Ant Colony System (ACS) studia sistemi artificiali per risolvere problemi di ottimizzazione, prendendo ispirazione dal comportamento delle colonie di formice ed è stato introdotto per la prima volta da Dorigo (1992). Questa strategia di risoluzione sfrutta la tecnica usata dalle formice durante la ricerca del cibo. Questi insetti, infatti, marcano il cammino tramite la secrezione di una sostanza, il feromone, ce è riconoscibile da tutti i suoi simili. La quantità di feromone presente su un percorso non è casuale, ma dipende direttamente dalla qualità di cibo raccolto e dalla lungezza del percorso. Le formice sono insetti sociali, in grado di produrre risultati complessi a partire da individui molto semplici ce cooperano tra di loro. Un formicaio mostra comportamenti molto interessanti: difende il nidi dagli attacci, custodisce le uova, alleva le larve e si procura il cibo. Questi risultati si ottengono sfruttando due caratteristice particolari delle colonie: da una parte esiste una organizzazione flessibile del lavoro dove il ruolo delle formice cambia a seconda della circostanza: in caso di attacco la maggior parte delle formice diventa soldato. Dall altra le formice sono in grado di comunicare tra di loro tramite una forma indiretta di comunicazione detta stigmergia. Le formice, infatti, non sono in grado di parlare tra di loro ma sfruttano e manipolano l ambiente per scambiarsi informazioni. Quando cercano il cibo, le formice inizialmente escono dal nido esplorando le zone circostanti in maniera casuale. Una volta trovato del cibo tornano verso il nido lasciando sul terreno una traccia di una sostanza cimica detta feromone. Il feromone a la funzione di segnalare alle altre formice la direzione nella quale si trova il cibo. Infatti, questi insetti, sono dotati di capacità sensitive per percepire il feromone e per seguirne la traccia. È interessante notare ce maggiore è la quantità di feromone maggiore è la probabilità ce la formica ne segua la traccia. Inoltre il feromone evapora e, quando il cibo è finito, la traccia sul terreno diventa gradualmente meno intensa fino a sparire, consentendo nuovamente esplorazioni casuali. Questi processi sono stati studiati dai biologi (Goss, 1989) ce si sono accorti ce le formice, grazie al rilascio di questa sostanza cimica, sono in grado ci calcolare il percorso più corto tra due punti: sui percorsi più lungi il feromone si concentra più lentamente e le formice tendono a preferire quelli più corti dove il feromone è più intenso. 61

63 Questa osservazione è alla base di un filone di ricerca molto attivo nel campo dell informatica avanzata approfondite a partire dal 1994 da Gambardella e il suo gruppo a reso efficienti e competitive queste tecnice ottenendo i migliori algoritmi a livello mondiale nel campo dei trasporti per flotte di veicoli con finestre temporali (Gambardella, 1999) e nel campo della scedulazione di processi industriali (Gambardella, 2000). In questo caso le formice diventano camion, il cibo raccolto dagli insetti diventa la merce da trasportare, il nido è il deposito dei mezzi e il feromone delle formice viene trasformato in feromone artificiale utilizzato dal sistema per imparare quali sono le strade da utilizzare per ottimizzare la soluzione. Il programma è in grado di produrre soluzioni sempre più ottimizzate imparando dall esperienza e dagli esperimenti precedenti. Questa osservazione a fornito l ispirazione di una nuova classe di algoritmi ce sfruttano i medesimi principi per ottimizzare la distribuzione merci e la produzione industriale. Questi nuovi algoritmi sono capaci di adattarsi rapidamente a situazioni diverse, imparano dall esperienza e calcolano in poci minuti soluzioni per migliaia di automezzi. Il primo problema di logistica distributiva cui è stato applicato questo metodo è quello del commesso viaggiatore (TSP). In tale ambito, una formica artificiale è un agente ce si muove da una città all altra fino a toccarle tutte, per poi tornare al punto di partenza. La traccia di feromone, quindi, rappresenta una sorta di distribuzione di informazioni numerice da parte delle formice per registrare l esperienza comune nella risoluzione di un particolare problema. L ACS termina quando diventa vera almeno una delle seguenti condizioni: è stato generato un numero fissato di soluzioni; è stato raggiunto un prefissato tempo computazionale; non vengono notati miglioramenti nel costo dei giri per un dato numero di iterazioni. La metaeuristica studiata per risolvere il VRP con finestre temporali è detta MACS-VRPTW (Multiple Ant Colony System for Veicle Routing Problem wit Time Windows) e la sua peculiarità consiste nell utilizzo di due distinte colonie di formice ce, lavorando simultaneamente, tentano di raggiungere due obiettivi: la minimizzazione del numero dei veicoli; la minimizzazione del tempo totale di viaggio. 62

64 Nel MACS-VRPTW ci si trova di fronte a due colonie di formice, ACS-VEI e ACS-TIME, il cui operato a scopi diversi. la prima colonia a il compito di scoprire se esistono soluzioni ammissibili con un dato numero di veicoli; la seconda quello di trovare la soluzione migliore (ce ricieda il minor tempo) tra quelle ce usano tale quantità di mezzi. Il primo passo della procedura consiste nel trovare una soluzione ammissibile sfruttando un algoritmo tratto dall euristica del nearest neigbor. Il risultato sarà la miglior soluzione trovata fino a quel momento, ψ gb (globally best). Questa riciederà l utilizzo di un certo numero di mezzi, identificato con s. Volendo applicare una procedura simile a quella usata per risolvere un TSP, è necessario ricondurre il problema ad una situazione in cui l obiettivo sia trovare un unico circuito amiltoniano sul grafo. Si devono quindi innanzitutto creare tanti nodi deposito quanti sono i veicoli da utilizzare nella prima iterazione dell attività della colonia ACS-VEI, e quindi s-1, uno in meno rispetto al numero di veicoli utilizzati nella soluzione trovata al passo precedente: questi saranno indicati come 0 1, 0 2,, 0 s-1. Il secondo passo riciede l attivazione di una colonia di formice del tipo ACS-VEI. Se esiste una soluzione ammissibile con s-1 automezzi si dovrà ripetere la ricerca utilizzandone uno in meno. Una volta stabilito il numero minimo di depositi (e quindi di veicoli) ce consente la costruzione di un circuito amiltoniano sul grafo, è necessario attivare la colonia ACS-TIME per individuare il percorso più breve con quel numero di veicoli in altre parole, se viene trovata una soluzione ce utilizza un minore numero di veicoli, questo viene passata ad un altra colonia, ce cerca nuovamente di minimizzare la distanza. Il processo viene ripetuto iterativamente fincé non oltre miglioramenti possono essere ottenuti. Il MACS-VRPTW è competitivo con i migliori metodi noti esistenti sia in termini di qualità della soluzione e tempo di calcolo. Inoltre, MACS-VRPTW migliora alcune delle migliori soluzioni con il vantaggio di ottenere una buona soluzione non ottimale ma modo molto rapido. 63

65 2.5.6 Reti Neutrali (RN) Le reti neurali artificiali, o semplicemente reti neurali, sono modelli computazionali la cui struttura prevede l interconnessione di diversi elementi di elaborazione elementari. Queste celle di elaborazione si ispirano ai neuroni del sistema nervoso umano, mentre i loro collegamenti vorrebbero rappresentare le sinapsi. Nelle reti artificiali, ogni collegamento è associato ad un proprio peso numerico, il cui valore varia dinamicamente nel tempo in funzione dell esperienza acquisita nella computazione: grazie ai pesi associati alle connessioni, le reti neurali godono dell importante caratteristica ce è la capacità di induzione. I primi tentativi di risolvere problemi di ottimizzazione combinatoria con delle reti neurali sono riconducibili all opera di Hopfield e Tank (1985). I loro modelli, assieme alle reti elastice (EN) di Durbin e Willsaw (1987) e alle mappe auto-regolanti (SOM, Self- Organizing Map) di Koonen (1988), sono stati applicati con successo al TSP. I modelli EN e SOM, solo ispirati alla definizione di reti neurali, prevedono sorte di tour deformabili, ce si adattano gradualmente alla disposizione effettiva dei vertici dell istanza. Modelli come questi possono facilmente essere applicati a istanze geometrice, ma difficilmente riescono ad integrare al loro interno vincoli più stretti, ad esempio quelli del CVRP o di altre varianti del VRP. A questo proposito molte sono le soluzioni proposte, ma particolarmente interessante è quella sviluppata da Gaziri (1991), descritta brevemente come segue: 1. Si considera, ciclicamente, il vertice successivo dell istanza e lo si indica come vertice corrente. 2. Si associa una probabilità di selezione ad ogni anello: tale probabilità dipende sia dalla distanza dell anello dal vertice corrente, sia dal carico dell anello stesso in termini di vertici temporaneamente assegnati (vedi punto 4). 3. Secondo la probabilità definita al punto 2, si seleziona un anello. 4. Si assegna il vertice corrente in maniera temporanea all unità più vicina dell anello selezionato, e si deforma quest ultimo in modo da avvicinare l unità, e alcune tra le sue unità vicine, al vertice. 64

66 5. Si ripetono i precedenti passi sino a quando ogni vertice a un unità del modello sufficientemente vicina. 6. Infine, si assegna permanentemente ogni vertice alla sua unità più vicina, ottenendo così la soluzione finale. L aspetto interessante di questa procedura è proprio la definizione probabilistica dell assegnamento dei vertici agli anelli. Questo metodo fa sì ce gli anelli non si avvicinino troppo simultaneamente ai vertici le cui ricieste superano le capacità dei veicoli, inoltre fissando alcune probabilità a zero, è possibile adattare il metodo a problemi ancor più vincolati, come ad esempio varianti del VRP con vincoli di tempo. I risultati ottenuti mostrano come questo metodo produca discreti risultati, ance se non è pensabile un confronto alla pari con altri tipi di algoritmi metaeuristici. 2.6 VRPTW: diverse definizioni di finestre temporali In questo paragrafo vedremo alcune generalizzazioni del VRPTW, infatti troviamo in letteratura diverse definizioni di finestre temporali Tempo di Viaggio Flessibile Hasimoto et al. (2006) a trattato i tempi di percorrenza tra i clienti come variabili e a introdotto le funzioni di costo corrispondenti. Questa è una generalizzazione del problema della pena sui tempi di percorrenza. Sia il costo del viaggio quando il veicolo viaggia dal cliente da i a j e sia t la differenza dei tempi di inizio dei servizi tra i e j. Come nel caso della funzione di costo della finestra temporale, ogni viene considerato negativo, a tratti lineare e semi continuo inferiormente. 65

67 Quindi, il OTSP definito per la rotta =(1, 2,..., ) del veicolo k è formulato come segue: min k n 1 1 n 1 k p ( s ) min q (2.19) 1 1, ( s s 1) soggetto al vincolo: (2.20) ce possono essere risolti mediante la programmazione dinamica. Sia la somma minima dei costi per i clienti 0, 1, 2,.., serviti dal veicolo k in questo ordine, a condizione ce i clienti 0, 1,..., -1 siano serviti prima del tempo t e ce il cliente sia servito esattamente al tempo t. Inoltre può essere calcolato come segue: = )+, l (2.21) Il costo ottimale per rotta è dato da. Hasimoto et al.(2006) anno dimostrato ce il OTSP diventa NP-ard quando le funzioni dei costi di viaggio sono generali, e a proposto un algoritmo di tempo pseudo-polinomiale per la programmazione dinamica. L'algoritmo viene eseguito in un tempo polinomiale, se ogni funzione di costo del viaggio è convessa. Per una funzione lineare a tratti g, si definisce un intervallo convesso, un intervallo massimo in cui il dominio è funzione convessa, e si definisce δ^(g) ( δ (g)) è il numero di intervalli convessi di g. Gli studiosi anno dimostrato ce se ogni funzione di costo del viaggio è convessa, la complessità temporale del loro algoritmo è O(n k Δ (σ k )) quando il problema viene risolto da zero, dove: nk 1 nk 1 n k 1 ( k ) ( p ) ˆ( p ) ( q 1, ) (2.22)

68 Questa funzione è polinomiale in base alla lungezza del problema in ingresso, ce è: n k 1 1 ( p (2.23) ) ( ) q 1, Tempo dipendente dal tempo di viaggio Nella realtà, i tempi di percorrenza dipendono spesso dagli orari di partenza e variano nel tempo, ad esempio, durante le ore di punta, o dalla quantità di traffico. Icoua et al. (2003) anno proposto una variante del VRPTW con tempo-dipendente, all'interno del quale ogni cliente a una sola finestra temporale di servizio non violabile (ard). Essi prima di tutto risolvono in modo approssimato il OTSP, per cui trovano una soluzione solo per le migliori soluzioni approssimative dell'intorno ν (ν è un parametro). Hasimoto et al.(2008) anno considerato un problema tempo-dipendente ed anno fornito una estensione degli studi di Ibaraki et al. (2005) e di Icoua et al. (2003). Essi anno introdotto una funzione di tempo dipendente dal tempo di viaggio λ ij (t) e una funzione di costo dipendente dal tempo di viaggio η ij (t), dove t è l'istante di tempo di inizio del viaggio dal cliente i a j. Quindi, il OTSP è descritto come segue per σ k = (1, 2,..., n k ). min k n 1 k p ( s ) (2.24) 1 0 n, 1( t ) soggetto ai vincoli di: s 0 (2.25) 0 s t nk 1 (2.26) t 0 nk (2.27), 1( t ) s 1 67

69 Questo OTSP è risolvibile mediante la programmazione dinamica. Sia f (t) la somma minima dei costi della finestra temporale per i clienti 0, 1,..., e delle spese di viaggio a condizione ce siano tutti serviti prima di tempo t. Quindi può essere calcolato dalla seguente formula di programmazione dinamica: ( t 0 f 0 t) (2.28) 0 t 0 s t p ( s ) min f ( t ) ( t ) f ( t) min 1 1 1, 1 t1: t1 1, ( t1 ) s ; 1 nk 1, t (2.29) La funzione del tempo di percorrenza λ ij (t) viene assunta per soddisfare: t ( t) t ( t) t ( t) t (1 ) t ( t (1 ) t), 0 1 (2.30) ij ij ij ij Questa condizione è più generale rispetto alla condizione di FIFO (first-in first-out) Icoua et al. (2003) (cioè, t t' t + λ ij (t) t'+λ ij (t')), poicé il sorpasso dei veicoli è possibile ance se la condizione esposta in precedenza 2.30 viene imposta. Essi anno dimostrato ce, in condizioni (2.30) e con alcune assunzioni ragionevoli, f può essere calcolato dal f -1 nel tempo O(Δ (σ k )), dove: n k 1 1 ( k ) ( p ) ( 1, ) ( 1, ) (2.31) Quindi il costo ottimale di σ k può essere ottenuto nel tempo O (n k Δ (σ k )), ce è polinomiale nella dimensione di ingresso del Δ OTSP (σ k ). Se le funzioni di costo e di tempo del viaggio sono funzioni costanti (cioè, se non dipendono dal tempo), la complessità di questo algoritmo di programmazione dinamica diventa uguale a quella esposta da Ibaraki et al. (2005). 68

70 Capitolo 3 - Tecnice per gestire le finestre temporali attraverso le funzioni In questo capitolo vengono presentate alcune tecnice per gestire i vincoli di tempo in cui le sanzioni sono definite da più funzioni. 3.1 Funzioni di costo lineari a tratti Ibaraki et al. (2005) anno introdotto una funzione di costo lineare a tratti p i (t) per ogni cliente i per rappresentare il vincolo di tempo. Questo approccio è molto generale, nel senso ce uno o più intervalli di tempo possono essere assegnati a ciascun cliente. Cioè, la corrispondente funzione ce rappresenta la sanzione può essere non convessa e discontinua fincé è lineare a tratti. Definiamo il problema come il problema di veicle routing con il tempo le finestre generale (VRPGTW). In questo caso, dopo aver fissato l'ordine dei clienti da servire per un veicolo, si deve determinare l orario di inizio del servizio per tutti i clienti in modo ce la penalità in termini di tempo sia minimizzata. Ogni funzione p i (t) viene considerata negativa, lineare a tratti e semicontinua inferiormente (vale a dire, p i (t) lim ε 0 min {p i (t + ε), p i (t-ε)} discontinua in ogni punto t). Si noti ce p i (t) può essere non-convessa e discontinua purcé soddisfi le condizioni di cui sopra. Si presume inoltre p i (t) = + per t<0 in modo ce il tempo t di inizio del servizio sia negativo. Queste assunzioni garantiscono l'esistenza di una soluzione ottima. Con questa impostazione, la OTSP è risolvibile in tempo polinomiale, utilizzando l'algoritmo di programmazione dinamica proposto da Ibaraki et al.(2005), dove ancora una volta si suppone ce k veicolo visitino i clienti 1, 2,..., n k in questo ordine. f (t) rappresenta le sanzioni minime per la violazione delle finestre temporali per i clienti 0, 1,..., sotto la condizione ce siano serviti prima di tutti nel tempo t. 69

71 f (t) può essere calcolato dalla seguente formula di programmazione dinamica: f 0 ( t) 0 t 0 t 0 (3.1) f t) min p ( t) f ( t t ), 1 nk 1, t (3.2) ( 1 1, tt Il costo ottimale del OTSP per li percorso σ k è dato da min f n(k+1) (t). Poicé tutte le funzioni pi(t) sono lineari a tratti, ogni f è ance lineare a tratti. In questo caso le funzioni lineari a tratti sono memorizzate in liste concatenate, ciascuna cella memorizza l'intervallo e la funzione lineare del pezzo corrispondente, e le cellule sono collegate secondo l'ordine degli intervalli. Se abbiamo algoritmi efficienti per due operazioni, g(t)+g'(t) e Φ(t) = min x t g(x) lineare a tratti e le funzioni g e g', il calcolo di f (t) come descritto nella da funzione (3.1) può essere eseguito in modo efficiente. Sia δ(g) la somma del numero di pezzi lineari e il numero di punti discontinui di una funzione lineare a tratti g (cioè, il numero dei pezzi della linea poligonale di g). Poi è semplice vedere ce l'aggiunta g+g' di due funzioni lineari a tratti e g e g' può essere calcolata nel tempo O (δ(g)+δ(g')) e soddisfa le risultante funzione δ (g+g') δ(g)+δ(g'). E ance facile vedere ce la funzione Φ(t) = min x t g (x) può essere calcolata nel tempo O (δ(g))e la conseguente Φ funzione soddisfa δ(φ) δ(g). Sia Δ(σ k ) il numero totale di pezzi lineari per tutte le funzioni p i (t) nel percorso σ k, cioè: nk 1 1 ( ) ( (3.3) k p ( ) ) k Da quanto esposto, possiamo notare ce δ(f ) Δ(σ k ) ed f può essere calcolato da f -1 nel tempo O(Δ(σ k )). Quindi, l'algoritmo risolve il OTSP in O(n k Δ(σ k )) momento in cui il problema è risolto da zero. 70

72 Si noti ce, nel caso di arrivo in anticipo o in ritardo per cui nel caso di penalità sull'orario di inizio del servizio, si a Δ (σ k ) = O (n k ) e la OTSP corrispondente è risolvibile in O (n 2 K) tempo. Inoltre, si può calcolare il valore ottimo di OTSP in O(Δ (σ k )) nel momento in cui viene valutata una soluzione in un quartiere standard, mentre si ottiene O(n k Δ (σ k )) quando è il momento di aggiornare la struttura dei dati quando un movimento viene accettato. 3.2 Funzione di costo convessa Il OTSP generale per le funzioni di p i (t) può essere risolto in modo più efficiente se la funzioni di costo sono convesse Funzione di costo lineare a tratti convessa della finestra temporale Ibaraki et al. (2008) anno considerato il OTSP in cui la funzione di costo della finestra temporale p i per ogni cliente i è una funzione lineare a tratti convessa. Mentre il loro algoritmo è basato sulla stessa ricorrenza di programmazione dinamica (3.1), memorizza convesse funzioni lineari a tratti in bilanciati alberi binari di ricerca. La complessità di tempo per risolvere il OTSP da zero è O(Δ (σ k ) log Δ (σ k )), e il tempo di valutare una soluzione ottenuta per ricollegare un numero costante di percorsi nella soluzione corrente è O (log Δ (σ k ) ) (ce è il caso di una soluzione in una zona standard), mentre troviamo O (Δ (σ k ) log Δ (σ k )) per aggiornare la struttura di dati quando un movimento viene accettato. 71

73 3.2.2 Problemi di regressione isotonica Prendiamo ance in esame il just-in-time sceduling, dove ogni cliente i a un tempo desiderabile e i e la differenza tra l'ora di inizio s i del servizio e e i è la penalizzazione. Il OTSP per questo caso è descritto come segue: n min k 1 1 w e s (3.4) soggetto a: s 0 (3.5) 0 s 1 t 1, s 1,..., nk 1 (3.6) dove w e μ indicano numeri positivi. Questo problema è strettamente legato ai problemi di regressione isotonica e sono stati ampiamente studiati. Il problema di regressione isotonica L μ è formulato come: n k 1 min w e s (3.7) soggetto a: s1 s2... s nk (3.8) dove w sono numeri strettamente positivi e e sono arbitrari numeri reali. Per il problema di regressione isotonica L 2, Best e Cakravarti (1990) anno proposto un algoritmo O(n k ). Se la funzione di costo è la deviazione assoluta da e, questo problema viene ciamato problema di regressione mediana isotonica: n k min w e s (3.9) 1 soggetto a: s1 s2... s nk (3.10) 72

74 3.2.3 Funzione di costo generale convessa della finestra temporale Dumas et al. (1990) anno considerato un funzione di costo generale convessa della finestra temporale p e proposto un algoritmo per il OTSP la cui complessità è la stessa di quella di minimizzare le funzioni O(n k ), dove ogni funzione può essere rappresentata come: j 1 p ( s u ) (3.11) j di una singola variabile s j e u = t, +1 +t +1, t j-1, j. Quindi se: p s e ( s ) s e s l (3.12) s l quindi: j 1 p ( s u ) (3.13) j è una funzione lineare con un dominio limitato. In questo caso, ogni minimizzazione può essere fatta in O (1) e il OTSP può essere risolto in O(n k ). Auja e Orlin (2001) anno considerato un problema generalizzato di regressione isotonica: n k min p s ( ) (3.14) 1 soggetto ai vincoli: s1 s2... s nk (3.15) dove ogni p è una funzione generale convessa. Partendo dal presupposto ce la valutazione del p (s ) per un dato punto s riciede il tempo O(1), gli studiosi anno proposto un algoritmo per ottenere una soluzione intera in O (n k log U), dove U indica la differenza tra il limite superiore del valore ottimale di s nk e il limite inferiore per il valore ottimale di s 1. 73

75 Hocbaum e Queyranne (2003) anno considerato il problema di ciusura convessa dei costi, la quale è una generalizzazione del problema di regressione isotonica. Sia G' = (V', E') un grafo diretto e p i una funzione convessa per ogni i V'. Allora, il problema di costo di ciusura convessa è formulato come segue: iv min p ( ) (3.16) i s i soggetto ai vincoli: s ( i; j) E (3.17) i s j e i s l i V (3.18) i i s i V (3.19) i La complessità dell' algoritmo è la complessità del problema di taglio minimo di un grafo pesato con l'aggiunta della complessità di trovare i minimi nelle funzioni convesse fino a n k. 74

76 CONCLUSIONI In questa tesi si è studiato il problema del Veicle Routing Problem wit Time Windows (VRPTW), analizzando gli algoritmi euristici e metaeuristici fino ad oggi studiati per la risoluzione di tale problema. Ed inoltre abbiamo esaminato i recenti risultati sul modo di gestire i vincoli temporali ard e soft, ponendo l'accento su diverse definizioni di finestre temporali e algoritmi. Nello specifico, nel capitolo 1 si è analizzato il problema di base, il VRP, ce a una vasta gamma di applicazioni del mondo reale ed è stato intensamente studiato per oltre mezzo secolo. L'obiettivo base del problema è quello di minimizzare i costi di routing e di assegnamento dei veicoli ai relativi percorsi, rispettando vari vincoli, dove ogni cliente deve essere visitato esattamente una volta da un veicolo. Nel capitolo 2 si è passati alla trattazione del VRP con il vincolo temporale tale vincolo rende il problema più utile, ma al tempo stesso più difficile percé riciede la pianificazione temporale dei servizi, oltre a determinare i percorsi dei veicoli. L analisi dei modelli matematici e degli algoritmi euristici e metaeuristici applicati al VRPTW mostra ce si dispone ormai di mezzi adeguati per affrontare con successo istanze con centinaia di vertici. I risultati migliori si ottengono con gli approcci metaeuristici, ed in particolare con gli algoritmi basati sulla tecnica usata negli studi delle colonie di formice (Ant Colony Optimization) noto come l algoritmo MACS-VRPTW, in generale, il più performante. Infatti, ad eccezione di alcuni casi, seppure impiegi qualce secondo in più di elaborazione, l algoritmo consente di trovare una soluzione ottima nettamente superiore (in alcuni casi) rispetto alla altre tecnice La ricerca nel campo del problema VRPTW, è uno dei problemi più complessi ma ance più utilizzati nella pratica, ed è in continua evoluzione; i processi logistici riciedono l utilizzo di procedure di ottimizzazione a rendimento elevato. Nel caso dell ottimizzazione di percorsi sono necessari algoritmi veloci, performanti e flessibili. Pensiamo, ad esempio, ai navigatori satellitari di ultima generazione o ai software di gestione dei corrieri espressi. La ricerca sta lavorando al fine di trovare algoritmi sempre più 75

77 performanti, sia dal punto di vista della soluzione ottima trovata, sia dal punto di vista del tempo impiegato per trovarla. Si è ciusa la trattazione con l analisi dei recenti sviluppi in relazione alle tecnice di gestione delle finestre temporali attraverso le funzioni lineare di costo a tratti e la funzione di costo convessa. 76

78 BIBLIOGRAFIA [1] AHUJA R.K, ORLIN J.B., A fast scaling algoritm for minimizing separable convex functions subject to cain constraints. Operations Researc 49(5): [2] BADEAU, P., GUERTIN, F., GENDREAU, M., POTVIN, J.-Y., TAILLARD, E., A parallel tabu searc for te veicle routing problem wit time windows. Transportation Researc 5C, [3] BALAKRISHNAN, N., Simple euristics for veicle routering problem wit soft time windows, J Oper Res.Soc., 44: [4] BERGER, J., BARKAOUI, M., BRÄYSY, O., A Route-directed Hybrid Genetic Approac for te Veicle Routing Problem wit Time Windows. Information Systems and Operations Researc 41, [5] BEST M J, CHAKRAVARTI N Active set algoritms for isotonic regression; a unifying framework. Mat Program 47(1): [6] BRACA, J., BRAMEL, J, and SIMCHI-LEVI, D., A Computerized Approac to te New York City Scool Bus Routing Problem. IEE Transactions, 29(8), [7] BRAMEL, J.,SIMCHI-LEVID On te effectiveness of set covering formulations for te veicle routing problem wit time windows. Operations Researc. 45: [8] BRAYSY, O., Genetic Algoritms for te Veicle Routing problem wit Time Windows, Dept.of matematics and Statistics, University of Vaasa. [9] BRAYSY, O., GENDREAU, M., (2005a). Veicle routing problem wit time windows, part I: route construction and local searc algoritms. Transportation Science, 39(1): [10] BRAYSY, O.,GENDREAU, M., 2002, Tabu searc euristics for te Veicle Routing problem wit Time Windows, Sociedad de Estadistica e investigacion Operativa Top, vol 10, No.2, pp [11] CALVETE, H.I., GALE, C., OLIVEROS, M. J. and SANCHEZ- VALVERDE, B., Veicle Routing Problems wit soft time windows: an optimization based approac, Monografias del Seminario Matematico Garcìa de Galdeano 31, [12] CAMPBELL, A.M., SAVELSBERGH, M.W.P., Delivery Volume Optimization. Transportation Science, 38,

79 [13] CHIANG, W.C., RUSSEL, R.A., Metaeuristic for te veicle-routering problem wit soft time windows. Journal of te Operational Researc Society, 55, [14] CLARKE, G., WRIGHT, J.V., Sceduling of veicle from a central depot to a number of delivery points. Operations Researc, 12: [15] CORDEAU, J.-F., LAPORTE, G., & MERCIER, A A unified tabu searc euristic for veicle routing problems wit time windows. Journal of te Operational Researc Society, 52, [16] CORDEAU, J-F., LAPORTE, G., A tabu searc euristic for te static multiveicle dial-a-ride problem, Transportation Researc Part B, 37, [17] CORDONE, R.,WOLFLER CALVO, A euristic for te Veicle Routing Problem wit Time Windows, Journal of Heuristics, vol. 7, pp [18] CROES, A., A metod for solving travelling salesman problems. Operations Researc. 12, [19] DESROCHERS, M., DESROSIERS, J., SOLOMON, M.M., 1992.A new optimization for te veicle Routing Problem wit time windows, Operations researc, vol.40, No.2, pp [20] DESROCHERS. M., LENSTRA, J.K., SAVELSBERGH, M.W.P. and SOUMIS, F., Veicle Routing wit Time Windows: Optimization and Approximation. In: Golden B. and Assad A. (eds.), Veicle Routing: Metods and Studies. Elsevier Science Publisers, [21] DESROSIERS, J., SOLOMON, M.M., Time Window Constrained Routing and Sceduling Problems. Transportation Science, 22, [22] DORIGO, M., MANIEZZO, V. and COLORNI, A., (1991) Te ant system: an autocatalytic optimizing process, Tecnical Report TR91-016, Politecnico di Milano (1991). [23] DORIGO, M., Optimization, Learning and Natural Algoritms, Dipartimento di Elettronica, Politecnico di Milano, Italy. [24] DUMAS Y, SOUMIS F, DESROSIERS J Optimizing te scedule for a fixed veicle pat wit convex inconvenience costs. Transport Sci 24(2): [25] DURBIN, R., WILLSHAW, D.J An analogue approac to te traveling salesman problem using an elastic net metod. Nature, 326,

80 [26] FIGLIOZZI, M. A., An Iterative route construction and improvement algoritm for te veicle routing problem wit soft and ard time windows, College of Engineering and Computer Science, Portland State University-CEE. [27] FISHER, M.L., JAIKUMAR, R., A Generalized Assignment Heuristic for Veicle Routing. Networks, 11, [28] GAMBARDELLA, L.M., DORIGO, M.,(2000) An Ant Colony System Hybridized wit a New Local Searc for te Sequential Ordering Problem, INFORMS Journal on Computing, vol.12(3), pp [29] GAMBARDELLA, L.M., TAILLARD, E., and AGAZZI, G.,(1999) MACS- VRPTW:A Multiple Ant Colony System for Veicle Routing Problems wit Time Windows, In D. Corne, M. Dorigo and F. Glover, editors, New Ideas in Optimization. McGraw-Hill, London, UK, pp [30] GEHRING, H., HOMBERGER, J., Parallelization of a two-pase metaeuristic for routing problems wit time windows. J. Heurist., 8: [31] GENDREAU, M., BRÄYSY, O., Metaeuristic Approaces for te Veicle Routing Problem wit Time Windows: A Survey. In te Proceedings of te V International Conference on Metaeuristics. [32] GHAZIRI, H., 1991, Solving routing problems by a self-organizing map, in Arti-ficial Neural Networks, a cura di T. Koonen, K. Makisara, O. Simulae J. Kangas, Nort- Holland, Amsterdam,, pp [33] GLOVER, F., Future pats for Integer Programming and Links to Artificial Intelligence. Computers and Operations Researc, 5: [34] HASHIMOTO, H., M., IMAHOR, S., IBARAKI, T., and YAGIURA, M., Recent progress of local searc in andling te time window of te veicle routing problem. Springer. [35] HASHIMOTO H., IBARAKI T., IMAHORI S., YAGIURA M Te veicle routing problem wit flexible time windows and traveling times; Discrete Applied Matematics 154; [36] HASHIMOTO H, YAGIURA M, IBARAKIT Aniterated local searc algoritm for te time-dependent veicle routing problem wit time windows. Discrete Optim 5(2): [37] HOCHBAUM, D. S, QUEYRANNE, M., Minimizing a convex cost closure set. SIAM J Discrete Mat16(2):

81 [38] HOLLAND, J., 1975.Adaptation In Natural and Artificial Systems. Te University of Micigan Press, Ann Arbour. [39] HOMBERGER, J. and GEHRING, H Two Evolutionary Metaeuristics for te Veicle Routing Problem wit Time Windows. Appears in: Special issue of INFOR on "Metaeuristics for Location and Routing Problems". [40] HOPFIELD, J. TANK. D.W., "Neural" Computation of Decisions in Optimization Problems. Biol. Cybern: 52, [41] IBARAKI T, IMAHORI S, KUBO M, MASUDA T, UNO T, YAGIURA M., Effective local searc algoritms for routing and sceduling problems wit general timewindow constraints. Transport Sci 39(2): [42] IBARAKI T, IMAHORI S, NONOBE K, SOBUE K, UNO T, YAGIURAZ M., An iterated local searc algoritm for te veicle routing problem wit convex time penalty functions. Discrete Appl Mat 156: [43] ICHOUA S, GENDREAU M, POTVIN J-Y Veicle dispatcing wit timedependent travel times. Eur J Opern Res 144: [44] IOANNOU, G., KRITIKOS, M., PRATACOS, G., (2001) A greedy look-aead euristic for te veicle routing problem wit time windows, Journal of te Operational Researc Society. 52, [45] KALLEHAUGE, B., On te veicle routing problem wit time windows. Centre for Traffic and Transport Tecnical, University of Denmark. [46] KOHONEN,T., Self-Organization and Associative Memory, Springer, Berlino. [47] KOSKOSIDIS, Y. A., POWELL, W. B., and SOLOMON, M. M., An optimization-based euristic for veicle routing and sceduling wit soft time window constraints. Transportation Science, 26(2): [48] LAMBERT, V., LAPORTE, G. and LOUVEAUX, F., Designing Collection Routes troug Bank Brances. Computers and Operations Researc, 20, [49] LIBERATORE, F., RIGHINI, G. and SALANI, M., A column generation algoritm for te veicle routing problem wit soft time windows,4or-qj, Operational researc 9, [50] LIBERATORE, F., RIGHINI, G., A pricing algoritm for te veicle routing problem wit soft time windows. Dipartimento di Tecnologie dell'informazione Università degli Studi di Milano. 80

82 [51] LIN, S., Computer solutions of te traveling salesman problem. Bell Syst. Tec. J. 44, [52] MAFFIOLI, Elementi di Programmazione Matematica. CEA. [53] MASUDA, T., et al., Effective local searc algoritms for te veicle routing problem wit general time window constraints. MIC t Metaeuristics International Conference. Japan: Department of Applied Matematics and Pysics, Graduate Scool of Informatics, Kyoto University, Kyoto [54] MESTER, D., BRÄYSY, O., Active Guided Evolution Strategies for Large Scale Veicle Routing Problem. Presented at Euro XX, Rodes, Greece. [55] OLIVER, M., SMITH, D.J., HOLLAND, C A study of permutation crossover operators on te travelling salesman problem, Genetic algoritms and teir applications: Proc. of te second Int. Conf. On Genetic Algoritms (J. J. Grefenstette, ed.), (Hillsdale, NJ), pp , Lawrence Erlbaum Assoc. [56] OR. I., Traveling salesman-type combinatorial problem and teir relation to te logistics of regional blood banking. pd tesis, Department of Industrial Engeneering and Management Sciences Nort-western University. [57] POTVIN, J.Y,KERVAHUT, T., GARCIA, B-L.,ROUSSEEAU, J.,M., Te veicle routing problem wit time windows Part I: Tabu searc. INFORMS Journal on Computing 8, [58] POTVIN, J.Y., ROUSSEAU, J.M A Parallel Route Building Algoritm for te Veicle Routing and Sceduling Problem wit Time Windows. European Journal of Operational Researc. 66: [59] POTVIN, J.Y., ROUSSEAU, J.M An excange euristic for routing problems wit time windows.operational Researc [60] QUERESHI, A. G., TANIGUCHI, E., and YAMADA, T., Column Generation - based Hauristics for Veicle Routing Problem wit soft time windows. Jurnal of te Eastern Asia society for Trasportation Studies, Vol.8. [61] ROCHAT, Y., TAILLARD, E., Probabilistic diversification and intensification in local searc for veicle routing. Journal of Heuristics. 1, [62] RUSSELL, R.A., An effective euristic for tem-tour traveling salesman problem wit some side constraints Operational Researc.25, [63] RUSSELL, R.A., Hybrid Heuristics for te Veicle Routing Problem wit Time Windows, Transportation Science, 29,

83 [64] SALELSBERGH. M.W.P., Local searc for routing problems wit time windows. Operational Researc.4, [65] SEXTO, T., BODIN, L.D., Optimizing single veicle many-to-many operations wit desired delivery times: I. Sceduling. Transportation Science, (19): [66] SOLOMON, M.M., Algoritms for te Veicle Routing and Sceduling Problems wit Time window constraints. Operations researc, vol 35, No.2, pp [67] STUETZLE, W., Estimating te cluster tree of a density by analyzing te minimal spanning tree of a sample. Journal of Classification, Vol. 20, No. 5, pp [68] TAILLARD, E. et al A tabu searc euristic for te veicle routing problem wit soft time windows. Transportation Science, 31(2): [69] TAILLARD, E., Parallel iterative searc metods for veicle routing problems. Networks 23, [70] THOMPSON, P.M., PSARAFTIS, H.M., Cyclic transfer algoritms for multiveicle routing and sceduling problems. Operations researc,41. [71] TOHT, P., VIGO, D., Te Veicle Routing Problem. SIAM. [72] VAIDYANATHAN, B.S., MATSON, J.O.,MILLER, D.M. and MATSON, J.E., A Capacitated Veicle Routing Problem for Just-In-Time Delivery. IEE Transactions 31, [73] VAN BREEDAM, A.,1994. An analysis of te beavior of euristics for te veicle routing problem for a selection of problems wit veicle-related, customer-related, and time related constraints, University of Antwerp. [74] VIGO, D., Il veicle routing problem:modelli ed Algoritmi D.E.I.S.- Università di Bologna. [75] VIGO, D., Tecnice di programmazione ed ottimizzazione dei servizi di trasporto merci e logistica. D.E.I.S.- Università di Bologna. 82

Logistica o distribuzione

Logistica o distribuzione 6. I problemi di trasporto e distribuzione 1 Logistica o distribuzione La logistica è l attività di trasportare merci e/o servizi dai luoghi ( sorgenti ) dove tali merci o servizi sono disponibili, alle

Dettagli

Ottimizzazione Multi Obiettivo

Ottimizzazione Multi Obiettivo Ottimizzazione Multi Obiettivo 1 Ottimizzazione Multi Obiettivo I problemi affrontati fino ad ora erano caratterizzati da una unica (e ben definita) funzione obiettivo. I problemi di ottimizzazione reali

Dettagli

mese 1 2 3 4 5 richiesta 6000 7000 8000 9500 11000

mese 1 2 3 4 5 richiesta 6000 7000 8000 9500 11000 1.7 Servizi informatici. Un negozio di servizi informatici stima la richiesta di ore di manutenzione/consulenza per i prossimi cinque mesi: mese 1 2 3 4 5 richiesta 6000 7000 8000 9500 11000 All inizio

Dettagli

3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Scopo: Stimare l onere computazionale per risolvere problemi di ottimizzazione e di altra natura

Dettagli

1. Considerazioni preliminari

1. Considerazioni preliminari 1. Considerazioni preliminari Uno dei principali aspetti decisionali della gestione logistica è decidere dove localizzare nuove facility, come impianti, magazzini, rivenditori. Ad esempio, consideriamo

Dettagli

Capitolo 13: L offerta dell impresa e il surplus del produttore

Capitolo 13: L offerta dell impresa e il surplus del produttore Capitolo 13: L offerta dell impresa e il surplus del produttore 13.1: Introduzione L analisi dei due capitoli precedenti ha fornito tutti i concetti necessari per affrontare l argomento di questo capitolo:

Dettagli

Dimensione di uno Spazio vettoriale

Dimensione di uno Spazio vettoriale Capitolo 4 Dimensione di uno Spazio vettoriale 4.1 Introduzione Dedichiamo questo capitolo ad un concetto fondamentale in algebra lineare: la dimensione di uno spazio vettoriale. Daremo una definizione

Dettagli

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Scheduling della CPU Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Sistemi multiprocessori Fin qui si sono trattati i problemi di scheduling su singola

Dettagli

MANUALE DELLA QUALITA Revisione: Sezione 4 SISTEMA DI GESTIONE PER LA QUALITA

MANUALE DELLA QUALITA Revisione: Sezione 4 SISTEMA DI GESTIONE PER LA QUALITA Pagina: 1 di 5 SISTEMA DI GESTIONE PER LA QUALITA 4.0 SCOPO DELLA SEZIONE Illustrare la struttura del Sistema di Gestione Qualità SGQ dell Istituto. Per gli aspetti di dettaglio, la Procedura di riferimento

Dettagli

TSP con eliminazione di sottocicli

TSP con eliminazione di sottocicli TSP con eliminazione di sottocicli Un commesso viaggiatore deve visitare 7 clienti in modo da minimizzare la distanza percorsa. Le distanze (in Km) tra ognuno dei clienti sono come segue: 7-8 9 7 9-8 79

Dettagli

TECNICHE DI SIMULAZIONE

TECNICHE DI SIMULAZIONE TECNICHE DI SIMULAZIONE INTRODUZIONE Francesca Mazzia Dipartimento di Matematica Università di Bari a.a. 2004/2005 TECNICHE DI SIMULAZIONE p. 1 Introduzione alla simulazione Una simulazione è l imitazione

Dettagli

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI Indice 1 Le frazioni algebriche 1.1 Il minimo comune multiplo e il Massimo Comun Divisore fra polinomi........ 1. Le frazioni algebriche....................................

Dettagli

e-dva - eni-depth Velocity Analysis

e-dva - eni-depth Velocity Analysis Lo scopo dell Analisi di Velocità di Migrazione (MVA) è quello di ottenere un modello della velocità nel sottosuolo che abbia dei tempi di riflessione compatibili con quelli osservati nei dati. Ciò significa

Dettagli

Problema del trasporto

Problema del trasporto p. 1/1 Problema del trasporto Supponiamo di avere m depositi in cui è immagazzinato un prodotto e n negozi che richiedono tale prodotto. Nel deposito i è immagazzinata la quantità a i di prodotto. Nel

Dettagli

Modelli di Programmazione Lineare e Programmazione Lineare Intera

Modelli di Programmazione Lineare e Programmazione Lineare Intera Modelli di Programmazione Lineare e Programmazione Lineare Intera 1 Azienda Dolciaria Un azienda di cioccolatini deve pianificare la produzione per i prossimi m mesi. In ogni mese l azienda ha a disposizione

Dettagli

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo. DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti

Dettagli

Progetto di Reti di Telecomunicazione Modelli in Programmazione Lineare Problemi di flusso

Progetto di Reti di Telecomunicazione Modelli in Programmazione Lineare Problemi di flusso Progetto di Reti di Telecomunicazione Modelli in Programmazione Lineare Problemi di flusso Flusso di costo minimo È dato un grafo direzionato G = (N, A). Ad ogni arco (i, j) A è associato il costo c ij

Dettagli

PROGETTO TECNICO SISTEMA DI GESTIONE QUALITA IN CONFORMITÀ ALLA NORMA. UNI EN ISO 9001 (ed. 2008) n. 03 del 31/01/09 Salvatore Ragusa

PROGETTO TECNICO SISTEMA DI GESTIONE QUALITA IN CONFORMITÀ ALLA NORMA. UNI EN ISO 9001 (ed. 2008) n. 03 del 31/01/09 Salvatore Ragusa PROGETTO TECNICO SISTEMA DI GESTIONE QUALITA IN CONFORMITÀ ALLA NORMA UNI EN ISO 9001 (ed. 2008) Revisione Approvazione n. 03 del 31/01/09 Salvatore Ragusa PROGETTO TECNICO SISTEMA QUALITA Il nostro progetto

Dettagli

Capitolo 5: Ottimizzazione Discreta. E. Amaldi DEI, Politecnico di Milano

Capitolo 5: Ottimizzazione Discreta. E. Amaldi DEI, Politecnico di Milano Capitolo 5: Ottimizzazione Discreta E. Amaldi DEI, Politecnico di Milano 5.1 Modelli di PLI, formulazioni equivalenti ed ideali Il modello matematico di un problema di Ottimizzazione Discreta è molto spesso

Dettagli

Appunti sulla Macchina di Turing. Macchina di Turing

Appunti sulla Macchina di Turing. Macchina di Turing Macchina di Turing Una macchina di Turing è costituita dai seguenti elementi (vedi fig. 1): a) una unità di memoria, detta memoria esterna, consistente in un nastro illimitato in entrambi i sensi e suddiviso

Dettagli

4 Dispense di Matematica per il biennio dell Istituto I.S.I.S. Gaetano Filangieri di Frattamaggiore EQUAZIONI FRATTE E SISTEMI DI EQUAZIONI

4 Dispense di Matematica per il biennio dell Istituto I.S.I.S. Gaetano Filangieri di Frattamaggiore EQUAZIONI FRATTE E SISTEMI DI EQUAZIONI 119 4 Dispense di Matematica per il biennio dell Istituto I.S.I.S. Gaetano Filangieri di Frattamaggiore EQUAZIONI FRATTE E SISTEMI DI EQUAZIONI Indice degli Argomenti: TEMA N. 1 : INSIEMI NUMERICI E CALCOLO

Dettagli

LE FUNZIONI A DUE VARIABILI

LE FUNZIONI A DUE VARIABILI Capitolo I LE FUNZIONI A DUE VARIABILI In questo primo capitolo introduciamo alcune definizioni di base delle funzioni reali a due variabili reali. Nel seguito R denoterà l insieme dei numeri reali mentre

Dettagli

Un modello matematico di investimento ottimale

Un modello matematico di investimento ottimale Un modello matematico di investimento ottimale Tiziano Vargiolu 1 1 Università degli Studi di Padova Liceo Scientifico Benedetti Venezia, giovedì 30 marzo 2011 Outline 1 Investimento per un singolo agente

Dettagli

Anno 3. Funzioni: dominio, codominio e campo di esistenza

Anno 3. Funzioni: dominio, codominio e campo di esistenza Anno 3 Funzioni: dominio, codominio e campo di esistenza 1 Introduzione In questa lezione parleremo delle funzioni. Ne daremo una definizione e impareremo a studiarne il dominio in relazione alle diverse

Dettagli

LA LOGISTICA INTEGRATA

LA LOGISTICA INTEGRATA dell Università degli Studi di Parma LA LOGISTICA INTEGRATA Obiettivo: rispondere ad alcuni interrogativi di fondo Come si è sviluppata la logistica in questi ultimi anni? Quali ulteriori sviluppi sono

Dettagli

Le equazioni. Diapositive riassemblate e rielaborate da prof. Antonio Manca da materiali offerti dalla rete.

Le equazioni. Diapositive riassemblate e rielaborate da prof. Antonio Manca da materiali offerti dalla rete. Le equazioni Diapositive riassemblate e rielaborate da prof. Antonio Manca da materiali offerti dalla rete. Definizione e caratteristiche Chiamiamo equazione l uguaglianza tra due espressioni algebriche,

Dettagli

MANUALE DELLA QUALITÀ Pag. 1 di 6

MANUALE DELLA QUALITÀ Pag. 1 di 6 MANUALE DELLA QUALITÀ Pag. 1 di 6 INDICE GESTIONE DELLE RISORSE Messa a disposizione delle risorse Competenza, consapevolezza, addestramento Infrastrutture Ambiente di lavoro MANUALE DELLA QUALITÀ Pag.

Dettagli

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme 1. L insieme R. Per lo svolgimento del corso risulta particolarmente utile considerare l insieme R = R {, + }, detto anche retta reale estesa, che si ottiene aggiungendo all insieme dei numeri reali R

Dettagli

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da Data una funzione reale f di variabile reale x, definita su un sottoinsieme proprio D f di R (con questo voglio dire che il dominio di f è un sottoinsieme di R che non coincide con tutto R), ci si chiede

Dettagli

Calcolo del Valore Attuale Netto (VAN)

Calcolo del Valore Attuale Netto (VAN) Calcolo del Valore Attuale Netto (VAN) Il calcolo del valore attuale netto (VAN) serve per determinare la redditività di un investimento. Si tratta di utilizzare un procedimento che può consentirci di

Dettagli

Descrizione funzionale

Descrizione funzionale 2015 AEP Ticketing Solutions Via dei Colli, 240, Signa (Firenze) www.aep-italia.it 704252.E00.IT_ET-MINIIV.DOCX 1/10 2015 AEP Ticketing Solutions Via dei Colli, 240, Signa (Firenze) www.aep-italia.it Revisioni

Dettagli

Le strumentazioni laser scanning oriented per i processi di censimento anagrafico dei patrimoni

Le strumentazioni laser scanning oriented per i processi di censimento anagrafico dei patrimoni CONVEGNO FACILITY MANAGEMENT: LA GESTIONE INTEGRATA DEI PATRIMONI PUBBLICI GENOVA FACOLTA DI ARCHITETTURA 06.07.2010 Le strumentazioni laser scanning oriented per i processi di censimento anagrafico dei

Dettagli

GESTIONE AVANZATA DEI MATERIALI

GESTIONE AVANZATA DEI MATERIALI GESTIONE AVANZATA DEI MATERIALI Divulgazione Implementazione/Modifica Software SW0003784 Creazione 23/01/2014 Revisione del 27/06/2014 Numero 1 Una gestione avanzata dei materiali strategici e delle materie

Dettagli

1. PRIME PROPRIETÀ 2

1. PRIME PROPRIETÀ 2 RELAZIONI 1. Prime proprietà Il significato comune del concetto di relazione è facilmente intuibile: due elementi sono in relazione se c è un legame tra loro descritto da una certa proprietà; ad esempio,

Dettagli

5 Risparmio e investimento nel lungo periodo

5 Risparmio e investimento nel lungo periodo 5 Risparmio e investimento nel lungo periodo 5.1 Il ruolo del mercato finanziario Il ruolo macroeconomico del sistema finanziario è quello di far affluire i fondi risparmiati ai soggetti che li spendono.

Dettagli

Capitolo 2. Operazione di limite

Capitolo 2. Operazione di limite Capitolo 2 Operazione di ite In questo capitolo vogliamo occuparci dell operazione di ite, strumento indispensabile per scoprire molte proprietà delle funzioni. D ora in avanti riguarderemo i domini A

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell

Dettagli

Per dimostrare i benefici della citylogistics in presenza di condizioni favorevoli per farla decollare, abbiamo deciso di costruire un modello di

Per dimostrare i benefici della citylogistics in presenza di condizioni favorevoli per farla decollare, abbiamo deciso di costruire un modello di Per dimostrare i benefici della citylogistics in presenza di condizioni favorevoli per farla decollare, abbiamo deciso di costruire un modello di simulazione con l aiuto della società Flexcon di Torino

Dettagli

Con il termine programma Teacch si intende l organizzazione dei servizi per persone autistiche realizzato nella Carolina del Nord, che prevede una

Con il termine programma Teacch si intende l organizzazione dei servizi per persone autistiche realizzato nella Carolina del Nord, che prevede una IL PROGRAMMA TEACCH Con il termine programma Teacch si intende l organizzazione dei servizi per persone autistiche realizzato nella Carolina del Nord, che prevede una presa in carico globale in senso sia

Dettagli

Gli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome.

Gli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome. Prof. Francesco Accarino Raccolta di esercizi modello ER Esercizio 1 Un università vuole raccogliere ed organizzare in un database le informazioni sui propri studenti in relazione ai corsi che essi frequentano

Dettagli

Ottimizzazione nella gestione dei progetti Capitolo 4: la gestione dei costi (Programmazione multimodale): formulazioni

Ottimizzazione nella gestione dei progetti Capitolo 4: la gestione dei costi (Programmazione multimodale): formulazioni Ottimizzazione nella gestione dei progetti Capitolo 4: la gestione dei costi (Programmazione multimodale): formulazioni CARLO MANNINO Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica

Dettagli

IL MARKETING E QUELLA FUNZIONE D IMPRESA CHE:

IL MARKETING E QUELLA FUNZIONE D IMPRESA CHE: IL MARKETING E QUELLA FUNZIONE D IMPRESA CHE:! definisce i bisogni e i desideri insoddisfatti! ne definisce l ampiezza! determina quali mercati obiettivo l impresa può meglio servire! definisce i prodotti

Dettagli

LA NUOVA GUIDA CEI 0-10 PER LA MANUTENZIONE DEGLI IMPIANTI ELETTRICI

LA NUOVA GUIDA CEI 0-10 PER LA MANUTENZIONE DEGLI IMPIANTI ELETTRICI LA NUOVA GUIDA CEI 0-10 PER LA MANUTENZIONE DEGLI IMPIANTI ELETTRICI PREMESSA Il panorama delle disposizioni all interno delle quali si pone la manutenzione è cambiato e si avverte la necessità di individuare

Dettagli

COME SVILUPPARE UN EFFICACE PIANO DI INTERNET MARKETING

COME SVILUPPARE UN EFFICACE PIANO DI INTERNET MARKETING Febbraio Inserto di Missione Impresa dedicato allo sviluppo pratico di progetti finalizzati ad aumentare la competitività delle imprese. COME SVILUPPARE UN EFFICACE PIANO DI INTERNET MARKETING COS E UN

Dettagli

PROGETTO REGIONALE MISURAZIONE E VALUTAZIONE DELLE BIBLIOTECHE VENETE

PROGETTO REGIONALE MISURAZIONE E VALUTAZIONE DELLE BIBLIOTECHE VENETE PROGETTO REGIONALE MISURAZIONE E VALUTAZIONE DELLE BIBLIOTECHE VENETE Analisi dinamica dei dati dei questionari per le biblioteche di pubblica lettura. GLI INDICATORI Gli indicatori sono particolari rapporti

Dettagli

Lezione 18 1. Introduzione

Lezione 18 1. Introduzione Lezione 18 1 Introduzione In questa lezione vediamo come si misura il PIL, l indicatore principale del livello di attività economica. La definizione ed i metodi di misura servono a comprendere a quali

Dettagli

REGOLAMENTO DI VALUTAZIONE DEL PERSONALE DIPENDENTE

REGOLAMENTO DI VALUTAZIONE DEL PERSONALE DIPENDENTE REGOLAMENTO DI VALUTAZIONE DEL PERSONALE DIPENDENTE Approvato con Determinazione del Direttore Generale n. 244 del 20/07/2010 L importanza di un sistema operativo di valutazione comune e riconoscibile

Dettagli

Cosa mette a disposizione dell'utente

Cosa mette a disposizione dell'utente PATHfinder OTTIMIZZA ATTIVITA' E MEZZI AUMENTANDO L'EFFICACIA! PATHfinder L applicazione di ottimizzazione dei percorsi e scheduling delle consegne, semplice da utilizzare ed efficace nella riduzione dei

Dettagli

1) Descrivere dettagliatamente a quale problema di scheduling corrisponde il problema.

1) Descrivere dettagliatamente a quale problema di scheduling corrisponde il problema. Un veicolo viene utilizzato da una società di trasporti per trasportare beni a partire da un unico deposito verso prefissate località di destinazione. Si supponga che occorre trasportare singolarmente

Dettagli

JDI.WEBSERVICES.VRP - Ottimizzazione movimentazione merce

JDI.WEBSERVICES.VRP - Ottimizzazione movimentazione merce 1 JDI.WEBSERVICES.VRP - Ottimizzazione movimentazione merce Uno degli aspetti più importanti per le aziende di trasporti spedizioni logistica è quello di ottimizzare al meglio le risorse disponibili. Questa

Dettagli

Macchine a stati finiti. Sommario. Sommario. M. Favalli. 5th June 2007

Macchine a stati finiti. Sommario. Sommario. M. Favalli. 5th June 2007 Sommario Macchine a stati finiti M. Favalli 5th June 27 4 Sommario () 5th June 27 / 35 () 5th June 27 2 / 35 4 Le macchine a stati si utilizzano per modellare di sistemi fisici caratterizzabili mediante:

Dettagli

Equilibrio bayesiano perfetto. Giochi di segnalazione

Equilibrio bayesiano perfetto. Giochi di segnalazione Equilibrio bayesiano perfetto. Giochi di segnalazione Appunti a cura di Stefano Moretti, Silvia VILLA e Fioravante PATRONE versione del 26 maggio 2006 Indice 1 Equilibrio bayesiano perfetto 2 2 Giochi

Dettagli

La distribuzione Normale. La distribuzione Normale

La distribuzione Normale. La distribuzione Normale La Distribuzione Normale o Gaussiana è la distribuzione più importante ed utilizzata in tutta la statistica La curva delle frequenze della distribuzione Normale ha una forma caratteristica, simile ad una

Dettagli

Sistemi Operativi mod. B. Sistemi Operativi mod. B A B C A B C P 1 2 0 0 P 1 1 2 2 3 3 2 P 2 3 0 2 P 2 6 0 0 P 3 2 1 1 P 3 0 1 1 < P 1, >

Sistemi Operativi mod. B. Sistemi Operativi mod. B A B C A B C P 1 2 0 0 P 1 1 2 2 3 3 2 P 2 3 0 2 P 2 6 0 0 P 3 2 1 1 P 3 0 1 1 < P 1, > Algoritmo del banchiere Permette di gestire istanze multiple di una risorsa (a differenza dell algoritmo con grafo di allocazione risorse). Ciascun processo deve dichiarare a priori il massimo impiego

Dettagli

L ORGANIZZAZIONE AZIENDALE

L ORGANIZZAZIONE AZIENDALE L ORGANIZZAZIONE AZIENDALE CONCETTO: L ORGANIZZAZIONE SI PONE COME OBIETTIVO LO STUDIO DELLE COMPOSIZIONI PIU CONVENIENTI DELLE FORZE PERSONALI, MATERIALI E IMMATERIALI OPERANTI NEL SISTEMA AZIENDALE.

Dettagli

TELECOMUNICAZIONI II: LE RETI DI COMUNICAZIONE. INTRODUZIONE... pag.2

TELECOMUNICAZIONI II: LE RETI DI COMUNICAZIONE. INTRODUZIONE... pag.2 1 TELECOMUNICAZIONI II: LE RETI DI COMUNICAZIONE INDICE INTRODUZIONE... pag.2 LE RETI DI COMUNICAZIONE.. pag.2 La rete interconnessa (o a maglia).. pag.2 La rete a commutazione. pag.3 La rete policentrica

Dettagli

Project Management. Modulo: Introduzione. prof. ing. Guido Guizzi

Project Management. Modulo: Introduzione. prof. ing. Guido Guizzi Project Management Modulo: Introduzione prof. ing. Guido Guizzi Definizione di Project Management Processo unico consistente in un insieme di attività coordinate con scadenze iniziali e finali, intraprese

Dettagli

risulta (x) = 1 se x < 0.

risulta (x) = 1 se x < 0. Questo file si pone come obiettivo quello di mostrarvi come lo studio di una funzione reale di una variabile reale, nella cui espressione compare un qualche valore assoluto, possa essere svolto senza necessariamente

Dettagli

WMS NFS. La soluzione per l area logistica

WMS NFS. La soluzione per l area logistica WMS NFS La soluzione per l area logistica NFS WMS Come nasce NFS EP è provvisto di un evoluto gestore di WorkFlow, che consente di gestire l Iter dei principali flussi documentali (richiesta da reparto,

Dettagli

La norma ISO 9001:08 ha apportato modifiche alla normativa precedente in

La norma ISO 9001:08 ha apportato modifiche alla normativa precedente in La norma ISO 9001:08 ha apportato modifiche alla normativa precedente in base alle necessità di chiarezza emerse nell utilizzo della precedente versione e per meglio armonizzarla con la ISO 14001:04. Elemento

Dettagli

SISTEMA di GESTIONE QUALITÀ Non Conformità ed Efficacia delle Azioni Correttive Preventive

SISTEMA di GESTIONE QUALITÀ Non Conformità ed Efficacia delle Azioni Correttive Preventive SISTEMA di GESTIONE QUALITÀ Non Conformità ed Efficacia delle Azioni Correttive Preventive Il sistema di gestione della qualità a cui mi riferisco è quello relativo alla norma ISO-9001:2000. Prima di entrare

Dettagli

1. Definizione di budget e collocazione nel processo di programmazione e controllo

1. Definizione di budget e collocazione nel processo di programmazione e controllo 21 Capitolo II Il budget 1. Definizione di budget e collocazione nel processo di programmazione e controllo Il budget - e' un programma delle operazioni di gestione da compiere in un anno, finalizzato

Dettagli

Ricerca Operativa e Logistica

Ricerca Operativa e Logistica Ricerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili A.A. 2011/2012 Lezione 10: Variabili e vincoli logici Variabili logiche Spesso nei problemi reali che dobbiamo affrontare ci sono dei

Dettagli

Rappresentazione grafica di entità e attributi

Rappresentazione grafica di entità e attributi PROGETTAZIONE CONCETTUALE La progettazione concettuale, ha il compito di costruire e definire una rappresentazione corretta e completa della realtà di interesse, e il prodotto di tale attività, è lo schema

Dettagli

ISO 9001:2015 e ISO 14001:2015

ISO 9001:2015 e ISO 14001:2015 TÜV NORD CERT FAQ ISO 9001:2015 e ISO 14001:2015 Risposte alle principali domande sulle nuove revisioni degli standard ISO 9001 e ISO 14001 Da quando sarà possibile 1 certificarsi in accordo ai nuovi standard?

Dettagli

iproject Gestione e Controllo Costi Cantiere iproject

iproject Gestione e Controllo Costi Cantiere iproject Gestione e Controllo Costi Cantiere iproject Caratteristiche del software iproject. Lavorare in un cantiere edile significa realizzare giorno dopo giorno ciò che è definito in una commessa. A partire dalla

Dettagli

Matrice Excel Calcolo rata con IMPORTO DEL FINANZIAMENTO determinato dall'utente

Matrice Excel Calcolo rata con IMPORTO DEL FINANZIAMENTO determinato dall'utente Matrice Excel Calcolo rata con IMPORTO DEL FINANZIAMENTO determinato dall'utente L'acquisto di un immobile comporta un impegno finanziario notevole e non sempre è possibile disporre della somma di denaro

Dettagli

Università degli Studi di L Aquila. Facoltà di Ingegneria. Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi

Università degli Studi di L Aquila. Facoltà di Ingegneria. Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi Università degli Studi di L Aquila Facoltà di Ingegneria Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi Prof. Gaetanino Paolone Dott. Ottavio Pascale a.a.2003-2004 Progetto Campo

Dettagli

Capitolo 4: Ottimizzazione non lineare non vincolata parte II. E. Amaldi DEIB, Politecnico di Milano

Capitolo 4: Ottimizzazione non lineare non vincolata parte II. E. Amaldi DEIB, Politecnico di Milano Capitolo 4: Ottimizzazione non lineare non vincolata parte II E. Amaldi DEIB, Politecnico di Milano 4.3 Algoritmi iterativi e convergenza Programma non lineare (PNL): min f(x) s.v. g i (x) 0 1 i m x S

Dettagli

IDENTIFICAZIONE DEI BISOGNI DEL CLIENTE

IDENTIFICAZIONE DEI BISOGNI DEL CLIENTE IDENTIFICAZIONE DEI BISOGNI DEL CLIENTE 51 Dichiarazione d intenti (mission statement) La dichiarazione d intenti ha il compito di stabilire degli obiettivi dal punto di vista del mercato, e in parte dal

Dettagli

Pianificazione e progettazione

Pianificazione e progettazione Pianificazione e progettazione L analisi preventiva degli eventi e delle loro implicazioni rappresenta una necessità sempre più forte all interno di tutte le organizzazioni variamente complesse. L osservazione

Dettagli

Evidenziare le modalità con le quali l azienda agrituristica produce valore per i clienti attraverso la gestione dei propri processi.

Evidenziare le modalità con le quali l azienda agrituristica produce valore per i clienti attraverso la gestione dei propri processi. 5. Processi Evidenziare le modalità con le quali l azienda agrituristica produce valore per i clienti attraverso la gestione dei propri processi. Il criterio vuole approfondire come l azienda agrituristica

Dettagli

Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi.

Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi. PROGETTO SeT Il ciclo dell informazione Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi. Scuola media Istituto comprensivo di Fagagna (Udine) Insegnanti referenti: Guerra Annalja, Gianquinto

Dettagli

CICLO DI GESTIONE CICLO DI GESTIONE

CICLO DI GESTIONE CICLO DI GESTIONE CICLO DI GESTIONE CICLO DI GESTIONE Entrate mezzi monetari e simili Entrate mezzi monetari e simili Finanziamenti Investimenti Trasformazioni Disinvestimenti Rimborsi o Remunerazioni Uscite mezzi monetari

Dettagli

Il presente regolamento è obbligatorio in tutti i suoi elementi e direttamente applicabile in ciascuno degli Stati membri.

Il presente regolamento è obbligatorio in tutti i suoi elementi e direttamente applicabile in ciascuno degli Stati membri. L 77/42 Gazzetta ufficiale dell Unione europea 24.3.2010 REGOLAMENTO (UE) N. 244/2010 DELLA COMMISSIONE del 23 marzo 2010 che modifica il regolamento (CE) n. 1126/2008 della Commissione che adotta taluni

Dettagli

Laboratorio di Pedagogia Sperimentale. Indice

Laboratorio di Pedagogia Sperimentale. Indice INSEGNAMENTO DI LABORATORIO DI PEDAGOGIA SPERIMENTALE LEZIONE III INTRODUZIONE ALLA RICERCA SPERIMENTALE (PARTE III) PROF. VINCENZO BONAZZA Indice 1 L ipotesi -----------------------------------------------------------

Dettagli

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme G Pareschi Principio di induzione Il Principio di Induzione (che dovreste anche avere incontrato nel Corso di Analisi I) consente di dimostrare Proposizioni il cui enunciato è in funzione di un numero

Dettagli

Mon Ami 3000 Provvigioni agenti Calcolo delle provvigioni per agente / sub-agente

Mon Ami 3000 Provvigioni agenti Calcolo delle provvigioni per agente / sub-agente Prerequisiti Mon Ami 3000 Provvigioni agenti Calcolo delle provvigioni per agente / sub-agente L opzione Provvigioni agenti è disponibile per le versioni Vendite, Azienda Light e Azienda Pro. Introduzione

Dettagli

Automazione Industriale (scheduling+mms) scheduling+mms. [email protected]

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it Automazione Industriale (scheduling+mms) scheduling+mms [email protected] Introduzione Sistemi e Modelli Lo studio e l analisi di sistemi tramite una rappresentazione astratta o una sua formalizzazione

Dettagli

( x) ( x) 0. Equazioni irrazionali

( x) ( x) 0. Equazioni irrazionali Equazioni irrazionali Definizione: si definisce equazione irrazionale un equazione in cui compaiono uno o più radicali contenenti l incognita. Esempio 7 Ricordiamo quanto visto sulle condizioni di esistenza

Dettagli

Tassi di cambio e mercati valutari: un approccio di portafoglio

Tassi di cambio e mercati valutari: un approccio di portafoglio Tassi di cambio e mercati valutari: un approccio di portafoglio Tassi di cambio e transazioni internazionali La domanda di attività denominate in valuta estera L equilibrio nel mercato valutario Tassi

Dettagli

Macchine a stati finiti. Sommario. Sommario. M. Favalli. Le macchine a stati si utilizzano per modellare di sistemi fisici caratterizzabili mediante:

Macchine a stati finiti. Sommario. Sommario. M. Favalli. Le macchine a stati si utilizzano per modellare di sistemi fisici caratterizzabili mediante: Sommario Macchine a stati finiti M. Favalli Engineering Department in Ferrara 4 Sommario (ENDIF) Analisiesintesideicircuitidigitali / 35 (ENDIF) Analisiesintesideicircuitidigitali 2 / 35 4 Le macchine

Dettagli

COMUNE DI SOLBIATE ARNO

COMUNE DI SOLBIATE ARNO SISTEMA DI MISURAZIONE E VALUTAZIONE DEL PERSONALE DIPENDENTE Approvato con deliberazione della Giunta Comunale n. 98 del 14.11.2013 1 GLI ELEMENTI DEL SISTEMA DI VALUTAZIONE Oggetto della valutazione:obiettivi

Dettagli

GUIDA ALLA RILEVANZA

GUIDA ALLA RILEVANZA GUIDA ALLA RILEVANZA Posizionamento per Rilevanza Suggerimenti per una migliore visibilità su ebay www.egolden.it Vers. 1.1 Questa guida puo essere ridistribuita con l obbligo di non modificarne contenuto

Dettagli

Fondamenti e didattica di Matematica Finanziaria

Fondamenti e didattica di Matematica Finanziaria Fondamenti e didattica di Matematica Finanziaria Silvana Stefani Piazza dell Ateneo Nuovo 1-20126 MILANO U6-368 [email protected] 1 Unità 9 Contenuti della lezione Operazioni finanziarie, criterio

Dettagli

PROCESSI PRODUTTIVI E LOGISTICA I.T.S.T J.F. KENNEDY - PN

PROCESSI PRODUTTIVI E LOGISTICA I.T.S.T J.F. KENNEDY - PN PROCESSI PRODUTTIVI E LOGISTICA I.T.S.T J.F. KENNEDY - PN A.S. 2014/15 Innovazione e ciclo di vita di un prodotto La progettazione di un prodotto e di conseguenza il suo processo produttivo dipende dalla

Dettagli

Metodi e Modelli per l Ottimizzazione Combinatoria Il problema del flusso di costo minimo

Metodi e Modelli per l Ottimizzazione Combinatoria Il problema del flusso di costo minimo Metodi e Modelli per l Ottimizzazione Combinatoria Il problema del flusso di costo minimo L. De Giovanni G. Zambelli 1 Problema del flusso a costo minimo Il problema del flusso a costo minimo é definito

Dettagli

Capitolo 25: Lo scambio nel mercato delle assicurazioni

Capitolo 25: Lo scambio nel mercato delle assicurazioni Capitolo 25: Lo scambio nel mercato delle assicurazioni 25.1: Introduzione In questo capitolo la teoria economica discussa nei capitoli 23 e 24 viene applicata all analisi dello scambio del rischio nel

Dettagli

Cap.1 - L impresa come sistema

Cap.1 - L impresa come sistema Cap.1 - L impresa come sistema Indice: L impresa come sistema dinamico L impresa come sistema complesso e gerarchico La progettazione del sistema impresa Modelli organizzativi per la gestione Proprietà

Dettagli

Matrice Excel Calcolo rata con DURATA DEL FINANZIAMENTO determinata dall'utente

Matrice Excel Calcolo rata con DURATA DEL FINANZIAMENTO determinata dall'utente Matrice Excel Calcolo rata con DURATA DEL FINANZIAMENTO determinata dall'utente L'acquisto di un immobile comporta un impegno finanziario notevole e non sempre è possibile disporre della somma di denaro

Dettagli

La manutenzione come elemento di garanzia della sicurezza di macchine e impianti

La manutenzione come elemento di garanzia della sicurezza di macchine e impianti La manutenzione come elemento di garanzia della sicurezza di macchine e impianti Alessandro Mazzeranghi, Rossano Rossetti MECQ S.r.l. Quanto è importante la manutenzione negli ambienti di lavoro? E cosa

Dettagli

Il concetto di valore medio in generale

Il concetto di valore medio in generale Il concetto di valore medio in generale Nella statistica descrittiva si distinguono solitamente due tipi di medie: - le medie analitiche, che soddisfano ad una condizione di invarianza e si calcolano tenendo

Dettagli

SCELTA DELL APPROCCIO. A corredo delle linee guida per l autovalutazione e il miglioramento

SCELTA DELL APPROCCIO. A corredo delle linee guida per l autovalutazione e il miglioramento SCELTA DELL APPROCCIO A corredo delle linee guida per l autovalutazione e il miglioramento 1 SCELTA DELL APPROCCIO l approccio all autovalutazione diffusa può essere normale o semplificato, a seconda delle

Dettagli

1. Distribuzioni campionarie

1. Distribuzioni campionarie Università degli Studi di Basilicata Facoltà di Economia Corso di Laurea in Economia Aziendale - a.a. 2012/2013 lezioni di statistica del 3 e 6 giugno 2013 - di Massimo Cristallo - 1. Distribuzioni campionarie

Dettagli

PROCEDURA INVENTARIO DI MAGAZZINO di FINE ESERCIZIO (dalla versione 3.2.0)

PROCEDURA INVENTARIO DI MAGAZZINO di FINE ESERCIZIO (dalla versione 3.2.0) PROCEDURA INVENTARIO DI MAGAZZINO di FINE ESERCIZIO (dalla versione 3.2.0) (Da effettuare non prima del 01/01/2011) Le istruzioni si basano su un azienda che ha circa 1000 articoli, che utilizza l ultimo

Dettagli

Progetto di Reti di Telecomunicazione Modelli in Programmazione Lineare Problemi di Localizzazione

Progetto di Reti di Telecomunicazione Modelli in Programmazione Lineare Problemi di Localizzazione Progetto di Reti di Telecomunicazione Modelli in Programmazione Lineare Problemi di Localizzazione Posizionamento di antenne È dato un insieme A di possibili siti in cui installare antenne, a ciascuno

Dettagli

CASO D USO: MICRORACCOLTA. 21 aprile 2015 www.sistri.it

CASO D USO: MICRORACCOLTA. 21 aprile 2015 www.sistri.it CASO D USO: MICRORACCOLTA 21 aprile 2015 www.sistri.it DISCLAIMER Il presente documento intende fornire agli Utenti SISTRI informazioni di supporto per poter utilizzare agevolmente ed in maniera efficace

Dettagli