modellierung - uni-paderborn.de · modellierung prof.dr.johannesblömer,prof.dr.eykehüllermeier...
TRANSCRIPT
-
Modellierung
Prof.Dr. Johannes Blömer, Prof.Dr. Eyke Hüllermeier
Universität PaderbornInstitut für Informatik
Paderborn, 17. Oktober 2016
E. Hüllermeier 1/24
-
Bedeutung der Vorlesung
Das Modellieren (im Sinne dieser Vorlesung) ist zentral für dasgesamte Fach Informatik und eine wichtige Fähigkeit vonInformatikern.Mit der Modellierung einer Aufgabe vertieft man sein Verständnis undzeigt, wie die Aufgabe konkret verstanden wird.Ein adäquates Modell ist Voraussetzung und Maßstab für einesystematische Lösung.Als Ausdrucksmittel muss man passende Notationen und Kalküleanwenden können.
Einleitung E. Hüllermeier 2/24
-
Ziele der Vorlesung
Die Teilnehmer solleneinen Überblick über grundlegende Modellierungsmethoden und-kalküle bekommen,den konzeptionellen Kern der Kalküle beherrschen,die für die Methoden typischen Techniken erlernen undKalküle an typischen Beispielen anwenden.
Insgesamt sollen sie lernen,Aufgaben präzise zu beschreiben und zu analysieren,formale Kalküle als Arbeitsmittel einzusetzen undden praktischen Wert von präzisen Beschreibungen erkennen.
siehe Beschreibung des Moduls I.2.1 im Modulhandbuch:http://www.cs.uni-paderborn.de/fileadmin/Informatik/Institut/studium/material/mhb/Modulhandbuch_2009.pdf
Einleitung E. Hüllermeier 3/24
http://www.cs.uni-paderborn.de/fileadmin/Informatik/Institut/studium/material/mhb/Modulhandbuch_2009.pdfhttp://www.cs.uni-paderborn.de/fileadmin/Informatik/Institut/studium/material/mhb/Modulhandbuch_2009.pdf
-
Literaturhinweise
H. Kleine Büning/J. Blömer: Vorlesung Modellierung WS 2015 / 2016http://www-old.cs.uni-paderborn.de/fachgebiete/ag-bloemer/lehre/2015/ws/modellierung.html
Das Buch zur Vorlesung:Uwe Kastens, Hans Kleine Büning: Modellierung - Grundlagen und formaleMethoden, Carl Hanser Verlag, 2014, 3. Auflage
Weitere Bücher zum Nachlernen und Nachschlagen:Gerhard Goos: Vorlesungen über Informatik, Band 1, 3. Auflage,Springer- Lehrbuch, 2000Thierry Scheurer: Foundations of Computing, System Developmentwith Set Theory and Logic, Addison-Wesley, 1994Daniel J. Velleman: How To Prove It - A Structured Approach, 2nded., Cambridge University Press, 2006
Einleitung E. Hüllermeier 4/24
http://www-old.cs.uni-paderborn.de/fachgebiete/ag-bloemer/lehre/2015/ws/modellierung.htmlhttp://www-old.cs.uni-paderborn.de/fachgebiete/ag-bloemer/lehre/2015/ws/modellierung.html
-
Bezug zu anderen Vorlesungen
Grundlagen derProgrammiersprachen
Softwareentwurf
Datenstrukturen &Algorithmen
Berechenbarkeit &formale Sprachen
Algorithmen &Komplexität
ModellierungGrundlagen derProgrammierung
Problem verstehenbevor implementieren
Eigenschaften undStrukturen von Sprachen
Spezifikation vonSoftware-Aufgabenund -Lösungen
Eigenschaften von D & Aformal beschreiben
auf grundlegendenKalkülen aufbauen
Probleme und Aufgabenpräzise beschreiben
Einleitung E. Hüllermeier 5/24
-
Modellierung in anderen Gebieten
Der Begriff der Modellierung wird auch in anderen Zweigen derWissenschaft verwendet, beispielsweise in der Physik.
Physikalische Phänomene werden in der Sprache der Mathematik erfasst,beschrieben und analysiert.
Abbildung: Parabolische Flugbahn eines Objektes.
~r(t) =(
v0t cos βv0t sinβ − g2 t
2
)bzw. y(x) = x tanβ − g
2v20 cos2 βx2
Einleitung E. Hüllermeier 6/24
-
Flussüberquerung
Aufgabe: Ein Mann steht mit einem Wolf, einer Ziege und einem Kohlkopf amlinken Ufer eines Flusses, den er überqueren will. Er hat ein Boot, das groß genugist, ihn und ein weiteres Objekt zu transportieren, so dass er immer nur eins derdrei mit sich hinübernehmen kann.
Falls der Mann allerdings den Wolf und die Ziege oder die Ziege und denKohlkopf unbewacht an einem Ufer zurücklässt, so wird einer gefressen werden.
Ist es möglich, den Fluss zu überqueren, ohne dass die Ziege oder der Kohlkopfgefressen werden?Quelle: Hopcroft, Ullman: Einführung in die Automatentheorie, formale Sprachen und Komplexitätstheorie, S. 14, 15
Einleitung E. Hüllermeier 7/24
-
Flussüberquerung
Aufgabe: Ein Mann steht mit einem Wolf, einer Ziege und einem Kohlkopf amlinken Ufer eines Flusses, den er überqueren will. Er hat ein Boot, das groß genugist, ihn und ein weiteres Objekt zu transportieren, so dass er immer nur eins derdrei mit sich hinübernehmen kann.
Falls der Mann allerdings den Wolf und die Ziege oder die Ziege und denKohlkopf unbewacht an einem Ufer zurücklässt, so wird einer gefressen werden.
Ist es möglich, den Fluss zu überqueren, ohne dass die Ziege oder der Kohlkopfgefressen werden?Quelle: Hopcroft, Ullman: Einführung in die Automatentheorie, formale Sprachen und Komplexitätstheorie, S. 14, 15
Erste Analyse: evtl. wichtige
Objekte: Mann, Wolf, Ziege, Kohlkopf, Ufer (links u. rechts), Fluss, BootTätigkeiten: Fluss überqueren, Objekt transportieren
Eigenschaften, Beziehungen: unbewacht an einem Ufer, Wolf frisst Ziege,Ziege frisst Kohl, Boot trägt Mann + 1 Objekt
Einleitung E. Hüllermeier 8/24
-
Modellierung der Flussüberquerung
Kalkül: endlicher Automat mit Zuständen und Übergängen
© 2
011
bei P
rof.
Dr.
Uw
e K
aste
ns
Modellierung der Flussüberquerung
Kalkül: endlicher Automat mit Zuständen und Übergängen
Mod-1.13
MWZK
MWZ K
K MWZ
WK MZ MWK Z
MZK W
W MZK
Z MWKMZ WKMWZK
MZ M
MMZ
MK
MW
MZMZ
MW
MK
Start
Ziel
ZK MW WZK M
WZ MK
MK WZ
ZK MW
MW ZK
WZ MK
MW M
MK
M
M
M
M
illegal: einer wird gefressen
Vorlesung Modellierung WS 2011/12 / Folie 113
Ziele:
Prozess der Modellierung am Beispiel erkennen
in der Vorlesung:
Erläuterungen dazu (siehe auch nächste Folie):
• Bedeutung der Graphik und der Symbole,
• Zustände und Übergänge eines endlichen Automaten (siehe Kap. 8),
• Darstellung als Graph mit Knoten und Kanten (siehe Kap. 6)
• Wertebereiche der Information zu Zuständen (siehe Kap. 2)
Verständnisfragen:
• Prüfen Sie, ob das Modell die Aufgabe korrekt und vollständig beschreibt.
Einleitung E. Hüllermeier 9/24
-
Diskussion des Modellierungsbeispiels
Modellierung von Abläufen, Folgen von Schritten: Kalkül endlicher Automat
Abstraktion: nur die Zustände und Übergänge interessieren
relevante Objekte benannt: M, W, Z, K
jeder Zustand wird charakterisiert durch ein Paar von Mengen der Objekte,(linkes Ufer, rechtes Ufer); jedes Objekt kommt genau einmal vor
zulässige und unzulässige Zustände
Übergänge werden mit den transportierten Objekten beschriftet
Besonders wichtig ist, was nicht modelliert wurde, da es für die Aufgabeirrelevant ist, z. B. die Länge des Bootes, die Tiefe des Flusses, die genauenPositionen der Objekte, usw.
Kreative Leistung: Kalkül „endlicher Automat” wählen, Bedeutung der Zuständeund Übergänge festlegen
Systematische Tätigkeit: speziellen Automat aufstellen, Lösungsweg finden.
Meist kann man Lösungen am Modell entwickeln.Einleitung E. Hüllermeier 10/24
-
Domineering
Domineering ist ein Spiel, bei dem zwei Spieler V und H abwechselndDominosteine auf ein Spielfeld (m× n Gitter oder Teilmenge davon) legen.V darf die Steine nur vertikal legen, H nur horizontal. Wer keinen Steinmehr legen kann, verliert das Spiel.
Einleitung E. Hüllermeier 11/24
-
Domineering
Domineering ist ein Spiel, bei dem zwei Spieler V und H abwechselndDominosteine auf ein Spielfeld (m× n Gitter oder Teilmenge davon) legen.V darf die Steine nur vertikal legen, H nur horizontal. Wer keinen Steinmehr legen kann, verliert das Spiel.
Einleitung E. Hüllermeier 12/24
-
Domineering
Jedes Spiel gehört in eine der folgenden vier Kategorien:(a) V kann bei optimaler Spielweise gewinnen, unabhängig davon, wer
beginnt(b) H kann das Spiel gewinnen, unabhängig davon, wer beginnt(c) Der Spieler, der den ersten Zug macht, besitzt eine Gewinnstrategie(d) Der nachziehende Spieler besitzt eine Gewinnstrategie
Frage: Gegeben ein konkretes Spiel, zu welcher Kategorie gehört es?
Einleitung E. Hüllermeier 13/24
-
Modellierungsbeispiel: Getränkeautomat
Die Bedienung eines Getränkeautomaten soll modelliert werden. Das Gerätsoll Getränke wie Kaffee, Tee, Kakao gegen Bezahlung mit Münzenabgeben. Man soll Varianten der Getränke wählen können, z. B. mit oderohne Milch oder Zucker. Die Modellierung soll berücksichtigen, dass imGerät nur begrenzte Vorräte untergebracht werden können.
Einleitung E. Hüllermeier 14/24
-
Modellierungsbeispiel: Navigationssystem
100
70
50
Die algorithmische Lösung von Problemen wie das Berechnen kürzesterWege oder schnellster Verbindungen setzt eine adäquate Modellierung derInfrastruktur voraus, z. B. eine Repräsentation des Straßennetzes in Formvon Graphen.
Einleitung E. Hüllermeier 15/24
-
Allgemeiner Modellbegriff
Quelle: Meyers Neues Lexikon,
in zehn Bänden, Meyers
Lexikonverlag, 1993
Einleitung E. Hüllermeier 16/24
-
Allgemeiner Modellbegriff
Abbild eines vorhandenen Originals (z. B. Schiffsmodell)Vorbild für ein herzustellendes Original (Gebäude in kleinem Maßstab;Vorbild in der Kunst)konkretes oder abstraktes Modell (Schiffsmodell, Rentenmodell)konkretes oder abstraktes Original (Schiff, Bevölkerungsentwicklung)
Davon abweichende Bedeutungen:Fotomodell: führt Mode (oder sich) vorAutomodell: Typreihein der Logik: Eine Struktur S ist ein Modell der Formeln F, wenn alleF für S gelten.
Hier in der Informatik: abstraktes Abbild oder Vorbild zu abstrakten oderkonkreten Originalen
Einleitung E. Hüllermeier 17/24
-
Modell: Buslinienplan
Einleitung E. Hüllermeier 18/24
-
Modell: Busfahrplan
Einleitung E. Hüllermeier 19/24
-
Wissensmodellierung in der KI
Das allgemeine Ziel der Künstlichen Intelligenz ist die Simulation desmenschlichen Intellekts und seiner kognitiven Fähigkeiten.
Wissensbasierte Systeme bilden Expertenwissen in einer bestimmentenAngwendungsdomäne ab (z.B. medizinische Diagnose). Eine adäquateRepräsentation dieses Wissens ist dabei zentral und wichtige Voraussetzung fürdie effeziente Verarbeitung des Wissens −→ Modellierung von Wissen undInferenz (Schlussfolgern, Problemlösen)
Einleitung E. Hüllermeier 20/24
-
Arbeiten mit Modellen
Operationen, die man am Original nicht durchführen kann z. B. neueFlügelform im Windkanal oder in der Computer-Simulation erprobenBestimmte Aspekte eines komplexen Gebildes untersuchen undverstehen, z. B. Geschäftsabläufe in einer FirmaVerständigung zwischen Auftraggeber und Hersteller des Originals,z. B. Hausbau, Software-KonstruktionFixieren von Anforderungen für die Herstellung des Originals,Software: Requirements, Spezifikation
Modell validieren:Nachweisen, dass die relevanten Eigenschaften des Originals korrekt undvollständig im Modell erfasst sind und darüber Einvernehmen herstellen.
Einleitung E. Hüllermeier 21/24
-
Bezug zwischen Original und Modell
Original Modell
geändertes Original geändertes Modell
ModellabbildungO
O'
M
M'
a
InterpretationI
opM Operationauf Modell
Operationauf Original
opO
Für alle relevanten Operationen muss das Diagramm kommutieren, d.h.
opO(O) = I(opM(a(O)))
Die Operation auf dem Original entspricht der Interpretation derOperation auf dem Modell.
Einleitung E. Hüllermeier 22/24
-
Bezug zwischen Original und Modell
“All models are wrong, but some are useful” (George Box, 1978)
Dieser Aphorismus bringt nochmals den Unterschied zwischen Realität undModell sowie den Sinn und Zweck von Modellen auf den Punkt.
Man beachte jedoch, dass eine realitätstreue Abbildung per definitionem nicht dieAufgabe eines Modells ist, und ein Modell so gesehen nicht “falsch” sein kann.
Einleitung E. Hüllermeier 23/24
-
Deklarative oder operationale Beschreibung
Deklarative Beschreibung des Modellsmacht Aussagen über Aspekte des Originals. Aussagen meist allgemeingültig, auf die Aufgabe bezogen, ohne redundante Abläufe.
Operationale Beschreibung des Modellsgibt an, wie sich das Original unter bestimmten Operationen verhält.Häufig nur Beispiele, unvollständig, legt eine Lösung nahe (fest),erzwingt Nachvollziehen von Abläufen
Beispiel Balkenwaage:
a b
x y
deklarativ: Die Waage ist im Gleichgewicht, wenn sich die Gewichte umgekehrtproportional zu den Längen der Balken verhalten: x * a = y * b.operational: Erst lege ich auf den Balken der Länge a ein Gewicht x; dann legeich auf den Balken der Länge b ein Gewicht y = x * a / b; danach ist die Waagewieder im Gleichgewicht.
Einleitung E. Hüllermeier 24/24
Einleitung