badania operacyjne - uniwersytetradom.pl

36
Badania operacyjne (fragmenty wykładu) dr inż. Marek Glinka SPIS TREŚCI 1. Geneza badań operacyjnych ................................................................ 2 2. Zakres stosowania badań operacyjnych ............................................. 2 3. Metodyka badań operacyjnych ........................................................... 3 4. Model jest narzędziem badawczym .................................................... 5 5. Struktura modeli normatywnych zagadnień decyzyjnych ................. 6 5.1. Charakterystyka elementów struktury modeli .................................. 6 6. Postacie modeli zadań programowania liniowego .............................. 7 7. Klasyfikacja modeli w badaniach operacyjnych .............................. 10 8. Uwagi ogólne o rozwiązywaniu modeli matematycznych zagadnień decyzyjnych ...................................................................... 11 9. Przykład modelowania zagadnienia przepływu prądu w obwodzie ......................................................................................... 13 10. Geometryczne przedstawienie modeli i rozwiązań zadań programowania liniowego ................................................................. 19 11. Simpleks – uniwersalna metoda rozwiązywania modeli liniowych ............................................................................................ 21 11.1. Idea algorytmu simpleks ............................................................. 22 12. Modelowanie zagadnienia transportowego ...................................... 24 12.1. Sformuł owanie klasycznego zagadnienia transportowego ............ 25 12.2. Model matematyczny zagadnienia transportowego ...................... 25 12.3. Postacie modeli zagadnienia transportowego ............................... 27 12.4. Rozwi ązywanie modelu zagadnienia transportowego .................. 28 12.5. Przykład modelowania zagadnienia transportowego .................... 31 Bibliografia ............................................................................................. 34

Upload: others

Post on 01-May-2022

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Badania operacyjne - uniwersytetradom.pl

Badania operacyjne (fragmenty wykładu)

dr inż. Marek Glinka SPIS TREŚCI 1. Geneza badań operacyjnych ................................................................2

2. Zakres stosowania badań operacyjnych .............................................2 3. Metodyka badań operacyjnych ...........................................................3

4. Model jest narzędziem badawczym ....................................................5 5. Struktura modeli normatywnych zagadnień decyzyjnych .................6

5.1. Charakterystyka elementów struktury modeli ..................................6 6. Postacie modeli zadań programowania liniowego ..............................7

7. Klasyfikacja modeli w badaniach operacyjnych ..............................10

8. Uwagi ogólne o rozwiązywaniu modeli matematycznych zagadnień decyzyjnych ......................................................................11

9. Przykład modelowania zagadnienia przepływu prądu w obwodzie .........................................................................................13

10. Geometryczne przedstawienie modeli i rozwiązań zadań programowania liniowego .................................................................19

11. Simpleks – uniwersalna metoda rozwiązywania modeli liniowych ............................................................................................21

11.1. Idea algorytmu simpleks .............................................................22

12. Modelowanie zagadnienia transportowego ......................................24 12.1. Sformułowanie klasycznego zagadnienia transportowego ............25 12.2. Model matematyczny zagadnienia transportowego ......................25 12.3. Postacie modeli zagadnienia transportowego ...............................27 12.4. Rozwiązywanie modelu zagadnienia transportowego ..................28 12.5. Przykład modelowania zagadnienia transportowego ....................31

Bibliografia .............................................................................................34

Page 2: Badania operacyjne - uniwersytetradom.pl

2

1. Geneza badań operacyjnych Nazwa dyscypliny naukowej badania operacyjne wywodzi się z terminolo-

gii wojskowej. Operacja w tej terminologii jest rozumiana jako zorganizowane działanie dużych zgrupowań wojsk, których celem jest osiągnięcie określonych celów militarnych. Pierwszy człon nazwy mówi nam o badaniu tego typu dzia-łań z punktu widzenia celu.

Przyjmuje się, że początki podstaw naukowych dyscypliny badań opera-cyjnych sięgają lat 1920 – 1930 natomiast wymierne zastosowania tej nauki, o których się często pisze miały miejsce już podczas II wojny światowej. Doty-czyły one głównie rozwiązywania problemów związanych z prowadzeniem działań wojennych przez koalicję antyhitlerowską. Powołane w dowództwach armii państw sprzymierzonych grupy naukowców, z różnych dyscyplin wiedzy, przygotowywali opracowania mające pomóc dowódcom planować i prowadzić działania wojenne. Zespoły te pracowały nad rozwiązywaniem różnych proble-mów między innymi takich jak opracowywanie planów działań zgrupowań po-zwalających osiągnąć maksymalny sukces militarny przy możliwie małych stra-tach własnych. Rozpatrywano i zastanawiano się nad optymalizacją transportem i rozmieszczeniem składów zapasów żywności, amunicji i sprzętu dla dużych zgrupowań wojsk. Badania dotyczyły również określenia sposobów i metod sku-tecznego bombardowania różnego rodzaju celów naziemnych przez formacje składające się z dużej liczby samolotów

2. Zakres stosowania badań operacyjnych Badania operacyjne są to zastosowania matematyki do rozwiązywania pro-

blemów z dziedziny planowania, projektowania i sterowania w celu znalezienia możliwie najlepszego rozwiązania problemu. Można też powiedzieć, że badania operacyjne czyli analiza operacji jest to przygotowanie racjonalnej w danych warunkach i optymalnej przy zdefiniowanym kryterium lub kryteriach decyzji dotyczących realizacji zamierzonego przedsięwzięcia.

Z definicji przedmiotu wynika duża możliwość zastosowania metod i na-

rzędzi udostępnianych przez badania operacyjne do rozwiązywania wielu rze-czywistych problemów w różnych dziedzinach działalności człowieka. Dotyczy to zarówno przygotowywania sposobów postępowania jak i rozwiązywania ma-tematycznych opisów lub modeli decyzji, problemów projektowania i sterowa-nia. Celem tego typu prac może być ułatwienie analizy sytuacji charakteryzują-cych się dużą złożonością i niepewnością. Nauka ta dostarcza odpowiednich na-rzędzi i mierników ilościowych pozwalających ocenić efektywność

Page 3: Badania operacyjne - uniwersytetradom.pl

3

proponowanego rozwiązania. Można porównać to rozwiązanie z innymi alterna-tywnymi rozwiązaniami tego samego problemu.

Ważne jest również to, że badania operacyjne umożliwiają łączenie wiedzy specjalistów z różnych nauk. Metody analizy bazują na matematyce rachunku prawdopodobieństwa i statystyce matematycznej. W procesie przygotowywania i konstruowania modeli zagadnień może być wykorzystywana wiedza eksperc-ka. Podczas tworzenia algorytmów i programów do rozwiązywania modeli w szerokim zakresie stosowane jest wspomaganie komputerowe. A więc wyko-rzystywana jest wiedza informatyków.

Metody i narzędzia udostępniane przez badania operacyjne mogą być sto-sowane do optymalizacji, analizy pracy, planowania obiektów procesów i sys-temów.

3. Metodyka badań operacyjnych Podstawowym narzędziem w badaniach operacyjnych jest model matema-

tyczny zagadnienia. Podczas jego tworzenia i stosowania koncentruje się szcze-gólną uwagę. Dzięki niemu rozwiązuje się i prowadzi optymalizację rozpatry-wanych zjawisk. Można podać ogólny schemat postępowania przy rozwiązywa-niu problemów metodami badań operacyjnych.

Page 4: Badania operacyjne - uniwersytetradom.pl

4

Rys. 3.1. Metodyka badań operacyjnych

Poszukiwanie metod rozwiązania modelu

Uzyskanie rozwiązania modelu

Tworzenie modelu matematycznego

Przyjęcie założeń upraszczających

Sformułowanie problemu, który będzie rozwiązywany

Zebranie i opracowanie danych potrzebnych do modelowania

Weryfikacja i ocena mode-lu oraz rozwiązania

N

T

Wdrożenie rozwiązania

Czy model

i rozwiązanie są poprawne oraz

przydatne?

Obserwacja zmian zachodzących pod wpływem wprowadzonego

rozwiązania

Czy problem został

rozwiązany?

KONIEC

T

N

Page 5: Badania operacyjne - uniwersytetradom.pl

5

Przyjmuje się, że metoda badawcza zastosowana do rozwiązania określo-

nego problemu musi mieć następujące właściwości, aby można było ją zaliczyć do metod badań operacyjnych:

• ukierunkowanie na podejmowanie decyzji. Podstawowe rezultaty analizy

i rozpoznania można zastosować w praktyce, • istnieje możliwość oceny podjętych działań na podstawie ścisłych kryteriów

