cerca
Ricerca Operativa - PL - Condotte - 09.06
modifica cronologia stampa login logout

Wiki

UniCrema


Materie per semestre

Materie per anno

Materie per laurea


Help

Ricerca Operativa - PL - Condotte - 09.06

Torna alla pagina di Ricerca Operativa


 :: Ricerca Operativa - PL - Condotte - 09.06 ::

Testo del problema

Si vuole dimensionare una rete di condotte per trasportare sostanze gassose da un insieme di origini ad un insieme di destinazioni. Ogni origine può essere collegata ad ogni destinazione ad un dato costo unitario di trasporto. Sono date le quantità prodotte ad ogni luogo di origine e le quantità che devono essere ricevute ad ogni luogo di destinazione. Per motivi tecnologici tutte le condotte devono avere la stessa capacità massima, anche se alcune di esse potrebbero risultare sotto-utilizzate.
Formulare il problema, classificarlo e risolverlo con i dati del file CONDOTTE.TXT. Discutere l’ottimalità della soluzione trovata.

Dati

I luoghi di origine sono 5 e i luoghi di destinazione sono 5.

Tabella 1: Costi di trasporto [Euro/quintale]

Riga = origine; colonna = destinazione.

 15  18  23  31  16  
 27  19  14  28  31  
 20  15  12  25  15  
 17  18  24  23  25  
 26  17  17  17  28  

Tabella 2: Offerta [Quintali/giorno]

Origine Quantità
   1      340
   2      290
   3      310
   4      325
   5      360

Tabella 3: Domanda [Quintali/giorno]

Destinaz. Quantità
   1        410
   2        200
   3        400
   4        315
   5        300

Formulazione del problema

Dati

  • o = 5 (numero luoghi di origine)
  • d = 5 (numero luoghi di destinazione)
  • costoij (costo di trasporto dall'origine i=1..5 alla destinazione j=1..5) [€/quintale]
  • prodi (quantità prodotta nell'origine i=1..5) [quintali/giorno]
  • ricej (quantità che devono essere ricevute nella destinazione j=1..5) [quintali/giorno]

Variabili

  • xij (quantità di sostanza trasportata dall'origine i=1..5 alla destinazione j=1..5) [quintali/giorno]

La variabile è continua e non negativa.

Funzione obiettivo

  • Si deve minimizzare il costo complessivo
    min (somma)j costoij * xij (per ogni i = 1..5)

Vincoli

  • vincoli sulle quantità prodotte all'origine
    (somma)j xij = prodi (per ogni i = 1..5)
  • vincoli sulle quantità ricevute a destinazione
    (somma)i xij = ricej (per ogni j = 1..5)

Lindizzazione del problema

! esercizio - Condotte

! variabili: x(i,j) = quantità di sostanza trasportata dall'origine i 
!				alla destinazione j [quintali/giorno]
! la variabile è continua e non negativa

! funzione obiettivo
min 15 x11 + 18 x12 + 23 x13 + 31 x14 + 16 x15
	+ 27 x21 + 19 x22 + 14 x23 + 28 x24 + 31 x25
      + 20 x31 + 15 x32 + 12 x33 + 25 x34 + 15 x35
	+ 17 x41 + 18 x42 + 24 x43 + 23 x44 + 25 x45
	+ 26 x51 + 17 x52 + 17 x53 + 17 x54 + 28 x55 

st

! vincoli sulle quantità prodotte all'origine
origin1) x11 + x12 + x13 + x14 + x15 = 340
origin2) x21 + x22 + x23 + x24 + x25 = 290
origin3) x31 + x32 + x33 + x34 + x35 = 310
origin4) x41 + x42 + x43 + x44 + x45 = 325
origin5) x51 + x52 + x53 + x54 + x55 = 360

! vincoli sulle quantità ricevute a destinazione
destin1) x11 + x21 + x31 + x41 + x51 = 410
destin2) x12 + x22 + x32 + x42 + x52 = 200
destin3) x13 + x23 + x33 + x43 + x53 = 400
destin4) x14 + x24 + x34 + x44 + x54 = 315
destin5) x15 + x25 + x35 + x45 + x55 = 300

end

Altre domande

