Algorytm hybrydowy dla alokacji portfela inwestycyjnego przy ograniczonych zasobach



Podobne dokumenty
Algorytm genetyczny (genetic algorithm)-

LABORATORIUM 4: Algorytmy ewolucyjne cz. 2 wpływ operatorów krzyżowania i mutacji na skuteczność poszukiwań AE

FOLIA POMERANAE UNIVERSITATIS TECHNOLOGIAE STETINENSIS Folia Pomer. Univ. Technol. Stetin. 2011, Oeconomica 285 (62), 45 50

Zadania laboratoryjne i projektowe - wersja β

Algorytmy genetyczne

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ

Algorytmy ewolucyjne NAZEWNICTWO

Algorytm Genetyczny. zastosowanie do procesów rozmieszczenia stacji raportujących w sieciach komórkowych

Dobór parametrów algorytmu ewolucyjnego

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

Algorytm hybrydowy dla problemu pakowania

Algorytmy ewolucyjne 1

Generowanie i optymalizacja harmonogramu za pomoca

PRZEWODNIK PO PRZEDMIOCIE

FOLIA POMERANAE UNIVERSITATIS TECHNOLOGIAE STETINENSIS Folia Pomer. Univ. Technol. Stetin. 2009, Oeconomica 275 (57), 53 58

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

KARTA MODUŁU KSZTAŁCENIA

Podejście memetyczne do problemu DCVRP - wstępne wyniki. Adam Żychowski

Metody ilościowe w badaniach ekonomicznych

Algorytm indukcji klasyfikatora za pomocą EA z automatycznym przełączaniem ukierunkowań

Aproksymacja funkcji a regresja symboliczna

Schemat programowania dynamicznego (ang. dynamic programming)

Instytut Konstrukcji i Eksploatacji Maszyn Katedra Logistyki i Systemów Transportowych. Badania operacyjne. Dr inż.

DWUKROTNA SYMULACJA MONTE CARLO JAKO METODA ANALIZY RYZYKA NA PRZYKŁADZIE WYCENY OPCJI PRZEŁĄCZANIA FUNKCJI UŻYTKOWEJ NIERUCHOMOŚCI

Rozdział 9 PROGRAMOWANIE DYNAMICZNE

Algorytmy ewolucyjne. Łukasz Przybyłek Studenckie Koło Naukowe BRAINS

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne)

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

Strategie ewolucyjne (ang. evolu4on strategies)

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

Inżynieria oprogramowania. Część 8: Metoda szacowania ryzyka - PERT

Programowanie genetyczne, gra SNAKE

Wykorzystanie metod ewolucyjnych w projektowaniu algorytmów kwantowych

Algorytmy genetyczne

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA OPERATOR KRZYŻOWANIA ETAPY KRZYŻOWANIA

ROZWIĄZYWANIE UKŁADÓW RÓWNAŃ NIELINIOWYCH PRZY POMOCY DODATKU SOLVER PROGRAMU MICROSOFT EXCEL. sin x2 (1)

Egzamin / zaliczenie na ocenę*

Risk-Aware Project Scheduling. SimpleUCT

Plan. Zakres badań teorii optymalizacji. Teoria optymalizacji. Teoria optymalizacji a badania operacyjne. Badania operacyjne i teoria optymalizacji

Z-ZIP2-303z Zagadnienia optymalizacji Problems of optimization

WAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego

FOLIA POMERANAE UNIVERSITATIS TECHNOLOGIAE STETINENSIS Folia Pomer. Univ. Technol. Stetin., Oeconomica 2017, 337(88)3, 5 12

Zapisywanie algorytmów w języku programowania

LABORATORIUM 2: Wpływ wielkości populacji i liczby pokoleń na skuteczność poszukiwań AE. opracował: dr inż. Witold Beluch

BADANIA OPERACYJNE i teoria optymalizacji. Prowadzący: dr Tomasz Pisula Katedra Metod Ilościowych

Techniki optymalizacji

Zagadnienia optymalizacji Problems of optimization

Problemy z ograniczeniami

Algorytmy ewolucyjne - algorytmy genetyczne. I. Karcz-Dulęba

Tomasz M. Gwizdałła 2012/13

Algorytmy genetyczne w optymalizacji

METODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne

Algorytmy genetyczne. Paweł Cieśla. 8 stycznia 2009

Modelowanie rynków finansowych z wykorzystaniem pakietu R

Ocena kondycji finansowej organizacji

Rachunek prawdopodobieństwa projekt Ilustracja metody Monte Carlo obliczania całek oznaczonych

1 Programowanie całkowitoliczbowe PLC

