Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

14/02/13 G. Beroggi © 1 Decision Support Systems (DSS) Grundlagen der DSS-Entwicklung DSS in der Einsatz- und Zeitplanung DSS in der Transportplanung und.

Ähnliche Präsentationen


Präsentation zum Thema: "14/02/13 G. Beroggi © 1 Decision Support Systems (DSS) Grundlagen der DSS-Entwicklung DSS in der Einsatz- und Zeitplanung DSS in der Transportplanung und."—  Präsentation transkript:

1 14/02/13 G. Beroggi © 1 Decision Support Systems (DSS) Grundlagen der DSS-Entwicklung DSS in der Einsatz- und Zeitplanung DSS in der Transportplanung und im Projektmanagement DSS in der Finanzplanung DSS für Wahlverfahren DSS in der Konfliktlösung DSS in der Strategieplanung DSS im Produktdesign und in der Marketingplanung ProjektProjekt (in 2-er Gruppen) Projekt mdl. Präsentation (mdl. Prüfung) Literatur Links Termine und Inhalte Daten

2 14/02/13 G. Beroggi © 2 Grundlagen der DSS Entwicklung

3 14/02/13 G. Beroggi © Elemente der DSS Vorlesung 3. Präferenzen -Multiattribute Utility Theory -Analytic Hierarchy Process -Conjoint Analyse 2. Simulation -Monte Carlo -Discrete Event -Bayes -Spieltheorie -Social Choice (LSA) 4. Entscheiden -Solver (Math. Optimierung) -Lagrange Multiplier -Multivariate Regression -Induktive Statistik 1. Grundlagen -DSS-Umgebungen/Beispiele -Interface Design -Mathematische Modellierung DSS Aufbau Allgemeine Beschreibung: Entwicklung interaktiver web-basierter Decision Support Systems unter Berücksichtigung von informationstechnischen, analytischen und kognitiven Anforderungen. Anwendungen beziehen sich auf aktuelle Themen wie interaktives Marketing, Investitionsmanagement, Social Choices, Gruppenentscheidungen, Business Intelligence, Advisory Systems, Konfliktanalysen, Logistik, Prozessoptimierung, räumliche Analysen, Policy Analysis etc. Der Kurs basiert auf aktiver Projektarbeit der Studierenden als zentraler Bestandteil. Grundkenntnisse: Grundkenntnisse in Lineare Algebra und Statistik, sowie Kenntnisse von MS Excel, Open Office Calc oder Google Spreadsheets. Lernziele: Kenntnis der wichtigsten Konzepte und Methoden intelligenter Systeme und Fähigkeit diese in praktische Decision Support Systems im Rahmen eines Projekts integrieren zu können. Zielgruppen: Empfohlen für Studierende aller MSc Studiengänge.

4 14/02/13 G. Beroggi © 4 DSS Architektur User -Graphik -Multimedia -web -Virt. Realität -Animation Interface Datenbanken Infobanken Wissensbanken - Bewerten - Berechnen - Suchen - Optimieren AlgorithmenModelle - Rationalität - Subjektivität - Künstl. Intell. - Inferenzen - Logik Decision Support System Schwerpunkt der Vorlesung

5 14/02/13 G. Beroggi © Cycle of Decision Making by Herbert A. Simon Problem1. Intelligence2. Design3. Choice Define Problems : Actors Uncertainties Criteria Options Preferences Get data/info/know by: Survey Experiment Tests … Design : Alternatives Formalize Problem Algorithms … Make a decision by: Data analysis System optimization Optimization Simulation …

6 14/02/13 G. Beroggi © 6 Beispiele von DSS

7 14/02/13 G. Beroggi © 7 Decision Support Systems Problem ModellierungDSS Design Logik Wissensbanken Datenbanken Informationsbanken User / Interface Die Elemente von Decision Support Systems: User: Menschlicher Entscheidungsträger, einzeln oder in Gruppen, kollaborierend oder in Konfliktsituationen, zentral oder dezentral, online oder remote etc. Interface: Schnittstelle zwischen Mensch und technischem System, über das Internet oder lokal, Aspekte von Multimedia und Interaktivität. Logik: Suchen, verarbeiten oder folgern mit und aus den verschiedenen Daten-, Informations- und Wissensbanken. Logische Schlüsse werden durch die sog. Inference-Engine gezogen. Datenbanken: Systematische Erfassung von binärer Werten. Informationsbanken: Systematische Erfassung von Fakten. Wissensbanken: Systematische Erfassung von Regeln (wenn, dann). Problem Strukturelles Modell Formales Modell Berechnungs- modell ? Verifizierung, Validierung Kalibrierung Die Schritte der Modellierung des Problems sind: Strukturelles Modell: Die Elemente und deren Wechselwirkungen (Abhängigkeiten, Einflüsse etc.) werden graphisch dargestellt. Formales Modell: Das visuell dargestellte Problem wird formal mit mathematischer Notation festgehalten. Berechnunsgmodell: Der Algorithmus oder die Berechnunsgart wird definiert. Verifizierung: Der Code wird hinsichtlich Logik überprüft. Validierung: Die Wirkungsweise des Modells wird an der Realität getestet. Kalibrierung: Das Modell wird so geändert, dass die Validierung zufriedenstellen wird.

8 14/02/13 G. Beroggi © 8 DSS Engineering Methodology Decision Task Analysis Requirements Engineering: User analysis Support analysis Decision model analysis Knowledge base analysis Data base analysis Unser interface analysis HW/SW analysis Usability analysis DSS Design: Decision and knowledge base model Unser interface modeling Data base modeling Designing DSS architecture Prototyping User Evaluation Systems Engineering Decision Making Support Change Request DSS Usage Change Request DSS Requirements Change Request Task Requirements Modell nach A. Gachet und P. Haettenschwiler, 2006 (in Intelligent Decision-Making Support Systems, J.N.D. Gupta et al., Springer, S. 110) Interessante Quellen für DSS Design sind: Siehe auch: Decision Support Tools, Artificial Intelligence, Business Intelligence, Management Information Systems, Führungsinformationssysteme, Data-Warehouse, Online Analytic Programming (OLAP) etc. Cambridge University: Modelling and Decision Support ToolsModelling and Decision Support Tools Decision Support Resources IEEE Computational Intelligence Society Fachzeitschrift Decision Support Systems (Elsevier)Decision Support Systems Fachzeitschrift Group Decision and Negotiation (Springer)Group Decision and Negotiation INFORMS Section on Group Decision and Negotiation Association for Information Systems: Spatial Decision Support SystemsSpatial Decision Support Systems Clinical Decision Support Systems DSS-Lösungen: Cambridge University Decision Support Tools:Cambridge University Decision Support Tools Decision Analysis Society

9 14/02/13 G. Beroggi © 9 Entwicklungsumgebungen Delphi Director SPSS VB.NET ASP.NET Java, C++ Bsp. (not in Chrome) Bsp. xls Bsp. htm -http://www.springanalytica.com/PrEv.6.htmhttp://www.springanalytica.com/PrEv.6.htm -http://www.springanalytica.com/PrEv.18.htmhttp://www.springanalytica.com/PrEv.18.htm

10 14/02/13 G. Beroggi © LiveCode Beispiel 10 on mouseUp global score put 0 into score put 0 into line 2 of field "Points" put 1016 into i put 55 into s put 0 into k repeat five times set the location of image ID i to 30+k*s,30 put i+1 into i put k+1 into k end repeat end mouseUp on mouseDown global score repeat set location of me to the mouseLoc if the mouse is up then put item 1 of the location of me into x put item 2 of the location of me into y if x >= 150 and x = 160 and y <= 240 then set the visible of me to false put score + 1 into score put score into line 2 of field "Points" end if exit repeat else end if end repeat end mouseDown on mouseUp put 0 into i put 1006 into x repeat five times set the visible of image ID (x+i) to true put i+1 into i end repeat end mouseUp Import images as Controls

11 14/02/13 G. Beroggi © 11 Vom Modell zum Internet-DSS mit GAMS GAMS The General Algebraic Modeling System (GAMS) is specifically designed for modeling linear, nonlinear and mixed integer optimization problems. The system is especially useful with large, complex problems. GAMS is available for use on personal computers, workstations, mainframes and supercomputers. GAMS allows the user to concentrate on the modeling problem by making the setup simple.

12 14/02/13 G. Beroggi © Vom Modell zum Internet-DSS mit Lindo/API Lindo/API

13 14/02/13 G. Beroggi © Vom Modell zum Internet-DSS mit IBMs ILOG CPLEX Optimization Studio ILOG CPLEX

14 14/02/13 G. Beroggi © Vom Modell zum Internet mit Excel 14 Excel Convertor

15 14/02/13 G. Beroggi © 1.Installation of R: 2.Installation of packages; select all of them (lasts up to 1h) 3.Start R (double klick on the R-icon) 4. Start a new script (Ctrl-N) 5. Arrange windows vertically 6. Start working; type code, execute selected lines: (a) by clicking on Icon or (b): by Ctrl-R 7. Use Quick-R as totorial: 8. Start R-Commander: library(Rcmdr) 9. Once started, look also at: - R-Tutorial: - Revolution: - inside-R: - Tutorial: 10. Also, look at working environments: - Tinn-R: - R-Studio: 11. Check some classic books: - R in Action, R. Kabacoff (goes with Quick-R) - R Cookbook, P. Teetor # draw a simple curve curve(2*x^2+3*x+4, from=-2, to=2) # draw the curve # draw the logit curve curve(log(x/(1-x)),0,1,xlab="probability",ylab="logit") title("Probit function") abline(h=0) Vom Modell zum Internet mit R (1/2) 15 editor window execution window R-commander generates the code in the upper window and shows the output in the lower window. If code is selected in the upper window, it can be re-run by clicking on Befehl ausführen, just like in the editor window of R.

16 14/02/13 G. Beroggi © Vom Modell zum Internet mit R (2/2) 16 library(lpSolve) # Set up problem: maximize # x1 + 9 x2 + x3 subject to # x1 + 2 x2 + 3 x3 <= 9 # 3 x1 + 2 x2 + 2 x3 <= 15 # f.obj <- c(1, 9, 3) f.con <- matrix (c(1, 2, 3, 3, 2, 2), nrow=2, byrow=TRUE) f.dir <- c("<=", "<=") f.rhs <- c(9, 15) # # Now run. # lp ("max", f.obj, f.con, f.dir, f.rhs) ## The output is: Success: the objective function is 40.5 lp ("max", f.obj, f.con, f.dir, f.rhs)$solution ## The output is: [1] siehe: siehe auch: Create a user-friendly web interface for R scripts with package Rwui:

