Kokonaislukuoptimointi

Samankaltaiset tiedostot
Esimerkkejä kokonaislukuoptimointiongelmista

Lineaarisen kokonaislukuoptimointitehtävän ratkaiseminen

Kuljetustehtävä. Materiaalia kuljetetaan m:stä lähtöpaikasta n:ään tarvepaikkaan. Kuljetuskustannukset lähtöpaikasta i tarvepaikkaan j ovat c ij

Harjoitus 5 ( )

Kombinatorinen optimointi

Malliratkaisut Demot

Harjoitus 5 ( )

Piiri K 1 K 2 K 3 K 4 R R

Luento 7: Kokonaislukuoptimointi

Luento 1: Optimointimallin muodostaminen; optimointitehtävien luokittelu

Harjoitus 6 ( )

Duaalisuus kokonaislukuoptimoinnissa. Mat , Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki

Optimaalisuusehdot. Yleinen minimointitehtävä (NLP): min f(x) kun g i (x) 0 h j (x) = 0

Luento 7: Kokonaislukuoptimointi

Harjoitus 4: Matlab - Optimization Toolbox

Numeeriset menetelmät

6. Luennon sisältö. Lineaarisen optimoinnin duaaliteoriaa

Malliratkaisut Demot

Graafit ja verkot. Joukko solmuja ja joukko järjestämättömiä solmupareja. eli haaroja. Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria

Malliratkaisut Demo 4

Dynaaminen optimointi

Lineaarinen optimointitehtävä

1 Määrittelyjä ja aputuloksia

Malliratkaisut Demot

1 Kertaus. Lineaarinen optimointitehtävä on muotoa:

Malliratkaisut Demo 1

Lineaarinen optimointitehtävä

Numeeriset menetelmät

Demo 1: Branch & Bound

JYVÄSKYLÄN YLIOPISTO. 3. Luennon sisältö

Malliratkaisut Demot

TEKNILLINEN TIEDEKUNTA, MATEMATIIKAN JAOS

Malliratkaisut Demo 4

TIEA382 Lineaarinen ja diskreetti optimointi

14. Luennon sisältö. Kuljetustehtävä. Verkkoteoria ja optimointi. esimerkki. verkkoteorian optimointitehtäviä verkon virittävä puu lyhimmät polut

1 Rajoittamaton optimointi

Luento 1: Optimointimallin muodostaminen; optimointitehtävien luokittelu

Analyysi 1. Harjoituksia lukuihin 1 3 / Syksy Osoita täsmällisesti perustellen, että joukko A = x 4 ei ole ylhäältä rajoitettu.

Liittomatriisi. Liittomatriisi. Määritelmä 16 Olkoon A 2 M(n, n). Matriisin A liittomatriisi on cof A 2 M(n, n), missä. 1) i+j det A ij.

Harjoitus 3 ( )

Lineaarikombinaatio, lineaarinen riippuvuus/riippumattomuus

4. Luennon sisältö. Lineaarisen optimointitehtävän ratkaiseminen Simplex-menetelmä

Optimoinnin sovellukset

Matemaattinen optimointi I -kurssin johdantoluento Prof. Marko M. Mäkelä Turun yliopisto Matematiikan ja tilastotieteen laitos

Insinöörimatematiikka D

Harjoitus 6 ( )

Numeeriset menetelmät TIEA381. Luento 7. Kirsi Valjus. Jyväskylän yliopisto. Luento 7 () Numeeriset menetelmät / 43

Malliratkaisut Demot

Mat Investointiteoria Laskuharjoitus 4/2008, Ratkaisut

IV. TASAINEN SUPPENEMINEN. f(x) = lim. jokaista ε > 0 ja x A kohti n ε,x N s.e. n n

min x x2 2 x 1 + x 2 1 = 0 (1) 2x1 1, h = f = 4x 2 2x1 + v = 0 4x 2 + v = 0 min x x3 2 x1 = ± v/3 = ±a x 2 = ± v/3 = ±a, a > 0 0 6x 2

Harjoitus 3 ( )

Luento 8: Epälineaarinen optimointi

Kanta ja dimensio 1 / 23

Avaruuden R n aliavaruus

Ellipsoidimenetelmä. Samuli Leppänen Kokonaislukuoptimointi. S ysteemianalyysin Laboratorio

Käänteismatriisin ominaisuuksia

