R ENDICONTI
del
S EMINARIO M ATEMATICO
della
U NIVERSITÀ DI P ADOVA
E DMONDO M ORGANTINI Su alcuni problemi di ordinamento
Rendiconti del Seminario Matematico della Università di Padova, tome 37 (1967), p. 146-213
<http://www.numdam.org/item?id=RSMUP_1967__37__146_0>
© Rendiconti del Seminario Matematico della Università di Padova, 1967, tous droits réservés.
L’accès aux archives de la revue « Rendiconti del Seminario Matematico della Università di Padova » (http://rendiconti.math.unipd.it/) implique l’accord avec les conditions générales d’utilisation (http://www.numdam.org/conditions).
Toute utilisation commerciale ou impression systématique est constitutive d’une infraction pénale. Toute copie ou impression de ce fichier doit conte- nir la présente mention de copyright.
Article numérisé dans le cadre du programme Numérisation de documents anciens mathématiques
http://www.numdam.org/
di EDMONDO MORGANTINI
(a Padova) *)
Premessa.
Nelle
pagine seguenti
si discutonogli aspetti
matematici di alcunequestioni
di ordinamento inerenti alla ricercaoperativa.
Si
immagini
un gruppo di n « utenti » ai(j
=1, 2,
... ,n)
che atten-dano di essere « serviti » da un insieme finito ed ordinato di m «
sportelli »
a~
(i
=1, 2,
... ,m)
di un certo « ufficio ».Supponiamo
cheogni
utente si debbapresentare
successivamenteal 1~, 2°,...,
mosportello.
Inoltresiano noti i
tempi parziali
aij diservizio,
ossia l’intervallo ditempo
a=~occorrente allo
sportello
ai per servire l’utente a~. In aij sipuò
pensareconglobato
anche l’intervallo ditempo
occorrente ad ai per trasferirsi dallosportello
aquello
at ed allosportello
ai per passare dalla «pratica
» dell’utente al-’ aquella
di ai.È
lo stesso supporre che tali intervalli ditempo
sianotrascurabili,
o costanti. Si supponga inoltre chegli n
utentisi debbano
presentare
nello stesso ordine di fronte a ciascunodegli
msportelli.
Non siano cioè ammessi « scavalcamenti ».Si
presenta
allora ilproblema
di determinarequest’ordine,
ossia di di- sporre il gruppodegli n
utenti in una fila ordinataal, a2,
... , @an,
e ciò allo scopo di rendere minimo ittempo
totale diservizio,
ossia l’intervallo ditempo v
intercorrente tra l’istante in cui il 1° utente al sipresenta
difronte al 1°
sportello
e l’istante in cui l’ultimo utente anabbandona,
essendone stato
servito,
l’ultimosportello
am .*)
Lavoroeseguito
nell’ambito deiGruppi
di ricerca del Comitato Nazionale per la matematica del C.N.R.Indirizzo dell’A.: Seminario matematico dell’Università, Padova.
La
parte
III(nn. 12-20)
delpresente
lavoro è dedicata aquesto
pro- blema di ordinamento ottimale. La sua risoluzione presuppone che sisappia
calcolarespeditamente
iltempo
totale di servizio v, fissati che siano l’ordinedegli utenti, quello degli sportelli
e la matrice A =(a,,)
deitempi parziali
di servizio.A tale
problema preliminare
e ad altriequivalenti
è dedicata laparte
I(nn. 1-7)
dellaMemoria,
che ne fornisce unaimpostazione
ed una risolu-zione matematica
originali, vagamente ispirate
al P.E.R.T.1).
Nel n. 8 della
parte
II(dedicata
allainterpretazione operativa
dellaparte I)
si dimostra infatti che v coincide col « valore » massimo delle« traiettorie » da
(1,1)
ad(m, n)
nella «grafo-matrice »
ji =(a,,). Queste
nozioni vengono
poste
nei nn.1,2
dellaparte
I.Sempre
nellaparte
Isi descrivono
più procedimenti (uno
« in avanti », l’altro « all’indietro », altri « misti»)
adatti alla determinazione delle traiettorie di valore mas-simo della A ed al calcolo del loro valore
(nn. 3, 4, 5).
Il
problema analogo
per le traiettorie di valore minimo èequivalente
a
quello
relativo alle traiettorie di valore massimo(nn. 2, 7).
Per entrambiquesti problemi
è indifferente scambiare lerighe
con le colonne(ossia
l’ufficio
degli
utenti conquello degli sportelli),
oppure invertire contem-poraneamente
il loro ordinamento(nn. 2, 8).
Solo se la A è «pseudo-
circolante », tutte le sue traiettorie hanno lo stesso valore
(n. 6).
***
Nella ricerca
operativa
hanno interesse anche itempi parziali
o totalidi
«riposo » degli sportelli
equelli
di « attesa »degli
utenti. Infattipuò
accadere che lo
sportello
ai abbiagià
servito l’utente ak-1 e debba « ri-posare » per un intervallo di
tempo dzk,
in attesa che 1’utente ak sia stato servito da a¡-~.Oppure
che l’utenteak, già
servito dallosportello
a¡-~, debba « attendere » per un intervallo ditempo e=k prima
che losportello
ai termini il servizio di ak-1.
Nella
parte
II si fa anche vedere come le matriciB,
C deiprocedimenti
in avanti e
rispettivamente
all’indietro sopra ricordati consentano fa- cilmente(nn. 9, 10)
la costruzione delle matriciD, E; D’,
E’ deitempi parziali
di «pre-riposo >>
e «pre-attesa
», «post-riposo >>
e «post-attesa »
1) Cfr. ad es. i lavori citati ai nn. [7], [8], [9], [10], [12] della
Bibliografia
posta alla fine della Memoria.ed il calcolo dei
tempi
totali iriposo (per
alcuni o per tuttigli sportelli)
o di attesa
(per
alcuni o per tuttigli utenti).
Solo se la A èpseudo-circo- lante,
sono nulli tutti itempi
dipre-riposo
e dipre-attesa
successivi alprimo.
I valori diquesti
intervalli ditempo dipendono
essenzialmente dall’ordine crescente o decrescente dei valoridegli
elementi sullediagonali
secondarie della
B,
equindi
della A.La
parte
II della Memoria termina con la formulazione di alcuniproblemi
di ordinamento ottimale delle colonne dellag-matrice A,
deri-vanti dalla sua
interpretazione operativa (n. 11 ).
***
La considerazione delle traiettorie della
g-matrice
A e lainterpreta-
zione
operativa
del loro valor massimo v consentono di determinare delle limitazioni inferiori per i diversi valori di vcorrispondenti
ai diversi pos- sibili ordinamenti(degli utenti, cioè)
delle colonne della A. Ne consegue(n. 12)
un criterio sufficiente per riconoscere se un dato ordinamento sia«
ottimale »,
cioè di minimo valor massimo.Per m =
2,
ossiaquando
vi sono due solisportelli,
Johnson[1]
eBellman
[2] 2)
hanno fornito egiustificato
una comodaregola
per l’ordi- namento ottimale(degli n utenti, cioè)
delle n colonne della A(n. 13).
La considerazione
geometrica
delle traiettorie forniscegià
unagiustifi-
cazione intuitiva della
regola
di Johnson. Non si conosce unaregola
ge- neraleanaloga
per m > 2(ed n
>2). Comunque,
se si considerano « adia- centi >>(in
senso « stretto » o « lato»)
duepermutazioni
differenti per unsolo scambio
(tra
colonne adiacenti orispettivamente
anche nonadiacenti),
nell’insieme
Il
delle n !permutazioni
delle colonne ed in relazione alla struttura derivante da tale nozione diadiacenza,
si possono considerare(n. 14)
ipunti
di minimo « relativo » per v(in
senso stretto olato).
Si verifica facilmente che l’ordinamento di Johnson è di minimo re- lativo in senso lato
(nn. 15, 16).
La considerazione(n. 17)
della eventuale ottimalitàdegli
ordinamenti delle colonne delle sub-matrici di unag-matrice ottimale,
renderagione
della eccezionalità del caso m = 2(due
soli spor-telli)
e della minimalità assoluta dell’ordinamento di Johnson. Laregola
di Johnson si
può
infatti pensare ottenuta(per
m =2)
da un criterioottimale di ordinamento per
g-matrici
con due sole colonne(n. 18),
tenuto2) I numeri tra
parentesi quadra
rinviano allabibliografia
posta alla fine del lavoro.conto della transitività di
questo
criterio per m = 2 e della circostanza che ingenerale
solo per m = 2 l’ottimalità dell’ordinarnento delle colonne della A sipuò
ricondurre all’ottimalità dell’ordinamento delle colonne dellesue sub-matrici.
La stessa considerazione
geometrica
delle traiettorie di valore massimo della A fa vedere(n. 19)
come alcuni scambi fra colonne non possano diminuire v.Sicchè,
per m > 2 ed assunto adesempio
come ordinamento iniziale delle colonnequello
A derivante dal criterio(del
n.18)
di ordina-mento ottimale delle submatrici con due sole
colonne,
sipuò
istituire(n. 20)
unprocedimento
atto a riconoscere abbastanzaspeditamente
se Aè di minimo relativo per v. Se non lo
è,
lo stessoprocedimento
diviene ri- corrente e conduce facilmente ad un ordinamento di minimo relativo in senso stretto.***
Nell’Appendice (nn. 21-28)
si fa vedere come lequestioni
di ordina- mento non sianopiù
essenziali nel caso in cui lag-matrice A
si identifichicon la tabella dei
tempi parziali
di « lavorazione » di un ciclo di n « articoli » daparte
di una catena di m «macchine »,
in un processoproduttivo
continuo.
Si dimostra infatti come, data la
A, indipendentemente
dall’ordina- mento delle suecolonne,
si possa sempreregolare
l’andamento dellaproduzione
di unsiffatto, impianto
industriale in modo da render massima la « velocità diproduzione »
e minimi itempi
di « inattività » delle mac-chine. Ciò ad
esempio
si ottiene col metodo dell’ « articolo fittizio »(n. 24),
oppure
ripartendo
itempi
totali minimi di inattività delle macchine e di attesadegli
articoli(nn. 27, 28).
Dell’ordinamento
degli
articoli(e
dellaripartizione
deitempi suddetti)
si
può profittare
solo per diminuire itempi
di attesadegli
articoli stessi(n. 26).
Come velocità di
produzione
o di lavorazione siinterpretano
i reci-proci
dei massimi t orispettivamente u
delle somme videgli
elementidelle
righe
orispettivamente
diquelle uj
delle colonne della A. L’inva- rianza diqueste
somme per unapermutazione
delle(righe o)
colonne della A consente di definire itempi
totaliminimi di
= t - Vi di inattività delle macchine ed itempi
totaliminimi Ci
_ ~c - u~ di attesadegli
articoli.La catena di
produzione
si dicepoi
«equilibrata
», se = ossiase coincidono le velocità « totali » di
produzione
e di lavorazione(n. 28).
* * *
I titoli dei vari
paragrafi, riportati
nelseguente sommario,
possono chiarire ulteriormente al Lettore l’ordine in cui i diversiargomenti
ven-gono trattati.
SUMMARIU YARTE I
Sulle traiettorie di valor massimo o minimo di una
grafo-matrice
reale1. Traiettorie di una
grafo-matrice
reale.2. Traiettorie di valore massimo o minimo.
Operazioni
che non le alterano,oppure le scambiano.
Trasposizione.
3. Procedimento in avanti, per la costruzione delle traiettorie di valore massimo.
4. Procedimento all’indietro.
Esempi.
6. G-matrici
pseudo-circolanti.
7. Traiettorie di valore minimo e loro costruzione.
1) PARTE Il
Interpretazione
operativa eproblemi
di ordin,czmento ottimale 8.Interpretazione
delle questioniprecedenti
nella ricercaoperativa.
9. Il
procedimento
in avanti e le matrici deitempi parziali
dipre-riposo degli
sportelli e di pre-attesadegli
utenti.10. Il
procedimento
all’indietro e le matrici deitempi
dipost-attesa
e di post-riposo.
11. Problemi di ordinamento ottimale, in relazione al valore delle traiettorie.
Esempi
econtroesempî.
PARTE III
Sugli
ordinamenti delle colonnecorrispondenti
ad un minimo del valore massimo delle traiettorie
12. Limitazioni per i valori ottimali e
conseguenti
criteri di ottimalità per l’ordi- namento delle colonne.Esempi.
13.
Regola
diBellman-Johnson,
per m = 2.14. Scambi tra due colonne;
g-matrici
adiacenti; minimi relativi del valor mas- simo delle traiettorie.Esempi.
15. Scambi tra colonne, diminuenti il valor massimo delle traiettorie, per m = 2.
16. Minimalità relativa, in senso lato, dell’ordinamento di Johnson-Bellman.
17.
Sub-g-matrici
ottimali di unag-matrice
ottimale.18. Un criterio di ordinamento ottimale per matrici di due colonne.
19. Scambi tra colonne che certamente non diminuiscono il valor massimo delle traiettorie, per m > 2.
20. Procedimento per ottenere un ordinamento relativamente minimale delle colonne.
APPENDICE
Sui
Problemi
di ordinamentonell’organizza,zione
di unimpianto
industriale 21. Lag-matrice A
deitempi parziali
di lavorazione.22. Problemi di ordinamento ottimale
nell’organizzazione dell’impianto,
per laproduzione
di un solo ciclo di articoli.23. Il tempo di uscita di un ciclo, nel caso di un numero illimitato di cicli succes-
sivi ed
uguali.
24.
Analogia
idraulica e minimizzazione deltempo
di uscita,regolando
l’anda-mento della
produzione
con l’artificio dell’articolo fittizio.Esempio.
25. Alcuni
accorgimenti
adatti eproblemi
da risolvere permigliorare
il rendimentodell’impianto.
26. L’ordinamento
degli
articolipuò
diminuire solo i lorotempi
di attesa.27.
Regolazione
dellaproduzione,
conripartizione
deitempi
totali minimi di inattività delle macchine e di attesadegli
articoli.28. Condizioni di
equilibrio
occorrenti per laripartizione
suddetta.Esempio.
BIBLIOGRAFIA.
PARTE I
SULLE TRAIETTORIE DI VALOR MASSIMO O MINIMO DI UNA GRAFO-MATRICE REALE
1. Traiettorie di una
grafo-matrice
reale.È
data una matrice deltipo
m X n, ad elementi reali nonnegativi:
Le sue
righe
e le sue colonne possonopensarsi orientate,
assumendocome
positivo
il verso in cui ci si muove(da
sinistra adestra) lungo
unariga
al crescere del secondoindice,
orispettivamente lungo
una colonna(dall’alto
albasso)
al crescere delprimo
indice. La matrice(1.1)
assume cosl’aspetto
di un «grafo »,
che diremografo-matrice (brevemente
g-ma-trice),
nei cui m - n vertici(i, k)
sonodepositati
i valoridegli
elementidella matrice data.
Laii del
grafo
sonogli (m - 1) . (n
-1) segmenti
orientati diriga
o di colonna che
congiungono ogni
vertice(i, k)
col successivo(i,
k +1)
o
rispettivamente (i
+1, k).
Partendo dal vertice iniziale
(1,1 )
e muovendosilungo
ilati,
ossialungo
le
righe
da sinistra a destra elungo
le colonne dall’alto albasso,
sipuò pervenire
al verticefinale (m, n) percorrendo
diverse
traiettorie,
ciascuna di esse contenendo lo stesso numero m+
n - 1 divertici,
e(quindi anche)
lo stesso numero m + n - 2 di lati.La simmetria della
(1.2) rispetto
ai due indici m, n traduce la circo- stanza che : uno scambio dellerighe
con le colonne induce unacorrispondenza
biunivoca
fra le
traiettorie dellag-matrice
data equelle
della suatrasposta.
Che tutte le traiettorie posseggano lo stesso numero di vertici è evi-
dente, giacchè
ognuna di esse sipuò
adesempio
pensare dedotta dalla traiettoria r che segue laprima riga
e l’ultima colonna(e possiede perciò
n +
vertici)
con una successione finita di trasformazioni elementari(ripiegamenti) analoghe
aquella
che sostituisce alla la traiettoria 7:’contenente,
invece del vertice(1, n ), quello ( 2, n - 1 ), (vedi fig. 1.1).
Fig. 1.1 Fig. 1.2
Per dimostrare la
(1.2)
sipuò procedere
per induzione. Intanto è facile verificare direttamente che perqualsiasi
valore del numero naturale p si ha:come
appunto
vuole la(1.2).
Inoltre si verifica immediatamente sullo schema dellafig. 1.2,
che si ha:Sicchè,
avendo constatato che la(1.2)
sussiste per i valori1,2
di unodei due
indici,
ed ammesso che la stessa(1.2)
sussista per valori delprimo
indice inferiori ad m o per valori del secondo indice inferiori ad n, si
ha,
c. v. d.: .
2. Traiettorie di valore massimo o minimo.
Operazioni
che non lealterano,
oppure le scambiano.
Trasposizione.
Chiameremo valore di una traiettoria
(a11,
... ,amn)
la somma all + + ... + amn dei valoridepositati
nei suoi m + n - 1 vertici.Vogliamo
oraoccuparci
delseguente
PROBLEMA I: Tra tutte le
Ingn
traiettoriepossibili,
determinarequella (o quelle)
di valore massimo.Conviene
premettere
leseguenti
osservazioni:OSSERVAZIONE I:
È
evidente che l’addizionealgebrica
di una costantereale k a tutti i valori dei vertici di una
g-matrice
A non altera le sue traiet-torie di valore massimo. Invece viene aumentato di
(n
+ m -1 )k
illoro valore.
Ciò
permette
di supporre(come
abbiamogià fatto)
che tutti i vertici dellag-matrice A
abbiano valore aik nonnegativo,
oppure, se sivuole,
diestendere le nozioni
precedenti
alleg-matrici
i cui vertici abbiano anche valorinegativi.
OSSERVAZIONE II: ~Sommando due
g-matrici
simili con le stesse traiet- torie di valore massimo si ottiene unag-matrice
con le stesse traiettorie di valoremassimo,
ed il loro valore è la somma dei valori massimi delle traiettorieprecedenti.
OSSERVAZIONE III: La
moltiplicazione (nel
sensomatriciale)
di unag-matrice
A per Una costante PoszTwA k non ne altera le traiettorie di valore massimo. Ciòpermette
adesempio
di supporre, se i valori dei ver-tici di A sono
razionali,
che essi siano addirittura interi nonnegativi;
oppure che il valore massimo delle traiettorie di A sia
uguale
ad una quan-tità
fissata,
adesempio uguale
ad 1.OSSERVAZIONE IV: Abbiamo
già
osservato che uno scambio dellerighe
con te colonne induce una
corrispondenza
biunivoca fra le traiettorie dellag-matrice
data e della suatrasposta,
le traiettoriecorrispondenti
avendoovviamente lo stesso valore.
Perciò, agli
effetti del ProblemaI,
tale scambioè inessenziale e
permette
adesempio
di supporre che il numero m dellerighe
di A sia sempre nonmaggiore
del numero n delle sue colonne.OSSERVAZIONE V:
Un’analoga corrispondenza
biunivoca fra le traiet-torie,
che ne conserva ilvalore,
si ha cambiandocontemporaneamente
l’orientazione delle
righe
e delle colonne e scambiando inogni
traiettorial’origine
con l’estremo. In altreparole:
È inessenziale, agli
effetti del ProblemaI,
considerare alposto
dellag-matrice
dataquella
che se ne ottiene invertendocontemporaneamente
l’ordine delle
righe
equello
delle colonne.OSSERVAZIONE VI : Invece di
quelle
di valoremassimo,
ci sipuò
porreil
seguente
PROBLEMA II: Determinccre le traiettorie di valore MINIMO di una data
g-matrice A,
ed il loro valore 13.A
proposito
diquesto problema
si possono fare leseguenti
conside-razioni :
OSSERVAZIONE VII: Sia A’ i la
g-matrice
che si ottienemoltiplicando
tutti
gli
elementi dellag-matrice
data A per un numero reale h C 0 edaggiungendo poi
ad ognuno di essi una costante > 0 abbastanzagrande perchè
nessunodegli
elementi di A’ risultinegativo.
Allora:La A’ ha come traiettorie di valore MINIMO
quelle
stesse che erano di valore MASSIMO v per laA,
e come traiettorie di valore MASSIMOquette
stesse che erano di vatoreper la
A.In base a
questa
osservazione:Ogni problema
relativo alle traiettorie di valore massimo della A(e
delleg-matrici
che si possono ottenere dalla Apermutandone
lerighe
e lecolonne) si
traduce in(è
«equivalente » ad)
unprobtema analogo
per le traiet- torie di valore minimo della A’(e
delleg-matrici
che si possono ottenere dalla A’ con le stessepermutazioni
dellerighe
o colonneoperate
sullaA ) ;
e vieeversa.
3. Procedimento in
avanti,
per la costruzione delle traiettorie di valore massimo.Vi sono due
procedimenti analoghi,
uno inavanti,
l’altroall’indietro,
sostanzialmente
equivalenti
in base all’OsservazioneV,
chepermettono
di risolvere
rapidamente
il Problema I(e quindi,
in base all’OsservazioneVII,
anche il ProblemaII)
costruendo unag-matrice
B(o rispettivamente
C)
simile alla data A.Nel
proeedimento in
avantigli
elementibik
della nuova matrice B sonoi valori massimi delle traiettorie
possibili che, partendo
dal vertice iniziale(1,1),
terminano col vertice(i, k).
Sicchè
intanto,
per laprima riga
e laprima
colonna:Infatti le traiettorie
parziali
diorigine (1,1)
ed estremo sulla 1ariga
o sulla 1a colonna sono
uniche,
equindi
anche di valore massimo. Lefrecce,
nello schema dellafig. 3.1,
indicano i loro lati(segmenti orientati).
Fig. 3.1 Fig. 3.2
Invece per
raggiungere
il vertice(i, k) (i, k
>1)
si possonoseguire più
traiettorie(almeno due)
equeste
possono dividersi in duetipi (v.
fig. 3.2),
secondo che il verticeprecedente (i, k)
sia(i
-1, k)
oppure(i, k - 1).
Il valore massimo diquelle
del 1°tipo
è + aik, mentre il valore massimo diquelle
del 20tipo
è+
·Dunque,
fra tuttele traiettorie terminanti in
(i, k), quelle
di valor massimo hanno comevertice
precedente (i, k ) quello
dei due(i
-1, k), (i, k - 1)
avente in B il valoremaggiore
orispettivamente
Sullo schema della B sarà da segnare con una freccia solo l’ultimo lato diqueste
traiettorie di valore massimo(entrambi,
se =Cos
procedendo
si vengono a costruire successivamente la2a,
3a ...riga (o colonna)
della matrice B econtemporaneamente
sullo schema dellag-matrice
B restano indicati da frecce anche i lati delle traiettorie di valore massimo che dal vertice iniziale(1,1)
conducono ai diversi vertici(i, k)
della
g-matrice
data A.Alla fine
bm,n
fornisce il valore massimo delle traiettoriepossibili
da
(1,1 )
ad(m, n),
equeste
traiettorie di valore massimo restanodisegnate
sulla B. Per ottenerne una basta
partire
dall’ultimaposizione (m, n)
eprocedere
a ritroso(dal
basso in alto o da destra asinistra) lungo
i latisegnati
con frecce.4. Procedimento all’indietro.
Esempi.
Nel
procedimento
all’ indietro siparte
dall’ultimo vertice(m, n).
L’ele-mento ci, della matrice C è il massimo aumento di valore
possibile
per una traiettoriache,
attraverso il vertice(i, k)
conduca al vertice finale(m, n).
Sicchè intanto restano determinati
gli
elementi dell’ultimariga
edell’ultima colonna della matrice C e si
potranno
segnare sul suo schema i lati delle traiettorieparziali
di valore massimo dellag-matrice
A uscentida
quegli
elementi e terminanti in(m, n).
Infatti tali
traiettorie,
perquesti
elementi dell’ultimariga
e dell’ultimacolonna,
sonouniche,
equindi
anche di valore massimo.Lo stesso
ragionamento seguito
nelprocedimento
in avanti(mutatis mutandis,
secondo l’OsservazioneV)
provache,
determinati che siano(i m, k n),
sarà da porre:e sarà da segnare con una freccia solo il lato
congiungente
il vertice(i, k)
con
quello
dei due consecutivi cuicompete
il massimo dei due valori Ci+1,k(od entrambi,
sequesti
due valori sonouguali).
Cos
procedendo
si vengono a costruire successivamente(a partire
dalle
ultime)
le varierighe (o colonne)
della matrice C econtemporanea-
mente restano indicati da
frecce,
sullag-matrice C,
i lati delle traiettorie di valore massimo che dai diversi vertici della A conducono al vertice finale(m, n).
Alla fine C11 fornisce il valore massimo delle traiettorie
possibili
da(1,1)
ad(m, n)
econtemporaneamente queste
traiettorie restano indicate sulla C dallefrecce,
che bastaseguire partendo
dal vertice(1,1).
E SEMPI O :
5. Metodi misti.
Esempi.
Per determinare le traiettorie di valore massimo si
può
ancheseguire
un metodo
misto,
sfruttando inparte
ilprocedimento
in avanti ed inparte quello
all’indietro.Si
può
adesempio
dividere lag-matrice
A in dueparti A’, A",
con untaglio
verticale chesepari
laj-esima
dalla(j
+1)-esima
colonna. Per laparte
sinistra A’ si costruisca lag-matrice
B’ delprocedimento
in avantie per la
parte
destra A" si costruisca lag-matrice
C" delprocedimento
al-l’indietro. Gli elementi
bi;
dellaj-esima
colonna della B’(che
coincidonocon
quelli
diugual posto
dellaB)
forniscono i valori(massimi)
delle traiet- toriepartenti
dal vertice(1,1)
e terminanti al vertice(i, j)
dellag-matrice
A. Gli elementi della C"
(che
coincidono congli
elementi diugual posto
dellaC)
forniscono i valori(massimi)
delle traiettorieche, partendo
dalvertice
(i, j
+1),
terminano al vertice(m, n)
dellag-matrice
A.Sul
taglio,
incorrispondenza
della i-esimariga,
si ponga la somma -si =bi,1
-~--Questo
numero fornisce il massimo valore delle traiet- torie della Apartenti
da(1,1),
terminanti in(m, n)
e contenenti il lato orizzontale diorigine (i, j)
e termine(i, j
+1).
Poichè
ogni
traiettoria deve attraversare iltaglio
e contenere un(solo)
lato
siffatto,
il massimo diquesti numeri si
fornisce il valore massimo delle traiettorie della A(partenti
da(1,1)
e terminanti in(m, n) )
equeste
traiettorie di valore massimo restano
disegnate
durante ilprocedimento,
la loro
prima parte
sullag-matrice
B’ e la loro secondaparte
sulla g-ma- trice C".ESEMPIO :
OSSERVAZIONE I:
Quanto già
detto sullo scambio dellerighe
con lecolonne, applicato
al capoversoprecedente,
fornisce la descrizione di unanalogo
metodo misto per la determinazione delle traiettorie di valore massimo della A(e
del lorovalore),
ottenibile dividendo in dueparti (superiore A1
ed inferioreA2)
la matrice dataA,
con untaglio
orizzontale.ESEMPIO :
OSSERVAZIONE II: Più in
generale,
sipuò
dividere lag-matrice
A indue
parti
connesse, laprima
A’ contenente(1,1)
situata sopra ed a sinistra della seconda A" contenente(m, n), tagliandola lungo
unaspezzata
chene
separi
successivamente duerighe
o due colonne adiacenti(e tagli
una sola volta ognuna delle
possibili
traiettorie da(1,1)
ad(m, n)).
Per laparte
A’ siseguirà
ilprocedimento
in avanti e per laparte
A"quello all’indietro, segnando
sultaglio s
le somme dei valori dei vertici adiacenti della B e della C.ESEMPIO :
6. G-matrici
pseudo-circolanti.
Ci si
può
chiedere se e comepuò
accadere che tutte le traiettorie abbiano lo stesso valore. Tanto ilprocedimento
in avanti chequello
all’indietro fanno vedere che condizione necessaria e sufficienteperchè
ciò accada è che si abbia:(6.1)
a=+i,x =Infatti si riconosce
(induttivamente)
che solo allora:cosicchè sono da segnare sulla
g-matrice B
tanto la freccia(i + 1, k) -
-
(i
+1, k
+1), quanto quella (i, k
+1) 20132013 ( + 1 +1),
e sullag-matrice
C tanto la freccia(i
-1, k - 1)
--~(i
-l, k), quanto quella
(i - 1, k - 1)
-~(i, k - 1).
Le
(6.1), (6.2)
stanno ad indicare che la matrice .~ e(quindi anche)
le matrici B e
C,
sonopseudo- circolanti,
ossia hannouguali gli
elementiappartenenti
allediagonali
secondarie dei loro minori.ESEMPIO :
OSSERVAZIONE I:
Supposto
che la matrice A siapseudo-circolante,
ossia che
è chiaro che il valore comune v di tutte le traiettorie è dato da :
OSSERVAZIONE II:
È
evidente che Z’addizionealgebrica (nel
senso dellateoria delle
matrici) di
unag-matrice
simile epseudocircolante
A’ allag-matrice
dataA,
non ne altera le traiettorie di valoremassimo,
nel sensoche la matrice A + A’ ha le stesse traiettorie di valore massimo della data A. Il valore di
queste
traiettorie èuguale
aquello
delle stesse traiet- torie dellaA,
aumentato del valore comune a tutte le traiettorie della A’.In
particolare,
se A’ 1 hauguali
a k i valori di tutti i suoivertici,
siricade nel caso
già contemplato
al no2,
Osservazione I.Per
quanto riguarda
i ProblemiI, II,
lapresente
osservazionepermette
di supporre
uguale
a zero ilpiù piccolo
dei valori dei vertici della A situatisu una stessa
diagonale
secondaria.OSSERVAZIONE III:
L’operazione
dipassaggio
dallag-matrice
A aquella
B(alla C)
non conserva tutte le traiettorie di valoremassimo,
comerisulta dal
seguente esempio:
dove le matrici P e P, sono
pseudo-circolanti opportune
e le traiettorie di valore massimo massimo sono indicate dalle frecce.7. Traiettorie di valore minimo e loro costruzione.
A
proposito
del Problema II: determinare le traiettorie di valore mnimodi una data
g-matrice A,
ed il loro valorev,
chesappiamo
essereequivalente
al Problema I
(n. 2,
Oss.VI),
considerazionianaloghe
alleprecedenti (nn. 3-6)
si possono fare per la sua risoZuzione diretta.Anche ora tale risoluzione si
potrà conseguire
con unprocedimento in avanti,
costruendo unag-matrice B,
simile alladata,
ed i cui elementibij
siano i valori minimi delle traiettorie diorigine (1, 1)
e terminantiin
(i, j).
Oppure
colprocedimento atZ’indietro,
costruendo la matrice C i cui ele- mentiOH
sono i valori minimi delle traiettorie uscenti da(i, j)
e terminantiin
(m, n).
Oppure
con unprocedimento misto, parte
in avanti eparte all’indietro,
avendo
dapprima
diviso la A in dueparti
A’ i ed A" con untaglio lungo
una
spezzata
a latiparalleli
alle colonne od allerighe,
laquale
incontriin un sol
punto
ognuna delle traiettoriepossibili
da(1,1)
ad(m, n).
È
chiaro che anche per il Problema II le matricipseudo-circolanti giuocano
lo stesso ruologià
visto per il Problema I e che leoperazioni
non alteranti il valore delle traiettorie non alterano nè le soluzioni del Problema
I,
nèquelle
del Problema II.A titolo
d’esempio
determiniamo sulle matrici B e C le traiettorie di valore minimo ed il lorovalore v,
per la stessa matrice A del n. 4:OSSERVAZIONE : Può essere
v =v
solo se tutte le traiettorie dellag-matri-
ce data A hanno lo stesso
valore,
ossia se A èpseudo-circolante (n. 6).
PARTE II
INTERPRETAZIONE OPERATIVA E PROBLEMI DI ORDINAMENTO OTTIMALE
8.
Interpretazione
dellequestioni precedenti
nella ricercaoperativa.
Nella ricerca
operativa
si incontra laseguente interpretazione
delleprecedenti
considerazioni.È
data una coda di n utenti ai(j
=1, 2, ... , n)
che attendono di essere serviti successivamente da m
sportelli
ai . I numeriai~ sono i
tempi (parziali)
diservizio,
ossia aij è iltempo
occorrente allosportello ai
per servire l’utente Si trascura iltempo
occorrente a cia-scun utente per trasferirsi da uno
sportello
al successivo e si suppone chegli n
utenti debbanopresentarsi
a ciascunsportello
nello stesso ordinein cui si sono
presentati
alprimo.
Inoltre è fissato eduguale
per tuttigli n
utenti l’ordine dipresentazione agli m sportelli.
Fissati
questi
dueordinamenti,
ossia l’ordinamentodegli
m ~ n numeria,, in m
righe
ed n colonne(ciascuna riga
ai essendo associata ad unosportello
e ciascuna colonna ai ad unutente),
sorge ilproblema
di deter-minare il
tempo
occorrenteperchè
tuttigli
n utenti della coda siano serviti da tuttigli m sportelli
dellasuccessione,
ossia l’intervallo ditempo
inter-corrente dall’istante in cui il lo utente si
presenta
al 1°sportello
all’istante in cui l’n-esimo utenteabbandona,
essendone statoservito,
1’m-esimosportello.
Questo
intervallo ditempo,
che diremo «tempo
totale di servizio », èappunto
dato dal valore(massimo)
delle traiettorie(da (1,1. )
ad(m, n))
dellag-matrice
A =(aij)
deitempi (parziali)
di servizio.Ciò si
può
dimostrare perinduzione,
tanto sul numero mdegli sportelli
che su
quello n degli
utenti. Essendo la tesi evidente se m = 1 oppure se n =1,
basterà dimostrarla per m utenti ed nsportelli (m, n
>1),
avendo ammesso che sia vera per m - 1
sportelli
ed nutenti,
oppure perm
sportelli
ed n - 1 utenti.Consideriamo
perciò
lag-matrice
B delprocedimento
in avanti:e ricordiamo
che,
per leipotesi
induttive fatte:=
tempo
tot~le di servizio per m - 1sportelli
ed mutenti;
ossiaintervallo di
tempo
intercorrente tra l’istante in cui il lo utente sipresenta
al 1°sportello
e l’istante in cui l’n-esimo utenteabbandona,
essendone statoservito, 1’(m - 1)-esimo sportello;
1 =
tempo
totale di servizio per msportelli
ed n - 1utenti;
ossiaintervallo di
tempo
intercorrente tra l’istante in cui il lo utente sipresenta
al 1°sportello
e l’istante in cui1’(n
-1)-esimo
utenteabbandona,
essendone statoservito,
1’m-esimosportello.
Sicchè l’n-esimo utente si
potrà presentare
all’m-esimosportello
solodopo
che sia trascorso ilpiù grande
dei due intervalli ditempo
eed il
tempo
totale di servizio sarà:OSSERVAZIONE I:
Quanto
s’è detto sullo scambio dellerighe
con lecolonne e sulla
contemporanea
inversione del loro ordinamento(n.
2Oss.
IV, V),
si traduce nelleseguenti proposizioni:
I)
Iltempo
totale di servizio non cambia se si scambiadegli
utenti con
quello degli sportelli,
ossia se si considera una coda di m utenti davanti ad nsportelli,
con unag-matrice
deitempi parziali
di serviziotrasposta
diquella
data A. Sipuò quindi
sempre supporre(nella
ricercadel
tempo
totale diservizio)
che il numero mdegli sportelli
nonsuperi quello n degli
utenti.II)
Iltempo
totale di servizio non cacmbia se si invertonocontempora-
neamente Z’ordine
degli
utenti equello degli sportelli.
OSSERVAZIONE II:
Quanto precede
ha fornitoun’interpretazione
ope- rativa del valore massimo delle traiettorie di unagrafomatrice
A. Ci sipuò
chiedere se siapossibile,
sullo stesso modellooperativo,
una inter-pretazione
delle traiettorie di valore massimo. Essapuò
essere fornita dalseguente criterio;
di evidente verità:Per diminuire it
tempo
totale diservizio,
bastadiminuire,
SU CIASCUNA DELLE TRAIETTORIE DI VALORE MASSIMO,quatcuno
deitempi parziati di
servizio.
9. Il
procedimento
in avanti e le matrici deitempi parziali
dipre-riposo degli sportelli
e dipre-attesa degli
utenti.In
quanto precede
si sonfatte, implicitamente,
leipotesi:
I ) Ogni
utenteak,
che sia stato servito dac un datosportello
a¡-~, sipresenti al più presto
allosportello
successivo ai, e cioè subito se esso èlibero,
oppure appena a, abbia finito di servire l’utente
precedente
ak-l.II ) Ogni sportello
ai, che abbia servito un dato utentea k-l,
inizi alpiù presto
il servizio dell’utente successivoak,
e cioè subito se esso èlibero,
oppure appena ak sia stato servito dallo
sportello precedente
ai-loHa
luogo
allora la considerazione deiseguenti
intervalli nonnegativi
di
tempo:
=
tempo (parziale)
diriposo (pre-riposo)
dellosportello
ai, in attesa dell’utenteack, dopo
di aver servito=
tempo (parziale)
di attesa(pre-attesa)
dell’utente ak di fronte allosportello
a;,dopo
di essere stato servito da ai-,.Dalle
ipotesi I,
II consegue intanto che:Assunto come
origine
deitempi
l’istante in cui ilprimo
utente alsi
presenta
alprimo sportello
al, dalragionamento
fatto al n. 8 risultainoltre che:
= intervallo di
tempo
occorrente affinchègli
utential, a2, ... ,
axsiano serviti
dagli sportelli
ai, a2, ..., 5 = istante in cui losportello
ai-l termina il servizio dell’utenteak;
= intervallo di
tempo
occorrente affinchègli
utential, aE,
... , ak-l siano servitidagli sportelli
a~, a2 , ... , a; = istante in cui lo spor- tello ai termina il servizio dell’utente ak-1,Pertanto,
dalleI), II)
consegueanche, per i, k >
2:Le
(9.1 ), (9.2), (9.3) consentono,
apartire
dallaB,
la costruzione delle dueg-matrici,
simili alla A :D =
(d1k)
=g-matrice
deitempi (parziali)
dipre-riposo degli sportelli;
E =
(e1k)
=g-mactrice
deitempi (parziali)
dipre-attesa degli
utenti.Inoltre, poichè (v.
n.6 )
solo se lag-matrice
A èpseudocircolante
si ha :dalle
(9.1), (9.2), (9.3)
consegue ilseguente:
TEOREMA : se la
g-matrice
A deitempi parziali
di servizio èpseudo- circolante,
sono nulli tutti itempi parziali
dipre-riposo degli sportelli (in
attesa
degli
utenti successivi alprimo)
e tutti itempi parziali
dipre-attesa degli
utenti(di
fronteagli sportelli
successivi alprimo).
Dalle
(9.2), (9.3)
consegue infine che :Condizione NECESSgRIA E SUFFICIENTE
affinchè
siano nulli t2ctti itempi parziali (successivi
alprimo) :
ossia che nelle
diagonali
secondarie dellag-matrice
Bgli
elementi ris2cttinoordinati,
datl’alto albasso,
per valoririspettivamente.
non decrescenti oppure non crescenti .
Ricordando come si costruiscono
gli
elementi della B apartire
daquelli
dellaA,
si ha che condizionesufficiente (ma
nonnecessaria)
affinchèsussistano le
(9.4), (9.5)
è chesia, per i, k > 2, rispettivamente:
ai,k-1 oppure ai-1,k > ai,k-15
ossia che nelle
diagonali
secondarie dellag-matrice
Agli
elementi risultinoordinati,
dall’alto verso ilbasso,
per valorinon decrescenti o
rispettivamente
non crescenti . ESEMPIO: Per lag-matrice
Agià
considerata ai nn. 4, 7:si ha:
e
quindi:
Sicchè,
interpretando
la A come la matrice deitempi parziali
di servizio per la terna ordinata disportelli
al, a2, a3 e laquintupla
ordinata di utential,
...,a5,
si ha non solo che il tempo totale di servizio è 25, ma anche, sommando i valori
degli
elementi dellerighe
della D, che itempi
totali dipreriposo degli sportelli
al, a2, a3 sono
rispettivamente
0, 2, 6. Inoltre, sommando i valoridegli
elementidelle colonne della E, si ha che i
tempi
totali di preattesadegli
utential,
... , a5,sono
rispettivamente
0, 2, 5, 11, 17.10. Il
procedimento
all’indietro e le matrici deitempi
dipost-attesa
e dipost-riposo.
Le
I), II)
e le loro conseguenze(9.1), (9.2), (9.3)
forniscono una inter-pretazione operativa
delprocedimento
in avanti e dellag-matrice
B.È
chiaro(n. 2,
Oss.V)
cheun’analoga interpretazione operativa
possa ottenersi per ilprocedimento
all’indietro e per lag-matrice C,
scambiando contem-poraneamente
l’ordinedegli
utenti equello degli sportelli.
Lasciando tale ordine
inalterato,
leregole I), II)
andranno sostituitecon le
seguenti:
I’) Ogni
utenteak, prima
di essere servito da un datosportello
a i+ 1, debba abbandonarepiù
tardipossibile
losportello precedente
ai, e cioè subitoprima,
oppure appena ai debba iniziare il servizio dell’utente successivoIII) Ogni sportello
a i ,prima
di iniziare il servizio di un dato utente debba terminarepiù
tardipossibile
il servizio dell’utenteprecedente a k,
e cioè subito
prima,
oppureappena ak
debba cominciare ad essere servito dallosportello
successivo a,+ i .Avrà
quindi luogo
la considerazione deiseguenti
intervalli nonnegativi
di
tempo:
=
tempo (parziale)
diriposo (post-riposo)
dellosportello
~~dopo
diaver servito l’utente
ak;
eík
-tempo (parziale)
di attesa(post-attesa)
dell’utenteak, dopo
di esserestato servito dallo
sportello
ai .In
particolare,
dallaI’), II’)
consegue che debbono essere nulli tutti itempi
dipost-attesa
dell’utente an e tutti itempi
dipost-riposo
dellosportello
essendo:Converrà fissare
poi
l’attenzione sullafine
deitempi,
ossia sull’istante 11 in cui l’ultimo utente anabbandona,
essendone statoservito,
l’ultimosportello
arn. Allora:= T - Ci+1,k = istante in cui lo
sportello
ai+1 inizia
il servizio del- l’utenteak;
ti,k+ - 1’ - Ci,k+ 1 = istante in cui lo
sportello
ai inizia il servizio del- l’utentePotranno
presentarsi
due casi:1) t¡,k+ 1:
allora 15istante in cui ak abbandona ai coincidecon
ti+ 1,k,
cosicchè è nulla lapost-attesa
eik diak dopo
ai, mentredik
===