24
Modellierung Prof.Dr. Johannes Blömer, Prof.Dr. Eyke Hüllermeier Universität Paderborn Institut für Informatik Paderborn, 17. Oktober 2016 E. Hüllermeier 1/24

Modellierung - uni-paderborn.de · Modellierung Prof.Dr.JohannesBlömer,Prof.Dr.EykeHüllermeier Universität Paderborn Institut für Informatik Paderborn,17.Oktober2016 E. Hüllermeier

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

  • 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