Optimointi. Etsitään parasta mahdollista ratkaisua annetuissa olosuhteissa. Ongelman mallintaminen. Mallin ratkaiseminen. Ratkaisun analysointi

Luento 11: Rajoitusehdot. Ulkopistemenetelmät

BM20A5800 Funktiot, lineaarialgebra ja vektorit Harjoitus 4, Syksy 2016

Algoritmit 2. Luento 11 Ti Timo Männikkö

6 Vektoriavaruus R n. 6.1 Lineaarikombinaatio

2. Viikko. CDH: luvut (s ). Matematiikka on fysiikan kieli ja differentiaaliyhtälöt sen yleisin murre.

Ovatko seuraavat väittämät oikein vai väärin? Perustele vastauksesi.

Numeeriset menetelmät

MAY1 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty Julkaiseminen sallittu vain koulun suljetussa verkossa.

Luento 12: Duaalitehtävä. Tarkennuksia Lagrangen kertoimen tulkintaan. Hajautettu optimointi.

x j x k Tällöin L j (x k ) = 0, kun k j, ja L j (x j ) = 1. Alkuperäiselle interpolaatio-ongelmalle saadaan nyt ratkaisu

Luento 9: Yhtälörajoitukset optimoinnissa

Luento 8: Epälineaarinen optimointi

Algoritmit 1. Luento 13 Ti Timo Männikkö

Luento 6: Monitavoitteinen optimointi

Malliratkaisut Demot

Osoita, että täsmälleen yksi vektoriavaruuden ehto ei ole voimassa.

2 Pistejoukko koordinaatistossa

Matriisilaskenta, LH4, 2004, ratkaisut 1. Hae seuraavien R 4 :n aliavaruuksien dimensiot, jotka sisältävät vain

Jälki- ja herkkyysanalyysi. Tutkitaan eri kertoimien ja vakioiden arvoissa tapahtuvien muutosten vaikutusta optimiratkaisuun

Insinöörimatematiikka D

Aalto-yliopiston perustieteiden korkeakoulu Matematiikan ja systeemianalyysin laitos. MS-A0203 Differentiaali- ja integraalilaskenta 2, kevät 2016

Differentiaali- ja integraalilaskenta 2 (CHEM) MS-A0207 Hakula/Vuojamo Kurssitentti, 12.2, 2018, arvosteluperusteet

Valitsemalla sopivat alkiot joudutaan tämän määritelmän kanssa vaikeuksiin, jotka voidaan välttää rakentamalla joukko oppi aksiomaattisesti.

Algoritmit 1. Luento 13 Ma Timo Männikkö

Kokonaislukuoptimointi

Matematiikan peruskurssi (MATY020) Harjoitus 7 to

Koodausteoria, Kesä 2014

1 Lineaariavaruus eli Vektoriavaruus

Insinöörimatematiikka D

y=-3x+2 y=2x-3 y=3x+2 x = = 6

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 3 /

Numeeriset menetelmät

Diskreetti matematiikka, syksy 2010 Harjoitus 7, ratkaisuista

MS-A010{3,4,5} (ELEC*, ENG*) Differentiaali- ja integraalilaskenta 1 Luento 11: Lineaarinen differentiaaliyhtälö

b 1. b m ) + ( 2b Ax) + (b b)

Mat Lineaarinen ohjelmointi

(0 desimaalia, 2 merkitsevää numeroa).

Talousmatematiikan perusteet: Luento 13. Rajoittamaton optimointi Hessen matriisi Ominaisarvot ja vektorit Ääriarvon laadun tarkastelu

Taustatietoja ja perusteita

MATP153 Approbatur 1B Ohjaus 2 Keskiviikko torstai

1 Rajoitettu optimointi I

Talousmatematiikan perusteet: Luento 14. Rajoittamaton optimointi Hessen matriisi Ominaisarvot Ääriarvon laadun tarkastelu

Transkriptio:

Kokonaislukuoptimointi Optimointitehtävät, joissa muuttujat tai osa niistä voivat saada vain kokonaislukuarvoja Puhdas kokonaislukuoptimointitehtävä: Kaikki muuttujat kokonaislukuja Sekoitettu kokonaislukuoptimointitehtävä: Osa muuttujista kokonaislukuja, osa jatkuvia 1