efektywności, • istnieje możliwość porównania innych alternatywnych rozwiązań tego same-

go zadania. Porównanie takie musi być oparte na wielkościach mierzalnych. Muszą one pozwalać w sposób jednoznaczny określić użyteczność osiągnię-tego rozwiązania,

• metoda powinna wykorzystywać modelowanie matematyczne, • algorytmy i procedury przetwarzania danych powinny być precyzyjne, jed-

noznaczne i powtarzalne, • metoda badawcza powinna umożliwiać zastosowanie w szerokim zakresie

wspomagania komputerowego.

4. Model jest narzędziem badawczym Tak jak wspomniano wcześniej podstawowym narzędziem badawczym jest

model matematyczny danego zagadnienia. Pod tym pojęciem należy rozumieć z konieczności uproszczony odpowiednik rzeczywistości, najczęściej sformuło-wany i zapisany za pomocą zależności matematycznych podporządkowany ce-lowi badań. Model jest to taki układ, który można wymyślić, przedstawić i zre-alizować tak aby odzwierciedlał i odtwarzał interesujący nas fragment rzeczywi-stości. Model powinien być również zdolny zastąpić analizowany układ tak, że jego badanie dostarczy nowych, wartościowych informacji o rzeczywistym obiekcie, procesie lub systemie. Często model w badaniach operacyjnych jest tak konstruowany aby był narzędziem służącym do przeprowadzania procesu optymalizacji zgodnie z określonym kryterium. Najtrudniejsze w badaniach ope-racyjnych, co jest jednocześnie nazywane sztuką, to umiejętność budowania od-powiednio dobrych modeli matematycznych. Rzemiosłem, jeżeli by można tak powiedzieć, jest rozwiązywanie tych modeli.

Nie można podać szczegółowych zasad budowy modelu pozwalających skonstruować model dla dowolnego zagadnienia. Każdy model uwzględniać musi specyficzne wymagania opisane przez dane zagadnienie - kryteria, ograni-czenia i jest na swój sposób niepowtarzalny, związany z rozpatrywanym zagad-nieniem.

Page 6: Badania operacyjne - uniwersytetradom.pl

6

Dzięki możliwościom zastosowania techniki komputerowej w procesie

rozwiązywania modeli mamy możliwość doskonalenia jego struktury. Narzędzie to umożliwia analizę bez ingerowania w rzeczywisty obiekt. Może być stosowa-ne zarówno na etapie jego tworzenia jak i później służyć do doskonalenia jego funkcjonowania. Badanie rzeczywistości przy pomocy metod modelowania do-starcza wielu cennych, użytecznych informacji przy niedużym koszcie takiego badania.

5. Struktura modeli normatywnych zagadnień decyzyjnych Jednymi z najprostszych typów modeli są modele normatywne. Model

normatywny to taki model, który cechuje się określoną i ustaloną strukturą we-wnętrzną. Fazy budowy modeli decyzyjnych to proces prowadzący do określe-nie struktury modelu. W jej skład wchodzą takie elementy jak:

• zmienna (zmienne) decyzyjna, • parametry, • funkcja celu FC (funkcja kryterium FK), • warunki ograniczające zasadnicze WOZ, • warunki ograniczające dodatkowe WD.

5.1. Charakterystyka elementów struktury modeli Zmienne decyzyjne (zmienne decyzyjne ponieważ jest ich wiele) są to nie-

wiadome, których wartości są poszukiwane w trakcie rozwiązywania modelu. Jest to jeden z najważniejszych elementów modelu i zarazem najtrudniejszy do zidentyfikowania. Zmienna decyzyjna musi być bardzo precyzyjnie określona i musimy dokładnie wiedzieć co będzie ona reprezentowała w modelu. Od zmiennej decyzyjnej zależą pozostałe, ważne elementy struktury takie jak: funk-cja celu i warunki ograniczające.

Musi ona być tak przez nas określona w trakcie konstruowania modelu aby można było przeprowadzić proces optymalizacji rozpatrywanego zagadnienia.

Zazwyczaj trudno jest bez głębszej analizy odpowiedzieć na pytanie co na-leży przyjąć za zmienną decyzyjną. Ogólnie można powiedzieć, że zmienne de-cyzyjne powinny być tak przez nas tak zdefiniowane aby rozwiązanie modelu zbudowanego z ich wykorzystaniem umożliwiało odpowiedzenie na pytanie po-stawione w zagadnieniu. Warto jest wobec tego dokładnie analizować postawio-ne w zadaniu pytania tam bowiem często znajduje się podpowiedź co należy przyjąć za zmienną decyzyjną.

Page 7: Badania operacyjne - uniwersytetradom.pl

7

Parametry są to często wielkości wyrażające ilościowo zasoby jakimi dys-

ponujemy.

Funkcja celu (funkcja kryterium) jest to zapisane przy pomocy zależności matematycznych, z wykorzystaniem zmiennych decyzyjnych kryterium naszego działania. Wartość funkcji celu jest miernikiem efektywności proponowanego rozwiązania. W modelach normatywnych funkcja celu może być maksymalizo-wana lub minimalizowana. Funkcja celu może być liniowa lub nieliniowa, jed-nokryterialna lub wielokryterialna.

Warunki ograniczające, również tylko ogólnie można by powiedzieć, że są

to ograniczenia na zasoby jakimi dysponujemy, bądź też wymagania jakie mu-sza być przez model spełnione. Warunki ograniczające (WO) składają się z dwóch rodzajów. Są to warunki ograniczające zasadnicze (WOZ) i warunki do-datkowe (WD). Warunki dodatkowe wymuszają w rozwiązaniu typ wartości dla zmiennych decyzyjnych. W modelach normatywnych wyróżniamy trzy typy wa-runków dodatkowych:

• warunki nieujemności (WN) zmiennych decyzyjnych powodują, że zmienne

decyzyjne przyjmują w rozwiązaniu wartości ze zbioru liczb R+,

• warunki całkowitoliczbowości (WC) zmiennych decyzyjnych powodują, że zmienne decyzyjne należące do tej grupy mogą przyjmować tylko wartości ze zbioru liczb całkowitych dodatnich C+,

• warunki binarności (WB) zmiennych decyzyjnych powodują, że zmienne de-cyzyjne mogą przyjmować tylko jedną z dwóch wartości 0 lub 1.

6. Postacie modeli zadań programowania liniowego Istnieje kilka postaci zapisu zadań typu PL. Przedstawiona zostanie postać

ogólna, standardowa, kanoniczna i zapis macierzowy zadań PL. Ogólne zagadnienie programowania liniowego polega na znalezieniu takie-

go wektora (x1,x2,...,xj,...,xn), który minimalizuje (lub maksymalizuje) liniową funkcję celu FC = c1x1+c2x2+...+cjxj+...+cnxn → min (lub max) przy ogranicze-niach liniowych:

Page 8: Badania operacyjne - uniwersytetradom.pl

8

(6.1)

gdzie aij, bj, cj są stałymi oraz mn ≥ .

Standardowe zadanie PL charakteryzuje się tym, że dla maksymalizacji funkcji celu wszystkie warunki ograniczające dane są w postaci nierówności: (6.2)

natomiast w przypadku minimalizacji FC warunki są zapisane:

(6.3)

Możliwe jest przejście od minimalizacji do maksymalizacji funkcji celu.

Mając dane zadanie w, którym FC jest minimalizowana można to zadanie roz-wiązywać tak jak gdyby było maksymalizowane. Wystarczy przy nie zmienio-nych warunkach ograniczających zmienić znaki parametrów w FC

=≥

≤++++

≤++++

≤++++

≤++++

,n...,jx b xa...xa...x+ a xa

b xa...xa...xa+ xa

b xa...xa...x+ a xa b xa...xa...x+ a xa

j

mnmnjmjmm

ininjijii

nnjj

nnjj

1,2dla02211

2211

222222121

111212111

LLLLLLLLLLLLLLLL

LLLLLLLLLLLLLLLLWOZ

