Upload
sara-landefeld
View
105
Download
0
Embed Size (px)
Citation preview
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 1
Operations Research für Logistik
Einführung in Matlab®
(170.202)
Ao. Univ. - Prof. Norbert SEIFTER
Dipl. - Ing. Stefanie VOLLAND
Sommersemester 2010
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 2
Rahmenbedingungen•Übungen:
– 80 % Anwesenheit (laut Anwesenheitsliste)– Übungsaufgaben bis zur darauffolgenden Einheit
selbstständig lösen
•Prüfung:– schriftlich - 22. und 23. Juni 2010– und mündlich (28. Juni - 30. Juni 2010)– sowohl schriftlicher als auch mündlicher Teil
müssen für den erfolgreichen Abschluss der VU positiv sein
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 3
Inhalte
•Einführung in Matlab®
•Markovketten
•Warteschlangentheorie
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 4
Einführung in Matlab® I
•MATLAB® = „MATrix LABoratorium“
•in Praxis Standardwerkzeug für technisch - wissenschaftliche Berechnungen
•bietet für numerische Aufgaben Lösungsmethoden und Methoden zur Visualisierung
•moderne Programmiersprache, in welcher eigene Anwendungen entwickelbar
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 5
Einführung in Matlab® IIErste Schritte in Matlab®:•Matlab starten•voreingestellte Oberfläche durchDesktop Desktop Layout Default wieder herstellbar
•durch Anklicken Fenster aktivierbar•folgende Fenster stehen zur Verfügung:
– Command Window– Command History– Workspace– Current Directory
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 6
Einführung in Matlab® III
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 7
Einführung in Matlab® IV
•Fenster durch Mausklick aktivieren•>> …. Eingabe kann getätigt werden•Beispiel: >>1+ 2
Eingabe mit return bestätigen
•Variable ans (answer) wird der Wert 3 zugewiesen
•Inhalte der anderen Fenster verändert
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 8
Einführung in Matlab® IV – Ergänzungen •Workspace:
– verwendete Variable ans und einige ihrer Eigenschaften angezeigt
– alle im Verlauf der Sitzung verwendeten Variablen hier aufgelistet
•Command History:– alle Eingaben des Command Window
gespeichert– mit Copy und Paste rückholbar oder ↑
•Current Directory: unverändert
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 9
Einführung in Matlab® VHilfe in Matlab® - 3 Möglichkeiten:
1. Help - Option in der ersten Menüzeile
2. direkte Hilfe
3. Fragezeichen
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 10
Einführung in Matlab® VI•Strichpunkt:
– unterdrückt die Ausgabe•elementare Funktionen:
Beachte: Winkelfunktionen sowohl in Grad (z.B. sind) als auch in Bogenmaß (z.B. sin).
NamederAusgabe = MatlabFunktionsname(Eingabewert)
Funktion Mathematik
MATLAB
ArcustangensExponentialfunktionLogarithmus naturalisLogarithmus (Basis 10)Logarithmus (Basis 2)
arctan(x)ex
ln(x)log10(x)
log2(x)
atan(x)exp(x)log(x)log10(x)log2(x)
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 11
Einführung in Matlab® VII•diary:
– um Matlab® - Sitzung zu protokollieren– diary Dateiname.m– mit diary off abschließen
•save und load:– um Variablen zu speichern
und zurückzuholen
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 12
Einführung in Matlab® VIII
•Matrizen eingeben und ändern:
– wichtigste Datentyp in Matlab® (MATrix LABoratory)
– in eckigen Klammern zeilenweise Eingabe
– durch Leerzeichen oder Komma getrennt
– Zeilenende durch Strichpunkt angegeben
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 13
Einführung in Matlab® IX
•Variablen zuweisen:
•Matrixelemente überschreiben:
•weitere Operationen und spezielle Matrizen:
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 14
Einführung in Matlab® X
•einfache Befehle für Matrizen:
– transponieren einer Matrix, d.h. Zeilen werden zu Spalten und Spalten zu Zeilen mit ‘
– Typ einer Matrix: Befehl size
– Zeilenanzahl einer Matrix: Befehl ZAnz
– weitere Befehle:
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 15
Einführung in Matlab® XI
•Rechnen mit Matrizen:
– können addiert, multipliziert, potenziert und mit einem Skalar multipliziert werden
– bei Addition: Typen der Matrizen müssen übereinstimmen addM1M2 = M1 + M2
– bei Multiplikation: Spaltenzahl der 1. Matrix = Zeilenanzahl der 2. Matrix multM3M4 = M3 * M4
– beim Potenzieren (mit einer natürlichen Zahl): Matrix muss quadratisch sein M1Quadrat = M1 ^ 2
M1mal2 = 2 * M1
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 16
Einführung in Matlab® XII
A und C sind nicht vom gleichen Typ.
Spaltenanzahl von A ist ungleich der Zeilenanzahl von D.
Anpassung des Typs bei Addition einer Zahl zu Matrix.
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
M = M1. * M2
17
Einführung in Matlab® XIII
•Punktoperationen:
– komponentenweise addieren
– komponentenweise quadrieren
– komponentenweise dividieren M = M. ^2
M = 1. / M1
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 18
Einführung in Matlab® XIV
•Vektoren:
– sind spezielle Matrizen
– Zeilenvektor
– Spaltenvektor
– Spalten- oder Zeilenvektor kann nicht
quadriert werden
– Skalarprodukt =
Zeilenvektor * Spaltenvektor
– Länge eines Vektors
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 19
Einführung in Matlab® XV•Funktionen darstellen:
Bezeichner = Startwert : Schrittweite : Endwert;
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 20
Einführung in Matlab® XVI
•Darstellung komplexer Zahlen:– imaginäre Einheit vordefiniert
– i als auch j als Bezeichnung verwendbar
– Realteil Rt: real (z1) und Imaginärteil It: imag (z1)
– Betrag Bet: abs (z1) und Phase Phi: angle(z1)
bzw. atan2 (It,Rt)
– komplexe Zahl in algebraischer Form: Bet * exp (j * Phi)
– konjugiert komplexe Zahl: conj (z1)
bzw. z1‘
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 21
Einführung in Matlab® XVII
•Rechnen mit komplexen Zahlen:
– + / - / * / :
– Ausgabe immer in algebraischer Form
•zur Verwendung von i und j:
– löschen mit clear i j
– Anfangszustand mit ans
herstellen
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 22
Einführung in Matlab® XVIII•Zahlenformate:
– File Preferences Command
Window Text display
Numeric format oder
Numeric display
– Standardformat: format short
– format long
– Leerzeichen unterdrücken mit format
compact und aufheben
mit format loose
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 23
Matlab® für Fortgeschrittene I
•Wirkungsweise elementarer Funktionen:
– skalare Funktionen
– Vektorfunktionen
– elementare Matrixfunktionen
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 24
Matlab® für Fortgeschrittene II
•skalare Funktionen:– A …beliebige Matrix vom Typ (m,n)
mit Elemente aik
– f …skalare Funktion
– Matrix f(aik) ist vom Typ (m,n)
– alle Funktionen der Analysis:• Potenz- und Wurzelfunktionen
• trigonometrische Funktionen und Umkehrfunktionen
• Exponentialfunktionen und Logarithmen
• Funktionen zum Runden (floor, ceil, fix, round)
• Funktionen real, imag, abs und angle
• alle Punktoperationen
log (0) nicht definiert
Logarithmus einer negativen Zahl kann gebildet werden.
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 25
Matlab® für Fortgeschrittene III
•Vektorfunktionen:
– sum, prod, min, max, mean, median, std, sort, all, any
Summe wird spaltenweise berechnetB ist daher ein Zeilenvektor
Summe zeilenweise bildentransponierte Matrix berechnenErgebnis ist stets ein Zeilenvektor
Anwendung von sum auf einen Vektor Ergebnis ist stets eine Zahl, gleichgültig ob es sich um einen Zeilen- oder Spaltenvektor handelt
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 26
Matlab® für Fortgeschrittene IV
•Elementare Matrixfunktionen:
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 27
Matlab® für Fortgeschrittene V
•Polynome in Matlab®:
– durch Zeilenvektor mit n+1 Elementen dargestellt
z.B. p3(x) = 2x3 + x + 4
•Grundrechnungsarten:Beide Polynome müssen bei der Addition vom selben Typ sein.
Multiplikation funktioniert nur mit dem Begriff conv.
Polynomdivision mit Rest hat zwei Rückgabewerte q und rq …. ganzrationaler Anteilr …. echt gebrochener rationaler Anteil
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 28
Matlab® für Fortgeschrittene VI•Partialbruchzerlegung:
•Polynomwertberechnung:
•Nullstellenberechnung
bzw. Polynombestimmung:
•Ableitungen:
Koeffizienten bzw.
Residuen a1 und a2
Nullstellen x1 und x2
Polynomwertberechnung z.B. p3 (2) mit polyval.
Nullstellenberechnung mit Befehl roots.
Polynombestimmung z.B. mit Nullstellen x1 = 1, x2 = 1 und x3 = 1.
Ableitung mit dem Befehl polyder.
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 29
Matlab® für Fortgeschrittene VII
•Interpolation und Regression:
– Polynominterpolation
– Splines
– Regression
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 30
Matlab® für Fortgeschrittene VIII
•Polynominterpolation:
– Polynom minimalen Grades mittels Befehl polyfit(x,y,n)
x,y …. Messpaare aus Messreihe
n …. Grad
– Erzeugung einer Messreihe
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 31
Matlab® für Fortgeschrittene IX
•Splines: mittels Befehl spline
– definiert durch:•x,y…Werte der Messpaare
•t…Stelle, an denen Spline später skizziert werden soll
•s…Rückgabegröße
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 32
Matlab® für Fortgeschrittene X
•Regression:
– mittels Funktion polyfit (x,y,Zahl) erzeugbar
– lineare Regression: mit polyfit (x,y,1)
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 33
Matlab® für Fortgeschrittene XI
– kubische Regression: mit polyfit (x,y,3)
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 34
Matlab® für Fortgeschrittene XII
– exponentielle Regression: •durch Logarithmieren wird Problem linearisiert
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 35
Matlab® für Fortgeschrittene XIII
•Lineare Gleichungssysteme:
– Matrix A vom Typ(m,n)
– Inhomogenität b ist eine Matrix vom Typ(m,1)
– unbekannter Vektor x mit n Elementen
– lineares Gleichungssystem mit m Gleichungen und n Unbekannten
– lineares Gleichungssystem lösbar, wenn Rang der Matrix A = Rang der erweiterten Matrix [A,b] = Anzahl der Unbekannten, d.h. Spaltenanzahl von A
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 36
Matlab® für Fortgeschrittene XIV
•Lösbarkeit linearer Gleichungssysteme:
für eindeutig lösbare lineare Gleichungssysteme
für NICHT eindeutig lösbare lineare Gleichungssysteme, da Spaltenanzahl nicht übereinstimmt
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 37
Matlab® für Fortgeschrittene XV•Eigenwerte und Eigenvektoren:
Eigenwerte einer Matrix A berechenbar mit Befehl eig(A).
Berechnung der Diagonalmatrix
Berechnung der Dreiecksmatrix
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 38
Matlab® für Fortgeschrittene XVI
•Rundungsfehler:
– Matlab ® ist ein Softwarepaket, dass numerisch arbeitet
– Rundungsfehler treten daher auf
– Details verwiesener Literatur entnehmen
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 39
Programmieren in Matlab® I•Graphen erstellen: mittels Script Files
Save and Run
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 40
Programmieren in Matlab® II•spezielle Graphen:
– parametrisierte Kurven (Lissajou - Figuren)
– Kurven in Polarkoordinaten (Archimedische Spirale)
– Ortskurve
– Zeigerdiagramme
– halblogarithmische Darstellungen
– Bodediagramme
– Balkendiagramme
– 3 - dimensionale Diagramme:•Raumkurve, Sattelfläche und Höhenlinien
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 41
Programmieren in Matlab® III•parametrisierte Kurven (Lissajou - Figuren):
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 42
Programmieren in Matlab® IV•Kurven in Polarkoordinaten (Archimedische Spirale):
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 43
Programmieren in Matlab® V•Ortskurven:
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 44
Programmieren in Matlab® VI•Zeigerdiagramme:
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 45
Programmieren in Matlab® VII•halblogarithmische Darstellungen:
– bei Funktionen mit großem Wertebereich
– mittels Befehl semilog(x,y)
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 46
Programmieren in Matlab® VIII•Bodediagramme:
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 47
Programmieren in Matlab® IX•Balkendiagramme:
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 48
Programmieren in Matlab® X•3 - dimensionale Diagramme: Raumkurve
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 49
Programmieren in Matlab® XI•3 - dimensionale Diagramme: Sattelfläche
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 50
Programmieren in Matlab® XII•3 - dimensionale Diagramme: Höhenlinien
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 51
Programmieren in Matlab® XIII•graphisch differenzieren:
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 52
Programmieren in Matlab® XIV•graphisch integrieren:
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 53
Programmieren in Matlab® XV•Lösen linearer Gleichungssysteme:
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 54
Programmieren in Matlab® XVI•Erstellen bzw. Arbeiten mit Function Files:
– parameterabhängige Dateien
– Regelung von Input- und Outputgrößen notwendig
function[Aus1,Aus2,….,Ausm]=Funktionsname(Ein1,Ein2,….,Einm)
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 55
Programmieren in Matlab® XVII•Differentialgleichungen:
– erster Ordnung
– zweiter Ordnung
– Systeme von Differentialgleichungen
•Kontrollstrukturen:
– konditionale Verzweigungen
– Schleifen
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 56
Programmieren in Matlab® XVIII
•Numerische Lösung von Differentialgleichungen:
– erster Ordnung:
Runge - Kutta - Verfahren
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 57
Programmieren in Matlab® XIX•Numerische Lösung von Differentialgleichungen:
– zweiter Ordnung:
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 58
Programmieren in Matlab® XX•Numerische Lösung von Differentialgleichungen:
– Systeme von Differentialgleichungen:
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 59
Programmieren in Matlab® XXI•Kontrollstrukturen:
– konditionale Verzweigungen:•if Bedingung, Anweisungsteil end
•Anweisungsteil:= Anweisung; Anweisung; … Anweisung
•if Bedingung Anweisungsteil1 else Anweisungsteil2 end
•= … Zuweisung
•== … Vergleich
•in Matlab ® hat richtige Bedingung Wert 1, eine
falsche Bedingung den Wert 0
•bei Vergleich mit Zeichenketten ‘‘ verwenden und auf Groß- bzw. Kleinschreibung achten
Zeichen
Klartext
<>
< => ===~ =
kleiner alsgrößer alskleiner oder gleichgrößer oder gleichgleich ungleich
Operator Klartext
&|~
undodernicht
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 60
Programmieren in Matlab® XXII•Kontrollstrukturen:
– Schleifen:•Laufanweisung:
Laufvariable = Anfangswert:[Schrittweite]:Endwert
•for Laufanweisung, Anweisungsteil end
•bei Bestimmung der Anzahl der Schleifendurchgänge innerhalb des Programms:
while Bedingung, Anweisungsteil end
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 61
Literaturhinweise zu Matlab®
•Grupp, Frieder und Florian(2004): Matlab ® 7 für Ingenieure – Grundlagen und Programmierbeispiele. 3., überarbeitete Auflage, München, Wien: Oldenbourg Verlag. ISBN: 3 - 486 - 27584 - 4.
•Schweizer, Wolfgang (2009): Matlab ® kompakt. 4.,aktualisierte und ergänzte Auflage, München: Oldenbourg Verlag. ISBN: 978 - 3 - 486 - 59193 - 4.
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 62
Übungen zu Matlab® I
(siehe dazu Übungsunterlagen)
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 63
Operations Research für Logistik
Markovketten(170.202)
Ao. Univ. - Prof. Norbert SEIFTER
Dipl. - Ing. Stefanie VOLLAND
Sommersemester 2010
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 64
Beispiel 1) Wahlurne (nicht absorbierend)Angaben:
•2 Parteien: MSM und GLH
•Wähler von GSM bleiben bei t+1 zu 80 % treu, wenn sie zum Zeitpunkt t diese Partei wählen
•Wähler von MSM bleiben nur zu 75 % treu
•Ausgangszustand laut letzter Wahl: 55 % MSM, 45 % GLH
Aufgabenstellung:
Speichern Sie die Übergangsmatrix A0, sowie die Ausgangsverteilung p0 als Variablen ab!
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Beispiel 1) Wahlurne I
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Beispiel 1) Wahlurne II
•Wieviele Stimmen haben die jeweiligen Parteien bei der nächsten Wahl?
– (A0*A0)= A1
– A1*p0
•Bzw. wieviele Stimmen haben diese bei der übernächsten Wahl?
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Beispiel 1) Wahlurne III
•Probieren Sie mit verschiedenen Werten für x, ab welchem x sich die Übergangsmatrizen nicht mehr ändern.
– A^x
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Beispiel 1) Wahlurne IV
•Lösung:
Nach 20 Wahlgängen verändern sich die Stimmanteile der beiden Parteien nicht mehr.
• Welche Stimmanteile haben die beiden Parteien MSM und GSM nach 20 Wahlgängen?
•Berechnung von A^20 mit anschließender Multiplikation mit den Ausgangsverteilungen
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Beispiel 1) Wahlurne V
•Berechnen der eingependelten Zustände ohne “Suchen” des Gleichgewichtszustandes:– Man sucht jene π, für die gilt:
•π1= 0,75* π1 + 0,2* π2
•π2= 0,25* π1 + 0,8* π2
– Dann ersetzt man eine Gleichung mit:•1 = π1 + π2
– Und erhält:•π1= 0,75* π1 + 0,2* π2
•1 = π1 + π2
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Beispiel 1) Wahlurne VI•Dieses lineare Gleichungssystem kann man mittels Matlab® auf mehrere Arten lösen, z.B.:– mittels der Funktion A\b– mittels der Funktion rref()
Aufgabenstellung:Versuchen Sie mittels dieser zwei Funktionen das zuvor angeführte Gleichungssystem zu lösen!
Tipp: - Verwenden Sie die Matlabhilfe, um die zwei Funktionen anwenden zu können.- Achten Sie dabei auf die richtige Eingabe des
Gleichungssystems!
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Beispiel 1)Wahlurne VII
•Lösung mittels A\b:
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Beispiel 1) Wahlurne VIII
•Lösung mittels rref():
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Beispiel 2) Laufbahnmöglichkeiten ILAngaben:•Es existieren 5 Zustände in der Karrierelaufbahn IL:
– untere Ebene (uE) – transient•0,8 zu uE, 0,15 zu mE, 0,05 zu AvhE (in %)
– mittlere Ebene (mE) – transient•0,7 zu mE, 0,2 zu hE, 0,1 zu AvhE (in %)
– höhere Ebene (hE) – transient•0,95 zu hE, 0,05 zu AvdS (in %)
– Abschied vor Erreichen der höheren Ebene (AvhE)– Abschied von der höheren Ebene - (Spitze) (AvdS)
•beide Abschiede sind absorbierend
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Beispiel 2) Laufbahnmöglichkeiten IL I
uEuE mEmE hEhE
AvhEAvhE AvhEAvhE
0,150,15
0,8 0,8
0,050,05
0,20,2
0,7 0,70,10,1
0,95
0,95
0,050,05
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Beispiel 2) Laufbahnmöglichkeiten IL II
Übergangs-matrix
uE mE hE AvhE AvdS
uE 0,8 0,15 0 0,05 0
mE 0 0,7 0,2 0,1 0
hE 0 0 0,95 0 0,05
AvhE 0 0 0 1 0
AvdS 0 0 0 0 1
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
RRQQ
Beispiel 2) Laufbahnmöglichkeiten IL III –Partitionieren der Übergangsmatrix
Übergangs-matrix
uE mE hE AvhE AvdS
uE 0,8 0,15 0 0,05 0
mE 0 0,7 0,2 0,1 0
hE 0 0 0,95 0 0,05
AvhE 0 0 0 1 0
AvdS 0 0 0 0 1
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Beispiel 2) Laufbahnmöglichkeiten IL IVAufgabenstellung:•Wie lange befindet man sich in einem der transienten Zustände, wenn man in irgendeinem transienten Zusand startet bzw. wie oft könnte man erwarten, einen transienten Zustand zu erreichen, bevor man zu einem absorbierenden Zustand kommt?– Zu berechnen mittels (I – Q)^(-1).
•Wie groß sind die Wahrscheinlichkeiten, dass man in einen absorbierenden Zustand kommt?– Zu berechnen mittels (I – Q)^(-1) * R.
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Beispiel 2) Laufbahnmöglichkeiten IL V
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Beispiel 2) Laufbahnmöglichkeiten IL VI
•D.h. wenn jemand in der uE eintritt, bleibt er im Schnitt 5 Jahre in diesem Zustand.
(In unserem Fall 5 Jahre, da 1 Schritt in einen anderen Zustand = 1 Jahr).
•Personen, die in der mE arbeiten, werden im Schnitt 13,33 Jahre in der hE verbringen.
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Beispiel 2) Laufbahnmöglichkeiten IL VII
•Wenn man in der uE einsteigt, hat man eine 50 % Chance, in die hE aufzusteigen.
• Ist man bereits auf der mE, so erhöht sich diese Chance auf 2/3.
•Man scheidet mit einer Chance von 1/3 von der mE aus dem System aus, ohne die hE erreicht zu haben.
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Hausübung 1) IAngaben :
•Eine Umfrage ergab, dass zum Zeitpunkt t = 0 40 Prozent der Hörer Sender A hörten und 60 % Sender B.
•Aus vorherigen Umfragen ist bekannt, dass die Hörer von Sender A mit einer Wahrscheinlichkeit von 15 % zu Sender B wechseln, während von Sender B 5 % zu Sender A wechseln (pro Woche).
Aufgabenstellung:
•Stellen Sie diesen Vorgang als Markovkette dar und berechnen Sie folgende Punkte mittels Matlab ® :
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Hausübung 1) IIa) Wie hoch ist der Anteil der jeweiligen Hörer von Sender
A und B zu den Zeitpunkten t = 1, t = 3 und t = 5?
b) Wenn es eine Gesamthörerschaft von 500.000 Menschen gibt, wieviele Menschen hören in der Woche t = 9 den Sender B?
c) Existiert für dieses System ein Gleichgewichtszustand? Wenn ja, wie lauten die Anteile von A und B bzw. nach wievielen Wochen wird dieser Zustand erreicht?
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Hausübung 2) IAngabe:•Eine Fertigungsmaschine produziert je nach Drehzahl eine unterschiedliche Menge von Produkten (Beobachtungsintervall = 1 Woche). Erfahrungswerte zeigen, dass wenn die Anlage mit 1000 U/min läuft, sie zu einer Wahrscheinlichkeit von 0,1 in der nächsten Woche ausfällt. Zu einer Wahrscheinlichkeit von 0,2 kann die Leistung von 1000 auf 1200 U/min gesteigert werden. Ausgehend von diesem Zustand, fällt sie jedoch zu 20 % aus. Fährt die Maschine mit 1200 U/min, fällt sie in der nächsten Woche mit einer Wahrscheinlichkeit von 0,5 wieder auf 1000 U/min zurück.
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik
Hausübung 2) IIAufgabenstellung:
•Stellen Sie diesen Vorgang als Markovkette dar und berechnen Sie folgende Punkte mittels Matlab ® :
a) Wieviele Tage dauert es im Schnitt, bis die Anlage ausfällt, wenn sie zum Zeitpunkt t = 0 (Woche 0) im Zustand 1000 U/min produziert?
b) Nehmen Sie an, die Anlage kann innerhalb einer Woche repariert werden und prodziert danach wieder mit Drehzahl 1000 U/min. Wie groß ist die Verfügbarkeit der Anlage?
Hinweis: Je nach Aufgabenstellung ist der Zustand “Ausfall” einmal als absorbierd, einmal als nicht absorbierend anzunehmen.
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 85
Operations Research für Logistik
Warteschlangentheorie(170.202)
Ao. Univ. - Prof. Norbert SEIFTER
Dipl. - Ing. Stefanie VOLLAND
Sommersemester 2010
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 86
Beispiel 1) Tankstelle I
Angaben:
PKW - Fahrer fahren zur Tankstelle um zu tanken, wenn ihr Tank zu ¼ voll ist. Die Tankstelle hat eine Zapfsäule. Es kommen durchschnittlich 6,3 Personen pro Stunde zur Tankstelle, wobei diese ihren Tank wieder zur Gänze auffüllen. Um einen PKW abzufertigen, vergehen durchschnittlich 4 Minuten.
Die ZAZ (= Zwischenankunftszeiten) und die Bedienzeit sind exponentialverteilt anzunehmen.
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 87
Beispiel 1) Tankstelle IIAufgabenstellung:
a) Beschreiben Sie dieses System nach Kendall - Lee.
b) Wieviele Kunden befinden sich durchschnittlich im System und wie lange verbringt ein Kunde durchschnittlich darin?
c) Die ÖMV prognostiziert Ölknappheit, was zu einer Veränderung des Systems führt. Die PKW - Fahrer fahren
nun schon an die Zapfsäule, wenn sie bereits erst die Hälfte ihres vollen Tanks verbraucht haben. Da sie nun weniger tanken, sinkt die Bedienzeit auf 2 2/3 Minuten. Wie verändern sich dadurch die Größen L und W?
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 88
Beispiel 2) Kartenschalter I
Angaben:
Der Eingangsbereich einer Touristenattraktion verfügt über 2 Schalter.
Im Durchschnitt betreten 4/3 Personen pro Minute den Bereich.
Die durchschnittliche Bedienzeit beträgt 72 Sekunden.
ZAZ und Bedienzeit sind exponential verteilt.
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 89
Beispiel 2) Kartenschalter II
Aufgabenstellung:
a) Beschreiben Sie dieses System nach Kendall - Lee.
b)Wie hoch ist der Bruchteil der Zeit, in der ein einzelner Schalter frei ist?
c)Wie hoch ist die durchschnittliche Zeit, die ein Kunde im System verbringt?
d) Wie hoch ist die durchschnittliche Anzahl der Touristen im System?
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 90
Beispiel 3) Callcenter I
Angaben:
Ein Angestellter nimmt in einem Callcenter die Anrufe entgegen. Es rufen im Schnitt 35 Kunden pro Stunde an, wobei die Abfertigungsdauer bei durchschnittlich 320 Sekunden liegt (ZAZ und Bedienzeit sind exponentialverteilt). Ist die Warteschlangenkapazität von 11 Anrufern erschöpft, legen die neu hinzukommenden Kunden auf.
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 91
Beispiel 3) Callcenter II
Aufgabenstellung:
a) Beschreiben Sie dieses System nach Kendall - Lee.
b) Wie lange muss ein Anrufer im Schnitt in der Schleife warten und wie lange wartet er bis zur vollständigen Abfertigung seines Anrufs?
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 92
Beispiel 4) Fertigung I
Angaben:
In einer Fertigung befinden sich 3 Fertigungsstationen. Im Schnitt kommen von außerhalb des Systems 11 Teile bei der Station A, 16 Teile bei der Station B und 10 Teile bei der Station C an.
Die Bedienraten lauten A = 15 Stk/h, B = 28 Stk/h und C = 36 Stk/h (ZAZ und Bedienraten sind exponentialverteilt).
Ist ein Teil bei der Station A fertig, geht es zu 50 % aus dem System, der Rest geht weiter zu Station B. Von Station B aus gehen ¼ der Teile aus dem System, während ¾ zu Station C wandern. Von Station C aus gehen ¾ der Teile aus dem System, der Rest geht zu jeweils 50 % an die Stationen A und B.
i n d u s t r i e l o g i s t i km o n t a n u n i v e r s i t ä t l e o b e n
industrielogistik© Lehrstuhl Industrielogistik 93
Beispiel 4) Fertigung IIAufgabenstellung:
a) Bestimmen Sie eine Kendall - Lee - Notation für dieses System.
b)Welchen Bruchteil der Zeit ist die Station B frei?
c) Wieviele Teile sind im Schnitt bei jeder Bedienstation (3 Antworten)?
d) Wie hoch ist die durchschnittliche Zeit, die ein Teil im System verbringt?