Lineaarinen kokonaislukuoptimointitehtävä: min c T x + d T y kun Ax + Dy b x N n, y 0 missä x = (x 1,..., x n ) T ja y = (y 1,..., y m ) T. Puhdas: n > 0, m = 0 Sekoitettu: n > 0, m > 0 2

0 1-optimointitehtävä: Kokonaislukumuuttujat voivat saada vain arvoja 0 tai 1 Esimerkki: min c T x kun Ax b x 1,..., x n = 0 tai 1 3

Muunnos yleisistä kokonaislukumuuttujista 0 1-kokonaislukumuuttujiin: 0 x j u j = x j = u j x jk k=1 missä x jk = 0 tai 1 kaikilla k = 1,..., u j Toinen vaihtoehto: 0 x j u j = x j = l j k=0 2 k x jk missä x jk = 0 tai 1 kaikilla k = 0,..., l j ja l j on pienin kokonaisluku, jolle on voimassa 2 l j+1 1 uj 4

Mitä jos kokonaislukuoptimointitehtävä ratkaistaan jatkuville tehtäville tarkoitetuilla menetelmillä? Jos saadussa ratkaisussa kaikkien kokonaislukumuuttujien arvot ovat kokonaislukuja, niin ratkaisu on myös kokonaislukuoptimointitehtävän ratkaisu Muuten ratkaisun komponentteja voidaan pyöristää lähimpään kokonaislukuun Pyöristämällä saatu ratkaisu ei kuitenkaan ole välttämättä optimaalinen eikä välttämättä edes sallittu Joissain tehtävissä pyöristystä ei voi käyttää lainkaan 5

Pääoman budjetointiongelma Kulut Projekti Vuosi 1 Vuosi 2 Vuosi 3 Tuotto 1 5 1 8 20 2 4 7 10 40 3 3 9 2 20 4 7 4 1 15 5 8 6 10 30 Varat 25 25 25 Tavoite: Määrää, mitkä projektit toteutetaan, jotta tuotot maksimoituvat 6

x j = 1, jos projekti j toteutetaan 0, jos projektia j ei toteuteta max 20x 1 + 40x 2 + 20x 3 + 15x 4 + 30x 5 kun 5x 1 + 4x 2 + 3x 3 + 7x 4 + 8x 5 25 x 1 + 7x 2 + 9x 3 + 4x 4 + 6x 5 25 8x 1 + 10x 2 + 2x 3 + x 4 + 10x 5 25 x 1, x 2, x 3, x 4, x 5 = 0 tai 1 7

Kapsäkkiongelma Valittavana on n eri tavaraa Tavaran j hyöty on c j ja paino on a j Tavaroiden yhteispaino saa olla korkeintaan b Tavoite: Valitse mukaan otettavat tavarat siten, että niiden yhteishyöty maksimoituu 8

x j = 1, jos tavara j otetaan mukaan 0, jos tavaraa j ei oteta mukaan max kun c j x j a j x j b x j = 0 tai 1 j = 1,..., n 9

Kohdistusongelma Olkoon n eri henkilöä ja n eri työtä Jokainen henkilö suorittaa yhden työn, ja jokaisen työn suorittaa yksi henkilö Kun henkilö i suorittaa työn j, siitä aiheutuu kustannus c ij Tavoite: Kohdista henkilöt töihin siten, että kokonaiskustannukset minimoituvat 10

x ij = 1, jos henkilö i suorittaa työn j 0, muuten min kun i=1 i=1 c ij x ij x ij = 1 x ij = 1 x ij = 0 tai 1 i = 1,..., n j = 1,..., n i = 1,..., n, j = 1,..., n 11

Osajoukko-ongelmat Perusjoukko M = {1,..., m} ja tämän osajoukot M j M, j = 1,..., n Osajoukkojen joukko F peittää perusjoukon, jos j F M j = M Jokaiseen osajoukkoon M j liittyy kustannus c j Minimipeitto-ongelma: Etsi sellainen F, joka peittää perusjoukon ja jonka kokonaiskustannus on mahdollisimman pieni 12

x j = a ij = 1, jos osajoukko j otetaan mukaan 0, jos osajoukkoa j ei oteta mukaan 1, jos i M j 0, jos i / M j min kun c j x j a ij x j 1 x j = 0 tai 1 i = 1,..., m j = 1,..., n 13