Studiare la dipendenza dei costi di trasporto dalla capacità:
(1) qual è il minimo valore di capacità per cui il problema ammette soluzione?
(2) qual è il massimo valore di capacità che ha senso installare?
(3) se ogni unità di capacità delle condotte costa 50 Euro/giorno, qual è la capacità ottima e qual è il costo corrispondente?

Come prima cosa bisogna inserire nel modello il vincolo che tutte le variabili devono essere limitate superiormente da un valore di capacità. Quindi dovremo aggiungere la seguente nuova serie di vincoli al nostro programma in Lindo:

lim11) x11 - cap <= 0
lim12) x12 - cap <= 0
lim13) x13 - cap <= 0
lim14) x14 - cap <= 0
lim15) x15 - cap <= 0
lim21) x21 - cap <= 0
lim22) x22 - cap <= 0
lim23) x23 - cap <= 0
lim24) x24 - cap <= 0
lim25) x25 - cap <= 0
lim31) x31 - cap <= 0
lim32) x32 - cap <= 0
lim33) x33 - cap <= 0
lim34) x34 - cap <= 0
lim35) x35 - cap <= 0
lim41) x41 - cap <= 0
lim42) x42 - cap <= 0
lim43) x43 - cap <= 0
lim44) x44 - cap <= 0
lim45) x45 - cap <= 0
lim51) x51 - cap <= 0
lim52) x52 - cap <= 0
lim53) x53 - cap <= 0
lim54) x54 - cap <= 0
lim55) x55 - cap <= 0

capac) cap = 1000

Ora possiamo rispondere alle domande:

(1)
facciamo l'analisi parametrica del problema, fissando il valore del vincolo capac a 0 e osservando cosa succede:

RIGHTHANDSIDE PARAMETRICS REPORT FOR ROW: CAPAC

    VAR       VAR    PIVOT    RHS       DUAL PRICE      OBJ
    OUT       IN      ROW     VAL      BEFORE PIVOT     VAL

                            1000.00      0.000000E+00   25380.0
 SLK   27       X42    27   325.000      0.000000E+00   25380.0
 SLK   35       X44    35   315.000      0.000000E+00   25380.0
 SLK   19       X22    19   290.000       5.00000       25505.0
      X32       X53    10   230.000       7.00000       25925.0
 SLK   12       X21    12   205.000       13.0000       26250.0
 SLK   24       X31    24   175.000       25.0000       27000.0
 SLK   16       X12    16   170.000       25.0000       27125.0
 SLK   30       X24    30   157.500       35.0000       27562.5
 SLK   26       X45    26   150.000       43.0000       27885.0
 SLK   34       X13    34   133.333       51.0000       28735.0
      X22       X51    19   125.000       66.0000       29285.0
 SLK   33       X22    33   117.500       67.0000       29787.5
 SLK   20       X14    20   105.000       69.0000       30650.0
 SLK   22       X34    22   103.333       81.0000       30785.0
 SLK   14       X43    14   100.000       81.0000       31055.0
 SLK   31       X55    31   100.000       85.0000       31055.0
 SLK   17  SLK   33    17   87.5000       94.0000       32230.0
 SLK   13       X32    13   83.7500       98.0000       32597.5
 SLK   32  ART         32   82.0000       110.000       32790.0
                           0.000000E+00   +INFINITY   INFEASIBLE

Il minimo valore di capacità per cui il problema ammette soluzione è 82.

(2)
Osservando l'analisi parametrica verrebbe da dire che il massimo valore di capacità che ha senso installare è 325. In realtà la risposta corretta è 315 perché rispetto al precedente non ci sono differenze di costi (entrambe fisse a 25380), quindi ha più senso impostare lui come limite massimo.

(3)
Dobbiamo cercare nella colonna dei prezzi duali tra quali righe si trova il valore 50, e scopriamo che si trova in corrispondenza del valore 150 dei termini noti (colonna RHS VAL): il suo coefficiente angolare corrispondente varia infatti tra 51 e 43. Qui la funzione obiettivo vale 27885, che sono i costi di trasporto, mentre i costi per la capacità andranno calcolati come 50 x 150 = 7500 euro al giorno.


Torna alla pagina di Ricerca Operativa