17 14/02/13 G. Beroggi © 17 Entwicklungsumgebungen mit analytischen Algorithmen Statistische Tools (R): Mathematische Optimierung: –Frontline Solvers: (einsetzbar mit Visual Studio.NET, Visual Basic, Matalab, Java, C/C#/C++)http://www.solver.com/ –Lindo Systems, Frontline Solvers,Lindo SystemsFrontline Solvers –AIMMS (Modellierung, Database Links, Links zu Solvers, GUI, Deployment)AIMMS –MPL Modeling System: (einsetzbar mit Visual Basic, VBA, C/C++, Java, Delphi, plus popular Web-scripting languages)www.maximalsoftware.com –QMS: (läuft auf dem Internet für Studierende)http://www.quantmethods.com/ –Knitro: (einsetzbar mit Matlab, Mathematica, C/C++, Excel, Fortran, Java)www.ziena.com –Vanguard: –Mathtools: –Belief Nets and Influence Diagrams: –Digital Analytics Association: –Softwareübersicht: Vehicle Routing Simulation Linear Programming Statistical Analysis Decision Analysis Forecasting

18 14/02/13 G. Beroggi © 18 Excel Webexport Eine Excel-Datei kann in eine html-Datei mit Java-Skript automatisch umgewandelt werden (siehe Beispiel unten). Bsp. xlsBsp. htm

19 14/02/13 G. Beroggi © 19 Übungsbeispiel von DSS Link xls Link htm

20 14/02/13 G. Beroggi © 20 Entscheidungsvariablen, Zielfunktion und Randbedingungen Bsp. 1: Entscheide (resp. berechne), welche Zahl zu 3 hinzugezählt werden muss, damit man 10 erhält. Entscheidungsvariable: x Modell: 3 + x = 10 Zielwert: Summe der zwei Zahlen ist gleich 10 Lösung x = 7 Bsp. 2: Entscheide (resp. berechne), welche zwei ganze Zahlen zusammengezählt 10 ergeben und deren Differenz gleich 2 ist. Entscheidungsvariablen: x, y Modell: x + y = 10; x - y = 2 Ziel: Summe der zwei Zahlen ist gleich 10 Randbedingung: Differenz der beiden Zahlen ist gleich 2. Lösung x = 6, y = 4. Matrizenschreibweise: A. X = b Ctrl+Shift+Enter Der Solver im Excel sucht mit einem Algorithmus für x und y Werte, so dass das Ziel und die Randbedingung erfüllt sind.

21 14/02/13 G. Beroggi © Optimierung mit binären Variablen in R 21 # install and load package "lpSolve" # Set up problem: choose the two cheapest of 3 contracts # min: 1x1 + 9x2 + 3x3 (sum of costs of the three contracts) # s.t.: x1 + x2 + x3 = 2 (choose two out of three contracts) library(lpSolve) f.obj <- c(1, 9, 3) f.con <- matrix (c(1, 1, 1), nrow=1, byrow=TRUE) f.dir <- c("=") f.rhs <- c(2) f.bin <- c(1,1,1) f.tra <- TRUE f.int <- c() f.pre <- 0 f.com <- 0 f.bin <- c(1,2,3) # the vecror of indices of the variables that are binary: 1,2,3 lp ("min", f.obj, f.con, f.dir, f.rhs, f.tra, f.int, f.pre, f.com, f.bin) Output: Success: the objective function is 4 lp ("min", f.obj, f.con, f.dir, f.rhs, f.tra, f.int, f.pre, f.com, f.bin)$solution Output: [1] siehe Paket "lpSolve" lp (direction = "min", objective.in, const.mat, const.dir, const.rhs, transpose.constraints = TRUE, int.vec, presolve=0, compute.sens=0, binary.vec, all.int=FALSE, all.bin=FALSE, scale = 196, dense.const, num.bin.solns=1, use.rw=FALSE) Die Lösung ist, Vertrag 1 und 3 zu wählen, mit den totalen Kosten von 4.

22 14/02/13 G. Beroggi © 22 Logistische Randbedingungen Logistische Bedingungen x i = 1 bedeutet, dass a i gewählt wurde x i = 0 bedeutet, dass a i nicht gewählt wurde x i {0,1} Bsp.1: Von fünf Stellenbewerbern (zwei Ingenieure und drei Juristen) wähle mindestens ein Ingenieur und zwei Juristen. Wenn Jurist zwei gewählt wird, dann muss auch Jurist drei gewählt werden. Minimiere das totale Salär aller Angestellten. entweder a 1 oder a 2 höchstens einer der beiden (a 1 oder a 2 ) mindestens einer der beiden entweder beide oder keine wenn a 1 dann auch a 2 x 1 + x 2 = 1 x 1 + x 2 1 x 1 - x 2 = 0 x 1 - x 2 0 Bsp. 2: Es bewerben sich je drei Ingenieure, Juristen und Ökonomen. Es darf höchstens ein Ökonom angestellt werden. Wenn die zwei Juristen angestellt werden, dann müssen auch die beiden Ingenieure angestellt werden. Das totale Salär aller Angestellten soll minimiert werden.

23 14/02/13 G. Beroggi © Beispiel in LiveCode 23 Entscheidungsproblem: Von fünf Bewerbern sollen jene zwei gewählt werden, die am wenigsten Salär verlangen. on mouseUp -- create a table with the following columns -- Salary, Field ID, Image ID, Decision (1/0) put 1024 into FldID put 1016 into PicID put "" into tabelle put 1 into i repeat five times put field ID FldID into item 1 of line i of tabelle put FldID into item 2 of line i of tabelle put PicID into item 3 of line i of tabelle put FldID+1 into FldID put PicID+1 into PicID put i+1 into i end repeat --answer tabelle sort lines of tabelle ascending numeric by item 1 of each --answer tabelle -- move the two winners forward put 1 into i put "" into platz put field "Select" into t repeat t times put the location of image ID (item 3 of line i of tabelle) into platz set the location of image ID (item 3 of line i of tabelle) to item 1of platz,item 2 of platz+120 put i+1 into i end repeat end mouseUp on mouseUp put 1016 into i put 0 into k put 55 into s repeat five times set the location of image ID i to 30+k*s,30 put i+1 into i put k+1 into k end repeat end mouseUp

24 14/02/13 G. Beroggi © Beispiel in Excel 24 Entscheidungsproblem: Von fünf Bewerbern sollen jene zwei gewählt werden, die am wenigsten Salär verlangen. Entscheidungsvariablen: xi = 1 falls Bewerber 1 gewählt wird und 0 sonst Kriterien: Si ist das Salär, dass Bewerber 1 verlangt Ziel: min Summe aller Produkte Si * xi Randbedingungen: Summe aller xi = 2 (es werden genau zwei gewählt) Beispiel: die fünf Saläre sind: 7, 5, 8, 2, 6 Ziel: Minimiere: 7x1 + 5x2 + 8x3 + 2x4 + 6x5 Rand-Bed.: x1 + x2 + x3 + x4 + x5 = 2 Wähle Bewerber 2 und 4, was total 7 CHF kostet.

25 14/02/13 G. Beroggi © 25 DSS in der Einsatzplanung

26 14/02/13 G. Beroggi © 26 Das Entscheidungsmodell: Ein Beispiel Entscheidungsvariablen: Wie viele Mio. Fr. (x S ) soll eine Gemeinde in das Sozialprogramm (S) und wie viele (x T ) in das Transportprogramm (T) investieren (einsetzen)? Kriterien Anz. Arbeiter, die für jede Mio. anzustellen sind: 4 for S and 1 for T. Anz. Computer, die für jede Mio. gebraucht werden: 1 for S and 3 for T. Profit für jede Mio.: 1 for S and 2 for T. Zielfunktion Maximiere Profit: P*=max: 1x S + 2x T Randbedingungen Tot. Anz. anzustellender Arbeiter: A*= 32 4x S + 1x T Tot. Anz. zu kaufender Computer: C*= 23 1x S + 3x T Nie vergessen! x S 0; x T 0; Achtung: Gerundete reelle Lösung ist oft nicht die optimale ganzzahlige Lösung! 4x S + 1x T 32 = A* 1x S + 3x T 23 = C* 1x S + 2x T = max = P* max = xsxtxsxt A x =mmult(A,x) xSxS xTxT A C x S = 6.64 x T = 5.45 P*=17.55

27 14/02/13 G. Beroggi © 27 Lösung mit Excel Solver Falls Solver nicht installiert ist:

28 14/02/13 G. Beroggi © 28 Lösung mit Open Office

29 14/02/13 G. Beroggi © 29 Lösung mit Google Spreadsheets

30 14/02/13 G. Beroggi © Lösung mit R 30 # Set up problem: maximize # 1x1 + 2x2 subject to # 4x1 + 1x2 <= 32 # 1x1 + 3x2 <= 23 library(lpSolve) f.obj <- c(1, 2) f.con <- matrix (c(4,1,1,3), nrow=2, byrow=TRUE) f.dir <- c("<=", "<=") f.rhs <- c(32,23) # # Now run. # lp ("max", f.obj, f.con, f.dir, f.rhs) ## Output is: Success: the objective function is lp ("max", f.obj, f.con, f.dir, f.rhs)$solution ## Output is: [1] siehe:

31 14/02/13 G. Beroggi © 31 Simplex Algorithmus Arbeiter: 32 4x S + 1x T Computer: 23 1x S + 3x T Profit: max:1x S + 2x T Arbeiter: x S - 1x T 0 Computer: x S - 3x T 0 Profit: max: 1x S + 2x T Da beide Entscheidungsvariablen x 1 (x S ) und x 2 (x T ) frei sind, können wir auswählen welche der beiden wir zuerst austauschen wollen; wir wählen x 1 ; diese Kolonne wird zur Pivotkolonne. Der charakteristische Quotient wird berechnet, indem man die Werte in der 1-Kolonne mit den Werten in der Pivotkolonne dividiert. Die Zeile mit dem grössten charakteristischen Quotienten wird zur Pivotzeile. Somit ist der Wert -4 der Pivotwert. Das Tableau T1 wird folgendermassen berechnet: Der Pivotwert wird zum Reziproken Wert (1/Pivot). Die Werte in der Pivotkolonne werden durch den Pivot dividiert. Die Werte in der Pivotzeile werden durch den Pivot dividiert und mit -1 multipliziert. Für die restlichen Werte gilt: w ik w ik – w ip *w pk /p. Das Tableau T2 wird berechnet, indem im Tableau T1 mit dem letzten möglichen Pivot die analogen Berechnungen durchgeführt werden. Die Lösung x 1 = 6.64, x 2 = 5.45 und Profit = wird erhalten.

32 14/02/13 G. Beroggi © 32 Arbeiter: 16 4x S + 1x T Computer: 17 1x S + 3x T Büros: 10 = 1x S + 1x T xSxS xTxT Aspi- ration Straf- gewicht A (+) C (+) B11= 101 (+) 3 (-) Arbeiter: 16 = 4x S + 1x T – x A+ Computer: 17 = 1x S + 3x T – x C+ Büros: 10 = 1x S + 1x T – x B+ + x B- Min: 3x A+ + 2x C+ + 1x B+ + 3x B- x A+ : Abweichung Anzahl Arbeiter über 16 x C+ : Abweichung Anzahl Computer über 17 x B+ : Abweichung Anzahl Büros über 10 x B- : Abweichung Anzahl Büros unter 10 Total haben wir 6 Entscheidungsvariablen: x S, x T, x A+, x C+, x B+, x B- Arbeiter: 4x S + 1x T 32 + M(1-y A ).... Computer: 1x S + 3x T 23 + M(y C -1) Profit: max:1x S + 2x T y i = r oder Randbedingungen 3x 1 + 2x 2 + 5x 3 = 10 oder 15 3x 1 + 2x 2 + 5x 3 = 10y y 2 y k = 1 Nur r Randbedingungen müssen gelten Mehrfache Ziele müssen gelten (keine Zielfunktion) Modellierungs-Tricks Anstatt dass man eine Zielfunktion hat und mehrere Randbedingungen, will man alle Aspekte gleichzeitig berücksichtigen. Dafür definiert man Strafgewichte, wenn von einem Ziel zu viel oder zu wenig erreicht wird.

33 14/02/13 G. Beroggi © Beispiel 33 Problem: Wie viele Äpfel und Birnen soll ich kaufen, wenn die Summe aller Früchte 10 und die Differenz der Früchtesorten 2 sein soll? Lösung: Entscheidungsvariablen: A (Anzahl Äpfel), B (Anzahl Birnen) Zielfunktion: A+B = 10 (= B + A) Randbedingungen: A - B = 2 oder B - A = 2. Model: Die oder Bedingung modellieren wir dadurch, dass wir verlangen, dass nur eine der zwei Randbedingungen gelten muss. Wir führen zwei binäre Entscheidungsvariablen und y ein, so dass x + y = 1 (d.h. eine der beiden ist 1 und die andere 0. Das mathematische Modell lautet nun so: Ziel: A+B=10 RB1: A(1-x) – B(1-x) - 2(1-x) = 0 RB2: B(1-y) – A(1-y) - 2(1-y) = 0 RB3: x+y=1 (wenn x=1 gilt die zweite RB, und wenn y=1 gilt die erste RB)

34 14/02/13 G. Beroggi © Generalized Reduced Gradient Method Für nichtlineare Optimierungsprobleme gebraucht der Solver als Optimierungsalgorithmus die sog. Generalized Reduced Gradient Method (GRGM). Bei nichtlinearen Problemen muss dem Solver gesagt werden, dass es sich nicht um ein lineares Problem handelt, sonst löst der Solver ein falsches Problem. Der Solver kann auch über VBA durch klicken auf einen erstellten Knopf ausgelöst werden. 34 Beispiel GRGM Solver mit VBA GRGM Excel

35 14/02/13 G. Beroggi © Interior Point Method 35 Eine einfache Erklärung der Interior Point Method ist hier: Die Lösung wird iterativ berechnet. min: c T x s.d. Ax = b x 0 1: wähle einen x-Vektor als Startpunkt, der alle Randbedingungen erfüllt (z.B. x i = 0) 2: überprüfe ob der x-Vektor eine Lösung innnerhalb einer gewählten Genauigkeit ergibt. 3: falls ja, Lösung ist gefunden. Falls nicht, dann berechne die neue Richtung und den neue Schrittlänge. 4: bestimme den neuen x-Vektor und gehe zu Punkt 2.

36 14/02/13 G. Beroggi © Nicht-lineare Optimierung 36 x = 2.50 y = 0.60 z = 2.60 mit x=0 und y=0 als Anfangswerte mit x=8 und y=0 als Anfangswerte x = 8.78 y = 0.60 z = 7.63 Die Anfangswerte beeinflussen das Finden der optimalen Lösung.

37 14/02/13 G. Beroggi © 37 Einsatzplanung von Personen: Scheduling

38 14/02/13 G. Beroggi © 38 Optimierung einer Einsatzplanung EV: x ij (ganzzahlig): Anzahl Pfleger in Schicht S i und S j Zielfunktion: min: x 12 +x 23 +x 34 +x 45 +x 56 +x 61 Problem: Wie viele Pfleger müssen angestellt werden, wenn die minimale Anzahl Pfleger pro Schicht eingehalten werden muss (links) und jeder Pfleger in zwei sich folgenden Schichten arbeiten muss. Schicht Nr. anwesende Pfleger benötigte Pfleger 1 x 61 +x x 12 +x x 23 +x x 34 +x x 45 +x x 56 +x 61 8 Andere Lösungen: 3/2/4/5/8/8 3/2/6/5/6/8 library(lpSolve) # Nurse scheduling problem # Set up cost matrix f.obj <- c(1,1,1,1,1,1) f.con <- matrix(c( 1,0,0,0,0,1, 1,1,0,0,0,0, 0,1,1,0,0,0, 0,0,1,1,0,0, 0,0,0,1,1,0, 0,0,0,0,1,1),nrow=6,ncol=6,byrow=TRUE) f.dir =") f.rhs <- c(3,2,4,5,6,8) f.tra <- TRUE f.int <- c(1,2,3,4,5,6) # all variables are integers f.pre <- 0 f.com <- 0 f.bin <- c() lp ("min", f.obj, f.con, f.dir, f.rhs, f.tra, f.int, f.pre, f.com, f.bin) # Output: Success: the objective function is 15 lp ("min", f.obj, f.con, f.dir, f.rhs, f.tra, f.int, f.pre, f.com, f.bin)$solution # Output: [1]

39 14/02/13 G. Beroggi © Job Assignment 39 Maschinen Abeiten ABC I$11$14$ 6 II$ 8$10$11 III$9$12$7 Drei verschiedene Maschinen können drei verschiedene Arbeiten ausführen. Gesucht ist die Zuordnung je einer Maschine an je einer Arbeit, so dass die totalen Kosten minimiert werden. Zuordnungsalgorithmus Subtrahiere den kleinsten Wert in jeder Zeile von jedem Wert in dieser Zeile; subtrahiere dann den kleinsten Wert in jeder Spalte von jedem Wert in dieser Spalte. Zeichne die kleinste Anzahl vertiakler und horizontaler Linien, um alle Nullen in der Tabelle zu bedecken. –Wenn die Anzahl Linien entweder gleich der Anzahl Zeilen oder gleich der Anzahl Spalten ist, dann ist eine optimale Zuordnung möglich (Schritt 4). –Ansonsten: Subtrahiere den kleinsten Wert, der noch nicht bedeckt ist, von jedem anderen unbedeckten Wert. Addiere den gleichen Wrt zu jedem Wert, der auf dem Schnittpunkt von zwei Linien ist. Gehe zurück zu Schritt 2. Optimale Zuordnungen liegen immer bei Null-Werten in der Tabelle. Maschinen Arbeiten ABC I580 II023 III250 Maschinen Arbeiten ABC I560 II003 III230 Schritte 1a und 1b Maschine Arbeit ABC I560 II003 III230 kleinster ungedeckter Wert Schritt 2 Maschine Arbeit ABC I340 II005 III010 optimale Zuordnung Schritt 3

40 14/02/13 G. Beroggi © Job Assignment DSS mit LiveCode 40 on mouseUp put 1018 into i repeat 9 times set the backColor of field ID i to "white" put i+1 into i end repeat put "" into werte -- 1: put 1018 into item 1 of line 1 of werte put 1022 into item 2 of line 1 of werte put 1026 into item 3 of line 1 of werte put field ID field ID field ID 1026 into item 4 of line 1 of werte -- 2: put 1018 into item 1 of line 2 of werte put 1023 into item 2 of line 2 of werte put 1025 into item 3 of line 2 of werte put field ID field ID field ID 1025 into item 4 of line 2 of werte -- 3: put 1019 into item 1 of line 3 of werte put 1021 into item 2 of line 3 of werte put 1026 into item 3 of line 3 of werte put field ID field ID field ID 1026 into item 4 of line 3 of werte -- 4: put 1019 into item 1 of line 4 of werte put 1023 into item 2 of line 4 of werte put 1024 into item 3 of line 4 of werte put field ID field ID field ID 1024 into item 4 of line 4 of werte -- 5: put 1020 into item 1 of line 5 of werte put 1021 into item 2 of line 5 of werte put 1025 into item 3 of line 5 of werte put field ID field ID field ID 1025 into item 4 of line 5 of werte -- 6: put 1020 into item 1 of line 6 of werte put 1022 into item 2 of line 6 of werte put 1024 into item 3 of line 6 of werte put field ID field ID field ID 1024 into item 4 of line 6 of werte --answer werte sort lines of werte ascending numeric by item 4 of each --answer werte lock screen set the backColor of field ID (item 1 of line 1 of werte) to "yellow" set the backColor of field ID (item 2 of line 1 of werte) to "yellow" set the backColor of field ID (item 3 of line 1 of werte) to "yellow" unlock screen end mouseUp Die ID der 9 Felder sind: Die 6 Lösungen sind: Lsg 1: Lsg 2: Lsg 3: Lsg 4: Lsg 5: Lsg 6:

41 14/02/13 G. Beroggi © Job Assignment DSS mit Excel 41

42 14/02/13 G. Beroggi © Job Assignment mit lpSolve in R 42 library(lpSolve) assign.costs <- matrix (c(11,14,6,8,10,11,9,12,7), 3, 3) lp.assign (assign.costs) lp.assign (assign.costs)$solution > assign.costs <- matrix (c(11,14,6,8,10,11,9,12,7), 3, 3) > lp.assign (assign.costs) Success: the objective function is 25 > lp.assign (assign.costs)$solution [,1] [,2] [,3] [1,] [2,] [3,] siehe:

43 14/02/13 G. Beroggi © Johnsons Zuordnungsverfahren 43 N jobs müssen sequentiell durch 2 Maschine SägeBohrer Job A Job B Job C Jobs (N = 3) Johnsons Zuordnungsverfahren Alle Jobs werden mit den Arbeitszeiten aufgelistet. 1.Wähle den Job mit der kürzesten Aktivitätszeit. Wenn dieser sich auf die erste Maschine bezieht (Säge), dann ist der Job als erster dran; wenn mit der zweiten Maschine (Bohrer), dann ist er als letzter dran. 2.Wenn ein Job zugeordnet ist wird er eliminiert von der Liste. 3.Führe Schritte 2 bis 3 für die übrigen Jobs durch, und arbeite in das Zentrum der Zuordnungssequenz zu. JobSägeBohrer A52 B36 C84 D107 E712 A Schritt 1 BA Schritt 2 BCA Schritt 3 BDCA Schritt 4 BEDCA Schritt 5 BEDCA BEDCA Säge Bohrer Zeit => BEDCA Jobs erledigt => = Wartezeiten

44 14/02/13 G. Beroggi © 44 DSS in der Transportplanung und im Projektmanagement

45 14/02/13 G. Beroggi © 45 In die Irre geleitet … Neue Luzerner Zeitung, , S. 32 GPS lotst Autofahrer an den Rand des Abgrunds auf eine 30 Meter hohe Klippe. Ich lese Karten und plane im voraus. Dies ist viel genauer und zuverslässiger. Zürich – Alpthal 47 km, 59 Min., 46 km/h Zürich – Alpthal* 106 km, 111 Min., 54 km/h * mit Strassenangabe des Zielortes Sie folgen dem GPS wie Schafe Tagi,

46 14/02/13 G. Beroggi © 46 Optimierung der Transportverteilung S 1 : 12 S 2 : 15 S 3 : 18 D 1 : 10 D 2 : 9 D 3 : 14 D 4 : k 32 Problem: Gesucht ist der billigste Versand der produzierten Autos von den drei Stationen an die vier Destinationen, so dass alle in den drei Stationen produzierten Autos weggehen und alle vier Destinationen genau die bestellte Anzahl Autos erhalten. Achtung: wenn man die Randbedingung x ij 0 weglässt, dann konvergiert die Lösung nicht!

47 14/02/13 G. Beroggi © Modellspezifikation in GAMS 47 Siehe: (Verpackzentren) Seattle (350) San-Diego (600) New York (325) Chicago (300) Topeka (275) to slide 34 more details

48 14/02/13 G. Beroggi © Lösung mit lpSolve in R 48 Seattle (350) San-Diego (600) New York (325) Chicago (300) Topeka (275) siehe: library(lpSolve) # Transportation problem, # Set up cost matrix cells <- c(2.5,1.7,1.8,0,2.5,1.8,1.4,0) rnames <- c("Seattle","San Diego") cnames <- c("New York","Chicago","Topeka","dummy") costs <- matrix(cells, nrow=2, ncol=4, byrow=TRUE, dimnames=list(rnames, cnames)) # Set up constraint signs and right-hand sides. row.signs <- rep ("<", 2) row.rhs <- c(350,600) col.signs ", 4) col.rhs <- c(325,300,275,0) # Run lp.transport (costs, "min", row.signs, row.rhs, col.signs, col.rhs) lp.transport (costs, "min", row.signs, row.rhs, col.signs, col.rhs)$solution > costs New York Chicago Topeka dummy Seattle San Diego > row.signs <- rep ("<", 2) > row.rhs <- c(350,600) > col.signs ", 4) > col.rhs <- c(325,300,275,0) > lp.transport (costs, "min", row.signs, row.rhs, col.signs, col.rhs) Success: the objective function is > lp.transport (costs, "min", row.signs, row.rhs, col.signs, col.rhs)$solution [,1] [,2] [,3] [,4] [1,] [2,] Die minimalen totalen Kosten ( ) sind gleich wie auf der letzten Seite (gerechnet mit Excel), aber die Zuordnung ist anders (es gibt mehrere optimale Lösungen!).

49 14/02/13 G. Beroggi © 49 Schnellster Weg Problem: Gesucht ist der schnellste Weg von San Francisco nach Kairo. Um den längsten Weg zu finden: -max tot. Zeit -Sum i x ij 1 j, i j (höchstens ein Zufluss pro Stadt)

50 14/02/13 G. Beroggi © 50 Travelling Salesperson Problem Problem: Die Travelling Salesperson muss alle Städte genau einmal besuchen und wieder an den Ausgangspunkt zurück kommen. Bsp.:

51 14/02/13 G. Beroggi © 51 Schnellster Weg (Inferenzmodelle) weg(Ziel,Ziel,Zustandsliste):- write(Zustandsliste),nl. /* Ziel erreicht, Abbruch der Rekursion und Ausgabe */ weg(Start,Ziel,Zustandsliste):- /* Es gibt einen Weg vom Start zum Ziel, wenn... */ operator(Op), /*... es einen Operator gibt,... */ anwendbar(Op,Start), /*... der im Startzustand anwendbar ist,... */ fuehrt_zu(Op,Start,Neu), /*... von dort zu einem neuen Zustand fuehrt,... */ not(member(Neu,Zustandsliste)), /*... der noch nie da war (Verhinderung von Schleifen)... */ zulaessig(Neu), /*... und zulaessig ist,... */ weg(Neu,Ziel,[Neu|Zustandsliste]). /*... und es von dort einen Weg zum Ziel gibt. */ Dijkstra Algorithmus: Gesucht ist der kürzeste Weg von S 1 nach S 7. S ist die Menge der geschlossenen Städte, d.h. jene Städte, für die man den kürzesten Weg zu S 1 bereits bestimmt hat. 1.Schliesse Stadt 1 (S 1 ): S 1 S. 2.Schliesse S k (S k S), so dass x ik +L 1k = minimal für alle k und S i S. 3.Wenn S k = S 7 dann stopp, sonst zurück zu Punkt 2. Prolog domains town = symbol distance = integer predicates road(town, town, distance) route(town, town, distance) clauses road(San_Francisco, Paris, 3) road(San_Francisco, St_Louis, 4)... route(Town1, Town2, Distance) :- road(Town1, Town2, Distance). route(Town1, Town2, Distance) :- road(Town1, X, Dist1), route(X, Town2, Dist2), Distance=Dist1+Dist2.

52 14/02/13 G. Beroggi © Schnellster Weg in LiveCode 52

53 14/02/13 G. Beroggi © R1R2 R3R4 R5R6 R7R8R9R10 R11 77

54 14/02/13 G. Beroggi © Schnellster Weg in LiveCode 54

55 14/02/13 G. Beroggi © Projektmanagement: Critical Path Method (CPM) 55 Activity (time) DescriptionImmediate Predecessors A (2)Build internal components- B (3)Modify roof and floor- C (2)Construct collection stackA D (4)Pour concrete and install frameA, B E (4)Build high-temperature burnerC F (3)Install pollution control systemC G (5)Install air pollution deviceD, E H (2)Inspect and testF, G Start B A D C G F H E Latest Finish ES LS EF LF Earliest Finish Latest Start Earliest Start Activity Name Activity Duration Slack=0 Star t A B C D F F G H H H G H F H C H E H D H B H A H Slack=0 Slack=6 Slack=1 Start 1. Forward Calculation: 2. Backward Calculation: Critical path has 0 slack and is the slowest path from start to end.

56 14/02/13 G. Beroggi © 56 DSS in der Finanzplanung

57 14/02/13 G. Beroggi © 57 Optimierung von Investitionen

58 14/02/13 G. Beroggi © 58 Optimierung eines Portfolio Problem: Wie soll ein gegebenes Kapital (K= ) auf (n=3) Aktien verteilt werden, so dass ein minimaler Gewinn (G=800.-) erzielt wird und die totale Variabilität künftiger Gewinne minimiert wird.

59 14/02/13 G. Beroggi © 59 Projektfinanzierung Problem: Eine Firma will ein Projekt von 6 Mio. über 6 Jahre finanzieren, durch Kreditaufnahme bei 3 Banken. Die jährlichen Zinszahlungen sollten möglichst gleich sein (min. Co-Varianz) über die 6 Jahre und total nicht mehr als 4 Mio. betragen.

60 14/02/13 G. Beroggi © Decision Tree Actions (A j ) sell Drinks (A 1 ) Events (E i ) Cold weather p(E 1 ) =0.2 x 11 =$50 x 12 = $100 Warm weather p(E 2 ) =0.8 x 21 = $200 x 22 = $125 sell Hot Dogs (A 2 ) Drinks Hot Dogs Cold wather Cold weather Warm weather x 11 = $50 x 21 = $200 x 22 =$125 x 12 = $100

61 14/02/13 G. Beroggi © Stochastische Optimierung 61 Aktionen (A j ) verkaufe Getränke (A 1 ) Ereignisse (E i ) kaltes Wetter p(E 1 ) =0.2 x 11 =$50 x 12 = $100 warmes Wetter p(E 2 ) =0.8 x 21 = $200 x 22 = $125 verkaufe Hot Dogs (A 2 ) Getränke Hot Dogs kaltes Wetter warmes Wetter x 11 = $50 x 21 = $200 x 22 =$125 x 12 = $100 Opportunitätsverlust = höchst möglicher Wert für ein Ereignis i - Wert der Aktion j Aktionen (A j ) verkaufe Getränke (A 1 ) Ereignisse (E i ) kaltes Wetter (E 1 ) x 11 =$50 x 12 = $0 warmes Wetter (E 2 ) x 21 = $0 x 22 = $75 verkaufe Hot Dogs (A 2 ) Entscheidungskriterien Erwarteter monetärer Wert (EMW) –Erwartungswert für Aktion Aj Erwarteter Opportunitätsverlust (EOV) –Erwarteter Verlust für Aktion Aj Erwarteter Wert der perfekten Information (EWPI) –Erwarteter Opportunitätsverlust der besten Entscheidung (für die Ereignisse) = Erwarteter Gewinn bei Sicherheit - Erwarteter Gewinn der besten Aktion Entscheidungskriterien EMW(A1)=0.2*50+0.8*200 =170; EMW(A2)=0.2* *125=120 max(EMW) = EMW(A1) = 170 EOV(A1)= 0.2*50+0.8*0 =10; EOV(A2)=0.2*0+0.8*75=60 min(EOV) = EOV(A1) = 10 EWPI = (0.2* *200) = 10 (Betrag, den man bereit ist zu bezahlen, um die Unisicherheit zu eliminieren.

62 14/02/13 G. Beroggi © Decision Tree Analysis 62 Suppose a firm is considering marketing a new product in Region 1 or Region 2. In Region 1, management believes there to be a 30% chance of making $4M profit if the product is launched and demand is high, but a 70% chance of incurring a $2M loss if demand is low. In Region 2, management believes there to be a 30% chance of making $3M profit if the product is launched and demand is high, but a 70% chance of incurring a $1M loss if demand is low. In what region should the new product be marketed? The cost of marketing the product is $0.1M. The relevant pay-off table (in terms of profit) is derived as follows: Using the criterion of maximizing expected profit: E(a1) = (0.3) ($4m) + (0.7) (–$2m) = –$0.20M E(a2) = (0.3) ($3m) + (0.7) (–$1m) = $0.20M Thus, the optimal solution is to market the product in Region 2. But the EVPI = [0.3(4) + (0.7) (–1)] – 0.2 = $0.3M Thus, if the cost of marketing the product is $0.1M, then it looks attractive to seek additional information as management is prepared to spend up to $0.3M for perfect information. From previous experience with the launching of other products, management assesses the following probabilities (conditional probabilities): P (favourable survey outcome/high demand) = 0.47 P (unfavourable survey outcome/high demand) = 0.53 P (favourable survey outcome/low demand) = 0.08 P (unfavourable survey outcome/low demand) = 0.92 The cost of the survey is $0.09M. With this information, we can determine the complete joint distribution of forecast and actual outcomes. Using the information from section we can now compute the conditional probabilities of the form P (actual result/test market result) from the definition of conditional probability, P(H| F) = P(H F) / P(F) This can readily be calculated by substituting the values of the joint probabilities from the above table. The remaining three conditional probabilities are obtained similarly. It should be noted that these calculations are an application of Bayes Theorem. Hence, applying Bayes Theorem enables computation of posterior probabilities of the form: P (high demand | favourable survey outcome) = 0.141/0.197 = P (H/F) P (low demand | favourable survey outcome) = 0.056/0.197 = P (L/F) P (high demand | unfavourable survey outcome) = 0.159/0.803 = P (H/U) P (low demand | unfavourable survey outcome) = 0.644/0.803 = P (L/U) Decision Tree (next slide)

63 14/02/13 G. Beroggi © Start with Test Decision 63

64 14/02/13 G. Beroggi © (1) Expected value of additional (survey) information (EVSI) = – 0.2 = Expected payoff using additional (survey) information Expected payoff without additional (survey) information (2) Expected net gain from sampling(ENGS) = EVSI – cost of survey = – 0.09 =

65 14/02/13 G. Beroggi © Introduction 65

66 14/02/13 G. Beroggi © 66 Monty Hall Paradoxon A B C 2. It is not behind B 3. Should I switch to C? 1. I choose Door A 2 Strategies: (1) Stay with A: p(Auto) = 1/3 (2) Switch to C: p(car) = p(not A) =2/3

67 14/02/13 G. Beroggi © 67 A Strategic Decision Problem What is first pick? car (p=1/3) yes Stay with your initial choice? no A strategic decision problem consists of at least one decision (stay with your choice after the show master opens the door, or switch to the other door) and at least one uncertain event (in your first pick you picked the car, or nothing) not car (p=2/3) Since you stay with your initial choice, you win the car (p=1/3). Since you stay with your initial choice, you do not win the car (p=2/3). What is first pick? car (p=1/3) not car (p=2/3) Since you do not stay with your initial choice, you do not win the car (p=1/3). Since you do not stay with your initial choice, you win the car (p=2/3). Expected gain of staying: 1/3 x car + 2/3 x 0 = 1/3 x car Expected gain of switching: 1/3 x 0 + 2/3 x car = 2/3 car Thus: you should adopt the switch strategy!

68 14/02/13 G. Beroggi © 68 Discrete Event and Continuous Simulation Simulation Software Development Frameworks Simulation Software Übersicht Link zu Warteschlange Modellen Open Simulator OMNest Open Simulator OMNet Simwalk: Simulation für Personenbewegungen Arena Extend Simul8 Simulation Resources

69 14/02/13 G. Beroggi © 69 Simulation: Bsp. Bankschalter-Prozess 1. Eintritt 2. Reihe 3. Schalter 4. Abgang Zufalls- ereignisse Zwischen- ankunfts- zeit Schalter- verarbeitungs- zeit Starte Schalterservice Wartet jamand? Schalter-Abgang Nimm wartetende Person aus der Reihe Starte Wartezeit des Schalters (1) Schalterbeendung Wartet jamand? Person kommt an Person geht in die Reihe Person geht zum Schalter (2) Personenankunft ja nein ja = Mittelwert der Ankunftsrate (Anzahl Personen pro Zeiteinheit) = Mittelwert der Verarbeitungsrate (Anzahl Personen pro Zeiteinheit) Beachte: 1/ = Durchschnittliche Zwischenankunftszeit zwischen zwei Personen 1/ = Durchschnittliche Verarbeitungszeit des Schalters und sind Poisson verteilt und 1/ und 1/ sind exponentiell verteilt.

70 14/02/13 G. Beroggi © 70 Stochastische Simulation 1.Durchschnittliche Wartezeit für einen Kunden: 6/ K = 56/20 = 2.8 Min. 2.WS, dass ein K warten muss: K wartend / Kunden 3.WS, dass Server arbeitslos ist (Zeit, wo Server nicht arbeitet): 8/ Zeit = 18/82 = Durchschnittliche Bedienungszeit: 3/ Kunden = 68/20 = 3.4 Min. 5.Durchschnittliche Zwischenankunftszeit: 1/ (K-1) = 82/19 = 4.3 Min. (-1 da K 1 um t=0 ankommt) 6.Durchschnittliche Wartezeit der wartenden: 6/ K wartend = 56/13 = 4.2 Min. 7.Durchschnittliche Zeit Kunde verbringt im System: 7/ K = 124/20 = 6.2 Min. 8.Kontrolle: = 7 d.h = 6.2 OK Wichtige Kenngrössen

71 14/02/13 G. Beroggi © 71 Zufallszahlengenerierung mit EXCEL Zufallszahlengenerierung Extras Analyse-Funktionen

72 14/02/13 G. Beroggi © 72 Zufallszahlengenerierung mit EXCEL Zufallszahlengenerierung Extras Analyse-Funktionen Aufgabe: Man lasse EXCEL 600 x einen fairen Würfel würfeln, d.h. man generiere 600 Zufallswerte, die der Würfel Verteilung entsprechen. Werte WS Daten Würfel Verteilung

73 14/02/13 G. Beroggi © 73 Poisson Verteilung Bei sehr grosser Grundgesamtheit n kann die Binomialverteilung durch die Poisson Verteilung approximiert (angenähert) werden. Mögliche Interpretation: p(x) ist die WS, dass x Unfälle pro Jahr geschehen, wenn im Schnitt Unfälle pro Jahr geschehen (Annahme: Unfälle sind unabhängig). p(x) = wobei x = 0, 1, 2,... e - x x! E(X) = V(X) = p(x) = e - x x! x =POISSONVERT(x,,falsch) Beispiel: Im Jahresschnitt geschehen 2 Flugzeugabstürze; was ist die WS, dass nächstes Jahr 3 Abstürze geschehen? Lösung: p(3)=(e )/3! = 0.18 EXCEL =POISSON(3,2,FALSE) = 0.18

74 14/02/13 G. Beroggi © 74 Falsch: F(x) Richtig: p(x) Generierung einer Poisson-Wahrscheinlichkeit

75 14/02/13 G. Beroggi © 75 Exponentielle Verteilung ZV X ist exponentiell verteilt mit Parameter : f(x) = e- x wobei x 0 F(x) = 1 - e- x E(X) = 1/ V(X) = 1/ 2 Merke: Wenn Ereignisse gemäss einer Poisson Verteilung stattfinden (im Mittel Ereignisse pro Jahr), dann ist die Zeit zwischen zwei Ereignissen exponentiell verteilt; d.h. ein Ereignis tritt im Schnitt alle 1/ Jahre ein! Dichtefunktion f(x) Wahrscheinlichkeitsfunktion F(x) Die Zeitspanne einer Maschine bis zur nächsten Reparatur ist exponentiell verteilt. Man erwartet, dass sie alle 3 Jahre repariert werden muss. Was ist die WS, dass die Maschine länger als erwartet hält? Lösung: Zwischenankunftszeiten sind exponentiell verteilt mit Paramter. = 1/3 (d.h. 1/3 Mal pro Jahr muss sie repariert werden) WS dass Maschine länger als 3 Jahre ohne Reparatur auskommt: p(x > 3) = 1 – p(x 3) = 1 - (1 - e -1 ) = EXCEL: =1-EXPONDIST(3, ,TRUE)

76 14/02/13 G. Beroggi © 76 Generierung von exponentiell verteilten Zwischenankunftszeiten F(x) = 1 – e- x e- x = 1 – F e x = 1/(1 – F) x = ln(1/(1-F)) x = ln(1/(1-F))/ Exponentielle Wahrscheinlichkeitsfunktion F(x) EXCEL: = LN(1/(1-ZUFALLSZAHL()))/3 Für F generiere man eine Zufallszahl zwischen 0 und 1 EXCEL: =zufallszahl() X gesuchte zufällige Zwischenankunftszeit mit exponentieller Verteilung Beachte: Die Anzahl Poisson-Ereignisse kann aus den Zwischenankunftszeiten abgeleitet werden. Ist z.B. die Zwischenankunftszeit 20 Minuten, dann bedeutet das, dass 3 Ereignisse pro Stunde geschehen (Poisson verteilt).

77 14/02/13 G. Beroggi © 77 DSS für Wahlverfahren

78 14/02/13 G. Beroggi © 78 E-Voting Schlussbericht E-Voting Kt. ZH 2011

79 14/02/13 G. Beroggi © A1 > A2 A2 > A1 3 Alternativen: A1 A2 A Aggregation mit Borda Count

80 14/02/13 G. Beroggi © 3 Alternativen: A1 A2 A3 super gut OK gut OK super OK super gut Paradoxon: A1 > A2, A2 > A3 Aber: A1 < A3 super > gut > OK Aggregation mit Mehrheitsregel

81 14/02/13 G. Beroggi © N(A1)=0.65; N(A2)=0.5 N(A1)=0.20; N(A2)=0.45 N(A1)=0.6; N(A2)=0.2 N(A1)=0.3; N(A2)=0.8 A2 > A1 0.5 N(A1)=0.7; N(A2)=0.8 N(A1)=0.1; N(A2)= E[u(A1)]=0.45 E[u(A2)]=0.50 E[N(A1)]=0.58 E[N(A2)]=0.66 E[N(A1)]=0.49 E[N(A2)]=0.48 & A2 > A1 A1 > A2 Pareto Optimalität

82 14/02/13 G. Beroggi © Verschiedene Social Choice Methoden 1.Condorcets Methode: Mehrheitsregel (keine Gewinnerin) 2.Plurality Voting: wer hat am meisten 1. Plätze (Gewinnerin ist a) 3.Borda Count: Summe der Punkte (Gewinnerin ist b) 4.Hare System: sukzessives Streichen der Alternative mit den wenigsten 1. Rängen (zuerst d streichen, dann b und e, dann a und somit: die Gewinnerin ist c) 5.Sequentielle paarweise Wahl mit fixer Liste: die Liste ist a, b, c, d, e, somit a gegen b, mit Mehrheitsregel gewinnt b und a fällt weg, dann b gegen c usw. Gewinnerin ist d) 6.Dictatorship: eine Person wird als Diktator bestimmt und seine Liste ist bestimmend; wenn z.B. P7 der Diktator ist, dann: Gewinnerin ist e). Beispiel entnommen von (S. 8): Taylor A.D. and Pacelli A.M, Mathematics and Politics:Strategy, Voting, Power, and Proof. Springer, New York. 7 Personen, 5 Alternativen

83 14/02/13 G. Beroggi © Transitivität: A1>A2, A2>A3 A1>A3. Pareto Optimalität: Falls für alle: A1>A2 Gruppe:A1>A2 Binäre Relevanz: Keine Umkehrung der Prioritäten. Kein Diktator: Aggregation individuelle Bewertung. Wenn mindestens 2 Personen die Priorität von 3 oder mehr Alternativen bewerten, dann gibt es kein Wahlverfahren, das allen vier Axiomen der Sozialentscheidung genügt: Axiome der Sozialentscheidung

84 14/02/13 G. Beroggi © Probleme mit Sitzzuteilungsverfahren Wichtige Eigenschaften von Sitzzuteilungsverfahren: Monotonie:Kein Wahlkreis erhält weniger Sitze, als ein Wahlkreis mit kleinerer (oder gleicher) Anzahl Stimmenden. Quota: Die Sitzzuteilung unterscheidet sich höchstens um einen Sitz vom idealen Sitzwert (z.B. wenn 7.34 der ideale Sitzwert ist, dann soll die Anzahl Sitze im Wahlkreis 7 oder 8 sein). Population:Kein Wahlkreis sollte durch Zunahme von Stimmenden einen Sitz verlieren, während ein anderer Wahlkreis durch Abnahme von Stimmenden einen Sitz dazu gewinnt. Wichtige Sitzzuteilungsverfahren: Hamilton:Berechne den idealen Sitzwert als den prozentualen Sitzanspruch basierend auf der Anzahl Stimmberechtigten und runde alle Werte ab. Die verbleibende Anzahl Sitze wird schrittweise den Wahlkreisen mit dem grössten Nachkommawert verteilt bis alle Sitze vergeben sind. Jefferson:Wähle eine ganze Zahl D (Divisor) und dividiere die Anzahl Stimmberechtigte aller Wahlkreise durch D und runde ab zur nächsten ganzen Zahl. Verändere D solange, bis alle Sitze vergeben sind (Vorteil für grosse Wahlkreise). Adam:Gleich wie Jefferson, aber mit aufrunden (Vorteil für kleine Wahlkreise). Webster:Gleich wie Adam und Jefferson, aber normale Rundung von Brüchen auf nächste ganze Zahlen. Huntington-Hill:Gleich wie Adam, aber das Auf- resp. Abrundungskriterium basiert auf dem geometrischen Mittel (z.B. 4.3 wird aufgerundet, da 4.3 < 20.5 (=4.47). (Achtung: die Divisormethoden erfüllen immer die Pop.-Eigenschaft aber nicht immer die Quota-Eig.) Ref. 1 App. 1 Ref. 2 App. 2

85 14/02/13 G. Beroggi © Gesetz politischer Rechte im Kt. ZH Gesetz über die politischen Rechte (vom 1. September 2003) Der Kantonsrat, nach Einsichtnahme in den Antrag des Regierungsrates vom 28. August2002 und in den Antrag der Kommission für Staat und Gemeinden vom 7. März 2003, beschliesst: § 88. Die Zahl der Personen, die in einem Wahlkreis wohnhaft sind, wird durch den Zuteilungs-Divisor geteilt und zur nächstgelegenen ganzen Zahl gerundet. Das Ergebnis bezeichnet die Zahl der Sitze, die im betreffenden Wahlkreis zu vergeben sind. Der Zuteilungs-Divisor wird so festgelegt, dass beim Verfahren nach Abs. 1 genau 180 Sitze vergeben werden. Der Kantonsrat nimmt die Sitzzuteilung vor jeder Wahl auf Antrag des Regierungsrates vor. § 103. Die Parteistimmenzahl einer Liste wird durch die Zahl der im betreffenden Wahlkreis zu vergebenden Sitze geteilt und zur nächstgelegenen ganzen Zahl gerundet. Das Ergebnis heisst Wählerzahl der Liste. In jeder Listengruppe werden die Wählerzahlen der Listen zusammengezählt. Die Summe wird durch den Kantons-Wahlschlüssel geteilt und zur nächstgelegenen ganzen Zahl gerundet. Das Ergebnis bezeichnet die Zahl der Sitze der betreffenden Listengruppe. Die Direktion legt den Kantons-Wahlschlüssel so fest, dass 180 Sitze vergeben werden, wenn gemäss Abs. 2 vorgegangen wird. § 104. Die Parteistimmenzahl einer Liste wird durch den Wahlkreis-Divisor und den Listengruppen-Divisor geteilt und zur nächstgelegenen ganzen Zahl gerundet. Das Ergebnis bezeichnet die Zahl der Sitze dieser Liste. Die Direktion legt für jeden Wahlkreis einen Wahlkreis-Divisor und für jede Listengruppe einen Listengruppen-Divisor so fest, dass bei einem Vorgehen nach Abs. 1 a)jeder Wahlkreis die ihm vom Kantonsrat zugewiesene Zahl von Sitzen erhält, b)jede Listengruppe die ihr gemäss Oberzuteilung zustehende Zahl von Sitzen erhält.