Metody i techniki sztucznej inteligencji / Leszek Rutkowski. wyd. 2, 3 dodr. Warszawa, Spis treści

LABORATORIUM 3: Wpływ operatorów krzyżowania na skuteczność poszukiwań AE

Strefa pokrycia radiowego wokół stacji bazowych. Zasięg stacji bazowych Zazębianie się komórek

Prawdopodobieństwo i statystyka

Metody Rozmyte i Algorytmy Ewolucyjne

Podstawy zarządzania projektem. dr inż. Agata Klaus-Rosińska

ALGORYTM EWOLUCYJNY DLA PROBLEMU SZEREGOWANIA ZADAŃ W SYSTEMIE PRZEPŁYWOWYM

LABORATORIUM 7: Problem komiwojażera (TSP) cz. 2

METODY OPTYMALIZACJI. Tomasz M. Gwizdałła 2018/19

Wspomaganie Zarządzania Przedsiębiorstwem Laboratorium 02

PRZEWODNIK PO PRZEDMIOCIE

Wstęp do Sztucznej Inteligencji

Gospodarcze zastosowania algorytmów genetycznych

Ekonomika Transportu Morskiego wykład 08ns

Sterowanie wielkością zamówienia w Excelu - cz. 3

ZASTOSOWANIE METOD OPTYMALIZACJI W DOBORZE CECH GEOMETRYCZNYCH KARBU ODCIĄŻAJĄCEGO

ALGORYTM EWOLUCYJNY DLA PROBLEMU SZEREGOWANIA ZADAŃ W SYSTEMIE PRZEPŁYWOWYM 1. WPROWADZENIE

BIOINFORMATYKA. Copyright 2011, Joanna Szyda

Informatyka I stopień (I stopień / II stopień) ogólno akademicki (ogólno akademicki / praktyczny) podstawowy (podstawowy / kierunkowy / inny HES)

6. Klasyczny algorytm genetyczny. 1

PROGRAMOWANIE DYNAMICZNE W ROZMYTYM OTOCZENIU DO STEROWANIA STATKIEM

IMPLIKACJE ZASTOSOWANIA KODOWANIA OPARTEGO NA LICZBACH CAŁKOWITYCH W ALGORYTMIE GENETYCZNYM

Zarządzanie projektami. Zarządzanie ryzykiem projektu

Wybrane podstawowe rodzaje algorytmów

Wprowadzenie w tematykę zarządzania projektami/przedsięwzięciami

MODEL OPTYMALIZACYJNY SYNCHRONIZACJI LINII TRAMWAJOWYCH

Algorytmy genetyczne. Dariusz Banasiak. Katedra Informatyki Technicznej Wydział Elektroniki

WSTĘP ZAŁOŻENIA DO PROJEKTU

Optymalizacja parametrów w strategiach inwestycyjnych dla event-driven tradingu dla odczytu Australia Employment Change

1. Symulacje komputerowe Idea symulacji Przykład. 2. Metody próbkowania Jackknife Bootstrap. 3. Łańcuchy Markova. 4. Próbkowanie Gibbsa

Tomasz Pawlak. Zastosowania Metod Inteligencji Obliczeniowej

ALGORYTMY GENETYCZNE ćwiczenia

Iteracje. Algorytm z iteracją to taki, w którym trzeba wielokrotnie powtarzać instrukcję, aby warunek został spełniony.

Algorytmy genetyczne. Materiały do laboratorium PSI. Studia stacjonarne i niestacjonarne

OPTYMALNE DECYZJE ZASTOSOWANIE ALGORYTMU VEGA DO WYZNACZANIA POZIOMU ZAMÓWIEŃ NA MATERIAŁY W PRZEDSIĘBIORSTWIE GÓRNICZYM *

Optymalizacja systemów

Janusz Adamowski METODY OBLICZENIOWE FIZYKI Kwantowa wariacyjna metoda Monte Carlo. Problem własny dla stanu podstawowego układu N cząstek

SZTUCZNA INTELIGENCJA

ECTS (Część 2. Metody numeryczne) Nazwa w języku angielskim: Algorithms and data structures.

Algorytmy genetyczne. Materiały do laboratorium PSI. Studia niestacjonarne

Algorytmy zachłanne. dr inż. Urszula Gałązka

ALHE Z11 Jarosław Arabas wykład 11

Transkrypt:

