WYBÓR STRATEGII DOSTAW I MAGAZYNOWANIA MATERIAŁÓW BUDOWLANYCH Z ZASTOSOWANIEM ALGORYTMÓW GENETYCZNYCH Opracował: dr inż. Michał Krzemiński Określanie kosztów zapasów w budownictwie Koszty zapasów w ujęciu analizy logistycznej dzieli się na następujące podgrupy: koszty tworzenia zapasów, koszty utrzymania zapasów, koszty dostaw, koszty wyczerpania zapasów. Koszty tworzenia zapasów Koszty utrzymania działów zakupów. Koszty te są kosztami względnie stałymi. Koszty zakupów, kształtujące się wprost proporcjonalnie do wielkości zakupów Koszty utrzymania zapasów koszty kapitałowe koszty magazynowania - koszty utrzymania tych zapasów w magazynie i koszty związane z przepływem zapasów, koszty obsługi zapasów - ubezpieczenie oraz podatki od wartości utrzymywanych zapasów, koszty ryzyka – niezależna utrata wartości Koszty starzenia się i psucia zapasów Koszty dostaw Koszty zamawiania powstające w wyniku zamawiania u dostawców zewnętrznych. Koszty przestawiania produkcji, występujące najczęściej w wyniku modyfikacji linii produkcyjnej przedsiębiorstwa. Koszty wyczerpania zapasów Jest to ważny element kosztów zapasów ponieważ nieraz zdarza się tak że chcąc maksymalnie minimalizować straty związane z nadmiernym magazynowaniem materiału jesteśmy zmuszeni ponieść stratę związaną wystąpieniem braku materiału. Koszty te mogą być bardzo wysokie ponieważ powodowane mogą być zatrzymanie procesu inwestycyjnego, a to z kolei w przypadku budownictwa w którym nieraz występują wysokie kary umowne może być bardzo niebezpieczne dla efektywności finansowej przedsięwzięcia Wyznaczenie kosztów zapasów K Z Wd Ktz Pm Kuz I m K mioz gdzie: Wd - wielkość dostaw, Pm - wielkość powierzchni magazynowej, w tym przypadku w ujęciu przedziałowym (na przykład 100 m2, 200m2, 300m2, …, itd.) Im - ilość magazynowanego materiału, Ktz - jednostkowy koszt tworzenia zapasów, Kuz - koszty utrzymania zapasów, Kmioz - jednostkowy koszt magazynowania i obsługi zapasów. Algorytmy genetyczne – wprowadzenie Klasyczny algorytm genetyczny Modyfikacje klasycznego algorytmu genetycznego Klasyczny algorytm genetyczny Johna Henrego Hollanda profesora psychologii, inżynierii elektrycznej oraz nauk komputerowych z Uniwersytetu w Michigan „Adaptation in Natural and Artificial Systems” która została wydana w 1975 roku. Inspiracją do opracowania algorytmów genetycznych była chęć naśladowania procesów zachodzących w środowisku naturalnym. Klasyczny algorytm genetyczny W algorytmach genetycznych wykorzystywane są mechanizmy ewolucji naturalnej takie jak: selekcja, przetrwanie osobników najlepiej przystosowanych, reprodukcja. Klasyczny algorytm genetyczny Definicje pojęć występujących najczęściej: Populacja - to zbiór osobników o określonej liczebności. Osobnik - w algorytmach genetycznych jest to zbiór parametrów zadania zakodowany pod postacią chromosomu. Parametry te to rozwiązania zwane także punktami przestrzeni poszukiwań. Chromosom - jest to uporządkowany ciąg genów. Gen - jest to pojedynczy element genotypu a w szczególności chromosomu. Klasyczny algorytm genetyczny Definicje pojęć występujących najczęściej: Genotyp - jest to zespół chromosomów danego osobnika. Wynika z tego że osobnikami danej populacji mogą być genotypy, bądź pojedyncze chromosomy. Fenotyp - jest odkodowany genotyp, czyli zbiór parametrów odpowiadających danemu genotypowi. Allel - jest wartością danego genu, Locus - określa pozycję danego genu w chromosomie. Klasyczny algorytm genetyczny Modyfikacje klasycznego algorytmu genetycznego Metody selekcji chromosomów – turniejowa i rankingowa, Szczególne metody reprodukcji – elitarna i częściowa wymiana populacji, Kodowanie – binarne, logarytmiczne i zmiennoprzecinkowe, Rodzaje krzyżowań, Rodzaje mutacji, Inwersja – zmiana wewnątrz chromosomu, Skalowanie funkcji przystosowania Deterministyczny model sterowania zapasami z zastosowaniem algorytmów genetycznych START Inicjacja - wybór początkowej populacji chromosomów Ocena przystosowania chromosomów w populacji NIE Selekcja chromosomów Warunek zatrzymania Baza chromosomów z największą wartością funkcji przystosowania TAK Wyprowadzenie "najlepszego" chromosomu Zastosowanie operatorów genetycznych STOP Utworzenie nowej populacji Deterministyczny model sterowania zapasami z zastosowaniem algorytmów genetycznych - CD Wprowadzenie harmonogramu zużycia materiału: A a1 , a2 ,..., an gdzie a 0 Deterministyczny model sterowania zapasami z zastosowaniem algorytmów genetycznych - CD Inicjacja – wybór początkowej populacji chromosomów, rozumianych jako warianty harmonogramów dostaw: dlugosc horyzontu 10 Wielkosc populacji 10 *2 10 Deterministyczny model sterowania zapasami z zastosowaniem algorytmów genetycznych START Inicjacja - wybór początkowej populacji chromosomów Ocena przystosowania chromosomów w populacji NIE Selekcja chromosomów Warunek zatrzymania Baza chromosomów z największą wartością funkcji przystosowania TAK Wyprowadzenie "najlepszego" chromosomu Zastosowanie operatorów genetycznych STOP Utworzenie nowej populacji Deterministyczny model sterowania zapasami z zastosowaniem algorytmów genetycznych - CD Ocena przystosowania chromosomów w populacji: Ki di K K mi K tz i nk d i an mi mi1 ai1 di n i K k k k k tz t d z uz i m mioz i 1, i N 100% ri K iuz k mg1 k zk mi k sz mi k mg Di 100% K mioz k zm k ze k nr k p k u k su k ok k uo k in Deterministyczny model sterowania zapasami z zastosowaniem algorytmów genetycznych START Inicjacja - wybór początkowej populacji chromosomów Ocena przystosowania chromosomów w populacji NIE Selekcja chromosomów Warunek zatrzymania Baza chromosomów z największą wartością funkcji przystosowania TAK Wyprowadzenie "najlepszego" chromosomu Zastosowanie operatorów genetycznych STOP Utworzenie nowej populacji Deterministyczny model sterowania zapasami z zastosowaniem algorytmów genetycznych - CD Selekcja chromosomów – funkcja rankingowa (pętla do y = 1): x wielkosc populacji x y 1 2 y1 x y y1 y2 2 x y1 y y2 Deterministyczny model sterowania zapasami z zastosowaniem algorytmów genetycznych - CD Selekcja chromosomów – funkcja rankingowa Deterministyczny model sterowania zapasami z zastosowaniem algorytmów genetycznych START Inicjacja - wybór początkowej populacji chromosomów Ocena przystosowania chromosomów w populacji NIE Selekcja chromosomów Warunek zatrzymania Baza chromosomów z największą wartością funkcji przystosowania TAK Wyprowadzenie "najlepszego" chromosomu Zastosowanie operatorów genetycznych STOP Utworzenie nowej populacji Deterministyczny model sterowania zapasami z zastosowaniem algorytmów genetycznych Zastosowanie operatorów genetycznych: Krzyżowanie wielopunktowe zależne od długości chromosomów, próg 0,75, Mutacja chromosomu na poziomie 0,10, mutacja poszczególnych genów na poziomie 0,05. Podane wielkości zostały przyjęte na podstawie literatury i badań. Deterministyczny model sterowania zapasami z zastosowaniem algorytmów genetycznych Utworzenie nowej populacji, Warunek zatrzymania: całkowita zbieżność lub określona z góry liczba przejść pętli, Wybór najlepszego chromosomu który odpowiada optymalnej strategii dostaw. Deterministyczny model sterowania zapasami z zastosowaniem algorytmów genetycznych Model probabilistyczny uzyskany został poprzez wprowadzenie do modelu deterministycznego elementów zapasu buforowego przy wyznaczaniu ilości magazynowanego materiału Deterministyczny model sterowania zapasami z zastosowaniem algorytmów genetycznych nk d i an zi 1 zi n i W przypadku wystąpienia ujemnej wartości dostawy di < 0, należy wartość dostawy wyzerować di = 0 oraz przyporządkować jej obliczoną ujemną wielkość w wartości bezwzględnej jako wartość zapasu buforowego dla następnego przedziału zn = IdiI Program komputerowy AGSDiMMB Program komputerowy „Algorytm Genetyczny Sterowania Dostawami i Magazynowaniem Materiałów Budowlanych” ( AGSDiMMB ) został napisany w obiektowym języku programowania Java Przykłady Przykłady - CD Przykład dla stali zbrojeniowej Obiekt został zaprojektowany jako konstrukcja szkieletowa. Słupy w większości zostały wykonane jako kwadratowe, podciągi zostały zaprojektowane w płytach stropowych. W budynku znajduje się żelbetowa prefabrykowana obudowa klatki schodowej i szybów windowych. Początek budowy został zaplanowany w listopadzie 2008 roku natomiast budowa została zakończona w czerwcu 2009 roku. Łączny czas prowadzenia robót wynosił więc powyżej 190 dni. Harmonogram został wprowadzony do pliku typu „*.txt” Przykład dla stali zbrojeniowej Przykład dla stali zbrojeniowej Przykład dla stali zbrojeniowej Przykład dla stali zbrojeniowej Przykład dla stali zbrojeniowej