Ositusongelma: Etsi sellainen F, joka peittää perusjoukon siten, että jokainen perusjoukon alkio on mukana täsmälleen kerran, ja jonka kokonaiskustannus on mahdollisimman pieni min kun c j x j a ij x j = 1 x j = 0 tai 1 i = 1,..., m j = 1,..., n 14

Jokaiseen osajoukkoon M j liittyy hyöty c j Pakkausongelma: Etsi sellainen F, jossa jokainen perusjoukon alkio saa olla mukana korkeintaan kerran, ja jonka kokonaishyöty on mahdollisimman suuri max kun c j x j a ij x j 1 x j = 0 tai 1 i = 1,..., m j = 1,..., n 15

Sijoitusongelma Olkoon m paikkaa, joihin voidaan perustaa tuotantolaitos, ja olkoon n asiakasta Asiakas j tarvitsee tuotetta määrän d j Paikkaan i perustettavasta tuotantolaitoksesta aiheutuu kiinteä kustannus f i Tuotantolaitoksen i kapasiteetti on M i Jos paikassa i valmistettu tuote kuljetetaan asiakkaalle j, siitä aiheutuu kustannus c ij Tavoite: Määrää ne paikat, joihin laitos perustetaan sekä tuotteen kuljetusmäärät asiakkaille siten, että kokonaiskustannukset minimoituvat 16

x ij = laitoksesta i asiakkaalle j kuljetettava määrä x i = 1, jos paikkaan i perustetaan laitos 0, jos paikkaan i ei perusteta laitosta min kun m i=1 m i=1 c ij x ij + x ij = d j x ij M i x i m i=1 f i x i j = 1,..., n i = 1,..., m x ij 0 i = 1,..., m, j = 1,..., n x i = 0 tai 1 i = 1,..., m 17

Kauppamatkustajan ongelma Olkoon n paikkakuntaa Etäisyys paikkakunnalta i paikkakunnalle j on d ij Käydään kerran jokaisella paikkakunnalla ja palataan takaisin lähtöpaikkaan Tavoite: Määrää paikkakuntien järjestys siten, että kokonaismatka minimoituu 18

x ij = 1, jos mennään paikkakunnalta i paikkakunnalle j 0, muuten min kun i=1 i=1 d ij x ij x ij = 1 x ij = 1 x ij = 0 tai 1 i = 1,..., n j = 1,..., n i = 1,..., n, j = 1,..., n Tässä on kuitenkin mahdollista, että ratkaisu muodostuu useammasta erillisestä renkaasta 19

Tarvitaan lisärajoite, esimerkiksi: i S j S x ij 1 kaikilla joukon N = {1,..., n} epätyhjillä osituksilla (S, S), missä S = N \ S 20

Kiinteät kustannukset Tuotantokustannukset, missä on mukana kiinteät kustannukset k j > 0 : f j (x j ) = 0, jos x j = 0 k j + c j x j, jos x j > 0 Vastaava optimointitehtävä on epälineaarinen: min kun f j (x j ) a ij x j b i x j 0 j = 1,..., n i = 1,..., m 21

Olkoon u j suurin mahdollinen arvo muuttujalle x j, ja y j = 0, jos x j = 0 1, jos x j > 0 Saadaan lineaarinen kokonaislukuoptimointitehtävä: min kun ( cj x j + k j y j ) a ij x j b i i = 1,..., m x j u j y j 0 j = 1,..., n x j 0 j = 1,..., n y j = 0 tai 1 j = 1,..., n 22

Joko tai-rajoitteet Tuotetta joko ei valmisteta lainkaan tai sitä valmistetaan tietty vähimmäismäärä, ts. joko x j = 0 tai l j x j u j Lisätään muuttujat: ja rajoitteet: y j = 0, jos x j = 0 1, jos x j > 0 x j u j y j 0 x j l j y j 0 j = 1,..., n j = 1,..., n 23

Töidenjärjestelyongelma Olkoon n työtä, jotka suoritetaan yhdellä koneella Koneella voi olla vain yksi työ kerrallaan Työn j vaatima aika on a j Työn j on oltava valmis hetkellä d j Tavoite: Määrää töiden suoritusjärjestys siten, että kokonaisaika minimoituu 24