Adam Stawowy Algorytm hybrydowy dla alokacji portfela inwestycyjnego przy ograniczonych zasobach Summary: We present a meta-heuristic to combine Monte Carlo simulation with genetic algorithm for Capital Budgeting Problem. The main idea is to embed genetic algorithm into simulation model so that the algorithm is able to solve any problem with uncertain inputs. Experimental tests quantify the power of the proposed technique. 1. Wprowadzenie Celem pracy jest pokazanie możliwości współpracy symulacji oraz algorytmu genetycznego do rozwiązania problemu alokacji portfela inwestycyjnego przy ograniczonych zasobach. Tradycyjne techniki (pełny przegląd, programowanie dynamiczne) są nieadekwatne w przypadku problemów o dużych rozmiarach bądź zawierających zmienne o charakterze losowym. 2. Problem alokacji portfela inwestycji Każdego roku organizacje gospodarcze muszą określić, jakie projekty realizować. Powszechnie przyjętym kryterium jest maksymalizacja sumy NPV wnoszonych przez wybrane projekty, przy uwzględnieniu ograniczonych nakładów kapitałowych [5]. Problem ten można zapisać: znaleźć maksimum przy warunkach x i = 0 lub 1, i=1,...,n gdzie: n - liczba projektów, N i - nakłady początkowe na projekt i, NPV i - NPV projektu i, B - dysponowany budżet, dr inż., Wydział Zarządzania, Akademia Górniczo-Hutnicza, Kraków

Jest to w zasadzie wersja zero-jedynkowego zagadnienia plecakowego (ang. zero-one knapsack problem), przy czym funkcję ograniczonej wielkości plecaka spełnia ograniczona wartość możliwego do zainwestowania kapitału. Z obliczeniowego punktu widzenia problemy plecakowe są trudne; prawdopodobnie nie istnieją algorytmy wielomianowe dla tych problemów [3]. Proponowane w literaturze [1] techniki dzielą się na: metody redukcji i aproksymacji (typu zachłannego i Lagrange a), metody dokładne: o techniki sieciowe, o programowanie dynamiczne, o metody przeglądu (w tym technika przeglądu i ograniczeń). Klasyczną pozycją poświęconą zagadnieniu lokaty kapitału jest praca Weingartnera [4], w której zaproponował metodę programowania dynamicznego dającą optymalne rozwiązanie problemu. Tradycyjne techniki są nieadekwatne w przypadku problemów o dużych rozmiarach bądź zawierających zmienne o charakterze losowym. Losowość może dotyczyć zarówno efektów (mierzonych NPV) jak i nakładów na poszczególne projekty. W tabeli 1. przedstawiono typologię problemów i metody ich rozwiązania. Tabela 1. Typologia problemów lokaty kapitału L.p. 1 Nakłady NPV Metoda zdeterminowane dla wszystkich projektów zdeterminowane dla wszystkich projektów 2 zdeterminowane wielkości losowe 3 wielkości losowe wielkości losowe Źródło: opracowanie własne techniki tradycyjne TS, SA, EA, CBP symulacja techniki hybrydowe symulacja rozmyte programowanie liniowe 3. Algorytm hybrydowy dla zagadnienia lokaty kapitału Proponowany algorytm przeznaczony jest dla problemów 2. typu. Algorytm hybrydowy składa się z 2 elementów: symulacja jest odpowiedzialna za obliczanie wartości NPV projektowanych inwestycji w warunkach niepewności, algorytm genetyczny służy do optymalizacji struktury portfela inwestycyjnego. Technika symulacji służy do obliczenia wartości NPV dla wszystkich projektów, przy czym na wejściu mamy najczęściej zmienne opisane rozkładem trójkątnym (np. kursy walut, spodziewane ilości i ceny sprzedaży, ceny materiałów, energii - założenia te są jednakowe dla wszystkich projektów).

Powstały w wyniku symulacji wektor NPV oraz stały wektor nakładów są wielkościami używanymi do optymalizacji struktury portfela. W następnym kroku następuje ponowne obliczenie wektora NPV i optymalizacja struktury portfela. Symulacja i optymalizacja są powtarzane 1000 razy. To rozwiązanie, które zwycięży najwięcej razy jest uznawane za rozwiązanie problemu. Do optymalizacji struktury portfela użyto algorytmu genetycznego w klasycznej wersji [2] - jest to zrozumiałe, jako że rozwiązanie problemu jest wektorem składającym się z 0 i 1. Populację początkową stanowi 15 rozwiązań otrzymanych losowo. Selekcja odbywa się na zasadzie ruletki, podstawowym operatorem jest jednopunktowa krzyżówka. Prawdopodobieństwo krzyżowania wynosi 1.00, a prawdopodobieństwo mutacji - 0.05. Algorytm kończy działanie po wygenerowaniu 25 pokoleń, tak wiec badanych jest zaledwie 375 rozwiązań. W algorytmie maksymalizowano następującą funkcję: FD N i 1 gdzie: s - stała kary, taka że: 1 jeśli s 1000 jeśli reszta oznaczeń jak w (1) 4. Badania eksperymentalne F i F i C C Realizację programową algorytmu wykonano przy użyciu arkusza oraz języka VBA: arkusz EXCEL jest odpowiedzialny za interfejs oraz symulację NPV projektów, VBA posłużył do oprogramowania algorytmu genetycznego. W celu ilustracji działania algorytmu prześledźmy jego działanie na prostym przykładzie. Opis sytuacji 2 Fi s C N Przedsiębiorstwo rozpatruje realizację 16 projektów o nakładach przedstawionych w tabeli 1. Na realizację projektów przedsiębiorstwo dysponuje środkami w wysokości 3 500 000 zł. Oszacowano rozkłady podstawowych zmiennych mających wpływ na efektywność inwestycji. Należy tak dobrać realizację projektów, by spodziewane efekty były jak największe, przy nakładach nie przekraczających dysponowanych środków. (2)