WD

),...,2,1,...,2,1dla(

01

1

njmixWD

bxaWOZ

minxcFC

j

n

jijij

n

jjj

==

→=

=

=

),...,2,1,...,2,1dla(0

1

1

njmixWD

bxaWOZ

maxxcFC

j

n

jijij

n

jjj

==

→=

=

=

Page 9: Badania operacyjne - uniwersytetradom.pl

9

na przeciwne. Uzyskane w wyniku rozwiązania optymalne wartości FC dla obu zadań są jednakowe co do wartości bezwzględnej.

Postać kanoniczna zadań programowania linowego charakteryzuje się tym, że zarówno dla maksymalizacji jak i minimalizacji FC wszystkie warunki ogra-niczające zasadnicze dane są w postaci równości. (6.4)

Szczególnie w operacjach obliczeniowych przydaje się postać macierzowa zadań programowania liniowego. (6.5) gdzie: c=[c1,c2,...,cn] wektor wierszowy parametrów występujących przy odpowiednich zmiennych w FC.

=

mnmm

n

n

aaa

aaaaaa

AL

LLLLLL

L

21

22221

11211

macierz o rozmiarze mn składająca się z parametrów wystę-

pujących przy odpowiednich zmiennych po lewej stronie warunków ogranicza-jących zasadniczych.

=

nx

xx

xM2

1

wektor kolumnowy zmiennych decyzyjnych.

),...,,,...,,(dla

)(

njmixWD

bxaWOZ

minmaxxcFC

j

n

jijij

n

jjj

21210

1

1

==

=

→=

=

=

0≥≤

→=

xWDbAxWOZmaxcxFC

Page 10: Badania operacyjne - uniwersytetradom.pl

10

=

nb

bb

bM2

1

wektor kolumnowy wyrazów wolnych w warunkach ograniczających.

7. Klasyfikacja modeli w badaniach operacyjnych

W oparciu o cechy charakterystyczne elementów struktury modeli można

dokonać klasyfikacji modeli. Ze względu na charakter funkcji celu i warunków ograniczających modele

dzielimy na modele liniowe i nieliniowe. Model jest modelem liniowym jeżeli jego funkcja celu i warunki ograniczające mają charakter zależności liniowych. Model nieliniowy to taki, w którym przynajmniej funkcja celu lub jeden z wa-runków ograniczających dane są w postaci zależności nieliniowej.

Uwzględniając liczbę kryteriów mogących wystąpić w funkcji celu wyróż-

niamy modele jednokryterialne lub modele wielokryterialne.

Ze względu na charakter wartości zmiennych decyzyjnych modele dzieli-my na – ciągłe, dyskretne i mieszane. Ponadto wśród modeli dyskretnych da się wyróżnić modele całkowitoliczbowe i binarne. Model należy do grupy modeli ciągłych jeżeli występujące w nim wszystkie zmienne decyzyjne będą w roz-wiązaniu przyjmowały wartości liczbowe ze zbioru liczb rzeczywistych dodat-nich. Model należy do grupy modeli całkowitoliczbowych jeżeli wszystkie zmienne decyzyjne przyjmują wartości ze zbioru liczb całkowitych dodatnich. W obu grupach modeli część zmiennych może przyjmować wartość zero. Moż-na powiedzieć o modelu, że jest modelem binarnym, gdy wszystkie zmienne decyzyjne przyjmują wartość zero lub jeden. W modelach mieszanych część zmiennych przyjmuje wartości ze zbioru liczb rzeczywistych, część ze zbioru liczb naturalnych).

Ze względu na charakter parametrów występujących w modelu rozróżnia-

my modele deterministyczne i stochastyczne w tym probabilistyczne, staty-styczne i strategiczne.

Model jest modelem deterministycznym jeżeli wszystkie parametry wystę-pujące w modelu mają wartości znane i stałe.

Model jest modelem probabilistycznym jeżeli przynajmniej jeden parametr

w modelu jest zmienną losową o znanym rozkładzie prawdopodobieństwa.

Page 11: Badania operacyjne - uniwersytetradom.pl

11

Model jest modelem statystycznym jeżeli przynajmniej jeden parametr jest

zmienną losową o nieznanym rozkładzie prawdopodobieństwa. Model jest modelem strategicznym jeżeli przynajmniej jeden parametr tego

modelu jest tzw. zmienną strategiczną.

Ze względu na liczbę etapów opisu procesu decyzyjnego mówimy o mode-lach statycznych i dynamicznych.

Modele statyczne opisują jednoetapowy proces decyzyjny a dynamiczne wieloetapowy. W uproszczeniu należy rozumieć, że w procesie wieloetapowym decyzje późniejsze zależą od decyzji wcześniejszych. Twórcą tego podejścia jest R. Bellman, którego zasada optymalności, pozwala rozwiązywać niektóre pro-blemy. Modele dynamiczne mogą być ciągłe lub dyskretne.

Uwzględniając dokonany podział, modele można zaklasyfikować do nastę-pujących podstawowych klas zadań występujących w badaniach operacyjnych:

1. Programowanie liniowe PL 2. Programowanie liniowe całkowitoliczbowe PLC 3. Programowanie liniowe binarne PLB 4. Programowanie nieliniowe PN 5. Programowanie nieliniowe całkowitoliczbowe PNC 6. Programowanie nieliniowe binarne PNB 7. Programowanie mieszane PM 8. Programowanie ilorazowe PI

8. Uwagi ogólne o rozwiązywaniu modeli matematycznych zagadnień decyzyjnych

Generalnie metody służące do rozwiązywania modeli można podzielić na analityczne i symulacyjne. Ponadto wśród metod analitycznych rozróżniamy metody dokładne i przybliżone.

Duża część metod służących do rozwiązywania modeli cechuje się dość dużą pracochłonnością. Zazwyczaj są to algorytmy, w których obliczenia prze-prowadza się iteracyjnie. Przerwanie obliczeń następuje po spełnieniu jednego lub większej liczby kryteriów występujących w algorytmie. Aby można było skutecznie rozwiązywać modele o dużych rozmiarach stosuje się wspomaganie procesu rozwiązywania przy pomocy techniki komputerowej. Do tego celu używane są specjalizowane programy realizujące dany algorytm lub też stosuje się uniwersalne oprogramowanie z zakresu przeprowadzania obliczeń matema-tycznych. Można tu wyróżnić takie narzędzia programowe jak Mathematica, MatLab, Maple, MatchCad, Statistica, Excel, Lotus 1,2,3. Niektóre z tych

Page 12: Badania operacyjne - uniwersytetradom.pl

12

programów posiadają gotowe moduły obliczeniowe do przeprowadzenia obli-czeń daną metodą z badań operacyjnych. Korzystniejsze jest jednak stosowanie specjalizowanego oprogramowania. Daje ono większe możliwości i zapewnia szerszą analizę uzyskanych wyników.

Przystępując do rozwiązywania modeli istotne może być jak szybko to rozwiązanie jesteśmy w stanie uzyskać. Problem jest szczególnie ważny gdy chcemy rozwiązywać modele o dużych rozmiarach (duża liczba zmiennych i duża liczba warunków ograniczających) przy pomocy metod, które są wolno zbieżne. Dla takich modeli i metod, wykorzystując do obliczeń nawet szybkie komputery nie jesteśmy w stanie w zadowalająco krótkim czasie uzyskać roz-wiązanie. W wielu przypadkach modele o bardzo dużych rozmiarach nie mogą być rozwiązywane ogólnymi algorytmami ponieważ czas rozwiązywania byłby zbyt długi. Istnieją modyfikacje i różne wersje podstawowych algorytmów po-prawiające zbieżność a tym samym skracające czas potrzebny na uzyskanie rozwiązania. Zagadnienia charakteryzujące się nietypową strukturą są rozwią-zywane przez algorytmy dostosowane do takiej struktury. Bywa i tak, że ko-rzystniejsze ze względu na krótszy czas obliczeń jest stosowanie metod przybli-żonych.

Następną ważną sprawą na, na którą należy zwrócić uwagę stosując narzę-dzia komputerowe do rozwiązywania modeli jest dokładność obliczeń. W trakcie wykonywania zazwyczaj bardzo dużej liczby iteracji oraz praktycznie nie mając wpływu na wyniki etapów pośrednich, generowane przez programy obliczeniowe wyniki końcowe, mogą być niedokładne. Problem może być szczególnie ważny gdy dany algorytm bazuje na wynikach uzyskiwanych z innego algorytmu. Błędy i niedokładności mogą również wynikać z zaokrągleń programowych. Jest to tylko zarysowanie problemów, które mogą wystąpić w procesie rozwiązywania modeli przy wykorzystaniu techniki komputerowej.

Zasadniczo rozwiązując modele normatywne poszukujemy dwóch elemen-tów rozwiązania. Elementami tymi są wartości zmiennych decyzyjnych i optymalna wartość funkcji kryterium. W trakcie poszukiwania rozwiązania optymalnego etapem pośrednim jest znalezienie rozwiązania dopuszczalnego. Rozwiązanie dopuszczalne modelu jest to takie rozwiązanie, dla którego speł-nione są wszystkie warunki ograniczające modelu. Rozwiązanie optymalne mo-delu jest to takie rozwiązanie, dla którego spełnione są wszystkie warunki ogra-niczające modelu i funkcja celu w rozwiązaniu osiąga wartość największą lub najmniejszą. Model może mieć rozwiązanie optymalne wtedy i tylko wtedy gdy

