Wykorzystanie algorytmów genetycznych do optymalizacji planu produkcyjnego odlewni

22
Wykorzystanie algorytmów genetycznych do optymalizacji planu produkcyjnego odlewni Krzysztof Krawczyk

description

Wykorzystanie algorytmów genetycznych do optymalizacji planu produkcyjnego odlewni. Krzysztof Krawczyk. Schemat blokowy algorytmu genetycznego (AG). 1.1 Zastosowane elementy AG dla optymalizacji planu produkcyjnego odlewni Matematyczny zapis problemu. - PowerPoint PPT Presentation

Transcript of Wykorzystanie algorytmów genetycznych do optymalizacji planu produkcyjnego odlewni

Wykorzystanie algorytmów genetycznych do optymalizacji planu produkcyjnego odlewni

Krzysztof Krawczyk

Plan prezentacji

1. Schemat blokowy algorytmu genetycznego (AG).

1.1 Zastosowane elementy AG dla optymalizacji planu produkcyjnego odlewni

2. Matematyczny zapis problemu.

2.1 Podstawowe dane wykorzystane w programie.

2.2 Funkcja celu i ograniczenia.

3. Przykładowa optymalizacja planu produkcyjnego

4. Wnioski.

5. Bibliografia.

1. Schemat blokowy algorytmu genetycznego.

START

NIE TAK

Wybór reprezentacji genetycznej

KONIEC

Selekcja osobników

Operatory

genetyczne

Wybór początkowej populacji rozwiązań

Ocena przystosowania osobników

Warunek końca

Zapamiętać

najlepsze

rozwiązanie

Powstanie nowej

populacji

1.1 Elementy AG zastosowane w wykonanym programie

1. W programie zastosowana została ścieżkowa reprezentacja potencjalnych rozwiązań zadania.

2. Początkowa populacja rozwiązań zostaje utworzona w sposób losowy ze zbioru n! wszystkich możliwych rozwiązań, gdzie n oznacza liczbę zamówień w wybranym okresie.

3. Funkcją celu jest terminowe wykonanie wszystkich a w przypadku, gdy nie jest to możliwe to jak największej ilości zamówień. Funkcja ta uwzględnia również priorytety poszczególnych zamówień, co oznacza, że niektóre zamówienia są ważniejsze od innych i konieczne jest ich terminowe wykonanie

4. Zastosowaną selekcją jest selekcja metodą turniejową.

5. Podstawowymi operatorami genetycznymi są krzyżowanie i mutacja. Wybraną metodą krzyżowania jest metoda OX. Zastosowaną metodą mutacji jest mutacja polegająca na wzajemnej wymianie zadań.

6. Stałym parametrem algorytmu genetycznego jest rozmiar populacji, która składa się z dwudziestu pięciu osobników. Wartości prawdopodobieństwa krzyżowania i mutacji mogą być ustalane w sposób dowolny przez użytkownika.

7. Warunkiem zakończenia algorytmu jest wykonanie określonej przez użytkownika liczby iteracji.

1.1 Elementy AG zastosowane w wykonanym programie

2 Matematyczny zapis problemu - oznaczenia

• i – kolejność w jakiej będą realizowane zamówienia.• t – okres, w którym przyjmujemy zamówienia. • di (data klienta) – termin w którym klient chce otrzymać

wyprodukowane wyroby.• wi (wagi) - priorytety przypisane zamówieniom. Brak

priorytetów oznacza traktowanie wszystkich zamówień jednakowo. Wagi mają za zadanie przypisanie każdemu zamówieniu liczby z przedziału od 1 do 5, która będzie wskazywać na stopień pilności tego zlecenia. Jeżeli dane zamówienie będzie określone liczbą 5 to będzie to oznaczać, że zamówienie to ma pierwszeństwo wykonania przed innymi zleceniami.

• pi (czas wytworzenia) – czas wytworzenia pojedynczego zamówienia [dni]. Na czas wytworzenia składa się czas formowania i obróbki poszczególnych wyrobów.

2 Matematyczny zapis problemu - oznaczenia

• ci (data wytworzenia) – data (tydzień) w którym gotowe wyroby z danego zamówienia trafiają na magazyn.

• St – czas rozpoczęcia produkcji. Czas rozpoczęcia produkcji zleceń dokonanych w okresie t będzie przeważnie równy czasowi zakończenia produkcji z okresu wcześniejszego (t-1). Wyjątkiem mogą być remonty lub inne losowe zdarzenia.

• Ti - opóźnienie wykonania zleceń.

2 Matematyczny zapis problemu – funkcja celu i ograniczenia

Dla poszczególnych zamówień ułożonych w odpowiedniej kolejności najwcześniejszy czas ukończenia produkcji będzie wynosił:

ci = St + pi, dla każdego i = 1,...,N

Opóźnienie wykonania zleceń można policzyć:

