Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
UNIVERZA V LJUBLJANIPEDAGOSKA FAKULTETA
SASO ZUPANEC
MAX-PLUS ALGEBRA
DIPLOMSKO DELO
Ljubljana, 2013
UNIVERZA V LJUBLJANI
PEDAGOSKA FAKULTETAODDELEK ZA MATEMATIKO IN RACUNALNISTVO
SASO ZUPANEC
Mentor: doc. dr. Primoz Sparl
Somentor: as. dr. Bostjan Kuzman
MAX-PLUS ALGEBRA
DIPLOMSKO DELO
Ljubljana, 2013
Povzetek
Max-plus algebra je mnozica Rmax = R∪ {−∞} skupaj z operacijama ⊕ in ⊗definiranima kot a ⊕ b
def= max(a, b) in a ⊗ b
def= a + b, za vsaka a, b ∈ Rmax.
Gre za algebrsko strukturo, ki ji recemo polkolobar. Nad max-plus polkolo-
barjem lahko definiramo stevilne ze poznane matematicne objekte iz linearne
algebre, kot so vektorji, matrike, linearna funkcija in linearni sistemi enacb.
V tej nalogi smo definirali max-plus razlicice teh objektov in za njih izpeljali
max-plus sorodne matematicne zakone. Pokazemo tudi uporabo max-plus al-
gebre na prakticnih problemih iz podrocja kombinatorike in optimizacije.
Kljucne besede: Max-plus algebra, polkolobar, linearna algebra, kombi-
natoricna optimizacija.
Abstract
We define max-plus algebra as the set Rmax = R ∪ {−∞} with two binary
operations ⊕ and ⊗, where a⊕b is the maximum of a and b, and a⊗b is the
sum of a and b, for all a, b ∈ Rmax. These operations form a structure called
a semiring. Many of the concepts we use in the classical linear algebra like
vectors, matrices, linear functions and systems of linear equations have their
analogues in the max-plus semiring. In this paper, we defined max-plus ver-
sions of these concepts and the mathematical laws related to them. We show
a few practical applications of max-plus algebra on some combinatorical and
optimization problems.
Key Words: Max-plus algebra, semiring, linear algebra, combinatorical op-
timization.
Kazalo
Povzetek
Abstract
1 Uvod 1
2 Polkolobarji 2
2.1 Definicija in primeri . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.2 Polinomi in matrike nad polkolobarji . . . . . . . . . . . . . . . 4
3 Max-plus algebra 9
3.1 Operaciji max in plus . . . . . . . . . . . . . . . . . . . . . . . . 9
3.2 Matrike v max-plus algebri . . . . . . . . . . . . . . . . . . . . . 11
3.3 Max-plus linearne funkcije . . . . . . . . . . . . . . . . . . . . . 16
3.4 Max-plus linearni sistemi . . . . . . . . . . . . . . . . . . . . . . 22
3.5 Max-plus kvadratna funkcija in polinomi . . . . . . . . . . . . . 25
3.6 Zgledi uporabe . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.6.1 Vlaki . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.6.2 Proizvodnja . . . . . . . . . . . . . . . . . . . . . . . . . 29
4 Zakljucek 31
Literatura 32
1 Uvod
Z razvojem vse bolj kompleksnih sistemov, kot so fleksibilni proizvodni sistemi,
telekomunikacijska omrezja, zelezniski sistem in podobni je vse vec zanimanja
za tehnike modeliranja in analiziranja takih sistemov, ki jim drugace recemo
tudi diskretni sistemi dogodkov. Opis teh sistemov z matematicnimi objekti iz
obicajne algebre je lahko razmeroma zapleten in pogosto nelinearen. Uporaba
max-plus algebre nam omogoca prevod takih sistemov v linearen model. To
nam poenostavi njihovo raziskovanje, analiziranje in optimiziranje.
V sklopu tega dela bom definiral lastnosti polkolobarjev in max plus algebre
ter poskusal poiskati analogije objektom, ki jih ze poznamo iz obicajne algebre,
kot so linearne funkcije, sistemi linearnih enacb, vektorji, matrike in polinomi.
Za vse nastete objekte bom prikazal tudi stevilne zglede in ponazoritve. Prav
tako pa bom zanje preveril, ali za njih veljajo obicajnim matematicnim zako-
nom sorodni zakoni v zvezi z resevanjem linearnih enacb, resevanjem sistemov
linearnih enacb, razcepnostjo polinomov in podobno.
Raziskovalna metoda bo predvsem preucevanje ze obstojece literature na
podrocju polkolobarjev in max-plus algebre.
1
2 Polkolobarji
2.1 Definicija in primeri
V tem razdelku bomo najprej ponovili nekaj osnovnih pojmov iz algebre, nato
bomo definirali pojem polkolobarja in nasteli nekaj najpreprostejsih primerov.
Zacnimo z osnovnimi lastnostmi dvoclenih operacij.
Definicija 2.1. Dvoclena operacija na mnozici A je preslikava A × A → A,
ki urejenemu paru (a, b) priredi produkt ab. Operacijo imenujemo
• asociativna, ce velja (ab)c = a(bc) za vse a, b, c ∈ A,
• komutativna, ce velja ab = ba za vsaka a, b ∈ A.
Ce obstaja tak element e ∈ A, da velja ea = ae = a za vsak a ∈ A, ga
imenujemo nevtralni element ali enota.
Definicija 2.2. Polgrupa je algebrska struktura, ki jo sestavljata neprazna
mnozica in asociativna operacija na tej mnozici. Monoid je polgrupa, ki pre-
more nevtralni element za to operacijo.
V teoriji polgrup nas pogosto zanimajo se trije posebni tipi elementov. To
so obrnljivi, idempotentni in absorbcijski elementi.
Definicija 2.3. Naj bo A polgrupa in a ∈ A poljuben element. Element a
imenujemo
• idempotent, ce velja a2 = a,
• absorbcijski element, ce velja ab = ba = a za vsak b ∈ A,
• obrnljiv element, ce ima A nevtralni element e in obstaja tak element
b ∈ A, da je ab = ba = e.
Ce je vsak element podmozice B ⊆ A idempotenten, recemo, da je operacija
idempotentna na mnozici B.
Primer 2.4. Mnozica celih stevil z operacijo mnozenja (Z, ·) je komutativna
polgrupa z enoto 1 in absorbcijskim elementom 0, obrnljiva elementa sta 1 in
−1.
2
Primer 2.5. Razsirjena mnozica realnih stevil z operacijo maksimum (R ∪{±∞},max) je komutativna polgrupa z enoto −∞ in absorbcijskim elementom
∞, edini obrnljivi element je enota.
Primer 2.6. Mnozica realnih funkcij z operacijo kompozitum (Fun(R), ◦) je
nekomutativna polgrupa z enoto idR, ki nima nobenega absorbcijskega elementa,
obrnljivi elementi pa so vse bijektivne funkcije.
Definirajmo se algebrsko strukturo z dvema notranjima operacijama, ki je
za naso nalogo najpomembnejsa.
Definicija 2.7. Polkolobar je urejena trojica (S,⊕S,⊗S), ki jo sestavljajo ne-
prazna mnozica S ter operaciji ⊕S in ⊗S, tako da velja:
• Par (S,⊕S) je komutativna polgrupa z enoto εS ∈ S;
• Par (S,⊗S) je polgrupa z enoto eS ∈ S;
• Operaciji ⊕S in ⊗S povezujeta levi in desni zakon distributivnosti:
a⊗S (b⊕S c) = (a⊗S b)⊕S (a⊗S c), (a⊕S b)⊗S c = (a⊗S c)⊕S (b⊗S c)
• Element εS je absorbirajoc za ⊗S: εS⊗a = a⊗εS = εS.
Ce izpustimo zadnjo zahtevo in namesto nje zahtevamo, da je vsak element
iz S obrnljiv glede na ⊕S (torej, da je par (S,⊕S) komutativna grupa z enoto
εS ∈ S), potem trojico (S,⊕S,⊗S) imenujemo kolobar.
Opomba 2.8. Pri zapisu algebrskih izrazov z operacijama ⊕S in ⊗S se drzimo
pravila, da ima mnozenje prednost pred sestevanjem.
Polkolobarje vcasih oznacimo z S = (S,⊕S,⊗S, εS, eS), kadar ni bojazni
za dvoumnost, pa indeks S pri oznaki operacij opuscamo in govorimo kar o
polkolobarju S z operacijama ⊕ in ⊗. Ce je ⊗S komutativna operacija, potem
recemo, da je S komutativni polkolobar, ce je ⊕S idempotentna operacija, pa
mu recemo idempotentni polkolobar ali dioid.
Primer 2.9. Mnozica naravnih stevil z niclo ter obicajnima operacijama seste-
vanja in mnozenja (N0,+, ·) je komutativen polkolobar.
3
Primer 2.10. Mnozica realnih stevil z obicajnima operacijama (R,+, ·) je ko-
mutativen kolobar, torej tudi polkolobar. Seveda pa ni idempotenten polkolobar;
edina idempotenta sta 0 in 1.
Primer 2.11. Naj bo A poljubna mnozica in P (A) njena potencna mnozica.
Potem je (P (A),∪,∩, ∅, A) za operaciji unije in preseka mnozic komutativen
polkolobar. Prav tako je idempotenten polkolobar, saj so idempotentni vsi ele-
menti mnozice P (A). Podobno velja tudi, ce zamenjamo vlogi unije in preseka.
Omenimo se dve skoraj ocitni trditvi.
Trditev 2.12. Vsak kolobar je tudi polkolobar.
Dokaz: Dokazati moramo, da za vsak kolobar velja, da je nevtralni element
za ⊕ absorbirajoc za ⊗. Naj bo ε nevtralni element za ⊕. Potem je ε⊕ ε = ε.
Sledi:
ε⊗ a = (ε⊕ ε)⊗ aε⊗ a = (ε⊗ a)⊕ (ε⊗ a) (zakon distributivnosti)
ε = ε⊗ a (na obeh straneh odstejemo ε⊗ a)
Sledi ε ⊗ a = ε za vsak a ∈ S, torej je element ε absorbirajoc iz leve strani.
Desno stran preverimo podobno. �
Naslednja trditev nam pove, da v idempotentnem polkolobarju za operacijo
⊕ ne obstajajo netrivialni obrnljivi elementi.
Trditev 2.13. Naj bo S = (S,⊕,⊗) polkolobar. Ce je operacija ⊕ idempoten-
tna, potem zanjo ne obstajajo obrnljivi elementi.
Dokaz: Naj bo a 6= ε tak, da ima obrat b za operacijo ⊕. Sledi, da je a⊕b = ε.
Ce dodamo a na obeh straneh enacbe dobimo a⊕a⊕b = a⊕ε. Na levi strani
enacbe sedaj upostevajmo idempotentnost, desna stran nam da a, saj je ε
nevtralni element za ⊕. Ostane nam a⊕b = a, oziroma protislovje. �
2.2 Polinomi in matrike nad polkolobarji
Podobno kot pri nekaterih drugih algebrskih strukturah lahko iz znanih polko-
lobarjev zgradimo nove polkolobarje s pomocjo standardnih konstrukcij kot so
4
polinomi in matrike. V celotnem razdelku naj S pomeni polkolobar (S,⊕,⊗).
Zapis an za n ∈ N naj pomeni
andef= a⊗a⊗ · · ·⊗a︸ ︷︷ ︸
n−krat
,
torej obicajno potenco z naravnim eksponentom. Posebej definiramo nicto
potenco ae = ε.
Na obicajen nacin lahko definiramo tudi polinome in matrike.
Definicija 2.14. Polinom nad polkolobarjem S v spremenljivki x je formalen
izraz oblike
p(x) =∞⊕i=0
ai ⊗ xi = a0 ⊕ a1 ⊗ x⊕ a2 ⊗ x2 ⊕ · · · ,
kjer so koeficienti ai ∈ S in velja, da je ai 6= ε le za koncno mnogo indeksov
i. Najvecji indeks n, za katerega je an 6= ε imenujemo stopnja polinoma.
Polinom ε(x), kjer so vsi ai = ε, imenujemo nicelni polinom. Mnozico vseh
polinomov v spremenljivki x bomo oznacili S[x].
Polinome sestevamo tako, da sestevamo istolezne koeficiente, torej
(∞⊕i=0
ai ⊗ xi)⊕ (∞⊕i=0
bi ⊗ xi) =∞⊕i=0
(ai ⊕ bi)⊗ xi.
Koeficient pri clenu xi v produktu dveh polinomov pa dobimo tako, da sesteje-
mo produkte vseh koeficientov z vsoto indeksov i, torej
(∞⊕i=0
ai ⊗ xi)⊗ (∞⊕i=0
bi ⊗ xi) =∞⊕i=0
ci ⊗ xi,
kjer je ci =⊕
j+k=i aj ⊗ bk.
Trditev 2.15. Mnozica polinomov nad polkolobarjem je polkolobar.
Dokaz: Ocitno je nicelni polinom ε(x) = ε nevtralni element za sestevanje po-
linomov, polinom e(x) = e pa nevtralni element za mnozenje polinomov. Od
ostalih lastnosti iz definicije polkolobarja za zgled dokazimo le levo distributiv-
nost. Naj bodo p(x) =⊕∞
i=0 ai⊗xi, q(x) =⊕∞
i=0 bi⊗xi ter r(x) =⊕∞
i=0 ci⊗xi
5
iz S[x]. Potem velja:
p(x)⊗ (q(x)⊕ r(x)) = p(x)⊗ (∞⊕i=0
(bi ⊕ ci)⊗ xi)
=∞⊕i=0
(⊕j+k=i
aj ⊗ (bk ⊕ ck))⊗ xi
=∞⊕i=0
(⊕j+k=i
(aj ⊗ bk ⊕ aj ⊗ ck)⊗ xi)
=∞⊕i=0
(⊕j+k=i
(aj ⊗ bk)⊗ xi ⊕⊕j+k=i
(aj ⊗ ck)⊗ xi)
=∞⊕i=0
(⊕j+k=i
(aj ⊗ bk)⊗ xi)⊕∞⊕i=0
(⊕j+k=i
(aj ⊗ ck)⊗ xi)
= p(x)⊗ q(x)⊕ p(x)⊗ r(x).
S tem smo dokazali levo distributivnost, bralec pa lahko z istim postop-
kom preveri se desno distributivnost sam. Asociativnost mnozenja polinomov
dokazemo na podoben nacin. Ocitno je i-ti koeficient pri polinomu p(x)⊗(q(x)
⊗r(x)) enak⊕
j+k+l=i aj⊗(bk⊗cl), kar pa je zaradi asociativnosti mnozenja
v polkolobarju S enako kot⊕
j+k+l=i(aj⊗bk)⊗cl. To pa ustreza i-temu koe-
ficientu polinoma (p(x)⊗q(x))⊗r(x), kar pomeni, da je p(x)⊗(q(x)⊗r(x)) =
(p(x)⊗q(x))⊗r(x). Z upostevanjem lastnosti sestevanja koeficientov bralec
lahko sam preveri, da velja asociativnost in komutativnost sestevanja polino-
mov ter dejstvo, da je nicelni polinom absorbirajoc za ⊗. �
Podobno kot nad kolobarjem lahko definiramo matrike in matricne opera-
cije nad polkolobarjem. Naj bo
A =
a11 a12 · · · a1m
a21 a22 · · · a2m...
.... . .
...
an1 an2 · · · anm
matrika s koeficienti aij ∈ S. Mnozico takih matrik oznacimo z Sn×m. Sestevanje
matrik definiramo po komponentah; vsota matrik A,B ∈ Sn×m s koeficienti
6
aij, bij je matrika A⊕B s koeficienti
[A⊕B]ij = aij⊕bij; 1 ≤ i ≤ n, 1 ≤ j ≤ m.
Produkt matrike A ∈ Sn×m s poljubnim skalarjem α ∈ R definiramo kot
matriko α⊗A s koeficienti
[α⊗A]ij = α⊗aij; 1 ≤ i ≤ n, 1 ≤ j ≤ m.
Produkt matrik za poljubni matriki A ∈ Sn×m in B ∈ Sm×p definiramo kot
matriko A⊗B ∈ Sn×p s koeficienti
[A⊗B]ij =m⊕k=1
aik ⊗ bkj; 1 ≤ i ≤ n, 1 ≤ j ≤ p.
Trditev 2.16. Mnozica kvadratnih matrik nad polkolobarjem je polkolobar.
Dokaz: Ocitno je matrika E ∈ Sn×n, kjer so vsi koeficienti enaki ε, nevtralni
element za sestevanje. Matrika E ∈ Sn×n, kjer so vsi koeficienti [E]ij = e, kjer
je i = j in ε drugace, pa nevtralni element za mnozenje. Od ostalih lastnosti
iz definicije polkolobarja za zgled dokazimo le asociativnost mnozenja matrik.
Naj bodo A,B,C ∈ Sn×n
[(A⊗B)⊗C]ij =n⊕
k=1
[A⊗B]ik⊗ckj
=n⊕
k=1
(n⊕
l=1
ail⊗blk)⊗ckj
=n⊕
l=1
(n⊕
k=1
ail⊗blk⊗ckj)
=n⊕
l=1
ail⊗(n⊕
k=1
blk⊗ckj)
=n⊕
l=1
ail⊗[B⊗C]lj = [A⊗(B⊗C)]ij.
Komutativnost in asociativnost sestevanja se dokaze na podoben nacin s
upostevanjem lastnosti racunanja s koeficienti, kar lahko bralec preveri sam.
Pokazimo se, da velja leva distributivnost kvadratnih matrik. ProduktA⊗(B⊕C)
7
lahko zapisemo kot
[A⊗(B⊕C)]ij =n⊕
k=1
(aik⊗[B + C]kj)
=n⊕
k=1
(aik⊗(bkj⊕ckj))
=n⊕
k=1
(aik⊗bkj⊕aik⊗ckj)
=n⊕
k=1
(aik⊗bkj)⊕n⊕
k=1
(aik⊗ckj)
= [A⊗B]ij⊕[B⊗C]ij.
Desno distributivnost lahko bralec na enak nacin preveri sam. Velja pa
tudi, da je A⊗E = E⊗A = E , kar pomeni, da je matrika E absorbirajoca za
operacijo ⊗. �
Za kvadratne matrike nad polkolobarjem lahko na obicajen nacin defini-
ramo potence matrik z naravnim eksponentom: Ak = Ak−1 ⊗ A za k ∈ N in
A0 = E.
8
3 Max-plus algebra
3.1 Operaciji max in plus
V tem razdelku bomo natancneje obravnavali poseben primer polkolobarja, ki
je glavna tema nase naloge. Naj bo R mnozica realnih stevil. Dodajmo ji
element ε = −∞, ki naj predstavlja vrednost, manjso od vseh realnih stevil.
Oznacimo Rmax = R ∪ {ε}. Za poljubna elementa a, b ∈ Rmax definirajmo
operaciji ⊕ in ⊗ s predpisoma
a⊕ b def= max(a, b)
a⊗ b def= a+ b,
pri cemer naj velja, da je a ⊕ ε = ε ⊕ a = a in a ⊗ ε = ε ⊗ a = ε za vsak
a ∈ Rmax.
Definicija 3.1. Mnozico Rmax = (Rmax,⊕,⊗, ε, e), kjer je e = 0 ∈ R, imenu-
jemo max-plus algebra (oziroma max-plus polkolobar1).
Trditev 3.2. Max-plus algebra je komutativen idempotentni polkolobar.
Dokaz: Naj bodo a, b, c ∈ Rmax. Za obe operaciji velja zakon asociativnosti:
a⊕(b⊕c) = max(a,max(b, c)) = max(a, b, c) = max(max(a, b), c) = (a⊕b)⊕c,
a⊗(b⊗c) = a+ (b⊗c) = a+ (b+ c) = (a+ b) + c = (a⊗b)⊗c.
Operacija ⊕ je idempotentna: a⊕a = max(a, a) = a. Dokazi ostalih lastnosti
polkolobarjev so podobno preprosti in jih bralec lahko preveri sam. �
Opomba 3.3. Poleg max-plus algebre lahko na zelo podoben nacin definiramo
se druge polkolobarje. Naj bo mnozica Rmin mnozica realnih stevil, ki ji dodamo
ε = ∞, ki predstavlja vrednost vecjo od vseh realnih stevil. Za poljubna ele-
menta a, b ∈ Rmin definirajmo operaciji ⊕ in ⊗ s predpisoma a⊕ b = min(a, b)
ter a⊗ b = a+ b.
1Nekateri avtorji (npr. [3]) polkolobar (Rmax,⊕,⊗) imenujejo max-plus algebra, drugi(npr. [2]) pa max-plus polkolobar. Slednji izraz max-plus algebra uporabljajo v sirsemkontekstu in pomeni algebro matrik in vektorjev nad max-plus polkolobarjem.
9
Mnozica Rmin skupaj z operacijama ⊕ in ⊗ je znana tudi kot tropska2 ali
min-plus algebra (glej npr. [5]).
Omenimo se nekaj preprostih lastnosti max-plus algebre.
Trditev 3.4. Za poljubne a, b, c ∈ Rmax velja:
• Za vsak a ∈ R obstaja njegov obrat a−1 = −a za mnozenje: a⊗a−1 = e =
a−1⊗a. V Rmax torej velja pravilo krajsanja: za vsak c ∈ R iz a⊗c = b⊗cali c⊗ b = c⊗ a sledi a = b.
• Mnozenje, pristevanje ali krajsanje s c ∈ R ohranja urejenost: Iz a ≥ b
sledi a⊕c ≥ b⊕c in a⊗c ≥ b⊗c, iz a⊗c ≥ b⊗c pa sledi a ≥ b.
Dokaz: Dokazi vseh trditev so preprosti in sledijo direktno iz definicij. �
Potence v max-plus algebri definiramo tako kot v splosnih polkolobarjih,
vendar v tem primeru velja kar an = na za a ∈ R in n ∈ N. Zato definicijo
potence v tem primeru lahko posplosimo tudi na realen eksponent:
ax =
xa, a ∈ R;
a, a = ε,
za vsak a ∈ Rmax in x ∈ R. Nekaj zgledov izracunov v max-plus algebri je
prikazanih v tabeli 1.
Posebej omenimo se max-plus razlicico binomske formule.
Trditev 3.5. Za vsak a, b ∈ Rmax in k ∈ R velja:
(a⊕ b)k = ak ⊕ bk.
Dokaz: Po definiciji potenc v max-plus algebri velja, da je
(a⊕b)k = k(a⊕ b) = kmax(a, b) = max(ka, kb) = max(ak, bk) = ak ⊕ bk.
�
2Pridevnik tropski izvira iz dejstva, da so prvi pomembnejsi rezultati iz tega podrocjaprisli iz Brazilije. Drugi matematiki, ki so se ukvarjali z polkolobarji, so imeli Brazilijo zatropsko dezelo in so tej veji matematike rekli kar tropska matematika.
10
Rmax zapis Obicajen zapis =2⊕3 max(2,3) 3
1⊕2⊕3⊕4⊕5 max(1, 2, 3, 4, 5) 55⊗− 9⊕7⊗1 max(5− 9, 7 + 1) 8
2⊗3 2 + 3 52⊗e 2 + 0 22⊕ε max(2,−∞) 2e⊗3 e+ 3 3
32 = 23 = 3⊗3 = 2⊗2⊗2 3 · 2 = 2 · 3 = 3 + 3 = 2 + 2 + 2 6(2⊕3)3 = 23⊕33 3 ·max(2, 3) = max(2 · 3, 3 · 3) 9
53 = 3 · 5 5⊗5⊗5 = 5 + 5 + 5 15
8−14 −1
4· 8 −2
Tabela 1: Nekaj stevilskih zgledov v max-plus algebri.
3.2 Matrike v max-plus algebri
Operacije z matrikami v max-algebri so le poseben primer matricnih operacij
nad splosnimi polkolobarji, videli pa bomo, da so tesno povezane z usmerje-
nimi grafi in nekaterimi problemi iz kombinatorike. Najprej si oglejmo nekaj
konkretnih racunskih zgledov.
Primer 3.6. Naj bo A =
(1 0
3 2
)in B =
(0 ε
−1 3
). Potem je vsota matrik
A⊕B =
(1⊕0 1⊕ε
3⊕− 1 2⊕3
)=
(max(0, 1) max(0, ε)
max(3,−1) max(2, 3)
)=
(1 0
3 3
).
Primer 3.7. Naj bo α = 3 in A kot v prejsnjem primeru. Potem je
α⊗A = 3⊗
(1 0
3 2
)=
(3⊗1 3⊗0
3⊗3 3⊗2
)=
(3 + 1 3 + 0
3 + 3 3 + 2
)=
(4 3
6 5
).
Primer 3.8. Naj bosta A in B kot v primeru 3.6. Potem je produkt matrik
A in B enak
A⊗B =
(1 0
3 2
)⊗
(0 ε
−1 3
)=
(max(0 + 1, 0− 1) max(1 + ε, 0 + 3)
max(3 + 0, 2− 1) max(3 + ε, 2 + 3)
)=
(1 3
3 5
).
11
Mnozenje v splosnem ni komutativno. V nasem primeru denimo velja
B⊗A =
(1 0
6 5
)6= A⊗B.
Primer 3.9. Naj bo A =
(2 −3
ε 4
). Potem je
A3 =
(2 −3
ε 4
)⊗
(2 −3
ε 4
)2
=
(2 −3
ε 4
)⊗
(4 1
ε 8
)=
(8 5
ε 12
).
Mnoge rezultate v max-plus algebri se da interpretirati tudi kombina-
toricno. Tako se da vsako matriko A ∈ Rn×nmax predstaviti z ustreznim utezenim
grafom oziroma mrezo.
Definicija 3.10. Usmerjeni graf ali digraf D je urejen par (V (D), E(D)), kjer
je V (D) mnozica vozlisc digrafa D in E(D) ⊂ V (D)×V (D) mnozica urejenih
parov vozlisc3oziroma povezav digrafa D. Za povezavo e = (u, v) ∈ E(D),
kjer sta u, v ∈ V (D), recemo, da je u zacetno vozlisce, v pa koncno vozlisce
povezave e.
Definicija 3.11. Utezeni digraf nad polkolobarjem S je digraf D = (V,E)
skupaj s funkcijo ω : E 7→ S, ki povezavi e ∈ E priredi utez(oziroma ceno)
ω(e) v S.
Definicija 3.12. Matriki A ∈ Rn×nmax pripadajoc utezeni digraf D(A) je di-
graf z vozlisci V (D) = {1, 2, . . . , n} in povezavami E(D) = {(i, j) : aji 6= ε},tako da je koeficient aji cena povezave (i, j). Ce povezava med vozliscema
i in j ne obstaja, potem je njena cena enaka ε. Zaporedju povezav p =
((i1, i2), (i2, i3), . . . , (is−1, is)) med vozliscema i in j, kjer je i1 = i in is = j,
in za vsako povezavo velja (ik, ik+1) ∈ E(D), recemo sprehod v grafu D(A).
V kolikor za sprehod v D(A) velja i = j, potem takemu sprehodu recemo ci-
kel. Mnozico sprehodov od i do j dolzine s ≥ 1 oznacimo s P (i, j; s). Dolzino
sprehoda p oznacimo s |p|l in je enaka s. Vsoti cen povezav na sprehodu
med vozliscema i, j v grafu D(A) recemo cena sprehoda in jo oznacimo s
|p|w =⊗s
k=1 aik+1ik .
3Mnozica urejenih parov vozlisc pomeni, da bomo locili povezavo (u, v) in (v, u). Takolahko v grafu obstaja povezava (u, v) ∈ E(D), povezava (v, u) /∈ E(D) pa ne. Ta usmeritevpovezav v grafu je tudi razlog za ime usmerjen graf.
12
Primer 3.13. Naj bo A =
ε 12 ε
ε ε 11
9 ε 18
. Njen pripadajoci digraf D(A) je na
sliki 1.
Slika 1: Matriki A pripadajoc digraf D(A).
Digraf D(A) sestavlja mnozica vozlisc V (D) = {1, 2, 3} in mnozica povezav
E(D) = {(1, 3), (3, 2), (2, 1), (3, 3)}. Na grafu lahko lahko opazimo sprehod
p = ((1, 3), (3, 2), (2, 1)), ki je tudi cikel. Cena sprehoda je podana s predpisom
|p|w = a12 + a23 + a31 in je enaka 32.
Definicija 3.14. Graf D je krepko povezan natanko tedaj, ko za poljubni dve
razlicni vozlisci i in j obstaja sprehod med njima. Matriki A ∈ Rn×nmax recemo,
da je nerazcepna, ce je njen pripadajoc digraf D(A) krepko povezan.
Sedaj lahko pokazemo se kombinatoricno interpretacijo max-plus matricnih
potenc. Naslednja trditev nam pove, da je [Ak]ji maksimalna cena vseh spre-
hodov v D(A) dolzine k, ki imajo zacetno vozlisce v i in koncno v j.
Trditev 3.15. Naj bo A ∈ Rn×nmax in k ∈ N. Potem za vsak k ≥ 1 velja
[Ak]ji = max{|p|w : p ∈ P (i, j; k)},
in [Ak]ji = ε, kadar ne obstaja sprehod med i in j.
Dokaz: Trditev dokazemo z indukcijo na k. Naj bo par (i, j) poljuben par
vozlisc iz D(A). Za k = 1 so vsi sprehodi v mnozici P (i, j; k) sestavljeni iz ene
13
usmerjene povezave, s ceno [A]ji = aji. Ce je aji = ε, potem povezave (i, j)
v grafu D(A) ni in je P (i, j; k) prazna mnozica. Recimo, da enakost iz izreka
velja za nek k. Recimo, da obstaja vsaj en sprehod v P (i, j; k + 1), oznacimo
ga s p. Ta sprehod lahko razdelimo v dva sprehoda, enega dolzine k od vozlisca
i do poljubnega vozlisca l, ki ga bomo oznacili s p′, in enega dolzine 1 od l do
j.
Maksimalno tezo poljubnega sprehoda v P (i, j; k + 1) dobimo kot vsoto
teh dveh sprehodov z zapisom maxi∈{1,...,n}
(max{|p′|w : p′ ∈ P (i, l; k)} + ajl). Po
indukcijski predpostavki je max{|p′|w : p′ ∈ P (i, l; k)} = [Ak]li in izraz za ma-
ksimalno ceno sprehoda od i do j dolzine k + 1 je enak
maxi∈{1,...,n}
([Ak]li + ajl) =n⊕
l=1
[Ak]li⊗ajl
= [Ak⊗A]ji = [A(k+1)]ji.
Poglejmo se primer, kjer je P (i, j; k + 1) prazna mnozica, oziroma ne obstaja
sprehod dolzine k + 1 med vozliscema i in j. Potem je ocitno, da za poljubno
vozlisce l ne obstaja ali sprehod dolzine k od i do l ali povezava od l do j (ali
oba). Sledi, da je za vsak l ena od vrednosti ajl ali [Ak]li enaka ε. Ker je pa
ε absorbirajoc za operacijo mnozenja, je posledica tega [A(k+1)]ji = ε⊗ajl =⊕nl=1[A
k]li⊗ε = ε. S tem je izrek dokazan.
�
Primer 3.16. Naj bo A =
(2 5
3 3
). Njen pripadajoc digraf D(A) je na sliki
2.
Slika 2: Matriki A pripadajoc digraf D(A).
A2 =
(max(2 + 2, 5 + 3) max(2 + 5, 5 + 3)
max(3 + 2, 3 + 3) max(3 + 5, 3 + 3)
)=
(8 8
6 8
)
14
Vzemimo na primer sprehod dolzine 2 od tocke 1 do 2. Iz druge potence
matrike A lahko razberemo, da bo maksimalna cena takega sprehoda enaka
[A2]21 = max(3 + 2, 3 + 3) = 6. Iz slike lahko tudi razberemo, da je graf krepko
povezan, kar pomeni, da je matrika A nerazcepna.
Omenimo se dva izmed pomembnejsih pojmov, iz linearne algebre, in sicer
lastno vrednost in lastni vektor.
Definicija 3.17. Naj bo A ∈ Rn×nmax , µ element iz Rmax in v ∈ Rn
max nek vektor,
ki ima vsaj en koncen koeficient in velja
A⊗v = µ⊗v.
Potem je µ lastna vrednost matrike A in v lastni vektor matrike A, ki
pripada lastni vrednostji µ. Lastnemu vektorju recemo, da je koncen, ce so vsi
njegovi elementi razlicni od −∞.
Primer 3.18. Naj bo A =
(2 5
3 3
)in v =
(1
0
). Poiscimo lastno vrednost λ
in njej pripadajoci lastni vektor v. Veljati mora:(2 5
3 3
)⊗
(1
0
)= λ⊗
(1
0
)(
(2⊗1)⊕(5⊗0)
(3⊗1)⊕(3⊗0)
)=
(λ+ 1
λ
).
Dobimo spodnji sistem enacb:
max(3, 5) = λ+ 1
max(4, 3) = λ
}⇒ λ+ 1 = 5⇒ λ = 4.
Lastna vrednost matrike A je torej 4, s pripadajocim lastnim vektorjem v =(1
0
).
15
3.3 Max-plus linearne funkcije
Kot tudi v obicajni algebri lahko v max-plus algebri definiramo splosne linearne
funkcije.
Definicija 3.19. Funkcijo f(x) = a⊗x⊕b, kjer sta a, b ∈ Rmax, imenujemo
max-plus linearna (ali afina) funkcija.
Graf splosne max-plus linearne funkcije je posebne oblike, saj pri predpisu
f(x) = a⊗x⊕b vzamemo vecjo od vrednosti od a + x in b. Graf je sestavljen
iz dveh delov. V prvem delu je konstanten do neke tocke, od te tocke naprej
pa konstantno narasca. Graf funkcije tako lezi na dveh poltrakih s skupnim
izhodiscem.
Primer 3.20. Za zgled narisimo graf funkcije f(x) = 1⊗x⊕3. Ce prepisemo
enacbo v obicajen zapis, je f(x) = max(x + 1, 3). To pomeni, da iscemo za
vsak x vecjo od vrednosti x + 1 in 3. Ce v isti koordinatni sistem narisemo
(slika 3) obe premici, bo graf nase max-plus linearne funkcije lezal na konstanti
y = 3 dokler je x manjsi od 2, od tu dalje pa na premici x+ 1.
Slika 3: Linearna funkcija f(x) = 1⊗x⊕3.
Skupno izhodisce dveh poltrakov, na katerih lezi graf max-plus linearne
funkcije je presecisce premic y = a + x in y = b v obicajnem zapisu. Tako
lahko enolicno dolocimo tocko, kjer se premici sekata, oziroma, kjer se graf
max-plus linearne funkcije prelomi, kot T (b− a, b).
16
Zanimivo je se omeniti, kaj se dogaja z max-plus linearno funkcijo, ce je
kateri izmed koeficientov enak −∞. Poglejmo si vsak primer posebej.
• a = −∞:
V tem primeru dobimo funkcijo oblike f(x) = −∞⊗x⊕b = −∞⊕b =
max(−∞, b) = b. Graf te funkcije bo torej konstantna funkcija s predpi-
som f(x) = b.
• b = −∞:
Funkcijo lahko torej zapisemo kot f(x) = a⊗x⊕(−∞) = a⊗x = max(a+
x,−∞) = a + x. Graf nase max-plus linearne funkcije (slika 4 ) bo graf
obicajne linearne funkcije s predpisom f(x) = a+ x.
Slika 4: Max-plus linearna funkcija, kjer je b=−∞.
• a, b = −∞:
V kolikor sta oba koeficienta enaka −∞, dobimo max-plus linearno funk-
cije oblike f(x) = −∞⊗x⊕(−∞) = −∞⊕(−∞) = max(−∞,−∞) =
−∞. V tem primeru bo nasa funkcija konstantna s predpisom f(x) =
−∞.
17
Definirajmo se max-plus linearne enacbe in nacin njihovega resevanja nad
max-plus polkolobarjem. Splosno skalarno afino enacbo zapisemo kot a⊗x⊕b =
a′⊗x⊕b′.Ze prej smo dokazali, da zaradi idempotentnosti operacije ⊕ v max-plus
polkolobarju za njo ne moremo definirati obrnljivih elementov, kar pomeni,
da zgornje enacbe ne moremo poenostaviti v obliko a⊗x⊕b = ε. Prav ta
lastnost loci resevanje teh enacb od enacb v obicajni algebri. Za iskanje resitev
teh enacb bomo potrebovali se operacijo -, ki je obratna operacija sestevanju
oziroma nasi operaciji ⊗. Gre za obicajno odstevanje.
Izrek 3.21. Za resljivost in resitve splosne afine enacbe a⊗x⊕b = a′⊗x⊕b′ v
Rmax velja:
• Ce je a > a′ in b < b′, potem ima enacba enolicno resitev x = b′ − a.
• Ce je a < a′ in b > b′, potem ima enacba enolicno resitev x = b− a′.
• Ce je a = a′, potem so resitev enacbe vsi x ≥ (b⊕b′)− a.
• Ce je b = b′, potem so resitev enacbe vsi x ≤ b− (a⊕a′).
• Ce je a = a′ in b = b′, potem so resitev enacbe vsi x ∈ Rmax.
• Ce je a > a′ in b > b′, potem resitev enacbe ne obstaja.
• Ce je a < a′ in b < b′, potem resitev enacbe ne obstaja.
Ta trditev nam pove naslednje. V prvih dveh moznostih se grafa obeh
max-plus linearnih funkcij sekata v natanko eni tocki, kot je prikazano na sliki
5. Drugi dve moznosti sta se, da se grafa obeh max-plus linearnih funkcij
pokrivata na enem izmed poltrakov, ali pa sta grafa funkcij kar enaka in so
resitve vsi x ∈ Rmax. Ce se grafa teh dveh funkcij sploh ne sekata resitve take
enacbe ocitno sploh ni.
18
Dokaz: Dokaz zgornjega izreka lahko razberemo iz geometrijske interpretacije
max-plus linearne funkcije.
Slika 5: Max-plus linearna enacba.
Na sliki 5 vidimo, da v tem primeru velja a < a′ in b > b′ in da se obe
max-plus linearni funkciji sekata v eni tocki. Ta tocka lezi na preseciscu premic
f(x) = b in f(x) = a′ + x. Ce ti dve funkciji izenacimo, dobimo b = a′ + x,
torej je presecisce v tocki x = b − a′. Podobno izpeljemo resitev x = b′ − a v
primeru, ko je a > a′ in b < b′.
V primeru, ko velja a = a′, so resitev vsi x na poltraku z izhodiscem v tocki,
kjer se sekata premici y = a+x in vecja od konstant b in b′ (slika 6). Ce ti dve
premici izenacimo dobimo a + x = (b⊕b′), kar pomeni, da je x = (b⊕b′) − ain bodo resitve enacbe vsi x za katere velja x ≥ (b⊕b′) − a. Na enak nacin
dokazemo, da so resitev enacbe vsi x ≤ b− (a⊕a′), ko sta b in b′ enaka.
Slika 6: Primera max-plus linearnih enacb z vec resitvami.
V primeru, ko sta a in a′ ter b in b′ enaka, bosta max-plus linearni funkciji
enaki in so resitve enacbe vsi x ∈ Rmax. Ostaneta nam le se primera, kjer
resitev enacbe ni, kar se zgodi, ko se max-plus linearni funkciji ne sekata v
nobeni tocki (slika 7).
19
Slika 7: Max-plus linearna enacba brez resitev.
�
Seveda je v splosnem najbolje enacbo najprej poenostaviti, nato se pa lotiti
njenega resevanja na obicajen nacin. Na primer, ce velja a > a′ in b′ > b, potem
je a⊗x⊕b = a′⊗x⊕b′ ekvivalentno a⊗x = b. Za lazjo predstavo si poglejmo
naslednji zgled. Resitev enacbe bomo poiskali na obicajen nacin in z uporabo
izreka 3.21.
Primer 3.22. Poiscimo resitev enacbe 2⊗x + 4 = 3⊗x + 2. Ce narisemo
grafa funkcij y = 3⊗x⊕2 in y = 2⊗x⊕4, lahko vidimo na sliki 8, da se ti dve
max-plus linearni funkciji sekata v samo eni tocki. To je tocka, kjer se sekata
funkciji 3 + x in konstantna funkcija y = 4. Preprost racun 3 + x = 4 nam da
resitev x = 1, kar je tudi edina resitev te enacbe.
Slika 8: Graf max-plus linearne enacbe 2⊗x⊕4 = 3⊗x⊕2.
Preverimo, ce dobimo isto se z uporabo zgornjega izreka. Za to enacbo so
torej a = 2, a′ = 3, b = 4 ter b′ = 2. Velja tudi, da je a < a′ in b > b′. Po
zgornjem izreku bo torej resitev nase enacbe ena sama. Dobimo s predpisom
x = b− a′ = 4− 3 = 1.
20
Definirajmo se druge oblike poenostavljenih enacb, s katerimi se lahko
srecamo pri resevanju max-plus linearnih enacb.
Definicija 3.23 (Kanonska oblika linearne enacbe). Linearna enacba je v ka-
nonski obliki, ce je zapisana v eni od naslednjih poenostavljenih oblik:
• a⊗x = b;
• a⊗x⊕b = ε;
• a⊗x⊕b = a⊗x;
• a⊗x⊕b = b.
Zakaj je to poenostavljenje mozno nam pove naslednja trditev.
Trditev 3.24. Naj velja a⊗x⊕b = a′⊗x⊕b′.
• Ce je a < a′, potem ima enacba −∞⊗x⊕b = a′⊗x⊕b′ enake resitve kot
prvotna enacba.
• Ce je b < b′, potem ima enacba a⊗x⊕−∞ = a′⊗x⊕b′ enake resitve kot
prvotna enacba.
Dokaz: Dokazimo obe moznosti zgornje trditve posebej. Naj bo a⊗x⊕b =
a′⊗x⊕b′.Naj velja a < a′. Enacbo lahko v obicajni notaciji zapisemo max{a+x, b} =
max{a′+x, b′}. Iz a < a′ sledi, da je max{−∞+x, b} = max{a′+x, b′}. Leva
stran enacbe je torej max{−∞, b} = b. Po drugi strani pa iz max{a′+x, b′} =
max{a + x, b} zaradi a < a′ velja a + x < a′ + x, torej enakost pomeni, da je
max{a+ x, b} = b.
Preverimo se za drugo moznost. Naj velja b < b′. Enacbo lahko ponovno
zapisemo max{a + x, b} = max{a′ + x, b′}. Iz b < b′ sledi, da je max{a +
x,−∞} = max{a′+x, b′}. Leva stran enacbe je torej max{a+x,−∞} = a+x.
Po drugi strani pa iz max{a′ + x, b′} = max{a+ x, b} zaradi b < b′ sledi, da je
max{a+ x, b} = a+ x. S tem je dokaz koncan.
�
21
3.4 Max-plus linearni sistemi
V splosnem sistem linearnih enacb nad max-plus algebro zapisemo kot
A⊗x⊕b = C⊗x⊕d,
kjer sta A in C matriki dimenzij n× n ter b in d vektorja z n komponentami.
Definicija 3.25. Sistemu linearnih enacb oblike A⊗x⊕b = C⊗x⊕d recemo,
da je v kanonski obliki, ko A,C, b in d zadoscajo:
• Cij = −∞, ce Aij > Cij in Aij = −∞, ce Aij < Cij;
• di = −∞, ce bi > di in bi = −∞, ce bi < di;
Podobno kot pri max-plus linearnih enacbah lahko vsak max-plus linearni
sistem prepisemo v kanonsko obliko, ki ima enake resitve kot prvotni sistem.
Trditev 3.26. Vsak sistem oblike A⊗x⊕b = C⊗x⊕d lahko prevedemo v ka-
nonsko obliko A′⊗x⊕b′ = C ′⊗x⊕d′, ki ima enake resitve kot prvotni sistem.
Dokaz: Naj bo A⊗x⊕b = A′⊗x⊕b′ nas linearen sistem enacb. Ta sistem
lahko prepisemo v a1⊗x1⊕ . . .⊕an⊗xn⊕b = a′1⊗x1⊕ . . .⊕a′n⊗xn⊕b′, kar bi v
obicajnem zapisu pomenilo max{a1+x1, . . . , an+xn, b} = max{a′1+x1, . . . , a′n+
xn, b′}. Ce na primer velja a1 < a′1, potem lahko enacbo prepisemo v obliko
max{a1 + x1, c} = max{a′1 + x1, c′1},
kjer je c = max{a2 + x2, . . . , an + xn, b} in c′ = max{a′2 + x2, . . . , a′n + xn, b
′}.Od tu dalje je dokaz enak kot pri trditvi 3.24 za vse koeficiente a1, . . . , an,
a′1, . . . , a′n in b ter b′. �
Primer 3.27. Naj bo max-plus linearen sistem enak(3 2
−∞ 2
)⊗
(x1
x2
)⊕
(1
2
)=
(4 1
1 1
)⊗
(x1
x2
)⊕
(0
3
),
kar po zgornji definiciji lahko prevedemo v kanonsko obliko:
(−∞ 2
−∞ 2
)⊗
(x1
x2
)⊕
(1
−∞
)=
(4 −∞1 −∞
)⊗
(x1
x2
)⊕
(−∞
3
).
22
Dobimo spodnji sistem enacb:
2⊗x2⊕1 = 4⊗x12⊗x2 = 1⊗x1⊕3
}⇒ 4⊗x1 = 1⊗x1⊕3⇒ 4⊗x1 = 3⇒ x1 = −1⇒ x2 = 1.
Zgornji primer je imel resitev, vendar v splosnem ta ne obstaja vedno, lahko
pa tudi ni ena sama.
Poznamo dve vrsti max-plus sistemov linearnih enacb za katere znamo
zagotovo poiskati resitev. To so sistemi oblike x = A⊗x⊕b in A⊗x = b.
V okviru te naloge bom pokazal kako resujemo sisteme oblike A⊗x = b, saj
sistemi oblike x = A⊗x⊕b zahtevajo kar nekaj dodatnega znanja iz teorije
grafov.
Lotimo se torej linearnih sistemov oblike A⊗x = b, kjer je A ∈ Rn×mmax in
b ∈ Rmmax. Na ta nacin smo dobili sistem linearnih enacb, ki bi ga z obicajno
notacijo zapisali v obicajni algebri kot maxj=1,...,n
(aij + xj) = bi za i = 1, . . . ,m.
Primer 3.28. Matricni enacbi−2 2 2
−5 −3 −2
−5 −3 3
−3 −3 2
1 4 6
⊗x1x2x3
=
3
−2
1
0
5
ustreza sistem
max(−2 + x1, 2 + x2, 2 + x3) = 3
max(−5 + x1,−3 + x2,−2 + x3) = −2
max(−5 + x1,−3 + x2, 3 + x3) = 1
max(−3 + x1,−3 + x2, 2 + x3) = 0
max(−1 + x1, 4 + x2, 6 + x3) = 5.
Za resevanje linearnih sistemov enacb bomo potrebovali se operacijo min(a, b),
ki nam vrne manjsega od elementov a in b. Gre za obratno operacijo max(a, b).
Za resevanje teh sistemov bomo vpeljali se pojem podresitev.
Definicija 3.29. Podresitev max-plus linearnega sistema enacb oblike A⊗x =
23
b je tak vektor x ∈ Rnmax, ki zadosca pogoju A⊗x ≤ b, kjer definiramo relacijo
urejenosti na vektorjih kot x ≤ y, ce je x⊕y = y. Oznacili ga bomo oznacili z
x∗.
Naslednji izrek nam pove, da za vsak max-plus linearen sistem lahko naj-
demo maksimalno podresitev, glede na gornjo relacijo urejenosti.
Izrek 3.30. Naj bo A ∈ Rn×mmax in b ∈ Rm
max. Potem obstaja maksimalna
podresitev tega sistema in je podana s predpisom −x∗j = −maxi
(−bi + Aij).
Dokaz: Vidimo, da je
A⊗x ≤ b⇔ ∀i :⊕j
Aij⊗xj ≤ bi
⇔ ∀i, j : xj ≤ bi − Aij
⇔ ∀j : xj ≤ mini
(bi − Aij)
⇔ ∀j : − xj ≤ −maxi
(−bi + Aij) .
Na podoben nacin preverimo se, da po drugi strani velja, da je vektor
−x∗j = −maxi
(−bi + Aij),∀j podresitev. Torej je to najvecja podresitev �
Posledica zgornjega izreka je ta, da lahko pri resevanju sistema oblike
A⊗x = b najprej poiscemo maksimalno podresitev in preverimo ali ustreza
nasi enakosti.
Lema 3.31. Maksimalna podresitev sistema A⊗x = b je resitev sistema na-
tanko tedaj, ko resitev sistema obstaja.
Dokaz: Ce je maksimalna podresitev tudi resitev sistema, potem resitev sis-
tema ocitno obstaja. Obratno, ce resitev sistema obstaja, potem ustreza tudi
A⊗x ≤ b in je hkrati vecja od vseh podresitev, zato je to ravno maksimalna
podresitev. �
Pokazimo uporabo leme na konkretnem zgledu.
Primer 3.32.
A =
(2 0
1 3
), b =
(5
4
)
24
in pripadajoci sistem linearnih enacb je(2 0
1 3
)⊗
(x1
x2
)=
(5
4
).
Z uporabo izreka 2.16. dobimo maksimalno podresitev
x∗ =
(min(5− 2, 5− 0)
min(4− 1, 4− 3)
)=
(3
1
),
ki je tudi resitev sistema A⊗x = b.
3.5 Max-plus kvadratna funkcija in polinomi
V tem razdelku bomo definirali se max-plus kvadratno funkcijo in pokazali
nekaj zgledov teh funkcij.
Definicija 3.33. Max-plus kvadratna funkcija je max-plus funkcija s predpi-
som f(x) = a⊗x2⊕b⊗x⊕c, kjer so a, b, c ∈ Rmax.
V obicajnem zapisu bi zapisali tako funkcijo kot max{2x+ a, x+ b, c}. Po-
glejmo, kako izgleda graf max-plus kvadratne funkcije na konkretnem primeru.
Primer 3.34. Naj bo p(x) = (−1)⊗x2⊕1⊗x⊕2. Iscemo torej max(2x−1, x+
1, 2).
Vrednost p(x) bo najvecja od vrednosti linearnih funkcij f(x) = 2x − 1,
f(x) = x+ 1, f(x) = 2 v tocki x, kar pomeni da bo graf nasega polinoma p(x)
lezal na zgornjih treh odsekih nasih premic.
Slika 9: Graf max-plus kvadratne funkcije p(x) = (−1)⊗x2⊕1⊗x⊕2.
25
Graf kvadratne funkcije je torej praviloma sestavljen iz dveh poltrakov in
daljice. Prvi poltrak lezi na konstanti y = c, daljica na premici y = x+b, drugi
poltrak pa na premici y = 2x + a. To zagotovo velja za nas zgornji primer,
lahko pa se zgodi, da je na grafu kvadratne funkcije samo ena tocka, kjer se
graf prelomi. To pomeni, da k grafu kvadratne funkcije prispevata le dve od
treh funkcij 2x+ a, x+ b ter c.
Trditev 3.35. Ce koeficienti a, b, c ∈ Rmax max-plus kvadratne funkcije zado-
scajo c < 2b− a, potem je graf funkcije sestavljen iz dveh poltrakov in vmesne
daljice. V kolikor pa velja c ≥ 2b − a, je graf funkcije sestavljen le iz dveh
poltrakov.
Dokaz: Dokaz te trditve lahko ponazorimo graficno. Graf kvadratne funkcije,
ki je sestavljena iz dveh poltrakov in vmesne daljice se lomi v dveh tockah.
Naj bo T tocka, kjer se sekata premici y = 2x+ a in y = x+ b. Ce izenacimo
ti dve premici, dobimo vrednost koordinat x = b − a in y = 2b − a. Ce je
vrednost konstante y = c manjsa od vrednosti 2b − a, potem ima graf se eno
tocko, kjer se prelomi. Lezi na presecisci premic y = x+ b in y = c (slika 10).
Ce je c ≥ 2b− a, potem je graf sestavljen le iz dveh poltrakov.
Slika 10: Graf kvadratne funkcije f(x) = a⊗x2⊕b⊗x⊕c.
�
Primer 3.36. Naj bo p(x) = x2⊕x⊕2. Iscemo torej max(2x, x, 2). V tem
primeru se nasa kvadratna funkcija lomi le v eni tocki in jo sestavljata le dva
poltraka. To funkcijo bi pravzaprav lahko zapisali kot f(x) = x2⊕2 in bi dobili
enak graf.
26
Slika 11: Graf polinoma p(x) = x2⊕x⊕2.
Velja se omeniti, kaj se dogaja s max-plus kvadratno funkcijo, ce je kateri
izmed koeficientov a, b in c enak −∞. Poglejmo si vsak primer posebej.
• a = −∞:
V tem primeru velja f(x) = −∞⊗x2⊕b⊗x⊕c = −∞⊕b⊗x⊕c = b⊗x⊕c,torej gre kar za obicajno max-plus linearno funkcijo, ki smo jo obravnavali
v prejsnjem razdelku.
• b = −∞:
Funkcijo zapisemo kot f(x) = a⊗x2⊕(−∞)⊗b⊕c = a⊗x2⊕c. Graf nase
max-plus kvadratne funkcije bo podoben grafu max-plus linearne funk-
cije, le da bo naklon poltraka, ki lezi na premici y = a⊗x2 enak 2.
Podoben graf smo obravnavali v primeru 3.36.
• c = −∞:
V tem primeru dobimo kvadratno funkcijo f(x) = a⊗x2⊕b⊗x, kar po-
meni, da bo graf funkcije sestavljen iz dveh poltrakov, ki lezita na pre-
micah y = 2x + a in y = x + b s skupnim izhodiscem, kjer se premici
sekata.
• a, b = −∞:
V tem primeru dobimo funkcijo oblike f(x) = −∞⊗x2⊕(−∞)⊗x⊕c = c.
Graf te funkcije bo torej konstantna funkcija s predpisom f(x) = c.
• a, c = −∞:
Funkcijo lahko torej zapisemo kot f(x) = −∞⊗x2⊕b⊗x⊕(−∞) = b+x.
Graf nase max-plus kvadratne funkcije bo graf obicajne linearne funkcije
s predpisom f(x) = b+ x.
27
• b, c = −∞:
V tem primeru je f(x) = 2x+ a obicajna linearna funkcija.
• a, b, c = −∞: V kolikor so vsi koeficienti enaki −∞ gre ocitno za kon-
stantno funkcijo f(x) = −∞.
Podobno kot smo definirali max-plus linearno in kvadratno funkcijo lahko
definiramo tudi polinomske funkcije visjih stopenj. Za max-plus polinome je
mogoce dokazati, da se da vsakega zapisati kot produkt linearnih faktorjev,
torej da osnovni izrek algebre drzi tudi za max-plus polinome, a to presega
okvir te naloge(glej npr. [1]).
3.6 Zgledi uporabe
Max-plus algebra je bila prvic omenjena v petdesetih letih prejsnjega stoletja.
Od takrat je nasla svoje mesto na vec matematicnih podrocjih, kot so optimiza-
cija, kombinatorika in podobno. Prav tako se je uveljavila v nacrtovanju proi-
zvodnih sistemov, komunikacijskih omrezjih, transportnih sistemih in preuceva-
nju drugih splosnih diskretnih sistemov dogodkov. V tem poglavju bom na
prakticnih primerih predstavil nekaj zgledov uporabe max-plus algebre in vsega
kar smo spoznali do sedaj. Primera sta povzeta po [3] in [7].
3.6.1 Vlaki
Zamislimo si zeleznisko omrezje med dvema mestoma. Zelezniski postaji v
mestih oznacimo s P1 v prvem mestu in P2 v drugem. Postaji sta povezani
z dvema tiroma, enim v eno smer, drugim v drugo, vsaka ima pa se svoj tir,
ki povezuje predmestji vsakega mesta. Cas potovanja po posamezni poti je
oznacen na sliki 12. Zanima nas, kako bi oblikovali optimalni vozni red, ce so
potovalni casi na vseh linijah fiksni in podani, pogostost vlakov pa naj bo cim
vecja in enako porazdeljena po vseh stirih tirih. Vlaki pa morajo na postaji
pocakati en na drugega, da lahko potniki prestopijo.
Na zacetku imamo 4 vlake, po dva na vsaki postaji. Eden vozi proti drugi
postaji, eden pa oskrbuje predmestje, pri cemer oba startata hkrati. Oznacimo
z x1 odhod obeh vlakov s postaje P1 in z x2 odhod vlakov s postaje P2. Skupaj
so tako odhodni casi zapisani kot vektor x ∈ R2. Prvi odhod vlakov oznacimo
z x(0), kar pomeni, da x1(0) pomeni zacetni odhod vlakov s postaje P1 in x2(0)
zacetni odhod vlakov s postaje P2.
28
Slika 12: Zeleznisko omrezje med dvema mestoma.
Oznacimo k-ti odhod rekurzivno z x(k−1). Ti odhodi so dogodki v nasem
modelu. Sedaj lahko oznacimo k+1 odhod vlakov iz postaje P1 kot najdaljsega
izmed casov k-tega odhoda prvega vlaka iz postaje P1 okoli predmestja in
k-tega odhoda drugega vlaka iz postaje P2 do postaje P1. Case potovanja
oznacimo z aij, kjer je j zacetna postaja in i koncna. Sledi, da bo cas x1(k+1)
odhod vlakov iz postaje P1 enak max(x1(k) + a11, x2(k) + a12) in cas x2(k+ 1)
odhod vlakov iz postaje P2 enak max(x1(k) +a21, x2(k) +a22). Dobimo sistem
enacb
x1(k + 1) = max(x1(k) + 3, x2(k) + 3),
x2(k + 1) = max(x1(k) + 4, x2(k) + 2).
Iz tega sistema lahko naredimo matriko A =
(3 3
4 2
)in z zacetnima casoma
odhodov x(0) =
(0
0
)so vsi nadaljni odhodi enolicno doloceni, saj je
x(1) = A⊗x(0), x(2) = A⊗x(1) = A⊗A⊗x(0) = A2⊗x(0), . . . , x(k) = Ak⊗x(0).
Seveda bi lahko zacetni cas x(0) dolocili tudi drugace, na primer x(0) =(1
0
). Lahko bi dodali tudi poljubno stevilo postaj in sistem resevali na podo-
ben nacin.
3.6.2 Proizvodnja
Proizvodno linijo sestavlja vec strojev. Na delo vsakega stroja vpliva delo dru-
gih strojev. Tak sistem lahko podamo z dvema parametroma, in sicer zacetnim
casom delovanja vsakega stroja in matriko, ki nam pove ali posamezen stroj
caka na delo drugega in kako dolgo caka na druge stroje, preden nadaljuje z
29
delom. Poglejmo si primer proizvodnje s stirimi stroji s pripadajoco matriko
A =
3 4 −∞ 8
2 5 2 −∞4 6 3 4
−∞ 3 0 6
in pripadajocim digrafom D(A) na sliki 13.
Slika 13: D(A).
Zacetni casi delovanja vseh stirih strojev naj bodo enaki x(0) = [0, 0, 0, 0]ᵀ.
Zanima nas zacetni cas delovanja posameznega stroja po petih obratih. Ocitno
se na prvem koraku stroji ne cakajo, tako da bodo zacetni casi delovanja strojev
enaki vrednostim na diagonali matrike A, torej x(1) = [3, 5, 3, 6]ᵀ. Nas zanima,
koliko bo x(5). Podobno kot v primeru z vlaki lahko sklepamo, da bo to enako
A5⊗x(0) = A4⊗x(1).
A4 =
19 23 20 26
17 20 17 22
18 21 18 24
17 21 18 24
⇒
19 23 20 26
17 20 17 22
18 21 18 24
17 21 18 24
⊗
3
5
3
6
=
32
28
30
30
Zacetni casi obratovanja strojev po petih korakih bodo za nase stiri stroje
enaki x(5) = [32, 28, 30, 30]ᵀ.
30
4 Zakljucek
V tem diplomskem delu sem predstavil max-plus polkolobar, algebrsko struk-
turo s posebej zanimivimi karakteristikami. Definiral in opisal sem njene
osnovne algebrske lastnosti in predstavil matematicne pojme analognim ti-
stim, ki jih poznamo ze iz obicajne algebre, kot so vektorji in matrike, linearne
enacbe, linearni sistemi enacb in polinomi. Za vse te pojme sem v drugem
sklopu predstavil ze poznanim matematicnim zakonom sorodne zakone, kot
so mnozenje matrik, resevanje linearnih enacb in resevanje linearnih sistemov
enacb.
Prav tako sem definiral krivulje prvega in drugega reda in jih graficno pred-
stavili. Predstavil sem nekaj prakticnih primerov uporabe max-plus algebre
in pokazal njeno moc pri resevanju razlicnih sistemov, kot so transportni in
proizvodni, kjer je pomembno zaporedje dogodkov. Te sisteme smo pretvorili
v linearen sistem in jih resili s pomocjo trditev iz max-plus algebre. Kljub
vsemu je v tem delu opisan le delcek vsega o max-plus algebri. Prav tako je
z max-plus algebro povezano se veliko teorije s podrocja grafov, kar pa bi bilo
tudi zanimivo raziskati v nadaljnem raziskovanju.
31
Literatura
[1] Bacceli F., Cohen G., Olsder G. J., Quadrant J.-P., Synchronization and
Linearity, Wiley, 1992.
[2] P. Butkovic, Max-linear Systems: Theory and Algorithms, Springer Mo-
nographs in Mathematics 151, 2010.
[3] Heidergott B., Olsder G. J., Woude J. V. D., Max Plus at Work, Princeton
University Press, 2006.
[4] De Schutter B., Van Den Boom T., Max-plus algebra and max-plus linear
discrete event systems: An introduction. Event London, 19, p.36-42. 2008.
[5] Speyer D., Sturmfels B., Tropical Mathematics. Mathematics Magazine,
82(July), p.15, 2004.
[6] Farlow K. G., Max-Plus Algebra, at Automatisierungstechnik, 53(Novem-
ber), p.A5-A8, 2005.
[7] Akian M., Bapat R., Gaubert S., Discrete Mathematics and Its Applica-
tions, Volume 39, Chapter 25, Chapman and Hall, 2007.
32