Page 13: Badania operacyjne - uniwersytetradom.pl

13

ma rozwiązanie dopuszczalne. Model może posiadać wiele rozwiązań optymal-nych o tej samej wartości funkcji celu.

9. Przykład modelowania zagadnienia przepływu prądu w obwodzie

Badanie przepływu prądu w obwodzie

Dany jest obwód elektryczny złożony z rezystorów o rezystancjach: R1, do R11. Dopuszczalne wartości prądów płynących przez poszczególne rezystory nie mogą przekraczać dla kolejnych rezystorów wartości I1 = 0,3A, I2 = 0,15A, I3 = 0,2A, I4 = 0,65A, I5 = 0,6A I6 = 0,45A, I7 = 0,4A, I8 = 0,6A, I9 = 0,15A, I10 = 0,6A, I11 = 0,5A. Wyznaczyć największą wartość prądu, który może przepływać od punktu A do punktu B rozważanej sieci oraz wartości po-szczególnych prądów w gałęziach.

Znane są rezystancje podane w Ω R1 = 0,25; R2 = 0,05; R3 = 0,04; R4 = 0,15; R5 = 0,15; R6 = 0,16; R7 = 0,15; R8 = 0,35; R9 = 0,36; R10 = 0,15; R11 = 0,3.

Rys. 9.1. Schemat obwodu elektrycznego

Należy opracować rozpływ prądów i spadków napięć na rezystancjach w poda-nym obwodzie. Zostało to pokazane na rys. 9.2.

A

R1 R2

R4

R3

R5

R6 R7

R10

R9

R11

R8 B

Page 14: Badania operacyjne - uniwersytetradom.pl

14

Rys. 9.2. Zaznaczenie prądów i spadków napięć w podanym obwodzie

Budowa modelu podanego zagadnienia Model zagadnienia bazuje na prawach rządzących obwodami elektryczny-

mi. W tym przypadku na I i II prawie Kirchoffa. a) określenie zmiennej decyzyjnej

Ii- wartość prądu płynącego w i- tej gałęzi (wyrażona w [A])

b) parametry Wartości rezystancji podane w zadaniu. Rezystancja jest stała i znana.

c) budowa funkcji celu

Funkcją celu jest maksymalizacja prądu płynącego od punktu A do B w rozważanej sieci.

Zapis funkcji celu:

FC: IA max d) Warunki ograniczające

Warunki ograniczające wzrost funkcji celu będą wynikały z praw rządzą-cych tego typu obwodami. Można je zapisać mając na uwadze I i II prawo Kir-choffa oraz ograniczenia na dopuszczalne prądy płynące przez poszczególne rezystancje.

A

R1 R2

R4

R3

R5

R6 R7

R10

R9

R11

R8 B

I1

I6

I4

I10

I0

Ic I9

I7

I2

I3

I11

I711

I5

I25

I8

R8I8 R6I6

R4I4

R1I1

R3I3

R9I9

R2I2

R10I10

R7I7

R5I5

R11I11

IA

I II

III

IV V

Page 15: Badania operacyjne - uniwersytetradom.pl

15

Zapis warunków ograniczających

≤≤

≤≤≤≤≤≤≤≤

≤=++

===

==−

0.5 0.6 0.15 0.6 0.4 0.45 0.6 0.65 0.2 0.15

0.3 0---

0-0-0-

0-

0=-+0=-+0=-+

0=--0=--

0=-+0=-+0=--0=--

11

10

9

8

7

6

5

4

3

2

1

669977553344

5522

111177

101066

4411

8A

871125

711117

2552

1179

523

9106

541

106

0

IIIIIIIIIII

RIRIRIRIRIRIRIRIRIRIRIRI

RIRIII

IIIIIIIII

IIIIII

IIIIIIIIIIII

C

CA

0

Przedstawiony model jest modelem ciągłym, liniowym, deterministycz-nym. Można go rozwiązać stosując metodę simpleks.

Rozwiązanie modelu Do jego rozwiązania zastosowano metodę simpleks wykorzystując program

WinQSB (LP-ILP). Otrzymaliśmy wartości zmiennych wyrażające wartości prądów [A].

IA = 0,2637; I0 = 0,2; IC = 0,0637; I1 = 0,0750; I2 = 0,1500; I3 = 0,2; I4 = 0,125; I5 = 0,050; I6 = 0,0308; I7 = 0,0425; I8 = 0,2637; I9 = 0,0637 I10 = 0,0329; I11 = 0,0212; I25=0,2; I711 = 0,0637 oraz wartość FCmax = IA=I8=0,2637 [A].

Page 16: Badania operacyjne - uniwersytetradom.pl

16

Największy prąd, który popłynie w obwodzie wynosi 0,2637 [A]

Rys. 9.3 i 9.4 przedstawiają kopię ekrany z programu WinQSB pokazującą

wprowadzony do programu model oraz rozwiązanie.

Rys. 9.3. Kopia ekranu programu WinQSB moduł LP-ILP z wprowadzonym

modelem

Page 17: Badania operacyjne - uniwersytetradom.pl

17

Rys. 9.4. Tabela wartości zmiennych i FC (kopia ekranu z programu WinQSB)

Model można rozwiązać wykorzystując inny program np. Excel Solver. Przykład aplikacji opracowanej w Excel Solver do rozwiązania modelu pokaza-no na rys. 9.5.

Page 18: Badania operacyjne - uniwersytetradom.pl

18

Rys. 9.5. Kopia ekranu z programu Excel Solver

Page 19: Badania operacyjne - uniwersytetradom.pl

19

10. Geometryczne przedstawienie modeli i rozwiązań zadań progra-mowania liniowego

Przy pomocy metody geometrycznej można poszukiwać rozwiązań modeli zadań PL zawierających w zasadzie tylko dwie zmienne. Z tego powodu jest to metoda nieprzydatna do rozwiązywania modeli o dużych rozmiarach. Metoda ta ma jednak pewne zalety poznawcze, które umożliwiają zrozumienie ważnych pojęć dotyczących rozwiązań modeli. W wyniku jej zastosowania można zoba-czyć gdzie się znajduje i jak wygląda zbiór rozwiązań dopuszczalnych dla mo-delu, a także w jaki sposób poszukuje się rozwiązania optymalnego. Można również zobaczyć kiedy model ma tylko jedno rozwiązanie optymalne a kiedy ma ich wiele. I wreszcie można również przy jej pomocy pokazać przypadek gdy model nie posiada rozwiązania optymalnego. Ze względu na te i inne moż-liwość dostarczenia wielu cennych informacji o rozwiązaniu modelu należy ją poznać.

Geometryczna metoda rozwiązywania modeli jest bardzo prosta w realiza-cji. Spróbujmy ją poznać rozwiązując przy je pomocy kilka charakterystycznych przypadków dla modeli z dwiema zmiennymi.

Mając dany model liniowy składający się z funkcji celu i warunków ogra-

niczających znaleźć metodą geometryczną rozwiązanie optymalne.

≥≥

≥+≤−≤+−

