mirror of
https://github.com/kuhyx/WUT_Computer_Science.git
synced 2026-07-04 13:03:05 +02:00
fix obvious repetitions in wdwr project
This commit is contained in:
parent
6d3b860f1f
commit
4db98e3c93
@ -11,8 +11,11 @@ lower_bound = 5
|
||||
upper_bound = 12
|
||||
|
||||
# Generate scenarios
|
||||
data <- rtmvt(n=10000, mean=Mu, sigma=Sigma, df=5, lower=rep(lower_bound, 4), upper=rep(upper_bound, 4))
|
||||
write.table(format(data, digits=15, drop0trailing=F), "data10000.txt", quote=F, sep="\t", eol="\n\t", col.names = F, row.names = T)
|
||||
data <- rtmvt(n=100, mean=Mu, sigma=Sigma, df=5,
|
||||
lower=rep(lower_bound, 4), upper=rep(upper_bound, 4))
|
||||
write.table(format(data, digits=15, drop0trailing=F),
|
||||
"data100.txt", quote=F, sep="\t", eol="\n\t",
|
||||
col.names = F, row.names = T)
|
||||
mean <- colMeans(data)
|
||||
|
||||
E <- function(idx, Mu, Sigma, v, alfa, beta) {
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,5 @@
|
||||
###########################################################
|
||||
# WDWR 18042 #
|
||||
# WDWR 25406 #
|
||||
# Planowanie produkcj w warunkach ryzyka. #
|
||||
# MODEL #
|
||||
# Autor: Krzysztof Rudnicki #
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
###########################################################
|
||||
# WDWR 18042 #
|
||||
# WDWR 25406 #
|
||||
# Planowanie produkcj w warunkach ryzyka. #
|
||||
# SKRYPT URUCHAMIAJACY - Metoda punktu odniesienia #
|
||||
# Autor: Krzysztof Rudnicki #
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,5 @@
|
||||
###########################################################
|
||||
# WDWR 18042 #
|
||||
# WDWR 25406 #
|
||||
# Planowanie produkcj w warunkach ryzyka. #
|
||||
# MODEL #
|
||||
# Autor: Krzysztof Rudnicki #
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
###########################################################
|
||||
# WDWR 18042 #
|
||||
# WDWR 25406 #
|
||||
# Planowanie produkcj w warunkach ryzyka. #
|
||||
# SKRYPT URUCHAMIAJACY - Metoda punktu odniesienia #
|
||||
# Autor: Krzysztof Rudnicki #
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
###########################################################
|
||||
# WDWR 18042 #
|
||||
# WDWR 25406 #
|
||||
# Planowanie produkcj w warunkach ryzyka. #
|
||||
# DANE #
|
||||
# Autor: Krzysztof Rudnicki #
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
###########################################################
|
||||
# WDWR 18042 #
|
||||
# WDWR 25406 #
|
||||
# Planowanie produkcj w warunkach ryzyka. #
|
||||
# SKRYPT URUCHAMIAJACY #
|
||||
# Autor: Krzysztof Rudnicki #
|
||||
|
||||
101
Programming/WDWR/projekt/data100.txt
Normal file
101
Programming/WDWR/projekt/data100.txt
Normal file
@ -0,0 +1,101 @@
|
||||
1 9.76311690917431 7.44135196072098 8.03080769529443 5.91262278007238
|
||||
2 9.07190145652961 7.65985278468609 7.81364884192831 6.23563982924631
|
||||
3 7.30586779807710 10.46831565453596 6.17860514098604 5.62316983488756
|
||||
4 6.06518115356950 6.82247048657865 6.70439394704260 5.97874895226848
|
||||
5 9.96818163646533 5.92140003729828 8.95647683901296 5.92957172143291
|
||||
6 8.63538473131973 10.78452347210609 5.33874254384498 5.71561846706637
|
||||
7 10.78779012148249 8.38993971621506 6.95119513298764 6.15728792196850
|
||||
8 9.47255420321130 5.24835077098752 9.00959525502073 6.84285948274497
|
||||
9 11.70926888809931 6.88871099028457 5.11505870322385 5.79141681866100
|
||||
10 9.64287670970948 6.99374980548690 6.93364646280594 6.63473958816273
|
||||
11 9.74417642254796 9.27515630991583 5.79381433859841 6.33880079977867
|
||||
12 9.84932031583696 8.13369675991747 9.56326564416240 5.47164097940741
|
||||
13 10.84180657665224 10.44173212698402 5.75796156005717 5.17082844375342
|
||||
14 6.42546815399896 11.41163561400132 6.98718847694160 6.19182014565093
|
||||
15 6.65343747480972 5.96491367509542 8.43404931472053 6.81514933519179
|
||||
16 8.41058204665803 9.81581254769240 6.22528708513955 5.45922484668070
|
||||
17 11.07466468261044 8.63685491994975 8.32064327582552 6.00532812753081
|
||||
18 5.66007803163167 10.59708873150259 6.40117913595970 6.61684806440770
|
||||
19 8.11097377453294 11.39989719535908 7.19879715792936 5.81867289870583
|
||||
20 10.18544068664910 8.00246586468051 7.78414367307899 6.39143329793770
|
||||
21 8.37417778106186 8.66901423662847 6.63403929668899 5.62622698569807
|
||||
22 5.71457990443940 8.10569739243788 6.93419305872531 6.80590758355993
|
||||
23 10.90693358349595 7.14177718551252 5.91236679453024 5.76232274027454
|
||||
24 8.56484398609648 6.22762158139036 8.11135450623580 5.62211012798539
|
||||
25 10.96985518991559 6.68271088560539 6.35539102212538 5.78652050813314
|
||||
26 7.62410553749944 5.47750296350388 8.10356514381925 6.80674322754784
|
||||
27 9.17309223739274 7.35075102155314 9.39642670821667 6.08239889804591
|
||||
28 11.69619190069919 5.81353083316989 6.71866562538033 5.83460977495301
|
||||
29 8.70647218713260 8.54952873879837 6.01177366865153 5.80247711748981
|
||||
30 10.19801770668396 8.40706649849486 7.78289804784438 5.59571260544491
|
||||
31 10.18823792131140 10.30622317535783 6.01007216642801 5.10730031536544
|
||||
32 8.89257975110205 9.05255653431256 7.04806430135429 5.72317637496039
|
||||
33 5.55169965201331 6.46995754365869 6.73752334538523 8.11225243525766
|
||||
34 7.38041303280808 6.03431805441005 6.54177632374026 6.26813757511362
|
||||
35 9.53600312164939 9.82870887668159 6.37298666598656 6.29512946813344
|
||||
36 9.62084627760301 8.38877821804972 9.60663262550341 6.14199642708027
|
||||
37 8.53371147142969 9.96028980160928 5.48461964749732 5.58700748945751
|
||||
38 11.43883601853922 7.43794182684747 8.19299665196631 6.53522296979568
|
||||
39 8.94531533108458 7.72770669562578 5.86612093622741 6.14249195015319
|
||||
40 8.56163972282782 8.78267109358917 8.09620140224837 5.84072057986787
|
||||
41 11.10581874422519 6.41650146716222 7.94880945361463 5.92181030289048
|
||||
42 8.79709510873987 6.96326671422654 6.81226688976441 6.08034755239137
|
||||
43 8.36353994459570 8.65114541354765 5.20396052285658 5.64107960525657
|
||||
44 10.72631955621739 10.40656722635996 6.40361955726036 5.00588106915542
|
||||
45 7.92377449146379 7.57337326655799 7.28981137176010 5.86937295871601
|
||||
46 6.44898752031030 9.84455679079283 7.56743321024807 5.61123930238106
|
||||
47 6.59142079861976 8.25490687097256 7.18086136653190 6.36808055523271
|
||||
48 7.47434811723050 7.57534400043646 7.40042557613225 5.77766925416132
|
||||
49 10.37922558429701 7.51649541751660 7.76007217627671 5.71165340725927
|
||||
50 11.22955957441164 9.11763834237000 5.91162025004763 5.22909656515264
|
||||
51 9.93626606347435 10.36742543458079 5.50414492338928 5.09387877291345
|
||||
52 7.46956075160300 8.85209992891748 5.66758603774144 6.84847007082318
|
||||
53 10.94818425908296 11.21395252595940 5.02869416739786 5.11896599852232
|
||||
54 8.59930902434361 10.23728557433725 6.43052152866663 5.55350545843695
|
||||
55 7.18223178367374 8.39628843993716 6.78631274384210 6.40826198282814
|
||||
56 10.50650695671218 7.14292577351122 6.97271222602888 5.67492382261040
|
||||
57 9.43266157452829 8.59707825452923 7.44232496740155 6.33561282221721
|
||||
58 11.45217548324165 6.23806997675535 7.62498135882166 5.84032703043151
|
||||
59 11.36423152742698 7.73909888403765 5.83487677225264 5.30267540082782
|
||||
60 7.40126925234506 7.78983701703254 7.26783254076869 6.35068014074993
|
||||
61 9.72974571794505 8.14279615037054 6.43258828020491 5.60905301174744
|
||||
62 9.71958329969389 8.25791366588767 6.81451687462449 5.84590714949131
|
||||
63 11.78371126050813 7.89117263445312 8.21483466145989 5.60333890798316
|
||||
64 6.43302225580614 8.07865860135554 5.44469004007024 6.25543936966105
|
||||
65 11.32524672426065 6.23439997420789 9.09984135190236 5.92522151214137
|
||||
66 6.11523920037522 9.46855519033448 8.99139954457499 7.26985178631296
|
||||
67 10.75986956011578 8.89269588219645 6.16473844457922 5.01830225504361
|
||||
68 7.44261078629228 5.59781415962693 8.47555931122058 6.71081007297257
|
||||
69 6.13170779809489 7.22655838486716 7.72995785629984 6.90573736168416
|
||||
70 9.43027479825457 11.48319339258313 7.38708836041081 5.82689865183140
|
||||
71 5.29171692626969 8.09437078836054 6.39563010794279 6.62912879511093
|
||||
72 5.09893294234523 7.74584955672930 8.88018284918212 7.01212790493029
|
||||
73 6.20578320069247 6.80617867447727 8.18103843191598 6.83958319443877
|
||||
74 6.30258685494809 7.43138054831968 6.54063201012806 6.49666135387873
|
||||
75 5.99078754250444 9.43740619647565 6.33367827869915 6.32580787466866
|
||||
76 6.09773092392164 8.81422152842116 6.40425733606985 6.00528108344304
|
||||
77 9.77514087744415 8.44932475630892 7.94420117667674 5.69585236521884
|
||||
78 9.52359733569984 5.16479502907556 8.95174376770244 6.78672071859107
|
||||
79 10.87512003895627 7.94035821507262 7.57773074672391 5.84630709056388
|
||||
80 7.03228696898568 6.60340093608582 6.44468568443036 6.19149860676074
|
||||
81 9.65992578732530 8.56527229906357 6.09872442954240 5.20440692261623
|
||||
82 6.30983535489480 9.30561393417605 6.54859829930319 6.52106231396463
|
||||
83 5.82137666724151 5.35827290855938 8.49191286969823 6.71371780289945
|
||||
84 11.37494716877100 5.81213960381298 8.05853844161706 5.69806024484299
|
||||
85 8.15267985634545 10.97224605386566 5.12446664947324 5.15795103491506
|
||||
86 11.73086416587584 5.65124348656024 6.77078823854425 5.90352878508404
|
||||
87 6.72960532844368 8.10521896869132 11.60799014602290 5.36046426627923
|
||||
88 5.25102730028672 6.84949245261905 8.49279919952933 6.29483292662839
|
||||
89 7.90449528978985 7.68346606583354 8.26036057308542 5.78474731288598
|
||||
90 8.64103203208981 6.57844735571956 8.12280488732531 7.36240059132464
|
||||
91 8.46655660484256 8.36699115351209 6.70419093097301 6.03113661709298
|
||||
92 8.50248558815979 6.35585412244623 5.95963894605528 5.55306703237114
|
||||
93 8.11096815930533 6.26958795090084 6.89847746026576 6.79423199764579
|
||||
94 11.05399477820485 6.64260318869504 8.29929372751188 6.03566117360477
|
||||
95 9.56800557695653 8.79263357467837 8.58788350167046 6.06774627920175
|
||||
96 11.90421443450454 6.78214769706352 9.14111391052618 5.69759901474202
|
||||
97 7.57911702883690 7.65716973584061 7.10622237301328 5.97627526735100
|
||||
98 5.12673628692985 11.33334016193997 7.83474212553888 5.91330252723919
|
||||
99 8.25983441252135 10.48661063799430 6.24054516528815 5.59523265380788
|
||||
100 6.37952025900229 7.91998372816597 10.27190171308190 6.82383475873556
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -468,7 +468,7 @@ Listing 1: Skrypt w języku *R* do obliczania wartości oczekiwanej wektora *R*
|
||||
```
|
||||
załączniku.
|
||||
1 # ##########################################################
|
||||
2 # WDWR 18042 #
|
||||
2 # WDWR 25406 #
|
||||
3 # Planowanie produkcj w warunkach ryzyka. #
|
||||
4 # DANE #
|
||||
5 # Autor : Jan Kumor #
|
||||
|
||||
Binary file not shown.
@ -1,4 +1,4 @@
|
||||
\documentclass[12pt]{article}
|
||||
\documentclass{article}
|
||||
\usepackage[utf8]{inputenc}
|
||||
\usepackage[polish]{babel}
|
||||
\usepackage{amsmath,amssymb}
|
||||
@ -7,6 +7,8 @@
|
||||
\usepackage{hyperref}
|
||||
\usepackage{longtable}
|
||||
\usepackage{enumitem}
|
||||
\usepackage{float}
|
||||
\usepackage{minted}
|
||||
|
||||
\title{WDWR, sprawozdanie}
|
||||
\author{Krzysztof Rudnicki, 307585}
|
||||
@ -15,53 +17,23 @@
|
||||
\begin{document}
|
||||
|
||||
\maketitle
|
||||
\tableofcontents
|
||||
|
||||
\section*{Spis treści}
|
||||
\begin{longtable}{|c|l|c|}
|
||||
\hline
|
||||
1 & Treść zadania & 2 \\
|
||||
\hline
|
||||
2 & Jednokryterialny model wyboru w warunkach ryzyka z wartością oczekiwaną jako miarą & 3 \\
|
||||
& zysku & \\
|
||||
& 2.1 Zbiory indeksowe & 3 \\
|
||||
& 2.2 Parametry & 3 \\
|
||||
& 2.3 Zmienne & 4 \\
|
||||
& 2.4 Ograniczenia & 4 \\
|
||||
& 2.5 Funkcja celu & 4 \\
|
||||
\hline
|
||||
3 & Dwukryterialny model zysku i ryzyka z wartoscią oczekiwaną jako miarą zysku i od & 5 \\
|
||||
& chyleniem maksymalnym jako miarą ryzyka & \\
|
||||
& 3.1 Zbiory indeksowe & 5 \\
|
||||
& 3.2 Parametry & 5 \\
|
||||
& 3.3 Zmienne & 5 \\
|
||||
& 3.4 Ograniczenia & 5 \\
|
||||
& 3.5 Metoda punktu odniesienia & 6 \\
|
||||
\hline
|
||||
4 & Wyznaczenie parametrów zadania z rozkładu t-Studenta & 6 \\
|
||||
\hline
|
||||
5 & Model dla programu AMPL & 8 \\
|
||||
& 5.1 Plik z modelem (.mod) & 8 \\
|
||||
& 5.2 Plik z danymi (.dat) & 11 \\
|
||||
& 5.3 Skrypty uruchomieniowe (.run) & 14 \\
|
||||
\hline
|
||||
6 & Rozwiązanie zadania optymalizacji & 16 \\
|
||||
& 6.1 Wyniki dla modelu jednokryterialnego & 16 \\
|
||||
& 6.2 Wyniki dla modelu dwukryterialnego & 19 \\
|
||||
& 6.2.1 Obraz zbioru rozwiązań efektywnych w przestrzeni ryzyko-zysk & 19 \\
|
||||
& 6.2.2 Analiza relacji dominacji stochastycznej dla trzech wybranych rozwiązań efek & 21 \\
|
||||
& tywnych & \\
|
||||
\hline
|
||||
\end{longtable}
|
||||
|
||||
\section*{WDWR 18402}
|
||||
\section*{WDWR 25406}
|
||||
|
||||
Rozważamy następujące zagadnienie planowania produkcji:
|
||||
|
||||
\begin{itemize}
|
||||
\item Przedsiębiorstwo wytwarza 4 produkty P1, \ldots, P4 na następujących maszynach: 4 szlifierkach, 2 wiertarkach pionowych, 3 wiertarkach poziomych, 1 frezarce i 1 tokarce. Wymagane czasy produkcji 1 sztuki produktu (w godzinach) w danym procesie obróbki zostały przedstawione w poniższej tabeli:
|
||||
\item Przedsiębiorstwo wytwarza 4 produkty P1,
|
||||
\ldots, P4 na następujących maszynach:
|
||||
4 szlifierkach, 2 wiertarkach pionowych,
|
||||
3 wiertarkach poziomych, 1 frezarce i 1 tokarce.
|
||||
Wymagane czasy produkcji 1 sztuki produktu (w godzinach)
|
||||
w danym procesie obróbki zostały przedstawione w poniższej
|
||||
tabeli:
|
||||
\end{itemize}
|
||||
|
||||
\begin{table}[h!]
|
||||
\begin{table}[H]
|
||||
\centering
|
||||
\begin{tabular}{|l|c|c|c|c|}
|
||||
\hline
|
||||
@ -81,7 +53,14 @@ Toczenie & — & 0,05 & 0,02 & — \\
|
||||
\end{table}
|
||||
|
||||
\begin{itemize}
|
||||
\item Dochody ze sprzedaży produktów (w zł/sztukę) określają składowe wektora losowego \textbf{R} = ($R_1, \ldots, R_4$)$^T$. Wektor losowy \textbf{R} opisuje 4-wymiarowy rozkład $t$-Studenta z 5 stopniami swobody, którego wartości składowych zostały zawężone do przedziału [5; 12]. Parametry $\mu$ oraz $\mathbf{\Sigma}$ niezawężonego rozkładu $t$-Studenta są następujące:
|
||||
\item Dochody ze sprzedaży produktów (w zł/sztukę)
|
||||
modelują składowe wektora losowego
|
||||
\textbf{R} = ($R_1, \ldots, R_4$)$^T$.
|
||||
Wektor losowy \textbf{R} opisuje 4-wymiarowy rozkład
|
||||
$t$-Studenta z 5 stopniami swobody,
|
||||
którego wartości składowych zostały zawężone do przedziału
|
||||
[5; 12]. Parametry $\mu$ oraz $\mathbf{\Sigma}$
|
||||
niezawężonego rozkładu $t$-Studenta są następujące:
|
||||
|
||||
$$
|
||||
\mu = \begin{pmatrix} 9 \\ 8 \\ 7 \\ 6 \end{pmatrix}, \qquad \Sigma = \begin{pmatrix} 16 & -2 & -1 & -3 \\ -2 & 9 & -4 & -1 \\ -1 & -4 & 4 & 1 \\ -3 & -1 & 1 & 1 \end{pmatrix}.
|
||||
@ -92,7 +71,7 @@ $$
|
||||
\item Istnieją ograniczenia rynkowe na liczbę sprzedawanych produktów w danym miesiącu:
|
||||
\end{itemize}
|
||||
|
||||
\begin{table}[h!]
|
||||
\begin{table}[H]
|
||||
\centering
|
||||
\begin{tabular}{|l|c|c|c|c|}
|
||||
\hline
|
||||
@ -108,11 +87,12 @@ Marzec & 0 & 300 & 100 & 200 \\
|
||||
\end{table}
|
||||
|
||||
\begin{itemize}
|
||||
\item Jeżeli w danym miesiącu jest sprzedawany produkt P1 lub P2, to musi być również sprzedawany produkt P4 w ilości nie mniejszej niż suma sprzedawanych produktów P1 i P2.
|
||||
\item Jeżeli sprzedaż danego produktu przekracza 80 procent ilości jaką może wchłonąć rynek, jego
|
||||
dochód spada o 20 procent.
|
||||
\item Istnieje możliwość składowania do 200 sztuk każdego produktu w danym czasie w cenie 1 zł/sztukę za miesiąc. Aktualnie firma nie posiada żadnych zapasów, ale jest pożądane mieć po 50 sztuk każdego produktu pod koniec marca.
|
||||
\item Przedsiębiorstwo pracuje 6 dni w tygodniu w systemie dwóch zmian. Każda zmiana trwa 8 godzin. Można założyć, że każdy miesiąc składa się z 24 dni roboczych.
|
||||
\item 1. Zaproponować jednokryterialny model wyboru w warunkach ryzyka z wartością oczekiwaną jako miarą zysku. Wyznaczyć rozwiązanie optymalne.
|
||||
\item 2. Jako rozszerzenie powyższego zaproponować dwukryterialny model zysku i ryzyka z wartością oczekiwaną jako miarą zysku i odchyleniem maksymalnym jako miarą ryzyka. Dla decyzji $\mathbf{x} \in Q$ odchylenie maksymalne jest definiowane jako $D(\mathbf{x}) = \max_{t=1,...,T} |\mu(\mathbf{x}) - r_t(\mathbf{x})|$, gdzie $\mu(\mathbf{x})$ oznacza wartość oczekiwaną, $r_t(\mathbf{x})$ realizację dla scenariusza $t$.
|
||||
\item 2. Jako rozszerzenie powyższego zaproponować dwukryterialny model zysku i ryzyka z wartością średnią jako miarą zysku i średnią różnicą Giniego jako miarą ryzyka. Dla decyzji $\mathbf{x} \in Q$ średnia różnica Giniego jest definiowana jako $\Gamma(\mathbf{x}) = \frac{1}{2} \sum_{t'=1}^{T} \sum_{t''=1}^{T} |r^{t'}(\mathbf{x}) - r^{t''}(\mathbf{x})|p^{t'}p^{t''}$, gdzie $r^t(\mathbf{x})$ oznacza realizację dla scenariusza $t$, $p^t$ prawdopodobieństwo scenariusza $t$.
|
||||
\begin{itemize}
|
||||
\item a. Wyznaczyć obraz zbioru rozwiązań efektywnych w przestrzeni ryzyko–zysk.
|
||||
\item b. Wskazać rozwiązania efektywne minimalnego ryzyka i maksymalnego zysku. Jakie odpowiadają im wartości w przestrzeni ryzyko–zysk?
|
||||
@ -126,7 +106,7 @@ W celu rozwiązania postawionego zadania dokonano sformułowania modelu programo
|
||||
|
||||
\subsection{Zbiory indeksowe}
|
||||
|
||||
\begin{table}[h!]
|
||||
\begin{table}[H]
|
||||
\centering
|
||||
\begin{tabular}{|l|l|}
|
||||
\hline
|
||||
@ -143,7 +123,7 @@ M = M1, M2, M3 & Zbiór kolejnych miesięcy produkcji \\
|
||||
|
||||
\subsection{Parametry}
|
||||
|
||||
\begin{table}[h!]
|
||||
\begin{table}[H]
|
||||
\centering
|
||||
\begin{tabular}{|l|p{10cm}|}
|
||||
\hline
|
||||
@ -180,7 +160,8 @@ $att_t = tc_t \cdot whp_m$ & Dostępna liczba godzin roboczych maszyn typu $t$ w
|
||||
|
||||
\subsection{Zmienne}
|
||||
|
||||
\begin{table}[h!]
|
||||
\renewcommand{\arraystretch}{1.5} % Increase row height
|
||||
\begin{table}[H]
|
||||
\centering
|
||||
\begin{tabular}{|l|p{10cm}|}
|
||||
\hline
|
||||
@ -194,16 +175,21 @@ $ts_p = \sum_{m \in M} s_{mp}$ & Całkowita liczba sprzedanych sztuk produktu $p
|
||||
\hline
|
||||
$std_{mp} = p_{mp} - s_{mp}$ & Liczba sztuk produktu $p$ zmagazynowanych w miesiącu $m$ [szt] \\
|
||||
\hline
|
||||
$stg_{mp} = st0_p + \sum_{m2=1}^{m} std_{m2p}$ & Stan magazynowy produktu $p$ na koniec miesiąca $m$ [szt] \\
|
||||
$stg_{mp} = st0_p + \sum\limits_{m2=1}^{m} std_{m2p}$ & Stan magazynowy produktu $p$ na koniec miesiąca $m$ [szt] \\
|
||||
\hline
|
||||
$uttm_t = \sum_{p \in P} p_{mp} \cdot ttpu_{tp}$ & Wykorzystanie czasu pracy maszyny typu $t$ w miesiącu $m$ [godz] \\
|
||||
$uttm_t = \sum\limits_{p \in P} p_{mp} \cdot ttpu_{tp}$ & Wykorzystanie czasu pracy maszyny typu $t$ w miesiącu $m$ [godz] \\
|
||||
\hline
|
||||
$tstc = stcp_u \cdot \sum_{m \in M} \sum_{p \in P} stg_{mp}$ & Całkowity koszt wykorzystania magazynów [zł] \\
|
||||
$tstc = stcp_u \cdot \sum\limits_{m \in M} \sum\limits_{p \in P} stg_{mp}$ & Całkowity koszt wykorzystania magazynów [zł] \\
|
||||
\hline
|
||||
$ep = \sum_{p \in P} (ts_p \cdot eppu_p) - tstc$ & Wartość zysku całkowitego dla wartości oczekiwanych zysku ze sprzedaży produktów [zł] \\
|
||||
$b_{mp}$ & Zmienna binarna określająca czy sprzedaż produktu $p$ w miesiącu $m$ przekracza 80\% limitu rynkowego \\
|
||||
\hline
|
||||
$eppu_{mp} = eppu_p \cdot (1 - 0.2 \cdot b_{mp})$ & Skorygowany zysk jednostkowy dla produktu $p$ w miesiącu $m$ uwzględniający spadek o 20\% jeśli sprzedaż przekracza 80\% limitu rynkowego [zł] \\
|
||||
\hline
|
||||
$ep = \sum\limits_{m \in M} \sum\limits_{p \in P} (s_{mp} \cdot eppu_{mp}) - tstc$ & Wartość zysku całkowitego dla wartości oczekiwanych zysku ze sprzedaży produktów [zł] \\
|
||||
\hline
|
||||
\end{tabular}
|
||||
\end{table}
|
||||
\renewcommand{\arraystretch}{1} % Reset to default value
|
||||
|
||||
\subsection{Ograniczenia}
|
||||
|
||||
@ -219,10 +205,6 @@ Ograniczenie sprzedaży produktów w kolejnych miesiącach:
|
||||
|
||||
$$s_{mp} \leqslant p_{mp} + stg_{mp}, \quad \forall m \in M \backslash \{1\}$$
|
||||
|
||||
Ograniczenie na powiązanie sprzedaży produktu 4 ze sprzedażą produktów 1 i 2:
|
||||
|
||||
$s_{m4} > s_{m1} + s_{m2}, \quad \forall m \in M$
|
||||
|
||||
Ograniczenie pojemności magazynów:
|
||||
|
||||
$$stg_{mp} \leqslant stl_p, \quad \forall p \in P$$
|
||||
@ -235,6 +217,14 @@ Ograniczenie wykorzystania czasu pracy narzędzi w danym miesiącu:
|
||||
|
||||
$uttm_t \leq att_t, \quad \forall t \in T, \forall m \in M$
|
||||
|
||||
Ograniczenie identyfikujące przekroczenie 80\% limitu rynkowego:
|
||||
|
||||
$$s_{mp} \leq 0.8 \cdot smlm_p + M \cdot b_{mp}, \quad \forall m \in M, \forall p \in P$$
|
||||
|
||||
$$s_{mp} \geq 0.8 \cdot smlm_p - M \cdot (1 - b_{mp}) + \varepsilon, \quad \forall m \in M, \forall p \in P$$
|
||||
|
||||
gdzie $M$ jest dostatecznie dużą liczbą, a $\varepsilon$ jest małą liczbą dodatnią.
|
||||
|
||||
\subsection{Funkcja celu}
|
||||
|
||||
Jako funkcję celu przyjęto maksymalizację wartości oczekiwanej zysku: $maximize \; ep$
|
||||
@ -245,7 +235,7 @@ Model ten został zrealizowany jako rozszerzenie modelu jednokryterialnego o dod
|
||||
|
||||
\subsection{Zbiory indeksowe}
|
||||
|
||||
\begin{table}[h!]
|
||||
\begin{table}[H]
|
||||
\centering
|
||||
\begin{tabular}{|l|l|}
|
||||
\hline
|
||||
@ -258,7 +248,7 @@ S = S1, \ldots, S1000 & Zbiór scenariuszy wygenerowanych z rozkładu t-Studenta
|
||||
|
||||
\subsection{Parametry}
|
||||
|
||||
\begin{table}[h!]
|
||||
\begin{table}[H]
|
||||
\centering
|
||||
\begin{tabular}{|l|l|}
|
||||
\hline
|
||||
@ -270,8 +260,8 @@ $sppu_{ps}$ & Zysk ze sprzedaży jednej sztuki produktu $p$ w scenariuszu $s$ [z
|
||||
\end{table}
|
||||
|
||||
\subsection{Zmienne}
|
||||
|
||||
\begin{table}[h!]
|
||||
inputminted
|
||||
\begin{table}[H]
|
||||
\centering
|
||||
\begin{tabular}{|l|p{10cm}|}
|
||||
\hline
|
||||
@ -316,7 +306,7 @@ $$\sum_{s \in S} Z_s = 1$$
|
||||
|
||||
Jako model preferencji dla modelu dwukryterialnego została wybrana metoda punktu odniesienia. Wprowadza ona zestaw dodatkowych parametrów i zmiennych:
|
||||
|
||||
\begin{table}[h!]
|
||||
\begin{table}[H]
|
||||
\centering
|
||||
\begin{tabular}{|l|p{10cm}|}
|
||||
\hline
|
||||
@ -384,230 +374,23 @@ Otrzymano wartości:
|
||||
|
||||
$E(R)^T = [8.5094, 8.4710, 8.1319, 6.3944]$
|
||||
|
||||
Do obliczenia wartości oczekiwanej oraz wyznaczenia scenariuszy wykorzystano skrypt napisany w języku $R$. Wygenerowano 1000 scenariuszy testowtych. Użyty skrypt przedstawia Listing 1.
|
||||
Do obliczenia wartości oczekiwanej oraz wyznaczenia scenariuszy wykorzystano skrypt napisany w języku $R$. Wygenerowano 100 scenariuszy testowtych. Użyty skrypt przedstawia Listing 1.
|
||||
|
||||
Listing 1: Skrypt w języku $R$ do obliczania wartości oczekiwanej wektora $R$ i generowania scenariuszy z rozkładu t-Studenta.
|
||||
|
||||
\begin{verbatim}
|
||||
1 library ( tmvtnorm )
|
||||
2
|
||||
3 # t- Stutdet parameters
|
||||
4 Mu = c(9 , 8 , 7 , 6)
|
||||
5 Sigma = matrix (c(16 , -2 , -1 , -3 ,
|
||||
6 -2 , 9 , -4 , -1 ,
|
||||
7 -1 , -4 , 4 , 1 ,
|
||||
8 -3 , -1 , 1 , 1) ,
|
||||
9 nrow =4 , ncol =4)
|
||||
10 lower _ bound = 5
|
||||
11 upper _ bound = 12
|
||||
12
|
||||
13 # Generate scenarios
|
||||
14 data <- rtmvt ( n =10000 , mean = mu , sigma = sigma , df =5 , lower =rep ( lower _←-
|
||||
bound , 4) , upper =rep ( upper _bound , 4) )
|
||||
15 write . table ( format (data , digits =15 , drop0trailing = F ) , " data10000 .txt"←-
|
||||
, quote =F , sep ="\t", eol ="\n\t", col . names = F , row . names = T )
|
||||
16 mean <- colMeans ( data )
|
||||
17
|
||||
18 E <- function ( idx , Mu , Sigma , v , alfa , beta ) {
|
||||
19 mu = Mu [ idx ]
|
||||
20 sigma = Sigma [ idx , idx ]
|
||||
21 a = ( alfa - mu )/ sigma
|
||||
22 b = ( beta - mu )/ sigma
|
||||
23 nom = gamma (( v -1)/2) *
|
||||
24 (( v + a ^2) ^( -1*(v -1) /2) -
|
||||
25 ( v + b ^2) ^( -1*(v -1)/2) ) *
|
||||
26 v ^( v/2)
|
||||
27 den = 2 * (pt(b , v ) - pt(a , v ) ) * gamma ( v/2) * gamma (1/2)
|
||||
28 return ( mu + sigma *( nom /den ) )
|
||||
29 }
|
||||
30
|
||||
31 ER1 <- E (1 , Mu , Sigma , 5 , 5 , 12)
|
||||
32 ER2 <- E (2 , Mu , Sigma , 5 , 5 , 12)
|
||||
33 ER3 <- E (3 , Mu , Sigma , 5 , 5 , 12)
|
||||
34 ER4 <- E (4 , Mu , Sigma , 5 , 5 , 12)
|
||||
\end{verbatim}
|
||||
|
||||
\begin{verbatim}
|
||||
45
|
||||
46 # Aktualny stan magazynowy [szt]
|
||||
47 param startingStorage { PRODUCTS } >= 0;
|
||||
48
|
||||
49 # Pozadany stan magazynowy na koniec symulacji [szt]
|
||||
50 param desiredEndStorage { PRODUCTS } >= 0;
|
||||
51
|
||||
52 # Liczba dni roboczych w miesiacu [d]
|
||||
53 param daysPerMonth >= 1;
|
||||
54
|
||||
55 # Liczba zmian w ciagu jednego dnia roboczego
|
||||
56 param shiftsPerDay >= 1;
|
||||
57
|
||||
58 # Dlugosc zmiany [ godz ]
|
||||
59 param hoursPerShift >= 1;
|
||||
60
|
||||
61 # Liczba roboczogodzin w miesiacu [ godz ]
|
||||
62 param workHoursPerMonth = daysPerMonth * shiftsPerDay * hoursPerShift ;
|
||||
63
|
||||
64 # Czas pracy narzedzi w danym miesiacu
|
||||
65 param availableToolTime { t in TOOLS } = toolCount [ t ]* workHoursPerMonth←-
|
||||
;
|
||||
66
|
||||
67 # ##########
|
||||
68 # Zmienne #
|
||||
69 # ##########
|
||||
70 # Produkcja produktow
|
||||
71 var produced { MONTHS , PRODUCTS } >= 0 integer ;
|
||||
72
|
||||
73 # Sprzedaz produktow w danym miesiacu
|
||||
74 var sold { MONTHS , PRODUCTS } >= 0 integer ;
|
||||
75 var totalSold { p in PRODUCTS } = sum { m in MONTHS } sold [m , p ];
|
||||
76
|
||||
77 # Ilosc produktow przekazanych do magazynu w danym miesiacu
|
||||
78 var stored { m in MONTHS , p in PRODUCTS } = produced [m , p ] - sold [m , p←-
|
||||
];
|
||||
79
|
||||
80 # Stan magazynowy na koniec danego miesiaca
|
||||
81 var storage { m in MONTHS , p in PRODUCTS } =
|
||||
82 startingStorage [ p ] + sum { m2 in MONTHS : ord( m2 ) <= ord( m ) } ←-
|
||||
stored [ m2 , p ];
|
||||
83
|
||||
84 # Wykorzystany czas pracy
|
||||
85 var usedToolTime { m in MONTHS , t in TOOLS } =
|
||||
86 sum { p in PRODUCTS } produced [m , p ]* toolTimePerUnit [t , p ];
|
||||
87
|
||||
88 # Koszt magazynowania
|
||||
89 var monthlyStorageCost { m in MONTHS } =
|
||||
90 (sum { p in PRODUCTS } storage [m , p ]) * storageUnitCost ;
|
||||
91 var totalStorageCost = sum { m in MONTHS } monthlyStorageCost [ m ];
|
||||
92
|
||||
93 # Zysk dla wartosci oczekiwanej
|
||||
94 var expectedSalesProfit =
|
||||
95 sum { p in PRODUCTS } totalSold [ p ]* expectedProfitPerUnit [ p ];
|
||||
96 var expectedNetProfit =
|
||||
97 expectedSalesProfit - totalStorageCost ;
|
||||
\end{verbatim}
|
||||
|
||||
\begin{verbatim}
|
||||
98
|
||||
99 # Zysk w danym scenariuszu
|
||||
100 var scenarioSalesProfit { s in SCENARIOS } =
|
||||
101 sum { p in PRODUCTS } totalSold [ p ]* scenarioProfitPerUnit [s , p ];
|
||||
102 var scenarioNetProfit { s in SCENARIOS } =
|
||||
103 scenarioSalesProfit [ s ] - totalStorageCost ;
|
||||
104
|
||||
105 # Odchylenie jako miara ryzyka - zlinearyzowana wartosc bezwzgledna
|
||||
106 var deviation { s in SCENARIOS } =
|
||||
107 expectedNetProfit - scenarioNetProfit [ s ];
|
||||
108 var P { SCENARIOS } >= 0;
|
||||
109 var Q { SCENARIOS } >= 0;
|
||||
110 subject to deviationLimit { s1 in SCENARIOS , s2 in SCENARIOS }:
|
||||
111 deviation [ s1 ] - deviation [ s2 ]+ P [ s1 ] - Q [ s2 ] = 0;
|
||||
112
|
||||
113 #var maxDeviation = max {s in SCENARIOS } deviation [s];
|
||||
114 var maxDeviation ;
|
||||
115 # Linearyzacja maksymalnego odchylenia jako miary ryzyka
|
||||
116 param M = 10000;
|
||||
117 var Z { SCENARIOS } binary ;
|
||||
118 subject to mdLimit { s in SCENARIOS }:
|
||||
119 maxDeviation >= deviation [ s ];
|
||||
120 subject to mdWhere { s in SCENARIOS }:
|
||||
121 maxDeviation <= deviation [ s ] + M *(1 - Z [ s ]) ;
|
||||
122 subject to mdOS :
|
||||
123 sum { s in SCENARIOS } Z [ s ] = 1;
|
||||
124
|
||||
125 # Aliasy dla ocenianych wartosci
|
||||
126 var profit = expectedNetProfit ;
|
||||
127 var risk = maxDeviation ;
|
||||
128
|
||||
129 # ######################
|
||||
130 # Ograniczenia modelu #
|
||||
131 # ######################
|
||||
132
|
||||
133 # Ograniczenie rynkowe sprzedazy produktow
|
||||
134 subject to SalesMarketLimit { m in MONTHS , p in PRODUCTS }:
|
||||
135 sold [m , p ] <= salesMarketLimit [m , p ];
|
||||
136 # Ograniczenie magazynowe sprzedazy produktow
|
||||
137 subject to SalesLimit1 { p in PRODUCTS }:
|
||||
138 sold [ first ( MONTHS ) , p ] <= produced [ first ( MONTHS ) , p ];
|
||||
139 subject to SalesLimit2 { m in MONTHS , p in PRODUCTS : m != first ( MONTHS←-
|
||||
) }:
|
||||
140 sold [m , p ] <= produced [m , p ] + storage [m , p ];
|
||||
141 # Powiazanie sprzedazy produktu P4 ze sprzedaza produktow P1 i P2
|
||||
142 subject to P4SalesConstraint { m in MONTHS }:
|
||||
143 sold [m , "P4"] >= sold [m , "P1"] + sold [m , "P2"];
|
||||
144 # Ograniczenie pojemnosci magazynowej
|
||||
145 subject to StorageLimit { m in MONTHS , p in PRODUCTS }:
|
||||
146 storage [m , p ] <= storageLimit [ p ];
|
||||
147 # Ograniczenie na pozadany stan magazynowy na koniec marca
|
||||
148 subject to DesiredStorage { p in PRODUCTS }:
|
||||
149 storage [ last ( MONTHS ) , p ] >= desiredEndStorage [ p ];
|
||||
150 # Ograniczenie czasu pracy narzedzi w miesiacu
|
||||
151 subject to ToolWorkTime { m in MONTHS , t in TOOLS }:
|
||||
152 usedToolTime [m , t ] <= availableToolTime [ t ];
|
||||
\end{verbatim}
|
||||
|
||||
\begin{verbatim}
|
||||
153
|
||||
154 # ############################
|
||||
155 # Metoda punktu odniesienia #
|
||||
156 # ############################
|
||||
157 # Skladniki wektora oceny
|
||||
158 set RATED = {" PROFIT ", " RISK "};
|
||||
159 # Wektor oceny
|
||||
160 var value { r in RATED } =
|
||||
161 if r == " PROFIT " then profit
|
||||
162 else if r == " RISK " then risk ;
|
||||
163 # Wektor aspiracji
|
||||
164 param aspiration { RATED };
|
||||
165 # Wartosci utopii i nadiru
|
||||
166 param utopia { RATED };
|
||||
167 param nadir { RATED };
|
||||
168 # Wspolczynniki normalizujace
|
||||
169 param lambda { r in RATED } =
|
||||
170 1 / ( utopia [r] - nadir [r]);
|
||||
171 # Wspolczynnik skladnika regularyzacyjnego
|
||||
172 param epsilon ;
|
||||
173 # Wspolczynnik pomniejszenia wartosci ocen ponad poziomem aspiracji
|
||||
174 param beta ;
|
||||
175 # Indywidualne funkcje osiagniec
|
||||
176 var individualRating { RATED };
|
||||
177 # Zmienna pomocnicza metody punktu odniesienia
|
||||
178 var v;
|
||||
179 # Skalaryzujaca funkcja osiagniecia
|
||||
180 var rating = v + epsilon * (sum {r in RATED } individualRating [r]);
|
||||
181 # Odleglosc od punktu odniesienia
|
||||
182 var distance {r in RATED } = value [r] - aspiration [r];
|
||||
183 # Znormalizowana odleglosc od punktu odniesienia
|
||||
184 var normalizedDistance {r in RATED } = lambda [r]* distance [r];
|
||||
185 # Ograniczenia zmiennej v przez indywidualne funkcje osiagniec
|
||||
186 subject to VSubject {r in RATED }:
|
||||
187 v <= individualRating [r];
|
||||
188 # Ograniczenia indywidualnych funkcji osiagniec
|
||||
189 subject to IndividualRatingSubjectBeta {r in RATED }:
|
||||
190 individualRating [r] <= beta * normalizedDistance [r];
|
||||
191 subject to IndividualRatingSubject {r in RATED }:
|
||||
192 individualRating [r] <= normalizedDistance [r];
|
||||
193
|
||||
194 ################
|
||||
195 # Funkcje celu #
|
||||
196 ################
|
||||
197 minimize MinimizeProfit : profit ;
|
||||
198 maximize MaximizeProfit : profit ;
|
||||
199 minimize MinimizeRisk : risk ;
|
||||
200 maximize MaximizeRisk : risk ;
|
||||
201 maximize RPM: rating ;
|
||||
\end{verbatim}
|
||||
\inputminted[autogobble]{R}{../WDWR.r}
|
||||
|
||||
\section{Model dla programu AMPL}
|
||||
|
||||
\subsection{Plik z modelem (.mod)}
|
||||
|
||||
\subsection{Plik z danymi (.dat)}
|
||||
\inputminted[autogobble]{R}{../WDWR1.mod}
|
||||
|
||||
Listing 3: Dane dla modelu AMPL - pominięto scenariusze, pełny zestaw danych dostępny w załączniku.
|
||||
\subsection{Plik z danymi (.dat)}
|
||||
|
||||
\begin{verbatim}
|
||||
1 # ##########################################################
|
||||
2 # WDWR 18042 #
|
||||
2 # WDWR 25406 #
|
||||
3 # Planowanie produkcj w warunkach ryzyka. #
|
||||
4 # DANE #
|
||||
5 # Autor : Krzysztof Rudnicki #
|
||||
@ -631,13 +414,13 @@ Listing 3: Dane dla modelu AMPL - pominięto scenariusze, pełny zestaw danych d
|
||||
23 # Czasy produkcji h
|
||||
24 param toolTimePerUnit :
|
||||
25 P1 P2 P3←-
|
||||
P4 :=
|
||||
P4 :=
|
||||
26 GRINDER 0 .4 0 .6 0 ←-
|
||||
0
|
||||
0
|
||||
27 VDRILL 0 .2 0 .1 0 ←-
|
||||
0 .6
|
||||
0 .6
|
||||
28 HDRILL 0 .1 0 0 .7 ←-
|
||||
0
|
||||
0
|
||||
29 MILLER 0 .06 0 .04 0 0 .05
|
||||
30 LATHE 0 0 .05 0 .02 0
|
||||
31 ;
|
||||
@ -645,13 +428,13 @@ Listing 3: Dane dla modelu AMPL - pominięto scenariusze, pełny zestaw danych d
|
||||
33 # Ograniczenia rynkowe liczby sprzedawanych produktow pcs
|
||||
34 param salesMarketLimit :
|
||||
35 P1 P2 P3 ←-
|
||||
P4 :=
|
||||
P4 :=
|
||||
36 JAN 200 0 100 ←-
|
||||
200
|
||||
200
|
||||
37 FEB 300 100 200 ←-
|
||||
200
|
||||
200
|
||||
38 MAR 0 300 100 ←-
|
||||
200
|
||||
200
|
||||
39 ;
|
||||
40
|
||||
41 # Ograniczeine liczby magazynowanych produktow pcs
|
||||
@ -721,73 +504,78 @@ Listing 3: Dane dla modelu AMPL - pominięto scenariusze, pełny zestaw danych d
|
||||
102 RISK 0
|
||||
\end{verbatim}
|
||||
|
||||
|
||||
\subsection{Skrypty uruchomieniowe (.run)}
|
||||
|
||||
\inputminted[autogobble]{R}{../WDWR1.run}
|
||||
|
||||
\section{Rozwiązanie zadania optymalizacji}
|
||||
|
||||
\subsection{Wyniki dla modelu jednokryterialnego}
|
||||
|
||||
$s_{mp}$ oraz wartość wyznaczonego rozwiązania optymalnego:
|
||||
|
||||
$ep = 11987.42[z]$
|
||||
$ep = 13943.26177[z]$
|
||||
|
||||
Listing 7: Wynik działania skryptu wyznaczającego rozwiązanie optymalne modelu jednokryterialnego.
|
||||
|
||||
\begin{verbatim}
|
||||
1 # ################################################
|
||||
2 ###Maximize profit for expected profit value ###
|
||||
3 # ################################################
|
||||
4 CPLEX 12 .8.0.0 : optimal integer solution ; objective 11987 .41899
|
||||
5 11MIP simplex iterations
|
||||
6 0branch -and - bound nodes
|
||||
7 produced :=
|
||||
8 JAN P1 200
|
||||
9 JAN P2 0
|
||||
10 JAN P3 100
|
||||
11 JAN P4 200
|
||||
12 FEB P1 200
|
||||
13 FEB P2 0
|
||||
14 FEB P3 200
|
||||
15 FEB P4 200
|
||||
16 MAR P1 50
|
||||
17 MAR P2 250
|
||||
18 MAR P3 150
|
||||
19 MAR P4 250
|
||||
20 ;
|
||||
21
|
||||
22 sold :=
|
||||
23 JAN P1 200
|
||||
24 JAN P2 0
|
||||
25 JAN P3 100
|
||||
26 JAN P4 200
|
||||
27 FEB P1 200
|
||||
28 FEB P2 0
|
||||
29 FEB P3 200
|
||||
30 FEB P4 200
|
||||
31 MAR P1 0
|
||||
32 MAR P2 200
|
||||
33 MAR P3 100
|
||||
34 MAR P4 200
|
||||
35 ;
|
||||
36
|
||||
37 stored :=
|
||||
38 JAN P1 0
|
||||
39 JAN P2 0
|
||||
40 JAN P3 0
|
||||
41 JAN P4 0
|
||||
42 FEB P1 0
|
||||
43 FEB P2 0
|
||||
44 FEB P3 0
|
||||
45 FEB P4 0
|
||||
46 MAR P1 50
|
||||
47 MAR P2 50
|
||||
48 MAR P3 50
|
||||
49 MAR P4 50
|
||||
#################################################
|
||||
### Maximize profit for expected profit value ###
|
||||
#################################################
|
||||
CPLEX 22.1.2: optimal solution; objective 13943.26177
|
||||
7 simplex iterations
|
||||
produced :=
|
||||
JAN P1 200
|
||||
JAN P2 0
|
||||
JAN P3 100
|
||||
JAN P4 200
|
||||
FEB P1 300
|
||||
FEB P2 100
|
||||
FEB P3 200
|
||||
FEB P4 200
|
||||
MAR P1 50
|
||||
MAR P2 350
|
||||
MAR P3 150
|
||||
MAR P4 250
|
||||
;
|
||||
|
||||
sold :=
|
||||
JAN P1 200
|
||||
JAN P2 0
|
||||
JAN P3 100
|
||||
JAN P4 200
|
||||
FEB P1 300
|
||||
FEB P2 100
|
||||
FEB P3 200
|
||||
FEB P4 200
|
||||
MAR P1 0
|
||||
MAR P2 300
|
||||
MAR P3 100
|
||||
MAR P4 200
|
||||
;
|
||||
|
||||
stored :=
|
||||
JAN P1 0
|
||||
JAN P2 0
|
||||
JAN P3 0
|
||||
JAN P4 0
|
||||
FEB P1 0
|
||||
FEB P2 0
|
||||
FEB P3 0
|
||||
FEB P4 0
|
||||
MAR P1 50
|
||||
MAR P2 50
|
||||
MAR P3 50
|
||||
MAR P4 50
|
||||
;
|
||||
|
||||
Profit: 13943.261775
|
||||
\end{verbatim}
|
||||
|
||||
52 Profit: 11987.418989
|
||||
52 Profit: 13943.261775
|
||||
|
||||
\begin{figure}[h!]
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
%\includegraphics[width=\linewidth]{_page_0_Figure_0.jpeg}
|
||||
\caption{Obraz zbioru rozwiązań efektywnych w przestrzeni ryzyko-zysk}
|
||||
@ -912,7 +700,7 @@ Dystrybuanty zysku przedstawia Rysunek 2.
|
||||
|
||||
Na podstawie wykresów możemy stwierdzić, że rozwiązanie dla scenariusza z maksymalnym zyskiem dominuje w sensie FSD pozostałe rozwiązania. Dodatkowo widzimy, że rozwiązanie ze scenariusza 3 dominuje w sensie FSD rozwiązanie scenariusza 2.
|
||||
|
||||
\begin{figure}[h!]
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
%\includegraphics[width=\linewidth]{_page_0_Figure_0.jpeg}
|
||||
\caption{Wykres dystrybuant zysku dla poszczególnych rozwiązań}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user