1 / 48

Problem asignacije

Problem asignacije. Specijalni problem linearnog programiranja. Jednostavan primjer.

ulf
Download Presentation

Problem asignacije

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Problem asignacije Specijalni problem linearnog programiranja

  2. Jednostavan primjer Ivan, Marko, Luka i Juraj kandidati su za četiri posla. Svaki od njih treba određeno vrijeme da obavi poslove. Vrijeme potrebno osobama da obave poslove dano je u tablici. Potrebno je napraviti raspored osoba na poslove tako da je ukupna efikasnost optimalna.

  3. Tablica

  4. Jedan mogući pristup: nađemo sve moguće rasporede osoba na poslove, izračunamo ukupno vrijeme rasporeda i izaberemo najmanje Nekoliko rasporeda Ukupno vrijeme 8+18+7+6=29 8+18+13+10=49 8+12+14+6=40 Vi dalje popunjavajte…

  5. Ovo nisu svi rasporedi. Koliko ih ima?Ima ih 4!=1x2x3x4=24, koliko je permutacija od 4 broja. Ako je broj osoba i poslova 5, broj rasporeda je 5!=120. 20!=2432902008176640000. Malo previše za nabrajanje stoga mijenjamo pristup.

  6. Mijenjamo pristup Svaka osoba je najbolja na nekom poslu. Svaki posao ima najboljeg radnika. Pogledajmo!

  7. Svaki od kandidata najbolji je na nekom poslu i to smo napisali u zadnjem stupcu. Na svakom poslu je najbolji netko od kandidata i to piše u zadnjem retku

  8. Označimo:u i=min broj u i-tom retku, i=1,2,3,4 Od svakog retka oduzmimo njegov najmanji element. Time dobivamo barem jednu 0 u svakom retku. Postupak slijedi…

  9. U zadnjem stupcu je najmanji element retka

  10. Polje s nulom u retku? U prvom retku je Ivan i on je najbolji tamo gdje je 0 u prvom retku. A Marko? Tražim nule u drugom retku…

  11. Pogled na poslove! Koji posao bi poželio neku od navedenih osoba? Označimo s v j minimalan broj u stupcu pa potom od svakog stupca oduzmimo njegov minimalni element. Time dobivamo barem jednu nulu u svakom stupcu. Postupak…

  12. Sada u svakom stupcu odredimo njegov minimalni element…

  13. Sada od svakog stupca oduzimamo njegov minimalni element. Time dobivamo barem jednu nulu u svakom stupcu.

  14. Prva reducirana matrica Dobili smo matricu u kojoj su svi elementi nenegativni. Također imamo barem jednu nulu u svakom retku i svakom stupcu. Polja s nulama su kandidati za pridruživanje osoba poslovima. Ako je neka osoba dobila određeni posao, izostavljamo redak osobe i stupac posla iz preostalog razmatranja. Preostale osobe i preostali poslovi se još trebaju pridružiti. Radi toga tražimo redak s jednom 0. Tu nulu asigniramo, preostale nule u stupcu prekrižimo. Postupak nastavljamo s preostalim recima. Analogan postupak primjenjiv je i na stupce. Ako u tom postupku nad nulama dobijemo kompletnu asignaciju, STOP, dobiveno rješenje je optimalno.

  15. Optimalno rješenje Ivan dobiva prvi posao. Marko dobiva drugi posao. Luka dobiva treći posao. Juraj dobiva četvrti posao. Ukupno vrijeme od ovog rasporeda osoba na poslove je najmanje i jednako je 39.

  16. Ovaj primjer je jednostavan i lako je dobiveno optimalno rješenje. Iz prve reducirane matrice odredili smo optimalno rješenje. Postoje primjeri u kojima treba naći drugu reduciranu matricu, treću ... Idemo na formuliranje općeg problema asignacije…

  17. Osnovni elementi Imamonposlova i n osoba. Poznata je efikasnost osobe i na poslu j, označimo je Cij, i=1,…,n;j=1,…,n. Pretpostavke: Svaka osoba može biti dodijeljena na jedan posao Na svakom poslu je potreban samo jedan radnik.

  18. Cilj Treba naći raspored osoba na poslove koji daje optimalnu ukupnu efikasnost. Varijabla odluke je xiji može imati samo dvije vrijednosti, 0 ili 1. Zovemo je binarnavarijabla. xij =1 ako osoba i je dodijeljena poslu j xij =0 inače

  19. Ograničenja Svaka osoba može biti dodijeljena na jedan posao pa za svaku osobu imamo jedno ograničenje. Ograničenje za osobu i x i1+xi2+…+x in=1, i=1,2,…,n. Svakom poslu potreban je jedan radnik. Ograničenje za posao j x 1j+x2j+…+x nj=1, j=1,…,n Imamo n+n=2n ograničenja

  20. Funkcija cilja Funkcija cilja je ukupna efikasnost od rasporeda… Slijedi matematički model

  21. Matematički model problema minimuma

  22. Komentar To je problem cjelobrojnog programiranja, varijable su binarne. Ako uvedemo relaksaciju na način da uvjet cjelobrojnosti varijabli zamijenimo s uvjetom nenegativnosti varijabli dobivamo slijedeći problem

  23. Relaksirani problem

  24. Birkhoff je 1946 dokazao da su ova dva problema ekvivalentna… To znači da optimalno rješenje relaksiranog problema je također optimalno rješenje početnog problema. Radi toga rješavamo relaksirani problem. Uočimo da je to problem transporta u kojem je ponuda svakog ishodišta 1 i potražnja svakog odredišta 1.

  25. Poteškoća Visok stupanj degeneracije. Naime problem ima 2n-1 bazičnu varijablu od kojih je n različito od 0 i jednako 1, a preostale bazične varijable imaju vrijednost 0. Radi toga razvijena je posebna metoda, MAĐARSKA METODA. Autor je H.W. Kuhn, prema radovima mađarskih matematičara: E. Egerváry i D. Kőnig

  26. Mađarska metoda 1. Prva reducirana matrica 2. Asignacija maksimalnog broja 0 3. Ako je kompletna STOP Ako nije kompletna idi na 4. Drugu reduciranu matricu, ponovi 2…

  27. Primjer 2 • Riješite problem dodjele osoba na poslove kao problem minimuma, ako je poznata matrica osobnih efikasnosti. • Koristite razvijeno mišljenje.

  28. Primjer 3 • Riješite problem dodjele osoba na poslove kao problem minimuma,ako je poznata matrica osobnih efikasnosti. • Koristite razvijeno mišljenje.

  29. Primjer 4 • U jednom pogonu potrebno je obaviti 4 posla. Svi poslovi osim posla 4 mogu se obaviti na svakom od ova 4 stroja. Uz pretpostavku da se svaki posao može obaviti na samo jednom stroju, te da se na jednom stroju može obaviti samo jedan od poslova, odredite raspored poslova na strojeve za koji je utrošeno vrijeme za obavljanje poslova najmanje. Vrijeme za obradu poslova na strojevima (u norma satima) je dano u tablici…

  30. Tablica

  31. Tablica

  32. Optimalno rješenje

  33. Otvoreni problem asignacije • U slučaju da broj osoba i broj poslova nisu jednaki, recimo više je osoba nego poslova, problem se zove otvoreni. • Tada dopisujemo fiktivne poslove, toliko njih koliko je potrebno da se problem zatvori. • Efikasnost osobe na fiktivnom poslu je 0.

  34. Primjer 5 • U pogonu je potrebno obaviti 4 posla. Svi poslovi osim posla 1 mogu se obaviti na svakom od 6 strojeva. Posao 1 ne može se obaviti na stroju 3. Kako treba rasporediti poslove na strojeve da utrošeno vrijeme rasporeda bude najmanje. Vrijeme potrebno za obavljanje poslova na strojevima dano je u tablici. • Riješite također ovaj problem tako da stroj 3 bude iskorišten za obavljanje ovih poslova.

  35. Tablica

  36. Stroj 3 ne mora ali može se koristiti…

  37. Optimalno rješenje

  38. Stroj 3 mora biti uporabljen…

  39. Optimalno rješenje

  40. Dual relaksiranog problema

  41. Problem maksimuma

  42. Ako je M=max {cij:i=1,…n;j=1,…,n} idij=M-cij imamo problem minimuma ekvivalentan problemu maksimuma

  43. Problem asignacije i društveni teorem • Imamo n muškaraca i n žena. • cij je mjera (recimo brojevi od 1 do 10) obostranog zadovoljstva muškarca i i žene j u prosjeku za neku vremensku jedinicu (na primjer dan, godina,… ) koju su proveli zajedno • xij dio vremenske jedinice koju će muškarac i i žena j provesti zajedno.

  44. Pretpostavimo da muškarci i žene ne rade ništa drugo već provode vrijeme (dan) zajedno. Riješite problem tako da ukupna sreća ove dvije skupine ljudi bude najveća. …

  45. Interpretacija ograničenja Prva skupina- svaki muškarac će provesti dan u društvu žena. Druga skupina- svaki žena će provesti dan u društvu muškaraca. Problem Matematički model

  46. Optimalno rješenje (Birkhoff) je xijε{0,1}. To znači svaki muškarac će provesti dan s jednom ženom i svaka žena će provesti dan s jednim muškarcem. Ovo je dokaz da je monogamija optimalan društveni angažman. …

  47. Zamijenimo max s min. Optimalno rješenje je također xijε{0,1}. Ovo je dokaz da monogamija minimizira ukupnu sreću. Ali oprezno…

  48. Komentar…

More Related