→+=

)( 0)( 0)(4267)(2127)( 92

41

2

1

21

21

21

21

exdxcxxbxxaxx

maxxxFC

Przystępując do rozwiązywania takiego układu należy narysować

i oznaczyć układ współrzędnych o osiach x1 i x2 (rys.10.1). Następnie na osiach nanosimy jednostki. Po czym rysujemy proste, dzięki którym będziemy mogli przedstawić warunki ograniczające. Aby narysować prostą wystarczy znaleźć współrzędne dwóch punktów przez które ona przechodzi. I tak aby wykreślić pierwszy warunek ograniczający oznaczony przez (a) należy narysować prostą –x1+2x2=9. Ponieważ warunek ograniczający (a) podany jest w postaci nierów-ności znajdujemy i zaznaczamy półpłaszczyznę, której punkty spełniają tę nie-równość. Jest to półpłaszczyzna zawierająca punkt (0,0). Podobnie postępujemy

Page 20: Badania operacyjne - uniwersytetradom.pl

20

przy wyznaczaniu półpłaszczyzn opisanych warunkami (b) i (c). Z warunków dodatkowych (d) i (e) wynika, że zbiór rozwiązań dopuszczalnych dla modelu znajduje się w pierwszej ćwiartce układu współrzędnych. Znajdujemy obszar w którym spełnione są warunki ograniczające modelu, będzie to część wspólna wszystkich półpłaszczyzn. Dla rozpatrywanego przykładu warunki ograniczają-ce zasadnicze i dodatkowe spełnione są w trójkącie ABC i jest to zbiór rozwią-zań dopuszczalnych (ZRD) modelu. Został on zaznaczony na rys.10.1. Rys. 10.1. Zbiór rozwiązań dopuszczalnych i rozwiązanie optymalne

Następnie wykreślamy funkcję celu (FC). Aby narysować prostą wyzna-czającą (FC) można przyjąć dla niej dowolną wartość (wartość tę przyjmuje się tak aby była ona dogodna do jej narysowania). Załóżmy, że wartość jej wynosi 2. Rysujemy prostą o równaniu (na rys. zaznaczona linią przerywaną):

241

21 =+ xx

Wyznaczając rozwiązanie maksymalizujące funkcję celu będziemy prze-suwać równolegle daną prostą. Można zauważyć, że wartość FC rośnie gdy ro-śnie x1 i x2. Kierunek wzrostu FC zaznaczono strzałką. Prostą należy przesuwać równolegle w górę układu współrzędnych. Największą wartość w zbiorze roz-wiązań dopuszczalnych funkcja celu osiągnie w punkcie B. Współrzędne tego punktu można wyznaczyć rozwiązując układ równań.

=−=+−212792

21

21

xxxx

Rozwiązaniem układu jest punkt o współrzędnych x1=5, x2=7 a więc współ-rzędne punktu są rozwiązaniem optymalnym (RO) dla podanego modelu. Dla punktu B o podanych współrzędnych spełniony jest układ warunków ogranicza-jących i funkcja celu przyjmuje wartość największą równą

433 .

2 4 10

4

6 8

2

6

8

10

12 x1

x2

FC→max

b

c

a

B

C

A

d

e

ZRD

RO

0

Page 21: Badania operacyjne - uniwersytetradom.pl

21

Podsumowując, poszukiwanie rozwiązania modelu PL zawierającego dwie

zmienne metodą geometryczną polega na: 1. Narysowaniu i wyznaczeniu: prostych (w przypadku gdy warunek

ograniczający dany jest w postaci równości), półpłaszczyzn (gdy wa-runek ograniczający dany jest nierównością).

2. Znalezieniu (jeżeli istnieje) części wspólnej, która wyznacza zbiór rozwiązań dopuszczalnych.

3. Znalezieniu w wyznaczonym zbiorze rozwiązań dopuszczalnych roz-wiązania maksymalizującego lub minimalizującego liniową funkcję celu.

Analizując przedstawione przykłady można na ich podstawie stwierdzić że:

1. Jeżeli model posiada zbiór rozwiązań dopuszczalnych to można dla mo-delu znaleźć rozwiązanie optymalne:

• istnieje jedno rozwiązanie optymalne, • istnieje nieskończenie wiele rozwiązań optymalnych dla których funkcja celu przyjmuje taką samą wartość.

2. Rozwiązanie optymalne nie istnieje gdy: • nie istnieje zbiór rozwiązań dopuszczalnych (układ warunków ogra- niczających jest sprzeczny), • zbiór rozwiązań dopuszczalnych jest nieograniczony w kierunku wzrostu FC w przypadku gdy jest ona maksymalizowana, • zbiór rozwiązań dopuszczalnych jest nieograniczony w kierunku malenia FC gdy jest ona minimalizowana.

11. Simpleks – uniwersalna metoda rozwiązywania modeli liniowych Wiele praktycznych zagadnień z badań operacyjnych może być sformuło-

wane w postaci modeli programowania liniowego. Metoda simpleks jest pod-stawową i uniwersalną metodą umożliwiającą rozwiązywanie wszelkiego typu modeli liniowych. Jest to metoda analityczna umożliwiająca rozwiązywanie modeli niezależnie od ich rozmiarów. Została opracowana przez matematyka Georga Dantziga. Istniej kilka wersji realizacji algorytmu simpleksowego. Oprócz różnych sposobów przeprowadzania obliczeń wersje zawierają metody poprawy zbieżności algorytmu sama idea pozostaje jednak niezmienna. Z po-znawczego punktu widzenia najprostszą wersją jest wersja tablicowa bazująca na metodzie wymiany wektorów. W praktyce do rozwiązywania modeli, już sto-sunkowo niedużych, trzeba stosować aplikacje komputerowe algorytmu sim-pleksowego. Potrzeba taka wynika z dużej liczby obliczeń do wykonania podczas rozwiązywania modelu. Obliczenia przeprowadzane są w cyklu itera-cyjnym.

Page 22: Badania operacyjne - uniwersytetradom.pl

22

11.1. Idea algorytmu simpleks W algorytmie simpleksowym można wyróżnić dwa podstawowe etapy.

Etap pierwszy polega na wyznaczeniu rozwiązania bazowego dopuszczalnego. Można je osiągnąć wprowadzając do modelu dodatkowe zmienne decyzyjnych. Etap drugi, który polega na „poprawianiu” w drodze kolejno przeprowadzanych iteracji rozwiązania bazowego dopuszczalnego, aż do osiągnięcia rozwiązania optymalnego przy założeniu oczywiście, że takie rozwiązanie istnieje. To „po-prawianie” rozwiązania polega na generowaniu nowych rozwiązań bazowych dopuszczalnych i sprawdzaniu ich pod kątem optymalności. Wartość funkcji celu dla kolejnego rozwiązania (w przypadku zagadnienia z maksymalizacją FC), jest często większa od poprzedniej. Może się zdarzyć, iż w trakcie wyko-nywania obliczeń wartość funkcji celu będzie równa wartości funkcji celu z po-przedniego rozwiązania. Nie może natomiast być ona mniejsza. Analogicznie jest w przypadku minimalizacji FC.

Obliczenia przeprowadzane metodą simpleks mają charakter iteracyjny. W metodzie występują dwa kryteria umożliwiające stwierdzenie czy dane roz-wiązanie bazowe jest rozwiązaniem optymalne a jeżeli nie jest, to czy można wygenerować następne i pozwalają zakończyć iteracyjny tryb obliczeń. Algo-rytm simpleks jest dosyć pracochłonny, szczególnie dla modeli o dużych roz-miarach. Do rozwiązywania takich modeli stosuje się komputerowe aplikacje algorytmu. Wiele programów do wspomagania obliczeń matematycznych umoż-liwia tworzenie procedur obliczeniowych metody simpleks lub jest wyposaża-nych w gotowe moduły simpleksowe. Do bardziej znanych programów, dzięki którym można rozwiązywać modele liniowe metodą simpleks należą: Mathema-tica, MathCAD, Excel, Quantitative Systems for Business.

Przy pomocy metody simpleks rozwiązujemy modele ciągłe programowa-nia liniowego. Na rysunku przedstawiono schemat blokowy metody.

Page 23: Badania operacyjne - uniwersytetradom.pl

23

Schemat blokowy metody simpleks (dla modelu, w którym FC jest maksymalizowana)

Jak widać z algorytmu w każdej iteracji metody simpleks możliwe są na-stępujące przypadki: • ∆j ≤ 0 dla każdego j = 1,2,...,n to rozwiązanie bazowe dopuszczalne jest

optymalne. • xis ≤ 0 dla każdego i = 1,2,...,n to model nie posiada rozwiązania optymalne-

go.

Wyznaczenie pierwszego rozwiązania bazowego do-

puszczalnego

x= (x1, x2,...,x n) rozwiązanie

bazowe dopuszczalne

x*=(x*1, x*

2,...,x*n)

rozwiązanie optymalne

II etap algorytmu

Model nie posiada rozwiązania optymalnego

N

Czy ∆j ≤ 0 dla każdego j ?

T

I etap algorytmu

Otrzymujemy: x (Θ) =[x1(Θ),...,xn(Θ)]

nowe rozwiązanie bazowe dopuszczalne

Metodą wymiany na miejsce wektora asr wprowadzamy do

bazy wektor as

rs

r

is

i

xrx

xxmin

is x00

0==Θ

>, asr usuwamy z bazy

is

ii x

x 0=Θ dla każdego xis>0

Czy xis ≤ 0 dla każ-

dego i ?

jjs max ∆=∆>∆ 0

as

wprowadzamy do bazy

∑=

=−=∆m

iijsijj njxcc

1

1,..., dla

N

T

START

STOP

STOP

Page 24: Badania operacyjne - uniwersytetradom.pl

24

• Istnieje ∆s > 0 i istnieje xis > 0 to można uzyskać nowe rozwiązanie bazowe

dopuszczalne. Algorytm simpleks umożliwia nam przechodzenie od jednego rozwiązania

bazowego do następnych, najczęściej coraz to lepszych ze względu na wartość funkcji celu. Iteracje prowadzone są aż do osiągnięcia rozwiązania optymalnego przy założeniu, że ono istnieje. Interesująca wydaje się odpowiedź na pytanie: Ile należy wykonać iteracji aby osiągnąć rozwiązanie optymalne? Niestety ilości iteracji, jakie należałoby wykonać rozwiązując model i dojść do rozwiązania optymalnego nie da się precyzyjnie określić. Wiadomo, że dla układu o n zmiennych decyzyjnych i m warunkach ograniczających zasadniczych jest co najwyżej

( )!!!

mnmn

mn

−=

rozwiązań bazowych. Wiadomo również, że metoda simpleks nie przeszukuje wszystkich rozwiązań bazowych lecz tylko wybrane. Sposób wyboru jest ukie-runkowany.

Dla większości przypadków algorytm jest zbieżny w skończonej liczbie ite-racji. Z doświadczenia obliczeniowego wynika, że liczba przeprowadzonych iteracji na ogół zawiera się w granicach od liczby odpowiadającej ilości warun-ków ograniczających zasadniczych modelu do trzykrotnej liczby warunków. W literaturze spotyka się również oszacowanie liczby iteracji na 2(n+m). Wszystkie tego typu informacje wynikają głównie z doświadczeń obliczenio-wych i są jedynie wartościami szacunkowymi.

12. Modelowanie zagadnienia transportowego Zagadnienie transportowe (ZT) sformułował F.L. Hitchock w 1941 roku.

Jest ono szczególnym przypadkiem zadania programowania liniowego całkowi-toliczbowego. Ogólnie problem transportowy dotyczy opracowania planu prze-wozu dowolnego jednorodnego produktu z wielu źródeł zaopatrzenia do wielu punktów zgłaszających zapotrzebowanie na ten produkt. Kryterium optymaliza-cji planu przewozów jest najczęściej zdefiniowane jako minimalizacja łącznych kosztów transportu. Do tak sformułowanego zagadnienia można sprowadzić wiele innych zagadnień niekoniecznie transportowych, które mogą nie mieć nic wspólnego z przesyłaniem ładunków i minimalizacją kosztów transportu.

Jak wiadomo, metoda simpleks jest uniwersalną metodą służącą do rozwią-zywania modeli liniowych. Jednak nie zawsze musimy ją stosować. Niektóre rodzaje modeli można rozwiązywać uproszczonym sposobem poprzez stosowa-nie algorytmu transportowego. Nazwa algorytm transportowy pochodzi stąd, że

Page 25: Badania operacyjne - uniwersytetradom.pl

25

po raz pierwszy był on wykorzystany do rozwiązywania zagadnień związanych z transportem.

Algorytm transportowy pozwala rozwiązywać pewne szczególne przypadki modeli liniowych. Jest on dla tych modeli dużo bardziej efektywny niż algorytm simpleks. Można oczywiście również stosować dla nich standardowy algorytm simpleks.

Istnieje wiele wersji algorytmu transportowego umożliwiającego rozwiąza-nie zagadnień transportowych. W praktyce rozwiązywanie modeli transporto-wych o dużych rozmiarach ogranicza się do wykorzystania programów kompu-terowych realizujących jeden z takich algorytmów obliczeniowych.

12.1. Sformułowanie klasycznego zagadnienia transportowego W klasycznym zagadnieniu transportowym opisuje się przemieszczanie

jednorodnego ładunku z wielu punktów wysyłki do wielu punktów odbioru. Liczba punktów wysyłki nie musi być równa liczbie punktów odbioru ładun-ków. Zagadnienie takie może być sformułowane następująco.

Dana jest pewna ilość jednostek ładunku w kilku punktach nadania (ozna-czymy je przez ai, i=1,2,...,m). Będzie on przesyłany do określonych punktów przeznaczenia (oznaczymy je przez bj, j=1,2,...,n). Znane są zdolności wysył-kowe poszczególnych punktów nadania oraz zapotrzebowanie na ten ładunek w poszczególnych punktach odbioru. Znane są również jednostkowe koszty przesyłu ładunków od nadawców do odbiorców. W rozwiązaniu należy wyzna-czyć ilości xij jednostek ładunku, które będziemy transportować z punktów na-dania do punktów odbioru. Kryterium przyjmuje się jako minimalizacja całko-witego kosztu operacji transportowej.

12.2. Model matematyczny zagadnienia transportowego Model normatywny podanego problemu rozwiązywanego metodami badań

operacyjnych będziemy konstruować w oparciu o sformułowany wcześniej plan. Przypomnijmy ten plan.

a) określenie zmiennych decyzyjnych, b) określenie parametrów, c) budowa funkcji celu, d) budowa warunków ograniczających.