86 14/02/13 G. Beroggi © 86 Das Wahlverfahren im Kanton Zürich Es sind total 15 (180) Kantonsratssitze zu vergeben. Gewählt wird in 3 (18) Wahlkreisen. Es treten 3 (ca. 11) Parteien (d.h. Listen) an. Die Sitze sollen folgendermassen an die Parteien in den 3 Wahlkreisen vergeben werden: 1.Der Sitzanspruch der 3 Wahlkreise ist proportional zu der Bevölkerung in den 3 Wahlkreisen. Bsp. für Bevölkerung: WK 1 (41500), WK 2 (57200) and WK 3 (61400). 2.Der Sitzanspruch der Parteien ist proportional zu den Wählerstimmen der Parteien, wobei die Wählerstimme einer Partei in einem Wahlkreis berechnet wird als: Anzahl Parteistimmen in diesem Kreis dividiert durch den Sitzanspruch des Wahlkreises. 3.Die Sitzverteilung der 3 Parteien in den 3 Wahlkreisen ist proportional zu den erhaltenen Stimmen. Gerundet muss so werden, dass die in (2) und (3) bestimmten Wahlkreisstimmen und die Parteistimmen Gültigkeit haben. abgegebene Stimmenzahl – EV: s j (Anzahl Sitze für WK j). – b j : Bevölkerung in WK j. – B: Gesamtbevölkerung (78300) – S: Gesamtzahl Sitze (15) – EV: s i (Anzahl Sitze für Partei i). – w i : Anzahl Wählerstimmen für Partei i). – W: Gesamtzahl Wählerstimmen – S: Gesamtzahl Sitze (15) – EV: s ij (Anzahl Sitze für Partei i in WK j) – w i : Anzahl Wählerstimmen für Partei i). – V: Gesamtzahl Stimmen – S: Gesamtzahl Sitze (15)