Tabela 1. Nakłady początkowe na rozpatrywane projekty. Projekt Nakłady początkowe Projekt Nakłady początkowe 1 160 000 zł 9 470 000 zł 2 580 000 zł 10 240 000 zł 3 360 000 zł 11 210 000 zł 4 290 000 zł 12 230 000 zł 5 200 000 zł 13 450 000 zł 6 610 000 zł 14 560 000 zł 7 790 000 zł 15 150 000 zł 8 230 000 zł 16 110 000 zł Krok 1. Symulacja wartości NPV dla wszystkich projektów W wyniku obliczeń symulacyjnych otrzymano wektor wartości NPV przedstawiony w tabeli 2. Tabela 2. Obliczone w kroku 1. NPV dla rozpatrywanych projektów. Projekt NPV Projekt NPV 1 1 021 000 zł 9 1 890 000 zł 2 2 099 000 zł 10 1 010 000 zł 3 1 963 000 zł 11 610 000 zł 4 1 723 000 zł 12 790 000 zł 5 726 000 zł 13 1 350 000 zł 6 1 833 000 zł 14 1 660 000 zł 7 2 342 000 zł 15 570 000 zł 8 684 000 zł 16 510 000 zł Krok 2. Optymalizacja struktury portfela Po zastosowaniu algorytmu genetycznego, dla danych zebranych w tabelach 1 i 2, uzyskano następujące rozwiązanie: Projekt 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Decyzja 1 1 1 1 1 0 0 1 1 1 0 1 1 0 1 1 W tej konkretnej (zasymulowanej) sytuacji należałoby zrealizować projekty nr 1, 2, 3, 4, 5, 8, 9, 10, 12, 13, 15, 16, przy czym sumaryczna wartość NPV wyniosłaby 14 366 000 zł, a nakłady - 3 470 000 zł. Następne iteracje: powtórzenie kroków 1. i 2. Powtarzamy symulację i optymalizację zadaną ilość razy. Dla każdego wektora NPV otrzymujemy wektor rozwiązań problemu. Na końcu porównujemy

wszystkie kolejne rozwiązania i wybieramy to, które otrzymaliśmy najczęściej w trakcie działania algorytmu hybrydowego. W naszym przykładzie byłby to wektor: Projekt 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Decyzja 1 1 1 1 0 0 0 1 1 1 1 1 1 0 1 1 dający średnią wartość sumy NPV w wysokości 14 200 271 (odchylenie standardowe - 344 510), przy nakładach 3 480 000 zł. W trakcie badań algorytmu rozwiązywano bez trudności problemy o rozmiarach 200 projektów. 5. Wnioski końcowe W pracy zaproponowano połączenie symulacji z algorytmem genetycznym w celu rozwiązania problemu lokaty kapitału w warunkach niepewności. Okazało się, że taką hybrydyzację można przeprowadzić stosunkowo prosto, a uzyskiwane rezultaty są bardzo zadowalające. Algorytm nie wymaga dużych nakładów obliczeniowych, jest prosty w konstrukcji i zastosowaniu. Literatura [1] Beasley J. E.: OR-notes: integer programming, www.mscmga.ms.ic.ac.uk/jeb/or/ip.html. [2] Michalewicz Z.: Algorytmy genetyczne + struktury danych = programy ewolucyjne, WNT, Warszawa 1996. [3] Sysło M., Deo N., Kowalik J.: Algorytmy optymalizacji dyskretnej, PWN, Warszawa 1995. [4] Weingartner H.: "Capital Budgeting and interrelated projects: survey and synthesis". Management Science, vol. 2, no. 1, 1968, str. 485-516. [5] Winston W. L.: Financial models using simulation and optimization, Palisade Corporation, Newfield 2000.