Przyjmijmy następujące oznaczenia: m - ilość punktów nadania ładunku, n - ilość punktów odbioru, ai - ilość jednostek ładunku przeznaczona do wysłania od i-tego nadawcy,

Page 26: Badania operacyjne - uniwersytetradom.pl

26

Σai - całkowita zdolność wysyłkowa wszystkich punktów nadania, bj - zgłaszane zapotrzebowanie na ilość jednostek ładunku przez j-tego odbiorcę, Σbj - całkowite zapotrzebowanie na ładunek w punktach przeznaczenia,

cij - jednostkowy koszt przewozu ładunku z punktu nadania i do punktu odbioru j.

Zmienne decyzyjne, których wartości będziemy poszukiwali rozwiązując

model określimy jako: xij - ilość jednostek ładunku, przesyłana z i-tego punktu nadania do j-tego punktu odbioru. Zmiennych będzie m* n.

Parametry w zagadnieniu są typu deterministycznego i będą to wielkości ai, bj, cij. Funkcję celu można zapisać:

FC= x11c11 + x12c12 + ... + xijcij → min lub krócej:

mincxFC ij

m

i

n

jij →∑ ∑=

= =1 1

czyli będzie to minimalizacja łącznych kosztów przewozu wszystkich ładunków ze wszystkich punktów nadania do wszystkich punktów przeznaczenia.

Warunki ograniczające zapiszemy następująco:

warunki ograniczające zasadnicze (WOZ), warunki dodatkowe (WD).

Model ten jest oczywiście zadaniem programowania liniowego o m+n wa-runkach ograniczających, posiadający m* n zmiennych. Ogólny analityczny model klasycznego zagadnienia transportowego ma więc postać:

mincxFC ij

m

i

n

jij →∑ ∑=

= =1 1

przy warunkach ograniczających

=∑

=∑

=

=

0

,...1,2, = dla

,...1,2, = dla

1

1

ij

j

m

iij

i

n

jij

x

njbx

mi ax

Page 27: Badania operacyjne - uniwersytetradom.pl

27

=∑

=∑

=

=

0

,...1,2, = dla

,...1,2, = dla

1

1

ij

j

m

iij

i

n

jij

x

njbx

miax

Zagadnienie transportowe bywa często przedstawiane w postaci tabela-

rycznej. Tabela oznaczana jest przez Cij. Tablica taka w sposób przejrzysty po-zwala zapisać nam model transportowy. Z tablicą opisującą model transportowy związana jest tablica rozwiązań modelu oznaczana jako Xij. Przykładowy zapis tablicy transportowej Cij może być następujący:

Tabelaryczna postać modelu klasycznego zagadnienia transportowego

Wielkość nadania ładunku

Nad- awcy

ai c11

x11 c12

x12 c1n

x1n a1 1

c21 x21

c22 x22

c2n x2n a2 2

[Cij] = 3 ... ... ... ... ... ... ... am-1 m-1 cm1

xm1 cm2

xm2 cmn

xmn am m

Wielkość zapotrzebowania na ładunek bj

b1 b2 b3

bn -1 bn

Odbiorcy 1 2 3 ... n-1 n

12.3. Postacie modeli zagadnienia transportowego Istnieje kilka postaci które może mieć zagadnienie transportowe. Należą do

nich zagadnienie transportowe zbilansowane lub niezbilansowane, zagadnienie z blokadą tras, zagadnienie z ograniczoną przepustowością tras, wieloetapowe zagadnienie transportowe.

Jeżeli całkowita ilość ładunku w punktach nadania jest równa całkowitej ilości zapotrzebowania na ten ładunek w punktach odbioru czyli

∑=∑==

n

jj

m

ii ba

11 i = 1,2,...,m , j = 1,2,...,n

Page 28: Badania operacyjne - uniwersytetradom.pl

28