87 14/02/13 G. Beroggi © 87 Berechnung der Sitzverteilung

88 14/02/13 G. Beroggi © Gerechte Verteilung (Fair Division) 88 App. 1 Gegeben sind Gegenstände (z.B. Haus, Auto) und/oder Mengen (z.B. Geld, Schulden), die auf eine gegebene Anzahl Personen (z.B. Erbgemeinschaft) möglichst gerecht verteilt werden soll. Grundsätzlich könnte man alles monetarisieren, z.B. indem man alles verkauft und den Ertrag aufteilt. Jedoch werten die verschiedenen Personen die Gegenstände und Mengen unterschiedlich. Definitionen: (1) Eine Verteilung der Werte auf n Personen ist proportional, wenn jede aufgrund der eigenen Bewertung mindestens 1/n erhält. (2) Eine Verteilung ist neidlos, wenn keine Person den Anteil einer anderen Person als wertvoller einstuft, als den eigenen Anteil. (3) eine Verteilung ist gleichwertig, wenn jede Person den gleichen prozentualen Anteil erhält aus eigener Sicht. (4) Eine Verteilung ist effizient, wenn es keine andere Verteilung gibt, die für alle Personen mindestens gleichwertig ist und für mindestens eine Person bessert ist (Pareto optimal). Bsp.: zwei Personen teilen sich einen rechteckigen und heterogenen Kuchen (z.B. die Dekoration ist ungleichmässig verteilt) unter sich auf. Eine Person nimmt zwei Messer in die Hand und hält sie parallel über den Kuchen. Das linke Messer am linken Rand und das rechte Messer (aus ihrer Sicht) in der Mitte, so dass sie die linke und rechte Seite als gleichwertig betrachtet. Nun bewegt sie gleichzeitig die beiden Messer von links nach rechts über den Kuchen, bis die andere Person stopp ruft (d.h. für sie ist was zwischen den Messern ist gleichwertig mit dem, was ausserhalb der Messer ist).

