Optymalizacja – problem najkrótszej drogi Przykład 1: Dane są
Transkrypt
Optymalizacja – problem najkrótszej drogi Przykład 1: Dane są
Optymalizacja – problem najkrótszej drogi Przykład 1: Dane są wyłącznie połączenia bezpośrednie!!! 2 2 7 1 3 11 1 5 4 5 4 Metoda bezpośredniego przeglądu – możliwa tylko dla małych sieci: Algorytm Dijkstry (najkrótsze drogi od 1. węzła do każdego innego) 1. Nadać każdemu węzłowi cechę (*,∞), tylko pierwszemu węzłowi cechę (*,0). Wszystkie węzły są niesprawdzone. 2. Wybrać (jeden, wszystko jedno który) węzeł niesprawdzony, którego 2. część cechy jest minimalna 3. Oznaczyć go jako węzeł sprawdzany (^) 4. Rozważyć wszystkie łuki rozpoczynające się w węźle sprawdzanym (^), a kończące się w niesprawdzonych (nie *). o Dla każdego takiego łuku powtórzyć: Podstawić STAŁA = 2. cecha węzła sprawdzanego + długość łuku. Jeśli STAŁA jest mniejsza od 2. cechy końca łuku, zmienić cechę końca łuku na (nr węzła sprawdzanego, STAŁA), w przeciwnym przypadku cecha końca łuku pozostaje bez zmian. 5. Węzeł sprawdzany (^) staje się sprawdzonym (*) i jest eliminowany. 6. Jeśli jest jeszcze choć jeden węzeł niesprawdzony, idź do 2. 7. Odczytać najkrótsze drogi od 1. węzła do każdego innego: druga część ostatniej cechy to długość drogi, samą drogę odczytujemy „od tyłu” z 1. części cech. Przykład 2: 1 2 3 4 5 6 1 - 2 - 6 2 - 2 - - 1 - - 7 3 - - - - 1 - 4 - - - - - 6 5 - - - - - 1 6 - - - - - - Przykład 3: Popyt: 31 I, 28 II, 31 III – 2 sztuki Pojemność magazynu 2 sztuki, 1 I i 31 III magazyn pusty Koszt magazynowania 1 sztuki przez 1 miesiąc: 6 Koszt produkcji 1 sztuki: 15, 2 sztuk : 17, 3 sztuk: 19, 4 sztuk: 21. Produkcja trwa cały miesiąc. Wyznaczyć optymalny plan produkcji i magazynowania.