to zagadnienie jest zbilansowane. Jeżeli równość nie zachodzi to zagadnienie jest niezbilansowane. Zadanie może być niezbilansowane ponieważ jest więcej ładunku do wysłania niż zgłaszają zapotrzebowanie odbiorcy lub odwrotnie. W przypadku nie zbilansowania wprowadza się fikcyjnego odbiorcę lub fikcyj-nego nadawcę.

Zagadnienie transportowe z blokadą tras to takie zadanie, w którym niektó-re kierunki przemieszczania np. ładunków są niedozwolone. Czyli wartości zmiennych decyzyjnych dla kierunków blokowanych po znalezieniu rozwiąza-nia optymalnego muszą być równe zero. Pamiętając, wzór na funkcję celu łatwo można wnioskować, że dla blokowanych pól tablicy transportowej parametr cij powinien mieć dostatecznie dużą wartość aby taka blokada wystąpiła w rozwią-zaniu. W praktyce obliczeniowej jako wartość cij dla kierunków blokowanych przyjmuje się 3-4 krotność największego parametru cij występującego w modelu i to wystarcza aby zablokować wymagane kierunki przesyłu.

Istnieją przypadki gdy ładunek jest transportowany w wielu etapach. Przy-kładowo od wytwórcy do magazynów i dalej z magazynów do odbiorców. Mó-wimy wtedy o wieloetapowym zagadnieniu transportowym. Może być ono połą-czone z blokadą wybranych kierunków przemieszczania ładunków.

12.4. Rozwiązywanie modelu zagadnienia transportowego Istnieje wiele metod rozwiązywania podanego problemu transportowego.

Metody te opierają się na postępowaniu iteracyjnym. Ogólnie można je podzie-lić na dwie grupy: metody dualne i metody proste. W metodach dualnych pierw-sze otrzymane rozwiązanie spełniające warunki ograniczające zadania jest zara-zem rozwiązaniem optymalnym. Do metod dualnych należą m. in. metoda po-tencjałów L.W. Kantorowicza, metoda węgierska A.W. Kuhna, metoda D.R. Fulkersona i L.R. Forda. Są to metody dosyć skomplikowane i pracochłonne. Najbardziej rozpowszechnione są metody proste. Charakteryzują się one mniej-szą pracochłonnością i mniej skomplikowaną procedurą obliczeniową. Metody proste składają się z dwóch etapów postępowania (podobnie jak metoda sim-pleks).

Etap I - polega na znalezieniu początkowej tablicy przepływów spełniają-cej WO modelu (wyznaczenie rozwiązania dopuszczalnego). Rozwiązanie to najczęściej nie gwarantuje jeszcze osiągnięcia minimalnej wartości FC.

Etap II - polega na poprawianiu, podczas kolejnych obliczeń iteracyjnych, rozwiązania dopuszczalnego aż do momentu otrzymania rozwiązania optymal-nego. Wykonywanie obliczeń w etapie drugim zazwyczaj jest dużo bardziej pra-cochłonne niż w etapie pierwszym.

Page 29: Badania operacyjne - uniwersytetradom.pl

29

Etap I można osiągnąć stosując np. jedną z wymienionych metod:

• metoda kąta północno-zachodniego, • metoda minimalnego elementu w wierszu tablicy transportowej, • metoda minimalnego elementu w kolumnie tablicy transportowej, • metoda minimalnego elementu w tablicy transportowej, • metoda aproksymacyjna W.R. Vogla (VAM), • metoda Vogla z modyfikacją W. Szwarca (MVAM).

Bardziej znane metody drugiego etapu to:

• metoda G.B. Dantziga, • metoda "Modi" R.O. Fergusona, • metoda W. Szwarca oparta na teorii grafów macierzowych.

Rozwiązanie dopuszczalne znalezione dowolną metodą z etapu I, może być

ulepszane dowolną metodą z etapu II. Działanie takie w skończonej liczbie ite-racji doprowadza do uzyskania rozwiązania optymalnego. Skończone minimalne rozwiązanie zagadnienia transportowego zawsze istnieje. Zagadnienie transpor-towe może mieć wiele rozwiązań optymalnych o takiej samej minimalnej warto-ści funkcji celu. Rozwiązanie optymalne zagadnienia transportowego, w którym wszystkie parametry ai i bj są dodatnimi liczbami całkowitymi, jest całkowito-liczbowe.

W każdej iteracji drugiego etapu algorytmu transportowego może wystąpić problem degeneracji rozwiązania. Degeneracja występuje wtedy, gdy liczba zmiennych decyzyjnych o wartościach różnych od zera jest mniejsza niż suma wierszy i kolumn tablicy transportowej pomniejszona o jeden (n+m-1). Podob-nie jak w algorytmie simpleks należy ją usunąć aby móc uzyskać następne roz-wiązanie. Dwu etapowy algorytm transportowy został przedstawiony na rys. 12.1.

Page 30: Badania operacyjne - uniwersytetradom.pl

30

Algorytm transportowy

Rys. 12.1. Algorytm transportowy

Wybrać z [cijr] pole

o min. wartości i odnieść to pole na macierz cij. W pole to przemieścić (w obiegu zamkniętym) max. możliwą wielkość xij. Powstanie nowe rozwiązanie dopuszczalne.

Wyznaczenie pierwszego rozwiązania bazowego

dopuszczalnego

X= (x11, x12,...,xij) rozwiązanie

bazowe dopuszczalne

I etap algorytmu

Wyznaczyć wektory u i v dla rozw. dopszczalnego

Czy wystąpiła degeneracja

rozwiązania ?

N

T Usunąć degenerację

Utworzyć tablicę Cij ui + vj =Cij

Obliczyć [Cij

r]=[Cij] - [ Cij]

N

T

[Cijr] ≥ 0

Rozwiązanie X*= (x*

11, x*12,...,x*

ij) jest rozwiązaniem optymalnym

II etap algorytmu

START

STOP

Page 31: Badania operacyjne - uniwersytetradom.pl

31

12.5 Przykład modelowania zagadnienia transportowego Zbudować model dwuetapowego zagadnienia transportowego. Przedsię-

biorstwa P1, P2, P3, P4, P5, zaopatrują w ładunek czterech odbiorców ozna-czonych przez O1, O2, O3, O4. Ładunek jest przemieszczany z przedsiębiorstw do magazynów M1, M2, i M3 a następnie do odbiorców. Przedsiębiorstwa w określonym czasie będą wysyłały następujące ilości ładunku: P1 = 230, P2 = 156, P3 = 130, P4 = 95 i P5 = 43. Zapotrzebowanie poszczególnych od-biorców wynosi O1 = 180, O2 = 240, O3 = 75, O4 = 145. Pojemność każdego z trzech magazynów w rozpatrywanym okresie czasu wynosi 800 jednostek ła-dunku. Znane są koszty transportu cij jednostki ładunku z przedsiębiorstw do magazynów [C1] i z magazynów do odbiorców [C2]. Są one podane w tabli-cach.

[C1] =

[C2] =

Należy wyznaczyć plan przewozu ładunków z przedsiębiorstw do magazy-nów i z magazynów do odbiorców. Jako kryterium optymalizacji przyjąć mini-malizację łącznych kosztów całej operacji transportowej.

Podane zadanie transportowe można zapisać w jednej tablicy transportowej [C]. Aby było to możliwe należy wykorzystać blokadę tras: przedsiębiorstwa – odbiorcy [B1] oraz pomiędzy magazynami [B2]. [C ]=

22 24 16 P1 18 25 13 P2 20 18 15 P3 16 23 20 P4 11 19 24 P5 M1 M2 M3

11 16 10 18 M1 15 17 14 12 M2 19 15 11 13 M3 O1 O2 O3 O4

C1 B1

B2 C2

Page 32: Badania operacyjne - uniwersytetradom.pl

32

Zmienną decyzyjną przyjmiemy: xi j - ilość ładunku przesyłanego od i-tego dostawcy do j-tego odbiorcy Będziemy minimalizować funkcję celu:

FC: ∑∑i j

ijij x*c à min

Utworzymy tablicę [C], w blokowane pola jako parametr cij wprowadzimy dostateczne dużą liczbę aby nie było możliwe przemieszczanie ładunku na tych kierunkach. W tablicy B2 na przekątnej wprowadzimy cij=0, po wyznaczeniu rozwiązania w tych polach otrzymamy informację o wielkości niewykorzystania pojemności danego magazynu.

Po rozwiązaniu modelu otrzymamy tablicę Xij przepływów ładunków oraz FCmin=17927.

Rozwiązanie optymalne dwuetapowego zadania transportowego podanego w przykładzie – tablica przepływów ładunków

22 24 16 100 100 100 100 P1