Ti = ci - di, dla każdego i = 1,...,N; gdy Ti < 0 to Ti = 0

2 Matematyczny zapis problemu – funkcja celu i ograniczenia

Problem polega na takim ułożeniu zamówień, aby całkowity czas opóźnień zleceń, uwzględniający wagi był minimalny, czyli aby wszystkie zamówienia były realizowane na czas, a w szczególności te, które mają największe priorytety.

N

1i

MINT*wF ii

2 Matematyczny zapis problemu – funkcja celu i ograniczenia

Ograniczenia:1. Wykonanie zamówień z największymi priorytetami na czas:

St + pi ≤ di, dla wytopów i z największymi priorytetami: wi = {4,5}

2. Data rozpoczęcia produkcji musi być większa lub równa dacie zakończenia produkcji w okresie wcześniejszym.

3. Dane zamówienie nie może być wykonany dwa razy (tak jak w problemie komiwojażera nie można dwa razy odwiedzić tego samego miasta). To ograniczenie jest spełnione przy losowym wyborze populacji początkowej. Wybierane są tylko rozwiązania dopuszczalne.

N

1iit1)(t pSS

3 Przykładowa optymalizacja planu produkcyjnego

Do przykładowej optymalizacji zostały wzięte następujące dane:

• Okres przyjmowania zamówień wynosi dwa tygodnie, od 2001.09.18 do 2001.10.02. W okresie tym zostały przyjęte 34 zamówienia. • Produkcja rozpoczyna się 2001.10.03. Do algorytmu genetycznego zostały przyjęte następujące parametry: • Prawdopodobieństwo krzyżowania wynosi 0,65• Prawdopodobieństwo mutacji 0,01.Wartości te zostały przyjęte zgodnie z zaleceniami występującymi w literaturze, jak też na podstawie własnych obliczeń, które dawały najlepsze rezultaty właśnie przy tych wartościach.

3 Przykładowa optymalizacja planu produkcyjnego

Otrzymane wyniki przedstawiają się następująco:

1. Przy ułożeniu wszystkich zamówień według najwcześniejszych czasów oddania wartość funkcji celu jest równa F = 83.i-kolejność pi-czas wytw. wi-wagi di-data klienta ci -data wytworzenia Ti = ci-di wi*Ti

21 0,742233833 4 39 40 1 4

2 3,924151712 3 40 41 1 3

3 2,21706017 3 40 41 1 3

6 1,651121218 3 40 41 1 3

7 0,867571387 2 40 41 1 2

8 0,884621006 2 40 41 1 2

22 0,388510957 1 40 41 1 1

4 2,675571427 2 41 42 1 2

5 1,109492654 3 41 42 1 3

. . . . . . .

. . . . . . .

. . . . . . .

32 1,219544083 4 54 47 0 0

33 2,450018778 3 55 48 0 0

34 0,892406458 1 56 48 0 0

WARTOŚĆ FUNKCJI CELU 83

3 Przykładowa optymalizacja planu produkcyjnego

i-kolejność pi-czas wytw. wi-wagi di-data klienta ci -data wytworzenia Ti = ci-di wi*Ti

1 0,83802623 3 42 40 0 0

2 3,924151712 3 40 41 1 3

3 2,21706017 3 40 41 1 3

4 2,675571427 2 41 41 0 0

5 1,109492654 3 41 41 0 0

6 1,651121218 3 40 42 2 6

7 0,867571387 2 40 42 2 4

8 0,884621006 2 40 42 2 4

9 2,078811003 5 41 42 1 5

. . . . . . .

. . . . . . .

. . . . . . .

32 1,219544083 4 54 47 0 0

33 2,450018778 3 55 48 0 0

34 0,892406458 1 56 48 0 0

WARTOŚĆ FUNKCJI CELU 97

2. Przy wytwarzaniu wyrobów według daty zamówienia wartość funkcji celu wynosi F = 97.

3 Przykładowa optymalizacja planu produkcyjnego

3. Po optymalizacji za pomocą algorytmu genetycznego wartość funkcji dopasowania ulega zmniejszeniu prawie o połowę i wyniosła: F = 42.

i-kolejność pi-czas wytw. wi-wagi di-data klienta ci -data wytworzenia Ti = ci-di wi*Ti

7 0,867571387 2 40 40 0 0

21 0,742233833 4 39 40 1 4

6 1,651121218 3 40 40 0 0

22 0,388510957 1 40 40 0 0

5 1,109492654 3 41 41 0 0

8 0,884621006 2 40 41 1 2

9 2,078811003 5 41 41 0 0

23 0,912767144 2 41 41 0 0

3 2,21706017 3 40 41 1 3

. . . . . . .

. . . . . . .

. . . . . . .

30 1,814377623 4 53 47 0 0

31 3,037148836 3 54 48 0 0

34 0,892406458 1 56 48 0 0

WARTOŚĆ FUNKCJI CELU 42

3 Przykładowa optymalizacja planu produkcyjnego

Najlepsze rozwiązanie zostaje znalezione bardzo szybko, bo już w 266 pokoleniu. Przy większej liczbie iteracji ( powyżej 1000) wartość funkcji dopasowania nie ulega zmianie, wydaje się, więc że rozwiązanie to jest najlepszym rozwiązaniem, jakie można osiągnąć dla tego przypadku.

0

20

40

60

80

100

120

1 101 201 301 401 501 601 701 801 901

Numer populacji

Wa

rto

ść F

Sposób dochodzenia algorytmu genetycznego do najlepszego rozwiązania.

3 Przykładowa optymalizacja planu produkcyjnego

4. W celu porównania otrzymanych wyników zastosowałem również inną metodę optymalizacji - optymalizację za pomocą symulowanego wyżarzania. Metoda ta daje jednak znacznie gorsze wyniki. Dla 1000 iteracji najmniejsza wartość funkcji celu wyniosła F = 53 (dla 10000 wartość ta spadła do F = 48).

0

20

40

60

80

100

120

140

160

180

1 101 201 301 401 501 601 701 801 901

Numer populacji

Wa

rto

ść F

Sposób dochodzenia algorytmu symulowanego wyżarzania do najlepszego rozwiązania.

3 Przykładowa optymalizacja planu produkcyjnego

Dla uzyskania bardziej obiektywnych wyników przeprowadzono 25 prób dla metody algorytmów genetycznych i metody symulowanego wyżarzania.

Algorytm Symulowane Data Datagenetyczny wyżarzanie oddania zamówienia

1 44 712 42 583 42 614 42 575 42 606 42 657 42 728 42 639 42 6810 42 5311 42 5712 42 6413 42 6014 42 5915 42 6116 42 6617 42 6818 42 7019 42 5620 42 6221 42 5622 42 5723 42 6324 42 6725 42 58

Minimum 42 53 83 97Średnia 42,08 61,73

Odchylenie

standardowe

Próba

Wartość funkcji celu

83

97

0,39 5,11

Wartości funkcji celu otrzymane w 25 próbach.

Wnioski

Z przeprowadzonych badań wynika, że rezultaty otrzymane za pomocą algorytmów genetycznych są znacznie lepsze (o 15 – 20%) od wyników otrzymanych za pomocą metody symulowanego wyżarzania.

0

20

40

60

80

100

120

Według datyzamówienia

Według datyoddania

Algorytmgenetyczny

Symulowanewyżarzanie

War

tość

fu

nkc

ji c

elu

Graficzne porównanie metod.

Wnioski

Z pokazanego przykładu można wyciągnąć następujące wnioski:

1. Przy niewielkich kosztach i w stosunkowo krótkim czasie, można poprawić efektywność w obszarze planowania produkcji za pomocą algorytmów genetycznych . Wykonany program ewolucyjny udziela odpowiedzi na pytania, które pomagają planiście optymalizować plan produkcyjny w odlewni.

Kiedy produkować i w jakiej kolejności - według jakich priorytetów?

Jaki jest możliwy najwcześniejszy czas realizacji zamówionych wyrobów?

Wnioski

2. Poddając analizie inne płaszczyzny działalności przedsiębiorstw można znaleźć wiele różnych problemów, możliwych do rozwiązania za pomocą algorytmów genetycznych lub też innymi metodami wywodzącymi się z dziedziny sztucznej inteligencji. Przykładem może być klasyczny problem optymalizacji, zwanego problemem mieszanki (mix problem), który polega na określeniu ilości każdego z materiałów wsadowych do produkcji, aby koszty były minimalne.

3. Inne przykłady wykorzystania algorytmów genetycznych to: optymalizacja podejmowanych decyzji, konstrukcja strategii inwestycyjnych, minimalizacja kosztów, harmonogramowanie pracy itp.

Bibliografia

1. Rutkowska D. i inni: Sieci neuronowe, algorytmy genetyczne i systemy rozmyte. Wydawnictwo Naukowe PWN, Warszawa 1999.

2. Michalewicz Z.: Algorytmy genetyczne + Struktura danych = Programy ewolucyjne. Wydawnictwo Naukowo-Techniczne, Warszawa 1999.

3. Biethahn J., Nissen V.: Evolutionary Algorithms in Management Applications. Sprinter-Verlag, Berlin, Heidelberg 1995.

4. Goldberg D.E.: Algorytmy genetyczne i ich zastosowanie. Wydawnictwo Naukowo-Techniczne, Warszawa 1998.

5. Cytowski J.: Algorytmy genetyczne: podstawy i zastosowania. PLJ, Warszawa 1996.

6. Strona internetowa:http://www.odlewniepolskie.pl/

KONIEC

DZIĘKUJĘ ZA UWAGĘ

<< POWRÓT