Olkoon x j hetki, jolloin työ j aloitetaan Joko työ i suoritetaan ennen työtä j tai työ j suoritetaan ennen työtä i, ts. joko x i + a i x j tai x j + a j x i Lisätään muuttujat: ja rajoitteet: y ij = 1, jos työ i edeltää työtä j 0, jos työ j edeltää työtä i M(1 y ij ) + x j x i a i i = 1,..., n, j = 1,..., n My ij + x i x j a j i = 1,..., n, j = 1,..., n missä M on riittävän suuri vakio 25

Optimointitehtävä: min t kun x j + a j t j = 1,..., n M(1 y ij ) + x j x i a i i = 1,..., n, j = 1,..., n My ij + x i x j a j i = 1,..., n, j = 1,..., n x j + a j d j j = 1,..., n t 0 x j 0 j = 1,..., n y ij = 0 tai 1 i = 1,..., n, j = 1,..., n 26

Ainakin osa rajoitteista oltava voimassa Vaaditaan, että rajoitteista a ij x j b i i = 1,..., m on voimassa ainakin k kappaletta, mutta ei ole väliä mitkä niistä Olkoon u i rajoitteen i yläraja, ts. aina on voimassa n a ij x j u i kaikilla i = 1,..., m 27

Lisätään muuttujat: y i = 1, rajoite i on voimassa 0, rajoite i ei ole voimassa ja korvataan rajoitteet seuraavilla: m i=1 a ij x j b i + u i (1 y i ) y i k i = 1,..., m 28

Muuttujalla tietty määrä mahdollisia arvoja Muuttuja x j voi saada arvokseen yhden k:sta mahdollisesta arvosta d 1,..., d k Lisätään muuttujat: y ij = 1, muuttuja j saa arvon d i 0, muuten sijoitetaan x j = k i=1 d i y ij, ja lisätään rajoitteet: k i=1 y ij = 1 j = 1,..., n 29

Paloittain lineaarinen funktio Olkoon funktio f separoituva, ts. f(x 1,..., x r ) = r f j (x j ) Olkoon jokainen f j paloittain lineaarinen siten, että sen kuvaaja kulkee pisteiden (a i, f j (a i )), i = 1,..., p, kautta Jos x j kuuluu osavälille [a i, a i+1 ], niin se voidaan esittää muodossa x j = λ i a i + λ i+1 a i+1 missä 0 λ i 1, 0 λ i+1 1 ja λ i + λ i+1 = 1 30

Tällöin myös f j (x j ) = λ i f j (a i ) + λ i+1 f j (a i+1 ) = f j (x j ) = p i=1 λ i = 1 p i=1 λ i f j (a i ) 0 λ i 1 i = 1,..., p enintään kaksi vierekkäistä λ i :tä on positiivisia 31

Enintään kaksi vierekkäistä λ i :tä on positiivisia λ 1 y 1 λ i y i 1 + y i i = 2,..., p 1 λ p y p 1 p 1 y i = 1 i=1 y i = 0 tai 1 i = 1,..., p 1 32

Kvadraattinen kohdistusongelma Olkoon n alkiota joukossa A ja toiset n alkiota joukossa B Jokainen joukon A alkio liitetään yhteen joukon B alkioon, ja jokainen joukon B alkio liitetään yhteen joukon A alkioon Kun alkio i A liitetään alkioon j B ja alkio k A liitetään alkioon l B, siitä aiheutuu kustannus c ijkl Tavoite: Liitä alkiot toisiinsa siten, että kokonaiskustannukset minimoituvat 33

x ij = 1, jos alkio i A liitetään alkioon j B 0, muuten min kun i=1 k=1 l=1 i=1 x ij = 1 x ij = 1 x ij = 0 tai 1 c ijkl x ij x kl i = 1,..., n j = 1,..., n i = 1,..., n, j = 1,..., n 34

Esimerkki kvadraattisesta kohdistusongelmasta: Olkoon A joukko tehtaita ja B joukko sijoituspaikkakuntia Tehtävänä on siis sijoittaa n tehdasta n:lle paikkakunnalle Tavoite: minimoida tehtaiden väliset kommunikointikustannukset, jotka riippuvat kommunikoinnin määrästä kunkin tehdasparin välillä sekä tehtaiden välisistä etäisyyksistä Olkoon e ik = tehtaiden i ja k välisen kommunikoinnin määrä ja d jl = kommunikointikustannus yhtä yksikköä kohden paikkakuntien j ja l välillä Tällöin e ik d jl on kommunikoinnin kustannus tehtaiden välillä 35