18 25 13 100 100 100 100 P2

20 18 15 100 100 100 100 P3

16 23 20 100 100 100 100 P4

11 19 24 100 100 100 100 P5

0 100 100 11 16 10 18 M1

100 0 100 15 17 14 12 M2

100 100 0 19 15 11 13 M3

M1 M2 M3 O1 O2 O3 O4

Page 33: Badania operacyjne - uniwersytetradom.pl

33

[Xij ]=

Zadanie transportowe jest niezbilansowane i dlatego w rozwiązaniu pojawił się fikcyjny odbiorca oznaczony przez FO1. Widzimy, że blokada tras przesyłu ładunków na wymaganych kierunkach, została zachowana. Ponadto można za-uważyć - ładunek nie będzie przemieszczany do magazynu M2. Minimalną war-tość funkcji celu, powodują przepływy ładunków podane w tablicy rozwiązań.

14 216 230

156 156

42 88 130

95 95

43 43

620 180 800

800 800

340 240 75 145 800

FO1 800 800 800 180 240 75 145

Page 34: Badania operacyjne - uniwersytetradom.pl

34

Bibliografia

1. Adamczyk H.: Badania operacyjne. Oficyna Wydawnicza WSEiZ w Warszawie. War-szawa 1999.

2. Borkowski B., Dudek H., Szczęsny W. : Ekonometria wybrane zagadnienia. PWN, Warszawa 2004.

3. Borucki W., Ignasiak E., Marcinkowski J., Sikora W.: Badania Operacyjne. PWE, Warszawa 1996.

4. Całczyński A. i inni.: Elementy badań operacyjnych w zarządzaniu. T1,2 Wyd. PR, Radom 2000. *

5. Całczyński A.: Metody optymalizacji decyzji w przemyśle. cz. I i cz. II. Wyd. WSI, Radom 1988.

6. Całczyński A.: Metody optymalizacyjne w obsłudze transportowej rynku. PWE, War-szawa 1992.

7. Całczyński A., Sochańska J, Szczepankiewicz W.: Metody racjonalizacji przewozów w obrocie towarowym. Wyd. AE, Kraków 1988.

8. Filipowicz B.: Matematyczne modelowanie zagadnień decyzyjnych. cz. I. Wyd. AGH, Kraków 1998. *

9. Findeisen Wł., Szymanowski J., Wierzbicki A.: Teoria i metody obliczeniowe optyma-lizacji. PWN, Warszawa 1980.

10. Glinka M.: Elementy badań operacyjnych w transporcie. Wydanie II Wydaw. Poli-techniki Radomskiej. Radom 2009.*

11. Goryl A., Jędrzejczak Z., Kukuła K., Osiewalski J., Walkosz A.: Wprowadzenie do ekonometrii w przykładach i zadaniach. PWN, Warszawa 2004.

12. Grabowski W.: Programowanie matematyczne. PWE, Warszawa 1980.

13. Groszek M.: Excel 2003 PL. Helion, Gliwice 2003.

14. Grudzewski W. i inni.: Badania operacyjne w organizacji i zarządzaniu. PWN, War-szawa 1985.

15. Heilpern S.: Podejmowanie decyzji w warunkach ryzyka i niepewności. Wyd. AE, Wrocław 2001.

16. Ignasiak E.: Badania operacyjne. Praca zbiorowa pod redakcją Edmunda Ignasiaka. Wydanie II. PWE, Warszawa 1997.

17. Ignasiak E.: Badania operacyjne. Praca zbiorowa pod redakcją Edmunda Ignasiaka. Wydanie III. PWE, Warszawa 2001. *

Page 35: Badania operacyjne - uniwersytetradom.pl

35

18. Ignasiak E.: Programowanie sieciowe. PWE, Warszawa 1975.

19. Ignasiak E.: Teoria grafów i planowanie sieciowe. PWE, Warszawa 1982.

20. Jakubowski K.: Mathcad 2000 Professional. Exit, Warszawa 2000.

21. Jastriebow A., Wciślik M.: Optymalizacja - teoria, algorytmy i ich realizacja w MA-TLAB-ie. Wyd. PŚ, Kielce 2004.

22. Jędrzejczyk Z., Kukuła K., Skrzypek J.: Badania operacyjne w przykładach i zadaniach. PWN, Warszawa 1996. *

23. Kasprzak T. i inni.: Optymalizacja dyskretna. Zastosowania ekonomiczne. PWE, War-szawa 1984.

24. Kopańska-Bródka D., Dudzińska R.: Modele liniowe badań operacyjnych w zada-niach. Wyd. ŚWSZ, Katowice 2005.

25. Krawczyk S.: Matematyczna analiza sytuacji decyzyjnych. PWE, Warszawa 1990.

26. Kryński H., Badach A.: Zastosowania matematyki do podejmowania decyzji ekono-micznych. Zagadnienia wybrane. PWN, Warszawa 1976.

27. Kucharski T.: Programowanie obliczeń inżynierskich. Wyd. PG, Gdańsk 2000.

28. Masłowski K.: Excel 2003 PL :Ilustrowany przewodnik. Helion, Gliwice 2005.

29. Mikołajczyk Z.: Techniki organizatorskie w rozwiązywaniu problemów zarządzania. PWN, Warszawa 2004.

30. Mrozek B., Mrozek Z.: MATLAB: leksykon kieszonkowy. Helion, Gliwice 2005.

31. Nowak E.: Elementy badań operacyjnych. Wyd. UMCS. Lublin 1997.

32. Ostanin A.: Laboratorium metod optymalizacji. Wyd. PB, Białystok 2004.

33. Paleczek W.: Mathcad 12, 11, 2001i, 2001, 2000 w algorytmach. Exit, Warszawa 2005.

34. Pietraszek J.: Mathcad. Ćwiczenia. Helion, Gliwice 2002.

35. Podręcznik użytkownika Microsoft Excel. Wersja 5 Microsoft Corporation.

36. Regel W.: Mathcad przykłady zastosowań. Mikom, Warszawa 2004.

37. Sadowski W.: Teoria podejmowania decyzji. Wstęp do badań operacyjnych. PWE, Warszawa 1973. *

38. Seidler J., Badach A., Molisz W.: Metody rozwiązywania zadań optymalizacji. WNT, Warszawa 1980.

Page 36: Badania operacyjne - uniwersytetradom.pl

36

39. Siudak M.: Badania operacyjne. Wyd. PW, Warszawa 1997. *

40. Sokół M.: Mathcad. Leksykon kieszonkowy. Helion, Warszawa 2005.

41. Stachurski M.: Metody numeryczne w programie Matlab. Mikom, Warszawa 2003.

42. Stadnicki J.: Teoria i praktyka rozwiązywania zadań optymalizacji z przykładami za-stosowań technicznych. WNT Warszawa 2006.

43. Szapiro T.: Decyzje menedżerskie z Excelem. Praca zbiorowa. PWE, Warszawa 2000.

44. Sysło M.M., Deo N., Kowalik J.S.: Algorytmy optymalizacji dyskretnej z programami w języku Pascal. PWN, Warszawa 1995.

45. Trzaskalik T.: Metody i zastosowania badań operacyjnych. Wyd. Absolwent, Łódź 1997.

46. Trzaskalik T.: Modelowanie optymalizacyjne. Przedsiębiorstwo Specjalistyczne Absolwent, Łódź 2000. *

47. Trzaskalik T.: Wielokryterialne dyskretne programowanie dynamiczne. Wyd. AE, w Katowicach Katowice 1990.

48. Trzaskalik T.: Wprowadzenie do badań operacyjnych z komputerem. PWE, Warszawa 2003. *

49. Twardowska K., Łodyga P.: Modele zarządzania wspomagane Excelem. Oficyna Wy-dawnicza PW, Warszawa 2003. *

50. Wagner H.M.: Badania operacyjne. Zastosowania w zarządzaniu. PWE, Warszawa 1985. *

51. Walkenbach J.: Biblia Excel 2000. Wyd. RM, Warszawa 1999.

52. Wilson R.J.: Wprowadzenie do teorii grafów. PWN, Warszawa 1985.

53. Witkowski T.: Decyzje w zarządzaniu przedsiębiorstwem. WNT, Warszawa 2000. *

54. Yih-long Chang.: WinQSB Version 2.0. Wyd. John Wiley & Sons 2003.

55. Zalewski A., Cegieła R.: MATLAB - obliczenia numeryczne i ich zastosowania. Wyd. Nakom, Poznań 2002.

56. Zorychta K., Ogryczak W.: Programowanie liniowe i całkowitoliczbowe. WNT, War-szawa 1981.

* - pozycje polecane.