89 14/02/13 G. Beroggi © Adjusted Winner Procedure 89 Zwei Personen müssen sich sechs Gegenstände aufteilen, für die sie unterschiedliche Gewichtungen haben: Zweistufiger Verteilungsprozess: 1.Initialverteilung Jede Person erhält den Gegenstand, den sie höher gewichtet (bei gleicher Gewichtung wählt zuerst jene Person, die weniger Gegenstände hat): P1 erhält Haus und Hund. P2 erhält Geld, Piano, TV und Auto. P1 hat 60 Punkte und P2 75. P2 ist die vorläufige Gewinnerin. 2.Anpassungen Gegenstände oder Teile davon müssen von P2 zu P1 ausgetauscht werden, bis beide gleich viele Punkte haben. Dies erfolgt in der Reihenfolge der kleinsten Ratio, d.h. zuerst das Geld (falls das Gut nicht teilbar ist, müsste man es verkaufen und dann das Geld aufteilen). P1 erhält einen x-tel vom Geld, so dass: 60+20x=50+25(1-x) und somit 45x=15 resp. x=1/3, d.h. P1 erhält von P2 1/3 des Geldes. Das Verfahren ist gleichwertig, effizient und neidlos, denn beide erhalten aus ihrer Sicht die gleichen Werte, nämlich Punkte.

