home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 February / Chip_2001-02_cd1.bin / obsahy / Chip_txt / TXT / 146-148.TXT < prev    next >
Encoding:
Text File  |  2000-12-27  |  12.5 KB  |  138 lines

  1. ╪eÜenφ optimalizaΦnφch ·loh v Excelu
  2. Nejen tabulky a grafy
  3. MatematickΘ modelovßnφ ekonomick²ch jev∙ mß dlouhodobou historii, jejφ₧ poΦßtky spadajφ u₧ do sedmnßctΘho a osmnßctΘho stoletφ. V pr∙b∞hu druhΘ sv∞tovΘ vßlky byly matematickΘ modely vyu₧φvßny hlavn∞ pro vßleΦnΘ ·Φely. Odtud je takΘ odvozen p∙vodnφ nßzev tohoto v∞dnφho odv∞tvφ (Operation Research, v ΦeskΘm p°ekladu operaΦnφ v²zkum).
  4.  
  5. Jednou z nejstarÜφch disciplφn operaΦnφho v²zkumu je lineßrnφ programovßnφ. Vypl²vß to z pom∞rn∞ jednoduchΘho matematickΘho aparßtu, kter² je pou₧φvßn k °eÜenφ matematick²ch model∙ ·loh lineßrnφho programovßnφ. Tyto modely jsou optimalizaΦnφ, tj. ze vÜech mo₧n²ch °eÜenφ problΘmu hledajφ °eÜenφ podle urΦitΘho kritΘria nejlepÜφ (optimßlnφ). 
  6. Formulaci optimalizaΦnφho modelu lze rozd∞lit do dvou fßzφ. V prvnφ fßzi formulace tvo°φme ekonomick² model, ve kterΘm °eÜen² problΘm po d∙kladnΘ anal²ze definujeme a popisujeme ekonomick²mi termφny. Formulace ekonomickΘho modelu vy₧aduje d∙kladnou znalost modelovanΘ skuteΦnosti a je v∞tÜinou zßle₧itostφ zkuÜen²ch odbornφk∙ z praxe. 
  7. Ve druhΘ fßzi formulujeme na zßklad∞ ekonomickΘho modelu matematick² model, kter² pak °eÜφme pomocφ Excelu.
  8. Je velice efektivnφ, kdy₧ vÜechny tyto fßze zvlßdne jedna osoba (nap°. mana₧er). Cel² proces se tφm podstatn∞ zrychlφ, proto₧e odpadß komunikace mezi odbornφkem z praxe a matematikem. Mana₧er, kter² nejlΘpe znß problΘm, si sßm sestavφ ekonomick² a matematick² model. Matematick² model pak vy°eÜφ jednoduÜe pomocφ Excelu a zφskanΘ v²sledky pou₧ije pro optimßlnφ rozhodovßnφ.
  9.  
  10. Model lineßrnφ ·lohy
  11. Lineßrnφ ·lohou rozumφme optimalizaΦnφ problΘm hledßnφ extrΘmu (maxima nebo minima) lineßrnφ funkce na mno₧in∞ nezßporn²ch °eÜenφ soustavy lineßrnφch rovnic nebo nerovnic.
  12.  
  13. Tedy p°i zavedenφ oznaΦenφ pro danß reßlnß Φφsla
  14.  
  15. aij à strukturnφ koeficient
  16. cjà. cena jednotky j-tΘ prom∞nnΘ
  17. xjà. strukturnφ prom∞nnß vyjad°ujφcφ ·rove≥ j-tΘ prom∞nnΘ
  18. bià. pravß strana i-tΘho omezenφ               
  19. Ri  . . . relaΦnφ operßtor (jeden ze symbol∙ (, (, ()        (1 (  i  ( m, 1 (  j  ( n)
  20.  
  21. je mo₧nΘ danou ·lohu formulovat takto:  na mno₧in∞ °eÜenφ lineßrnφ soustavy
  22.  
  23.     a11 + a12 + à +  a1nxn       R1      b1 
  24.     a21 + a22 + à +  a1nxn        R2      b2                     
  25. .    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                        (2.1)
  26. am1 + am2 + à +  amnxn      Rm      bm 
  27.     
  28.                     xj             (        0                             (1 (  j  ( n)            (2.2)
  29.  
  30. hledßme extrΘm lineßrnφ funkce
  31.  
  32.     c1x1  + c2x2 + à + cnxn.                                            (2.3)
  33.  
  34. Jednß-li se o maximum, mluvφme o maximalizaΦnφ ·loze lineßrnφho programovßnφ ve smφÜenΘm tvaru, v p°φpad∞ minima o minimalizaΦnφ ·loze. Lineßrnφ  funkci  (2.3) naz²vßme ·Φelovß funkce.
  35. Vektor x = (x1, x2,à, xn )T, kter² vyhovuje vÜem omezujφcφm podmφnkßm  (2.1)  i (2.2), naz²vßme p°φpustnΘ °eÜenφ ·lohy lineßrnφho programovßnφ. Optimßlnφ °eÜenφ ·lohy je p°φpustnΘ °eÜenφ maximalizujφcφ Φi minimalizujφcφ hodnotu ·ΦelovΘ funkce (2.3).
  36. ┌loha lineßrnφho programovßnφ mß obvykle jedno optimßlnφ °eÜenφ. Je vÜak mo₧nΘ nalΘzt vφce ne₧ jedno optimßlnφ °eÜenφ, tedy vφce r∙zn²ch vektor∙ x(k) =(x1(k), x2(k),à, xn(k) )T, pro n∞₧ nab²vß ·Φelovß funkce stejnΘ hodnoty. V takovΘm p°φpad∞ existuje teoreticky nekoneΦn∞ mnoho optimßlnφch °eÜenφ. M∙₧e vÜak nastat i p°φpad, kdy optimßlnφ °eÜenφ neexistuje. Nap°φklad tehdy, hledßme-li extrΘm neomezenΘ funkce na neomezenΘ mno₧in∞ p°φpustn²ch °eÜenφ ( ·loha pak mß nekoneΦn∞ mnoho koneΦn²ch optimßlnφch °eÜenφ) nebo vzhledem k zadßnφ omezujφcφch podmφnek je mno₧ina p°φpustn²ch °eÜenφ prßzdnß, tedy nemß-li ·loha p°φpustnΘ °eÜenφ, nemß ani optimßlnφ. Je proto t°eba podstat∞ ·lohy a jejφ formulaci v∞novat mimo°ßdnou pozornost.
  37.  
  38. Formulace optimalizaΦnφho modelu
  39. Chceme-li objektivn∞ urΦit nejv²hodn∞jÜφ °eÜenφ rozhodovacφ situace, je t°eba sprßvn∞ analyzovat a popsat danou skuteΦnost. P°edpokladem je samoz°ejm∞ mφt dostatek pot°ebn²ch a kvalitnφch informacφ o °eÜenΘm problΘmu. 
  40. Uv∞domme si, ₧e matematick² model je urΦit²m zjednoduÜenφm modelovanΘ skuteΦnosti. P°ed jeho formulacφ proto musφme peΦliv∞ uvß₧it, kterΘ vztahy z modelovanΘ skuteΦnosti do n∞ho zahrneme a kterΘ vynechßme. Nepoda°φ-li se nßm vystihnout skuteΦnou situaci, °eÜφme vlastn∞ jin² problΘm. Potom nemusφ b²t zφskanΘ v²sledky (by¥ sprßvnΘ) pou₧itelnΘ v praxi. Je tedy rozhodujφcφ zvß₧it, kterß hlediska jsou pro vy°eÜenφ naÜeho ·kolu d∙le₧itß. Hledßnφ optimßlnφho °eÜenφ ·lohy lze rozd∞lit do n∞kolika etap:
  41.  
  42. 1. Formulace ekonomickΘho a matematickΘho modelu
  43. 2. V²poΦet optimßlnφho °eÜenφ
  44.  
  45. P°i tvorb∞ ekonomickΘho modelu analyzujeme obsah ·lohy a popisujeme procesy ·lohy û Φinnosti p°i vhodn∞ zvolenΘ jednotkovΘ ·rovni. Dßle formulujeme cφl ·lohy. Cφl v ekonomickΘm modelu stanovφ kritΘrium, podle kterΘho posuzujeme vhodnost nebo nevhodnost jednotliv²ch Φinnostφ. Vybereme omezujφcφ podmφnky, tedy Φinitele ekonomickΘho modelu. 
  46. Je tedy t°eba stanovit:
  47. 1.vÜechny Φinnosti, kterΘ v modelovanΘ skuteΦnosti probφhajφ a kterΘ pova₧ujeme za podstatnΘ (nap°. v²roba urΦitΘho v²robku, p°eprava zbo₧φ po urΦitΘ trase, rozd∞lenφ pracovnφk∙ na pracoviÜt∞ apod.);
  48. 2.vÜechny podmφnky (tzv. Φinitele ekonomickΘho modelu), kter²mi jsou tyto Φinnosti ovliv≥ovßny:
  49. podmφnky na stran∞ vstupu (nap°. zßsoby surovin, mno₧stvφ strojovΘho Φasu, spot°eba energie, poΦet pracovnφk∙ apod.),
  50. podmφnky na stran∞ v²stupu (nap°. maximßlnφ odbyt v²robk∙, minimßlnφ po₧adovanΘ mno₧stvφ produktu apod.);
  51. 3.  cφl, kterΘho chceme realizacφ Φinnosti dosßhnout:
  52. maximalizace nebo minimalizace hodnoty urΦitΘho ekonomickΘho ukazatele (nap°. zisk, nßklady, tr₧ba, poΦet v²robk∙ apod.).
  53.  
  54. P°i tvorb∞ matematickΘho modelu popφÜeme rozhodovacφ  situaci matematicky, p°itom vychßzφme z ji₧ formulovanΘho ekonomickΘho modelu. UrΦφme prom∞nnΘ, omezenφ a ·Φelovou funkci:
  55. 1.ka₧dΘ Φinnosti v ekonomickΘm modelu p°i°adφme jednu prom∞nnou, pro tuto prom∞nnou i podmφnku nezßpornosti;
  56. 2.ka₧dΘ podmφnce, tedy tzv. Φiniteli ekonomickΘho modelu, p°i°adφme nerovnici (s operßtory (, (), pop°. rovnici;
  57. 3.formulujeme ·Φelovou funkci, kterß je matematick²m vyjßd°enφm hledanΘho cφle.
  58.  
  59. Pro p°evedenφ ekonomickΘho modelu do matematickΘho lze vyu₧φt i tabulky:
  60.  
  61. Ekonomick² modelMatematick² modelΦinnostprom∞nnßpodmφnkaomezenφcφl·Φelovß funkcePostup si ilustrativn∞ ukß₧eme na jednoduchΘm p°φklad∞.
  62.  
  63. Mßme navrhnout takov² v²robnφ program, kter² zabezpeΦφ nejvyÜÜφ zisk z v²roby a prodeje v²robk∙ A a B p°i omezenΘm disponibilnφm mno₧stvφ suroviny S (24 000 kg), p°i omezenΘm vyu₧itelnΘm ΦasovΘm fondu za°φzenφ K (32 000 hodin) a p°i omezenΘm poΦtu pracovnφk∙ P (disponibilnφ Φasov² fond je 12 000 hodin). Po₧adujeme dßle, vzhledem k smluvnφm zßvazk∙m, v²robu alespo≥ 20 kus∙ v²robk∙ A.
  64. Norma spot°eby surovin S Φinφ 6 kg na jeden v²robek A, 4 kg  na jeden v²robek B. Na za°φzenφ K je  jeden v²robek A opracovßvßn Φty°i hodiny, jeden v²robek B osm hodin. Souhrnnß norma Φasu pracovnφk∙ P na zhotovenφ jednoho v²robku A je dv∞ hodiny, stejn∞ jako na zhotovenφ jednoho v²robku B. Zisk z  jednoho v²robku A je 8 KΦ, z jednoho v²robku B 10 KΦ. P°edpoklßdßme, ₧e vÜechny vyrobenΘ v²robky prodßme.
  65.  
  66. V ekonomickΘm modelu nejd°φve popφÜeme vÜechny Φinnosti a vybereme omezujφcφ podmφnky, kterΘ je bezpodmφneΦn∞ nutnΘ zahrnout do modelu. P°i posouzenφ naÜφ ·lohy z v∞cnΘho hlediska dosp∞jeme k zßv∞ru, ₧e jde vlastn∞ o sestavenφ takovΘho v²robnφho programu, kter² p°i omezen²ch disponibilnφch mno₧stvφch n∞kter²ch Φinitel∙ zabezpeΦφ nejvyÜÜφ zisk a zajistφ produkci urΦitΘho poΦtu v²robk∙. V²robnφ program zahrnuje v²robu v²robk∙ A a B. Mßme tedy urΦit takovß mno₧stvφ v²robk∙ A a B, kterß m∙₧eme z dan²ch Φinitel∙ vyrobit, a chceme, abychom dosßhli maximßlnφho zisku.
  67.  
  68. Poznßmka: DφlΦφ procesy ·lohy jsme popisovali pro v²robu a prodej jednoho v²robku A nebo B. Procesy vÜak m∙₧eme popsat i p°i zcela jinΘ veliΦin∞, ne₧ jakou je mno₧stvφ vyrßb∞n²ch v²robk∙. Mno₧stvφ, p°i kterΘm popisujeme procesy v ·loze, naz²vßme jednotkovß ·rove≥ proces∙.
  69. Zvolenß jednotkovß ·rove≥ se nemusφ liÜit pouze kvantitativn∞. M∙₧e jφt o zcela jinou veliΦinu, kterou zvolφme za zßklad popisu proces∙ û Φinnostφ. Nap°φklad v naÜφ ·loze bychom mohli zvolit za jednotkovou ·rove≥ dosa₧enφ jednΘ koruny zisku p°i p°em∞n∞ Φinitel∙ S, K, P na Z.
  70.  
  71.                  Ekonomick² model danΘ ·lohy
  72.  
  73. Omezenφ╚innosti┌rove≥JednotkyABSurovina S6424000kg╚asov² fond K4832000hodPoΦet pracovnφk∙ P2212000hodZisk810maxKΦP°i formulaci matematickΘho modelu vychßzφme z ji₧ formulovanΘho ekonomickΘho modelu:1.ka₧dΘ Φinnosti v ekonomickΘm modelu p°i°adφme jednu prom∞nnou, pro tuto prom∞nnou i podmφnku nezßpornosti;
  74. 2.ka₧dΘ podmφnce, tedy tzv. Φiniteli ekonomickΘho modelu, p°i°adφme nerovnici (s operßtory (, (), pop°. rovnici;
  75. 3.formulujeme ·Φelovou funkci, kterß je matematick²m vyjßd°enφm hledanΘho cφle.
  76.  
  77. Formulujme nynφ matematick² model ·lohy. 
  78. Podle schΘmatu p°i°adφme jednotliv²m komponentßm ekonomickΘho modelu jejich ekvivalenty matematickΘho modelu. 
  79. Dv∞ma Φinnostem odpovφdß zavedenφ dvou prom∞nn²ch:
  80. x1 vyjad°uje poΦet vyroben²ch kus∙ v²robk∙ A, 
  81. x2 vyjad°uje poΦet vyroben²ch kus∙ v²robk∙ B. 
  82. Dßle je zapot°ebφ matematicky vyjßd°it omezenφ, kterß se t²kajφ disponibility suroviny S, ΦasovΘho fondu za°φzenφ K a poΦtu pracovnφk∙ P:
  83.  
  84. 6x1 + 4x2 (  24 000
  85. 4x1 + 8x2 (  32 000
  86. 2x1 + 2x2 (  12 000
  87.  
  88. Uv∞domme si vÜak, ₧e hledßme poΦet v²robk∙, tedy  pouze nezßpornß °eÜenφ tΘto soustavy. Je proto t°eba omezit i prom∞nnΘ, kterΘ tento poΦet vyjad°ujφ. Prom∞nnou  x1 vÜak omezujeme hodnotou 20, nebo¥ je po₧adovßno vyrobit (viz smluvnφ zßvazky) minimßln∞ 20 kus∙ v²robk∙. Proto
  89.  
  90. x1 ( 20
  91. x2 ( 0 
  92.  
  93. Matematick² model tedy p°edstavuje nßsledujφcφ formulace:
  94.  
  95. max  z = 8x1 + 10x2
  96.  
  97. na mno₧in∞ °eÜenφ soustavy:
  98.  
  99. 6x1 + 4x2 (  24 000
  100. 4x1 + 8x2 (  32 000
  101. 2x1 + 2x2 (  12 000
  102.                  x1         (  20
  103.                       x2  (   0 
  104.  
  105. ╪eÜenφ optimalizaΦnφho modelu
  106. NaÜi ·lohu vy°eÜφme v Excelu nßstrojem ╪eÜitel.  Do novΘho listu  p°ichystßme v²chozφ ·daje podle tabulky ekonomickΘho modelu. Do bun∞k E2, E3 a E4 zapφÜeme vzorce skuteΦnΘ spot°eby suroviny S, ΦasovΘho fondu za°φzenφ K a ΦasovΘho fondu pracovnφk∙ P s odkazem na bu≥ky B6 a C6, do nich₧ bude spoΦteno mno₧stvφ vyrßb∞n²ch v²robk∙ A a B. Do bu≥ky E5 p°ichystßme vzorec pro v²poΦet dosa₧enΘho zisku. (Je analogick² jako vzorce pro v²poΦet spot°eby suroviny a ΦasovΘho fondu.)
  107.  
  108. P°φprava aplikace ╪eÜitele p°i hledßnφ optimßlnφho v²robnφho plßnu
  109.  
  110. ABCDE1V²robek AV²robek B┌rove≥Spot°eba2Surovina S64240000V bu≥ce E2 je vzorec:B2*$B$6+C2*$C$63╚asov² fond K48320000Tento vzorec je zkopφrovßn do E3, E4 a E54PoΦet pracovnφk∙ P221200005Zisk810Max06Optimßlnφ v²robaKurzor umφstφme do bu≥ky E5, jejφ₧ hodnotu maximalizujeme. Z menu volφme Nßstroje, ╪eÜitel  zobrazφ se dialogovΘ okno Parametry °eÜitele.
  111.  
  112.                      DialogovΘ okno Parametry °eÜitele
  113.  
  114. V okn∞ u₧ je vypln∞n parametr Nastavit bu≥ku, kter² je nastaven na bu≥ku, v nφ₧ jsme m∞li p°ichystßn kurzor p°ed pou₧itφm ╪eÜitele. VytyΦenφm zadßme M∞n∞nΘ bu≥ky, tj. bu≥ky, do nich₧ bude spoΦtena v²roba v²robk∙ A (B6) a B (C6). Nynφ musφme vytvo°it Omezujφcφ podmφnky. Klepneme na tlaΦφtko P°idat.  Zobrazφ se dialogovΘ okno P°idat podmφnku.
  115.  
  116.  
  117.  
  118.                                   DialogovΘ okno P°idat omezujφcφ podmφnku    
  119.  
  120.  
  121.  
  122. Klepnutφm do bu≥ky v seÜitu zadßme adresu bu≥ky i podmφnku. Klepneme na tlaΦφtko P°idat a postupn∞ takto definujeme podmφnky uvedenΘ v dialogovΘm okn∞ Parametry °eÜitele. Klepnutφm na tlaΦφtko ╪eÜit v dialogovΘm okn∞ Parametry °eÜitele zahßjφme °eÜenφ. Po skonΦenφ v²poΦtu se v seÜitu do prom∞nliv²ch bun∞k B6, C6 zapsalo optimßlnφ  °eÜenφ  (2000 kus∙ v²robku A,  3000 kus∙ v²robku B).  V bu≥ce E5 je zapsßn maximßlnφ zisk (46 000 KΦ). 
  123.  
  124.  
  125. V²sledek aplikace ╪eÜitele
  126.  
  127. ABCDE1V²robek AV²robek B┌rove≥Spot°eba2Surovina S642400024 000V bu≥ce E2 je vzorec:B2*$B$6+C2*$C$63╚asov² fond K483200032 000Tento vzorec je zkopφrovßn do E3, E4 a E54PoΦet pracovnφk∙ P221200010 0005Zisk810max.46 0006Optimßlnφ v²roba20003000DalÜφ d∙le₧itΘ ·daje zφskßme porovnßnφm sloupc∙ ┌rove≥ a Spot°eba. Vidφme, ₧e se surovina S spot°ebovala beze zbytk∙ a  byl vyΦerpßn Φasov² fond za°φzenφ K. ╚asov² fond pracovnφk∙ P (12 000 hod.) vÜak vyΦerpßn nebyl, jeliko₧ bylo spot°ebovßno celkem 10 000 hod.
  128.  
  129. Pomocφ Excelu vÜak lze °eÜit i jinΘ (daleko slo₧it∞jÜφ) ·lohy z praxe. Zßle₧φ v₧dy na °eÜiteli, jak slo₧it² model zvolφ. ╚φm je model slo₧it∞jÜφ, tφm p°esn∞jÜφ informace zφskßme. Proto se v₧dy rozhodujeme podle toho, kolik mßme Φasu na vy°eÜenφ problΘmu a jak² efekt v²slednß optimalizace p°inese.
  130.  
  131.  
  132. Ji°φ Barilla,  Romana Hejkrlφkovß
  133.  
  134. 5
  135.  
  136.  
  137.  
  138.