90 14/02/13 G. Beroggi © Anwendung: Mittlerer Osten 90 Massound T.G., Fair Division, Adjusted Winner Procedure (AW), and the Israeli- Palestinian Conflict. Journal of Conflict Resolution June 44: Palästinenser und Israeli streiten sich über folgende Themen: 1.West Bank: Verschiedene Teile der WB sind von Israeli bewohnt, die ihre Siedlungen nicht verlassen wollen. 2.Ost-Jerusalem: Nach dem Sechstagekrieg in 1967 hat Israel die Kontrolle über die gesamte Stadt Jerusalem übernommen (ein grosser Teil der Bevölkerung in Ost-Jerusalem sind Palästinenser und beide Parteien bezeichnen Ost Jerusalem als zentralen Teil ihrer Souveränität. 3.Palästinensische Flüchtlinge: Israel anerkennt nicht, dass die Staatsgründung in 1948 und die Ereignisse in 1967 eine Versetzung von palästinensischen Siedlungen und Menschen zur Folge hatte. Die Palästinenser drängen darauf, dass Israel das Recht der Flüchtlinge heimzukehren anerkennt und diese sowie die sie beherbergenden arabischen Staaten kompensiert. 4.Palästinensische Souveränität: Israel anerkennt Palästina nicht als souveränen Staat. 5.Sicherheit: Auf beiden Seiten bestehen (Anschläge, Grenzkontrolle, Sicherheit in Jerusalem). Mittels Expertenbefragungen kommt Massoud zu folgenden annähernden Prioritäten: 1.Initialverteilungen (siehe gelbe und blauen Farben): Israel (I) erhält die West Bank, Ost- Jerusalem und die Sicherheit und Palästina (P) die Flüchtlinge und die Souveränität. 2.Anpassungen: I gibt Teile der WB an P ab: 51+22x=42+21(1-x) somit: 43x=12 resp. x=12/43; d.h. Israel gibt rund 2/7 der West Bank an die Palästinenser.

91 14/02/13 G. Beroggi © 91 DSS in der Konfliktlösung

92 14/02/13 G. Beroggi © 92 Strategischer Konflikt Zwei Mitarbeiter wissen, dass der Chef ihnen je 60.- Fr. Lohnerhöhung geben möchte. Die zwei möchten aber je 80.- Fr. mehr Lohn. Sie sprechen separat und unabhängig beim Chef vor. Fragt nur einer für 80.-, dann bekommt er sie, der andere aber nur noch 20.- Fragen beide (unabhängig voneinander), dann bekommt jeder 40.- Fr. Wie sollen sich die zwei verhalten?

93 14/02/13 G. Beroggi © 93 Frage für 80.- Fr. Ja Nein Ja Nein Frage für 80.- Fr. Individuelle Rationalität: 2 x Ja System-Optimum: 2 x Nein Individuelle Rationalität: 2 x Ja System-Optimum: 2 x Nein Konfliktmatrix

94 14/02/13 G. Beroggi © 94 Min in Zeile = Max in Spalte Null-Summe, reine Strategie Die Werte in den Zellen sind die Gewinne, welche die Frau erhält respektive die Verluste, welche der Mann erfährt (Null-Summen Konflikt: was die Frau gewinnt ist was der Mann verliert).

95 14/02/13 G. Beroggi © 95 Gleichgewicht: Jeder bekommt gleich viel, unabhängig vom anderen (sog. Security Level): Frau: 6p + 4(1-p) = 3p + 5(1-p) p = 1/4 Mann: 6q + 3(1-q) = 4q + 5(1-q) q = 1/2 Jeder bekommt: E[N(Frau)] = - E[N(Mann)] = 6 1/2 1/ /2 1/ /2 3/ /2 3/4 = 4.5 Null-Summe, gemischte Strategie als Entscheidungsproblem Security Level (n*) als mathematische Optimierung E[N(Frau)]: 6p 1 + 4p 2 n* und 3p 1 + 5p 2 n* setzte: x i = p i /n*, wodurch: x 1 + x 2 = 1/n* Somit folgt: min: x 1 + x 2 ; s.d.: 6x 1 + 4x 2 1 und 3x 1 + 5x 2 1 E[N(Mann)]: 6q 1 + 3q 2 n* und 4q 1 + 5q 2 n* setzte: x i = p i /n*, wodurch: x 1 + x 2 = 1/n* Somit folgt: min: x 1 + x 2 ; s.d.: 6x 1 + 3x 2 1 und 4x 1 + 5x 2 1 1/n

96 14/02/13 G. Beroggi © 96 Lösung von Konflikten Leas Nutzen hängt von Leas p und Jans q ab! Jans Nutzen hängt von Jans q und Leas p ab! LeaJan p% 100-p% q% 100-q% Investition A Investition B p% geht zu A und 100-p% zu B p% geht zu A und 100-p% zu B q% geht zu A und 100-q% zu B q% geht zu A und 100-q% zu B Lea Invesitionen A B Jan ABAB Investitionen genügend sehr gut schlecht gut genügend sehr gut schlecht gut Annahme: Beide Akteure können ihre Investitionen ausschliesslich entweder in A oder B tätigen (d.h. p und q = 0 oder 100%). Wenn Lea annimmt, dass Jan alles in A investiert, dann sollte sie auch alles in A investieren (genügend > schlecht). Wenn sie annimmt, dass Jan alles in B investiert, dann sollte sie auch alles in A investieren. Somit sollte Lea, unabhängig von Jan, immer alles in A investieren. Die analogen Überlegungen für Jan führen zum Schluss, dass auch er, unabhängig von Lea, alles in A investieren sollte. Somit führt die individuelle Rationalität dazu, dass alles in A investiert werden müsste. Das Systemoptimum wäre aber, wenn beide alles in B investieren würden. Diese Lösung ist aber nicht stabil, denn wenn einer vom anderen weiss, dass er/sie alles in B investiert, dann ist er/sie versucht, alles in A zu investieren, denn das führt zum gewünschten individuellen Optimum. Lea Invesitionen A B Jan ABAB Investitionen Der erwartete Nutzen (n) der beiden ist: l n Lea =100pq+300p(1-q)+0(1-p)q+200(1-p)(1-q) l n Jan =100pq+0p(1-q)+300(1-p)q+200(1-p)(1-q)

97 14/02/13 G. Beroggi © 97 Dynamische Plots für virtuelle Verhandlungen Auswahl einer Ausgangsverteilung für p und q Verzichtet Gegenpartei auf Reaktion? Gleichgewicht ist erreicht! Akteure verändern abwechselnd p oder q ja nein web

98 14/02/13 G. Beroggi © 98 Sicherheits-Niveau (SN): Garantiertes Minimum bei unabhängigen Entscheiden 0p p 2 u* und 300p p 2 u* Substitution: x 1 = p 1 /u* und x 2 = p 2 /u* 0x x 2 1 und 300x x 2 1 x 1 +x 2 : min 0q q 2 u* und 100q q 2 u* Substitution: x 1 = q 1 /u* und x 2 = q 2 /u* 0x x 2 1 und 100x x 2 1 x 1 +x 2 : min alles zu Aalles zu B q1q1 q 2 =(1- q 1 ) alles zu A p1p1 0,0300,100 alles zu B p 2 =(1- p 1 )100,300200,200 Sicherheits-Niveau als Entscheidungsproblem Neue numerische Verteilung: Lea Jan

99 14/02/13 G. Beroggi © 99 Nash-Gleichgewicht (NG): 1-Bewegungs-Horizont 0q + 300(1-q) = 100q + 200(1-q) q = 1/2; n NG = 150 0p + 300(1-p) = 100p + 200(1-p) p = 1/2; n NG = 150 Nash-Punkt (NP): min: (n L - n NG ) (n J – n NG ) n L = n J = 200 Gleichgewichtszustände als Entscheidungsproblem alles zu Aalles zu B q1q1 q 2 =(1- q 1 ) alles zu A p1p1 0,0300,100 alles zu B p 2 =(1- p 1 )100,300200,200 Nashpunkt Nashgleichgewicht Sicherheitsniveau Lea Jan Definition Nash-Gleichgewicht: Keiner der beiden Akteure kann (im nächsten Zug) seine eigene Position verbessern, ohne die Hilfe des anderen.

100 14/02/13 G. Beroggi © 100 Nash Point Security Level = Nash Equilibrium Unabhängige Entscheide: u TM = u UM =300pq+200(1-p)(1-q) Perfekt korellierte Entscheide: u TM = u UM =300k+200(1-k) Der Wert der Kommunikation alles zu Aalles zu B q1q1 q 2 =(1- q 1 ) alles zu A p1p1 300,2000,0 alles zu B p 2 =(1- p 1 )0,0200,300

101 14/02/13 G. Beroggi © 101 Konfliktlösung in der Planung Die Themen Wirtschaft Leben Arbeit Die Akteure Gemeinde Bevölkerung Unternehmen Konsumenten Quartierplanung Konfliktpotentiale Asymmetrische Interessen Asymmetrische Macht Unklare win-win Situationen Misstrauen

102 14/02/13 G. Beroggi © 102 Schrittweise Annäherung an das Gleichgewicht Bewertung von Kontrolle und Interesse Bilaterale Verhandlung zu zwei Themen Identifikation von Verhandlungspotential Gemeinde Bevölkerung Unternehmen Konsumenten Wirtsch. Leben Arbeit Gemeinde Bevölkerung Unternehmen Konsumenten Wirtsch. Leben Arbeit

103 14/02/13 G. Beroggi © 103 Linear System of Actions Web (not in Chrome)

104 14/02/13 G. Beroggi © 104 DSS in der Strategieplanung

105 14/02/13 G. Beroggi © 105 Beispiel Smartvote 1. Eigenes Profil definieren 2. Resultat 3. Wahlbarometer web

106 14/02/13 G. Beroggi © 106 Spidernetz Normalisierung: x i – x s x b - x s y i = Abb. 8: Normierte Werte für 10 Personen (Reihe 1 bis 10). x i : zu transformierender Wert x s : schlechtester Wert x b : bester Wert y i : transformierter Wert Normalisierte Werte (je weiter draussen, desto besser)

107 14/02/13 G. Beroggi © 107 Analytischer Hierarchieprozess Wohnung Preis A1A2A3A4 u(A i ) = w P w Ai,P + w M w Ai,M + w U w Ai,U Zimmer A1A2A3A4 Lage A1A2A3A4 Die paarweise Bewertung der Alternativen erfolgt zuerst für jedes Kriterium einzeln. Daraus erfolgen Gewichte für die Alternativen und zwar pro Kriterium. Mit der parweisen Bewertung der Kriterien kann man das gewichtete Mittel der Alternativen berechnen. Gesucht ist eine Funktion, die jeder Alternative (d.h. Entscheidungsoption) einen Wert zuordnet, so dass beliebteren Alternativen höhere Werte zugeordnet werden. Die Funktion soll additiv sein hinsichtlich der Kriterien, d.h. man setzt präferentielle Unabhängigkeit der Kriterien voraus.

108 14/02/13 G. Beroggi © 108 Preis Zimmer Lage Axiom: Reziproke Symmetrie, k 12 = 1/ k 21 Inkonsistenzen zugelassen: k 13 k 12 k 23 Paarweise Bewertung k ij = 9: extreme Priorität von e i über e j k ij = 7: starke Priorität von e i über e j k ij = 5: wesentliche Priorität von e i über e j k ij = 3: moderate Priorität von e i über e j k ij = 1: gleiche Priorität von e i über e j k ij = 1/3: moderate Inferiorität von e i über e j k ij = 1/5: wesentliche Inferiorität von e i über e j k ij = 1/7: starke Inferiorität von e i über e j k ij = 1/9: extreme Inferiorität von e i über e j eiei ejej k ij Bewertungsskala web Präferenzbewertung

109 14/02/13 G. Beroggi © 109 A×w = max ×w A ( max -m) __________________ m-1 CI = CR = CI RI Auflösung von Inkonsistenzen Die Berechnung der Prioritäten resp. die Auflösung der Inkonsistenzen hinsichtlich der transitiven Multiplikation geschieht mit der Lösung des Eigenwertproblems. Der gesuchte Gewichtsvektor ist der Eigenvektor, der zum grössten Eigenwert der Matrix A gehört. Mit dem grössten Eigenwert max kann man den Konsistenzindex CI berechnen. Die Inkonsistenz CR wird benutzt um die Zulässigkeit der Bewertung zu entscheiden. CR sollte kleiner als ca. 10% sein; falls nicht, müsste die Bewertung wiederholt werden. Numerisch kann der Eigenvektor auch berechnet werden, indem man die Matrix A mit einer grossen Potenz exponentiert resp. mit einem approximativen Verfahren, wo der Random Index (RI) aus der Tabelle unten herausgelesen wird. A: approximative numerical approach: 1. average 2. mmult(A;w)/wi 3. = average(wi) 4. CR = ( – 3) (2 x RI 3 )

110 14/02/13 G. Beroggi © 110 Nutzwertfunktion u( A i ) A 1 ist A 2 bevorzugt E[u(A 1 )] > E[u(A 2 )] Wir möchten eine Nutzwertfunktion, u: so dass für 2 Alternativen A 1 und A 2 : Beispiel: - A 1 : Gewinn mit p=0.5, Gewinn mit p=0.5 - A 2 : 90.- Gewinn mit p=0.5, 0.- Gewinn mit p=0.5 - E[(A 1 )]=150.- > E[(A 2 )]=45 - u(200.-)=1, u(100.-)=0.8, u(90.-)=0.4, u(0.-)=0. - E[u(A 1 )]=0.9 < E[u(A 2 )]=0.2 Nutzwertfunktion für 3 Kriterien A ist bewertet mit 3 Kriterien (Risiko, Kosten, Profit); z.B., A=(0.6,25,134) Gewünscht ist eine lineare Nutzwertfunktion u(e 1,e 2,e 3 ) = k 1 u 1 (e 1 ) + k 2 u 2 (e 2 ) + k 3 u 3 (e 3 ) u 1 (e 1 ): Komponenten- Nutzwertfunktion k 1 : Skalierkonstanten (Gewicht) u(0.6,25,134)= k 1 u 1 (0.6) + k 2 u 2 (25) + k 3 u 3 (134) Präferentielle Unabhängigkeit Risiko ist präferentiell unaghängig (PU) von den Kosten: (0.6,$5) > (0.4,$5) (0.6,$100) > (0.4,$100) Kosten sind PU vom Risiko: (0.1,$4) > (0.1,$8) (0.9,$4) > (0.9,$8) Gegenseitige PU wenn Risiko PU von Kosten und Kosten PU vom Risiko Gegenseitige PU ist Voraussetzung für eine lineare Nutzwertfunktion!

111 14/02/13 G. Beroggi © 111 u(e 1,e 2,e 3 ) = k 1 u 1 (e 1 ) + k 2 u 2 (e 2 ) + k 3 u 3 (e 3 ) B steht für bester Wert (z.B. kleinste Kosten) W steht für schlechtester Wert (grösste Kosten) u(B)=1, u(W)=0, k 1 + k 2 + k 3 = 1 u(B,B,B)=1, u(W,W,W)=0 W B e 2 u210u210 W B e 1 u110u110 W B e 3 u310u310 Form der normativen Präferenzfunktion $ (Kosten) u (1) Risiko meidend: p > 0.5, kein Gambler (2) Risiko neutral: p=0.5 (3) Risiko suchend: p < 0.5, Gambler Erwartete $: p $0+(1-p) $100 = $50 p=0.5 Interpretation der Komponentenfunktion

112 14/02/13 G. Beroggi © 112 Analyst: Wären Sie indifferent zwischen der Lotterie und dem Sicherheitswert, für p=0.5? Entscheidungsträger: Nein, für p=0.5 würde ich eher $50 bezahlen, als $100 zu riskieren. Analyst: Dann machen wir die Lotterie attraktiever. Wären Sie indifferent zwischen den zwei für p=0.8? Entscheidungsträger : Jetzt würde ich die Lotterie nehmen. Analyst: OK, wieviel wären Sie bereit, p zu reduzieren? Entscheidungsträger : Zu p=0.75, nicht tiefer. Analyst: Dies bedeuted, dass Ihr Nutzen $50 zu bezahlen 0.75 ist. indifferent $0 $100 p (1-p) Lotterie $ Sicherheitswert Bewertung der Komponenten Funktion $ (Kosten) u Was ist z.B. u($50)=? Für welches p, ist: [$0 mit p und $100 mit 1-p] indifferent zu $50 mit Sicherheit? Wir wissen: u($0)=1, u($100)=0 E[u(1)] = E[u(2)] p u($0)+(1-p)u ($100) = u($50) p 1+(1-p)u 0 = u($50) u($50) = p

113 14/02/13 G. Beroggi © 113 k 1 : Für welches p ist: [(B,B,B) mit p und (W,W,W) mit (1-p)] indifferent mit garantiertem (B,W,W)? p u(B,B,B)+(1-p) u(W,W,W) = u(B,W,W) u(B,W,W) = k 1 u 1 (B)+k 2 u 2 (W)+ k 3 u 3 (W) = k 1 p 1+(1-p) 0 = k 1 k 1 =p k 2 : Für welches p ist: [(B,B,B) mit p und (W,W,W) mit (1-p)] indifferent zu garantiertem (W,B,W)? k 2 =p k 3 : Analog wie für k 1 und k 2. Bewertung der Skalierungskonstanten

114 14/02/13 G. Beroggi © 114 L1 > L2 or L2 > L1 ? Psychologische Aspekte $1m 1.0 $1m $5m $0m L1 L2 L3 > L4 Hoffnung $5 (max) zu bekommen L1 > L2 Angst $0 (nichts) zu bekomment u($0)=0 u($5)=1 u($1)=? 1 u(1) > 0.89 u(1) u(1) > 0.1/ > 0.11 u(1) u(1) < 0.1/0.11 $0m $1m $0m $5m L3 L4 L3 > L4 Hoffnung $5 (max) zu bekommen Paradoxon von Allais

115 14/02/13 G. Beroggi © 115 t-Test ( M F ) Der p-Wert ist grösser als 5%; somit schliessen wir, dass das Geschlecht keinen Einfluss hat auf das Salär. t t t =0 t = 1.89 t = t =0 t = 2.36 p = 2.5% p = 5% p = 2.5% t = p = 15.4% Frage: Hängt das Salär vom Geschlecht ab? Z.B. Männer (m M ) verdienen im Schnitt mehr, als Frauen (m F ). H: M > F. t-Test 1-Faktor Varianzanalyse (ANOVA) Salär (Fr.) Geschl. (M/F) 1-Faktor Hypothese (kategorische Werte (M/F) und kontinuier- liche Werte (Fr.)

116 14/02/13 G. Beroggi © 116 Chi 2 -Test ( M F ) Die beobachteten Werte (rote Zahlen in der gelben Kontingenztabelle) unterscheiden sich signifikant von den erwarteten* Werten (blaue Zahlen in der blauen Tabelle). Somit ist das Salär vom Geschlecht abhängig. Mit der Aussage Das Salär ist vom Geschlecht abhängig irrt man sich zu 0.16%, was eine sehr kleine Irrtumswahrscheinlichkeit (resp. Signifikanzniveau) ist. * erwartet im Sinne, dass Geschlecht keinen Einfluss auf Salär hat. Salär (hoch/tief) Geschl. (M/F) 1-Faktor Hypothese (beide kategorische Werte: M/F und h/t) Frage: Hängt das Salär vom Geschlecht ab. Z.B. Überproportionale viele Männer (p M ) haben hohe Saläre als Frauen (p F ). H: M > F. Chi- 2 -Test Verteilung

117 14/02/13 G. Beroggi © 117 DSS im Produktdesign und in der Marketingplanung

118 14/02/13 G. Beroggi © 118 Optimierung einer Mischung Problem: Wie soll ein Kraftfutter von G = 8000 kg Kilogramm aus vier Mischungen zusammengesetzt werden, so dass das Kraftfutter mindestens 20% Mais, 15% Korn und 15% Mineralien enthält = 20% von 8000

119 14/02/13 G. Beroggi © 119 Was gefällt den Kunden? Produkte bestehen aus vielen Faktoren, mit unterschiedlichen Ausprägungen Beispiel: Faktor 1: Verpackung (A, B, C) Faktor 2: Marke (Cif, Ajax, Lemon) Faktor 3: Preis ( , , ) Faktor 4: Test (ja, nein) Faktor 5: Garantie (ja, nein) Anzahl der möglichen Offerten-Variationen: 108=3x3x3x2x2 Nur 18 müssen bewertet werden! Bewertung Präferenz eines Produkts = 4.8 – 4.5(A) + 3.5(B) – 1.5(I) – 2.0(II) + 7.7(11.95 Fr.)+4.83(13.95 Fr.) + 1.5(getestet) + 4.5(Garantie) Konstante Verpackung Marke Preis Test Garantie Faktoren Modell Beispiel B II nein ja Geschätzter Rang: 18 – 10.8 = 7.2 web

120 14/02/13 G. Beroggi © 120 Warum 18 anstatt 108 Produkte? Die Wahl der Kombinationen ist von der sog. Conjoint-Analyse abgeleitet. Oft wird der sog. Orthogonale Design angewendet, in der Annahme, dass die Faktoren keine Interaktion (resp. keine Korrelation) haben. Addelman, S. Orthogonal Main Effect Plans for Asymmetrical Factorial Experiments, Technometrics, Vol. 4, 1962, Seiten gibt folgende Tabelle an: Plan Anzahl Kombinationen Kombinationen der Faktorenausprägungen, die berücksichtigt werden können 184, 3, , , 3 5, , , 4 6, 3 6, , 8, 7, 6, 5, 4, 3 13, , 3 9, 2 31 Beispiel: Plan 6 erfordert 27 Kombinationen von Produkten. Diese können bestehen aus einem Faktor mit 4 bis zu 9 Ausprägungen (z.B. ein Reinigungsmittel mit 9 verschiedenen Preisen) oder bis zu 13 Faktoren mit jeweils bis zu 2 oder 3 Ausprägungen. Unser Beispiel besteht aus 5 Faktoren mit je bis zu 3 Ausprägungen (3 5 ); somit eignet sich Plan 4 (3 7 ) mit bis zu 7 Faktoren mit bis zu 3 Ausprägungen; die benötigte Anzahl Kombinationen ist 18. Der Exponent entspricht der Anzahl Faktoren und die Basis der Anzahl Ausprägungen pro Faktor weitere Angaben

121 14/02/13 G. Beroggi © 121 Umsetzung von Plan 4 Wir wählen die ersten drei gelben Kolonnen für die 3x3x3 Faktoren Pack, Marke und Preis und die ersten zwei blauen Kolonnen für die 2x2 Faktoren Test und Garantie Man überprüfe mit der Korrelations- funktion, dass alle 14 Faktoren untereinander nicht korrelieren (entspricht dem orthogonalen Design).

122 14/02/13 G. Beroggi © 122 Regressionsmodell

123 14/02/13 G. Beroggi © 123 Interpretation Präferenz = 4.8 – 4.5(A) + 3.5(B) – 1.5(I) – 2.0(II) + 7.7(11.95 Fr.)+4.8(13.95 Fr.) + 1.5(getestet) + 4.5(Garantie) Verpackung C erzielt einen 4.5 mal höheren Rang als A und 3.5 mal tieferen Rang als B Marke III erzielt einen 1.5 mal höheren Rang als Marke I und einen 2 mal höheren Rang als Marke II Ein Preis von erzielt einen 7.7 mal höheren Rang als und einen 4.8 mal höheren Rang als Ein getestetes Produkt erzielt einen 1.5 mal höheren Rang als ein ungetestetes Eine Garantie erzielt einen 4.5 mal höheren Rang als keine Garantie Eine Preiserhöhung um 2.-, von zu 13.95, entspricht einer Rangreduktion von ( = 2.87); d.h. Rangreduktion von 1 entspricht 2/2.87 = 0.7 Fr. Ein Wechsel von Verpackung B zu C (Rangreduktion von 3.5) entspricht einer Preiserhöhung von Fr. auf Fr. (um 3.5x0.7 = 2.45 Fr.) Wenn wir eine Garantie einführen (Rangsteigerung = 4.5), können wir den Preis von Fr. auf erhöhen (Rangsteigerung um 4.5x0.7 = 3.15 Fr. mehr) Der Vorteil von Marke I gegenüber Marke II (Rangsteigerung = 0.5) hat den gleichen Effekt wie eine Preissenkung von auf (Senkung um 0.5x0.7=0.35 Fr.) Verpackung > Preis > Garantie > Marke > Test FaktorStreuungRang Verpackung3.5 – (-4.5) = 81 Marke0 – (-2) = 24 Preis7.67 – 0 = Test1.5 – 0 = 1.55 Garantie4.5 – 0 = 4.53

124 14/02/13 G. Beroggi © 124 Präferenz innerhalb der Faktoren

125 14/02/13 G. Beroggi © 125 Berechnung des Marktanteils Herleitung eines Präferenzmodells für jedes Marktsegment Bestimmung des aktuellen Marktanteils von zu untersuchenden Produkten Berechnung des erwarteten Marktanteils des Produktes P i für alle Segmente: Berechnung des totalen Marktanteil jedes Produkts über alle Segmente: Gewichtete Summe mit Anzahl Kunden pro Segment Berechnung des Wertes, so dass die Quadratsumme der Abweichungen von geschätztem und wahrem Marktanteil minimiert wird Beispiel: Heutiger Marktanteil von 3 Produkten ist 30%, 50% und 20%; vorhergesagter Marktanteil ist 34%, 48% und 17% mit =2.08. Veränderung der Produkteigenschaften im Modell eingeben Beispiel: Produkt 1 (MA: 34%) Verpackung A Marke I Fr. Nicht getestet Keine Garantie Produkt 2 (MA: 48%) Verpackung B Marke II Fr. Getestet Keine Garantie Produkt 3 (MA: 17%) Verpackung C Marke III Fr. Nicht getestet Garantie Produkt 1 (MA: 52%) Verpackung A Marke I Fr. Getestet Garantie Veränderung von Produkt 1 durch Test und Garantie erhöht seinen Marktanteil um 18% Berechnung des MarktanteilsEinfluss der Produktveränderung auf den Marktanteil

126 14/02/13 G. Beroggi © --> veränderbare Zellen 126 Berechnung der Regression als Entscheidungsproblem Gesucht sind die Entscheidungsvariablen a und b, so dass die Summe der Quadratabweichungen zwischen beobachteten Salären (S i ) und den mit dem linearen Modell berechneten vorhergesagten Salären (S i = axA i + b), minimal wird: (S 5 – axA 5 + b) 2 A5A5 S5S5 abab --> min. Summe der quadratischen Abweichungen zwischen beobachteten Werten und vorhergesagten Werten

127 14/02/13 G. Beroggi © Numerische Regression für Ranking 127 Achtung: Bei n >= 10 wird die Determinante 0 und somit die nxn Matrix X T X nicht mehr invertierbar!

128 14/02/13 G. Beroggi © 128 Matrix Operations (Lingo Code) on Mmult -- matrix multiplication global A,B,Z -- Z = A * B --put field "matrix" into A --put field "MatrixXX" into B put "" into Z put the number of lines of A into ma put the number of items in line 1 of A into na put the number of lines of B into mb put the number of items in line 1 of B into nb if na <> mb then alert "The matrices have the wrong sizes" exit end if set the floatPrecision to 8 repeat with i=1 to ma repeat with j=1 to nb put 0 into sum repeat with k=1 to na put sum + (item k of line i of A) * (item j of line k of B) into sum end repeat put sum into item j of line i of Z end repeat end on MTransp -- transposes matrix A into T global A,T --put field "matrix" into A put "" into T put the number of lines of A into m put the number of items of line 1 of A into n repeat with i=1 to m repeat with j=1 to n put item j of line i of A into item i of line j of T end repeat end

129 14/02/13 G. Beroggi © 129 Matrix Operations (Lingo Code) on Minverse global A,E -- A is the matrix to be inverted and E is the inverse put the number of lines of A into m put the number of items in line 1 of A into n if m<>n then alert "The matrix is not quadratic" exit end if -- generate matrix E put "" into E repeat with i=1 to n times repeat with j=1 to n times if i=j then put 1 into item j of line i of E else put 0 into item j of line i of E end if end repeat set the floatPrecision to 8 -- make all values to 0 in lower triangle of matrix A into and perform same operations on E repeat with i=1 to n-1 repeat with j=i to n-1 put (item i of line j+1 of A)/(item i of line i of A) into pivot repeat with k=1 to n put (item k of line j+1 of A) - pivot * (item k of line i of A) into item k of line j+1 of A put (item k of line j+1 of E) - pivot * (item k of line i of E) into item k of line j+1 of E end repeat -- divide lowest row by its element in position n,n put item n of line n of A into pivot repeat with k=1 to n put (item k of line n of A) / pivot into item k of line n of A put (item k of line n of E) / pivot into item k of line n of E end repeat -- make all values to 0 in upper triangle of matrix A into and perform same operations on E repeat with i=n down to 2 repeat with j=i down to 2 put (item i of line j-1 of A)/(item i of line i of A) into pivot repeat with k=1 to n put (item k of line j-1 of A) - pivot * (item k of line i of A) into item k of line j-1 of A put (item k of line j-1 of E) - pivot * (item k of line i of E) into item k of line j-1 of E end repeat -- divide each row by its element in position i,i put item i of line i of A into pivot repeat with k=1 to n put (item k of line i of A) / pivot into item k of line i of A put (item k of line i of E) / pivot into item k of line i of E end repeat -- divide top row by its element in position n,n put item 1 of line 1 of A into pivot repeat with k=1 to n put (item k of line 1 of A) / pivot into item k of line 1 of A put (item k of line 1 of E) / pivot into item k of line 1 of E end repeat end Austauschverfahren zur Berechnung der Inversen einer Matrix

130 14/02/13 G. Beroggi © 130 Projektbeschreibung

131 14/02/13 G. Beroggi © 131 Projektbeschreibung DSS 1. Aufgabe Zwei Studierende bilden ein Projektteam. Das Projekt wird in EXCEL, Open Office oder RunRev (LiveCode) erstellt. Es soll ein Decision Support System (DSS) erstellt werden, welches eine zu definierenden Person in einer Organisation in einem zu definierenden Entscheidungs-Prozess unterstützt. 2. Elemente und Benotung (%) Konzept DSS (5%): Beschreiben Sie die Funktion und Architektur des DSS (Input, Output, Interface, Architektur, Datenbanken, Analysemodule, Dateneinfluss von anderen Systemen, Datenabfluss an welche andere Systeme, Instandhaltung, Wartung, Weiterentwicklung etc.). Konzept Organisation (5%): Beschreiben Sie die organisatorische Einbettung des DSS (wen soll es unterstützen, für welche Aufgaben / Entscheide, in welcher Situation, wie oft soll es benützt werden etc.). Analytik (45%): Beschreiben Sie die mathematisch-analytischen Entscheidungsmodelle Ihres DSS (mit Formeln, wie im Skript). Prototyp (45%): Entwickeln Sie einen Prototyp ohne Makros, der möglichst benutzerfreundlich ist. 3. Abgabe / Prüfung am letzten Tag Abgabe von DSS.xls (oder Open Office oder RunRev) und DSS.doc (oder DSS.pdf) an giampiero beroggi.net als zip-Datei (max. 1 MB) bis spätestens am 30. mai DSS.doc: Beschrieb der Funktion und der Funktionsweise des DSS, sowie der Formeln. Beschrieb einer Anwendung mit einem hypothetischen Fall. mdl. Prüfung: Vorstellung des Systems und des Falls am letzten Tag mit Diskussion. 4. Hinweise Wählen Sie einige der in der Vorlesung besprochenen Konzepte (siehe Folien). Kombinieren Sie diese zu einer Gesamtgeschichte. Integrieren Sie die funktionierenden Beispiele der Vorlesung in Ihr DSS. Machen Sie eigene Anpassungen, damit Ihr eigener Beitrag ersichtlich wird.

132 14/02/13 G. Beroggi © 132 Literatur Cliff T. Ragsdale, Managerial Decision Modeling. Thomson. James R. Evans and David L. Olson, Statistics, Data Analysis, and Decision Modeling. Prentice Hall. Wayne L. Winston, Financial Models using Simulation and Optimization. Palisade. Wayne L. Winston, Financial Models using Simulation and Optimization II. Palisade. Richard Bronson, Theory and Problems of Operations Research. Schaums Outline Series. Sam L. Savage, Decision Making with Insight. Thomson. Jatinder N.D. Gupta et al. (eds.), Intelligent Decision-Making Support Systems. Springer. Ruhul A. Sarker and Charles S. Newton, Optimization Modelling – A Practical Approach. CRC Press. Giampiero E.G. Beroggi, Decision Modeling in Policy Management – An Introduction to the Analytic Concepts. Springer. Giampiero E.G. Beroggi, Designing and Evaluating E-Management Decision Tools – The Integration of Decision and Negotiation Models into Internet-Multimedia Technologies. Springer.


Herunterladen ppt "14/02/13 G. Beroggi © 1 Decision Support Systems (DSS) Grundlagen der DSS-Entwicklung DSS in der Einsatz- und Zeitplanung DSS in der Transportplanung und."

Ähnliche Präsentationen


Google-Anzeigen