Der intelligente Hamster
|
|
- Ralph Arnold
- vor 6 Jahren
- Abrufe
Transkript
1 Der intelligente Hamster + Johannes Arz 1/17
2 Gliederung 1. Motivation 2. Modellbildung 3. Das Hamster-Modell 4. Grundlagen der Künstlichen Intelligenz 5. Das Problem der Wasserkrüge 6. Das Labyrinth und der faule Hamster 7. Das Labyrinth und der bewegte Hamster 8. Die Wumpus-Welt 9. Resümee 2/17
3 1. Motivation (aus einem Prolog-Programm über Frames) Slot ako erzeugt in Frame computer Aspekt value erzeugt in Frame computer und Slot ako Frame elektrischesgeraet erzeugt Slot stromversorgung erzeugt in Frame elektrischesgeraet Aspekt if_needed erzeugt in Frame elektrischesgeraet und Slot stromversorgung Aspekt unit erzeugt in Frame elektrischesgeraet und Slot stromversorgung Slot groesse erzeugt in Frame elektrischesgeraet Aspekt alt_value erzeugt in Frame elektrischesgeraet und Slot groesse % frame compiled 0.03 sec, 420 bytes true. 2?- calc(computer,stromversorgung). DAEMON: Gib einen Wert fuer stromversorgung im Frame elektrischesgeraet : 220. Wert(proc) = 220 Volt true. 3?- 3/17
4 2. Modellbildung Konventionelle Informationsverarbeitung Automatisierung monotoner, klar strukturierter und wohl definierter Informationsverarbeitungsprozesse Verarbeitungsabläufe aus nicht-automatisierten Informationsverarbeitungsprozessen Modelle sind aus der realen Welt beobachtbar Simplifikation Künstliche Intelligenz (KI): Adaption kognitiver Prozesse im menschlichen Gehirn; nicht direkt beobachtbar Struktur des menschlichen Gehirns, menschliche Denkprozesse nicht erklärt Modelle des menschlichen Gehirns und der erkenntnistheoretischen Prozesse in Algorithmen und Verfahren implementieren Modell nicht die Vereinfachung beobachtbarer Prozesse, sondern in Phantasiewelt Extreme Simplifikation In der KI-Ausbildung bildet sich in diesem Zusammenhang eine besondere Schwierigkeit aus. Wie kann man menschliche Denkprozesse visualisieren, um sie Studierenden zu erläutern und verständlich zu machen? 4/17
5 3. Das Hamster-Modell Die Hamster-Simulation (Hamster-Java-Modell) ist eine Programmierumgebung, um Programmieranfängern das algorithmische Denken und das Erlernen grundlegender Programmierkonzepte zu erleichtern. Der Hamster bewegt sich in einer Matrix, deren Elemente Mauern, Körner und er selbst sind. Er kann Körner in seinem Maul sammeln und wieder ausspucken. Er kann sich in alle Richtungen bewegen und nur durch eine Mauer gestoppt werden. 5/17
6 Elementare Hamster-Befehle: vor() linksum() nimm() gib() und als Boole sche Funktionen vornefrei() maulleer() kornda() Die Hamster-Sprache (in der Syntax von Java) bedingte Anweisungen, Schleifen, Zuweisungen Funktionen elementarste Datentypen Prolog-Schnittstelle 6/17
7 4. Grundlagen der Künstlichen Intelligenz Problemdefinition: Definition eines Zustandsraums, der alle möglichen Konfigurationen der relevanten Objekte enthält. Festlegung von einem oder mehreren Zustände innerhalb des Raums, von denen aus der Problemlösungsprozess beginnen kann (Anfangszustände). Festlegung von einem oder mehreren Zuständen, die als Problemlösung akzeptabel wären (Zielzustände). Angabe einer Menge von Regeln, die die verfügbaren Tätigkeiten (Operatoren) beschreiben. Die Regeln sollen einen Zustand des Raums in einen anderen überführen. Viele einfache Spielprobleme: Bauer, Wolf, Ziege und Kohlkopf, Die Wasserkrüge Missionare und Kannibalen. Das Acht-Damen-Problem ; prinzipiell auch: Verhinderung einer Kernschmelze in einem Atomkraftwerk 7/17
8 Allgemeinheuristiken Beschreibung eines Problems Suchgraph Anzahl der Knoten extrem groß ist (z.b. Schachspiel 20 KI-Verfahren und Techniken: 100 Zustände.) - Tiefensuche (aus der Graphentheorie bekannt, kein KI-Verfahren) - Erzeugen und Prüfen (Erzeuge irgendeinen Weg/Zustand, prüfe dann, ob ein Zielzustand erreicht ist. Wiederhole dies bis Lösung gefunden wurde. - Blinde Suche, Bergsteigen (Setzt eine Bewertungsfunktion für Zustände voraus. In jedem Zustand wähle den erfolgversprechendsten Weg, den Weg mit der höchsten Bewertung.) - Bestensuche (mit Bewertungsfunktion. Von allen bekannten Endknoten während der Suche im Suchbaum wähle den erfolgversprechendsten Zustand, den mit der höchsten Bewertung als Fortsetzung.) 8/17
9 Implementierungen in Prolog % solve_dfs(+state, +History, -Moves) solve_dfs(state, History, [ ] ) :- final_state(state). solve_dfs(state, History, [Move Moves]) :- move(state, Move), update(state, Move, State1), legal(state1), not(member(state1, History)), solve_dfs(state1, [State1 History], Moves). % dfs(+problem, -Moves) dfs(problem, Moves) :- initial_state(problem, State), solve_dfs(state, [State], Moves). 9/17
10 5. Das Problem der Wasserkrüge - Zwei Krüge mit Fassungsvermögen 5 und 8 Liter (ohne Messmarkierungen) - Es gibt einen Brunnen mit beliebig viel Wasser. - Operationen: Füllen, Leeren und Umfüllen - Wie kann man einen Krug mit genau 4 Liter füllen? Entwicklungsumgebung Java-Konsole (Start Entwicklungsumgebung) Editor mit dem Hauptprogramm, Simulationsfenster mit der Hamster-Welt Prolog-Konsole (Programmsteuerung) 10/17
11 initial_state(jugs,jugs(0,0)). final_state(jugs(4,v2)). final_state(jugs(v1,4)). move(jugs(v1,v2), fill(1)). move(jugs(v1,v2), fill(2)). move(jugs(v1,v2), empty(1)) :- V1 > 0. move(jugs(v1,v2), empty(2)) :- V2 > 0. move(jugs(v1,v2), transfer(2,1)). move(jugs(v1,v2), transfer(1,2)). update(jugs(v1,v2), empty(1), jugs(0,v2)). update(jugs(v1,v2), empty(2), jugs(v1,0)). update(jugs(v1,v2), fill(1), jugs(c1,v2)) :- capacity(1,c1). update(jugs(v1,v2), fill(2), jugs(v1,c2)) :- capacity(2,c2). update(jugs(v1,v2), transfer(2,1), jugs(w1, W2)) :- update(jugs(v1,v2), transfer(1,2), jugs(w1, W2)) :- legal(jugs(v1,v2)). value(jugs(v1,v2), Value) :- Value is V1 + V2. capacity(1,8). capacity(2,5). 11/17
12 6. Das Labyrinth und der faule Hamster - Präsentation der Verfahren im Labyrinth - Bewertung der Zustände (=Felder) gleich Anzahl der Körner - Zielzustand ist Feld mit den vielen Körnern - Beim Hill Climbing denkt der Hamster kurz nach und stellt fest, dass er so nicht ans Ziel kommt (Ausgabe: false). Der Hamster sucht gemäß Verfahren einen Weg zum Ziel ohne sich zu bewegen. An der ersten (und einzigen) Abzweigung hat der Hamster die Wahl zwischen einem Feld mit einem Korn oder dem Feld mit drei Körnern. Er wählt den Weg geradeaus und gerät in eine Sackgasse. 12/17
13 7. Das Labyrinth und der bewegte" Hamster In dieser Variante denkt der Hamster laut nach. Die Abbildung links zeigt die Startposition. Als Verfahren ist hier die Bestensuche gewählt. In der Abbildung rechts gerät der Hamster in eine Sackgasse, erinnert sich aber an die letzte Abzweigung und nimmt das den richtigen Weg zum Ziel. Der Hamster im Labyrinth, Startzustand Der Hamster im Labyrinth, Sackgasse 13/17
14 8. Die Wumpus-Welt Das Zusammenspiel aller beim Menschen bekannten intellektuellen Fähigkeiten, die auf Rechnern abgebildet werden können, wird in den neueren Lehrbüchern am Beispiel des intelligenten Agenten demonstriert und gelehrt. Neudefinition der KI als die Betrachtung von Agenten, die Wahrnehmungen aus der Umwelt erhalten und Aktionen ausführen. Jeder dieser Agenten implementiert eine Funktion, die Wahrnehmungsfolgen auf Aktionen abbildet, und wir beschreiben unterschiedliche Möglichkeiten, diese Funktionen darzustellen, wie z.b. Produktionssysteme, reaktive Agenten, Echtzeitplaner, neuronale Netzwerke und entscheidungstheoretische Systeme. [Zitat] 14/17
15 Die Wumpus-Welt Käfig mit Räumen, miteinander verbunden Bestie Wumpus frisst jeden im Raum Agenten mit einem einzigen Pfeil Falltüren Gold Sensoren o Gestank (Stench) o Luftzugg (Breeze) o Glitzern (Glitter) o Stoß (Dump) o Schrei (Scream) 15/17
16 In einer Hamster-Implementierung Repräsentation der Zustände eines Feldes durch Körner. Hier binäre Kodierung der Zustände an, z.b. Zustand Leeres Feld, keine Beobachtung 0 Luftzug (Breeze) 1 Gestank (Stench) 2 Gold (Glitter) 4 Falltür (PIT) 8 Wumpus 16 (12) Repräsentation ist nicht adäquat Auch eine andere Kodierung der Zustände nicht adäquat. Reduktion auf einen Spezialfall des Labyrinth-Problems 16/17
17 9. Resümee Aufsplittung in zwei Forschungshalbsemester positiv Neue WP-Veranstaltung (Grundlagen der Künstlichen Intelligenz mit Praktikum) geplant Bericht auf meiner Homepage Prolog-Programme als Quelldateien (per ) 17/17
Der intelligente Hamster
Der intelligente Hamster + Bericht an den Präsidenten über mein Forschungssemester im SS 2010 und im WS 2010/2011 (jeweils hälftig) Prof. Dr. Johannes Arz Fachbereich Informatik Hochschule Darmstadt Johannes
MehrProgrammieren mit dem Java-Hamster-Modell. VP Orientierung Informatik WS 2008/09 H.Hagenauer
Programmieren mit dem Java-Hamster-Modell VP Orientierung Informatik WS 2008/09 H.Hagenauer Idee didaktisches Modell zur Einführung in die Programmierung leichter und intuitiver Zugang ( spielerisches
MehrÜbersicht. 7. Prädikatenlogik 1. Stufe
Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlußfolgern 6. Logisch schließende Agenten 7. Prädikatenlogik 1. Stufe 8. Entwicklung einer Wissensbasis 9. Schließen in der Prädikatenlogik
MehrEinfacher Problemlösungsagent. Übersicht. Begriffsdefinitionen für Einfach-Probleme
Übersicht I Künstliche Intelligenz II Problemlösen 3. Problemlösen durch Suche 4. Informierte Suchmethoden 5. Constraint-Probleme 6. Spiele III Wissen und Schlußfolgern IV Logisch Handeln V Unsicheres
MehrGrundlagen der Künstlichen Intelligenz
Grundlagen der Künstlichen Intelligenz 6. Klassische Suche: Datenstrukturen für Suchalgorithmen Malte Helmert Universität Basel 7. März 2014 Klassische Suche: Überblick Kapitelüberblick klassische Suche:
MehrMethoden der KI in der Biomedizin Logische Agenten 1
Methoden der KI in der Biomedizin Logische Agenten 1 Karl D. Fritscher Organisatorisches Voraussetzungen: Lehrstoff zu den Themengebieten: a. Einführung in die KI, Expertensysteme b. Problemlösung durch
MehrSchleifen dienen dazu, bestimmte Anweisungen immer wieder abzuarbeiten.
Folge 6 WHILE-Schleife JAVA 6.1 Schleifen Schleifen dienen dazu, bestimmte Anweisungen immer wieder abzuarbeiten. Zu einer Schleife gehören die Schleifenbedingung und der Rumpf. Die Schleifenbedingung
MehrGrundlagen der Künstlichen Intelligenz
Grundlagen der Künstlichen Intelligenz 5. Klassische Suche: Beispiele von Zustandsräumen Malte Helmert Universität Basel 7. März 2014 Suchprobleme: Überblick Kapitelüberblick klassische Suche: 3. 5. Einführung
MehrProbeklausur: Programmierung WS04/05
Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,
MehrVisual Basic Hamster
1. Einleitung Visual Basic Hamster Harald R. Haberstroh Die Idee zum Hamstermodell ist ganz einfach: Sie als Programmierer müssen einen virtuellen Hamster in einer virtuellen Landschaft steuern. Das Hamster-Modell
MehrUm dies zu vermeiden, werden nun drei so genannte Testbefehle eingeführt:
Folge 4 IF-ELSE-Anweisung - Testbefehle JAVA 4.1 Testbefehle (Boolesche Ausdrücke) Wenn Sie den Hamster in eine unlösbare Situation bringen (z.b. obwohl vor ihm eine Mauer steht), dann ist der Hamster
MehrKünstliche Intelligenz
Künstliche Intelligenz Intelligente Agenten Claes Neuefeind Sprachliche Informationsverarbeitung Universität zu Köln 26. Oktober 2011 Agenten Konzept des Agenten Rationalität Umgebungen Struktur von Agenten
MehrTheoretische Grundlagen des Software Engineering
Theoretische Grundlagen des Software Engineering 7: Einführung Aussagenlogik schulz@eprover.org Logisches Schließen 2 gold +1000, 1 per step, Beispiel: Jage den Wumpus Performance measure death 1000 10
MehrÜbungen mit Anleitung. Hamster-Simulator. Nicola Ramagnano 23. Oktober 2011
Übungen mit Anleitung Hamster-Simulator Nicola Ramagnano 23. Oktober 2011 Dieses Dokument steht unter einer Creative Commons Namensnennung-NichtKommerziell-Weitergabe unter gleichen Bedingungen 2.5 Schweiz
MehrKünstliche Intelligenz - Optimierungsprobleme - Suche in Spielbäumen
Künstliche Intelligenz - Optimierungsprobleme - Suche in Spielbäumen Stephan Schwiebert WS 2009/2010 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Optimierungsprobleme
MehrIntelligente Agenten
KI Wintersemester 2013/2014 Intelligente Agenten Grundlagen der Künstlichen Intelligenz Wintersemester 2014/2015 Marc Toussaint 2006-2014 Heidemann, Bruhn, Toussaint Überblick Überblick Agentenbegriff,
MehrKapitel 2: Programmfluss steuern
Kapitel 2: Programmfluss steuern Thema: Programmieren Seite: 1 Kapitel 2: Programmfluss steuern Das Flussdiagramm Um schwierige Aufgaben beim Programmieren zu lösen, ist es oft hilfreich, den Programmablauf
MehrKlausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik
Seite 1 von 8 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 15 Pkt.) Für eine
MehrPeg-Solitaire. Florian Ehmke. 29. März / 28
Peg-Solitaire Florian Ehmke 29. März 2011 1 / 28 Gliederung Einleitung Aufgabenstellung Design und Implementierung Ergebnisse Probleme / Todo 2 / 28 Einleitung Das Spiel - Fakten Peg-33 33 Löcher, 32 Steine
MehrDas Java-Hamster-Modell
Das Java-Hamster-Modell Programmieren lernen mit dem Hamster Informatikunterricht in der Jahrgansstufe 11 der Ursulaschule Osnabrück Das Java-Hamster-Modell Übersicht 1. Was ist ein Programm? 2. Wodurch
MehrGrundlagen der Künstlichen Intelligenz
Grundlagen der Künstlichen Intelligenz 9. Klassische Suche: Baumsuche und Graphensuche Malte Helmert Universität Basel 13. März 2015 Klassische Suche: Überblick Kapitelüberblick klassische Suche: 5. 7.
MehrProgrammierung im Grossen
1 Letzte Aktualisierung: 16. April 2004 Programmierung im Grossen Bertrand Meyer 2 Vorlesung 4: Abstrakte Daten-Typen Übungen 3 Passe die vorhergehende Spezifikation von Stacks (LIFO, Last-In First-Out
MehrKlausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:
Seite 1 von 8 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 10 Pkt.) a) Geben
MehrThomas Behr. 17. November 2011
in in Fakultät für Mathematik und Informatik Datenbanksysteme für neue Anwendungen FernUniversität in Hagen 17. November 2011 c 2011 FernUniversität in Hagen Outline in 1 2 3 4 5 6 - Was ist das? in über
MehrJAVA-Datentypen und deren Wertebereich
Folge 8 Variablen & Operatoren JAVA 8.1 Variablen JAVA nutzt zum Ablegen (Zwischenspeichern) von Daten Variablen. (Dies funktioniert wie beim Taschenrechner. Dort können Sie mit der Taste eine Zahl zwischenspeichern).
Mehr1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH
1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH Die Umgebungsvariable CLASSPATH kann im Hamster-Simulator sowohl für Compiler als auch für die Ausführung des Hamster-Programms gesetzt werden: Hierdurch
MehrEinführung in Heuristische Suche
Einführung in Heuristische Suche Beispiele 2 Überblick Intelligente Suche Rundenbasierte Spiele 3 Grundlagen Es muss ein Rätsel / Puzzle / Problem gelöst werden Wie kann ein Computer diese Aufgabe lösen?
MehrAlgorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Sommersemester 2007 11. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Das Rucksack-Problem Ein Dieb, der einen Safe
MehrKünstliche Intelligenz Einführung in Prolog
Künstliche Intelligenz Einführung in Prolog Stephan Schwiebert WS 2009/20010 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Was ist Programmieren? Was ist Programmieren?
MehrSuche in Spielbäumen Projektvorschläge
Suche in Spielbäumen Projektvorschläge Nullsummenspiele sind Spiele mit zwei Spielern, bei denen der Vorteil des einen Spielers dem Nachteil des anderen Spieler entspricht. Im einfachsten Fall binär (Sieg
MehrVerkettete Datenstrukturen: Bäume
Verkettete Datenstrukturen: Bäume 1 Graphen Gerichteter Graph: Menge von Knoten (= Elementen) + Menge von Kanten. Kante: Verbindung zwischen zwei Knoten k 1 k 2 = Paar von Knoten (k 1, k 2 ). Menge aller
MehrKapitel 3: Variablen
Kapitel 3: Variablen Thema: Programmieren Seite: 1 Kapitel 3: Variablen Im letzten Kapitel haben wir gelernt, bestimmte Ereignisse zu wiederholen solange eine Bedingung erfüllt ist. Nun möchten wir aber
MehrLogik für Informatiker
Vorlesung Logik für Informatiker 3. Aussagenlogik Einführung: Logisches Schließen im Allgemeinen Bernhard Beckert Universität Koblenz-Landau Sommersemester 2006 Logik für Informatiker, SS 06 p.1 Beispiel:
MehrWissensbasierte Systeme
WBS3 Slide 1 Wissensbasierte Systeme Sebastian Iwanowski FH Wedel Kap. 3: Algorithmische Grundlagen der KI WBS3 Slide 2 Suchstrategien Warum sind Suchstrategien so wichtig in Wissensbasierten Systemen?
MehrDas Praktikum mit Seminar vertieft die in der Vorlesung erworbenen Fähigkeiten in theoretischer und praktischer Hinsicht:
66/2006 vom 13.10.2006 FU-Mitteilungen Seite 25 e. Module affiner Bereiche Modul: Chemie für Physiker Aneignung der Grundlagen der Chemie mit Ausnahme der organischen Chemie sowie Erlangung eines Allgemeinwissens
MehrÜbersicht. Prädikatenlogik höherer Stufe. Syntax der Prädikatenlogik 1. Stufe (mit Gleichheit)
Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern 7. Logische Agenten 8. Prädikatenlogik 1. Stufe 9. Schließen in der Prädikatenlogik 1. Stufe 10. Wissensrepräsentation IV
MehrEIDI 1 Einführung in die Informatik 1. PGdP Praktikum Grundlagen der Programmierung. Harald Räcke 2/217
EIDI 1 Einführung in die Informatik 1 PGdP Praktikum Grundlagen der Programmierung Harald Räcke 2/217 Wie löst man Probleme mithilfe von Computern? 0 Harald Räcke 3/217 Inhalte: EIDI 1 1. Was ist das Problem?
Mehr1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster
1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster Aufgabe: Bearbeitungszeit: ca. 1/4 Std) Schreiben Sie ein "objektorientiertes" Programm ("CuB_05_1") für das Sammeln der Körner. Aufgabenbeschreibung:
MehrSeminar Künstliche Intelligenz Wintersemester 2013/14
Seminar Künstliche Intelligenz Wintersemester 2013/14 Martin Hacker Richard Schaller Künstliche Intelligenz Department Informatik FAU Erlangen-Nürnberg 31.10.2013 2 / 13 Überblick Teilgebiete der KI Problemlösen,
MehrUML / Fujaba. Generierung von Java-Quellcode aus UML-Diagrammen. Marcel Friedrich
UML / Fujaba Generierung von Java-Quellcode aus UML-Diagrammen Marcel Friedrich Agenda Einleitung Struktur Verhalten Klassendiagramme Storydiagramme Statecharts Action methods 2 Thema Codegenerierung mit
MehrWissensbasierte Systeme
WBS4 Slide 1 Wissensbasierte Systeme Vorlesung 4 vom 03.11.2004 Sebastian Iwanowski FH Wedel WBS4 Slide 2 Wissensbasierte Systeme 1. Motivation 2. Prinzipien und Anwendungen 3. Logische Grundlagen 4. Suchstrategien
MehrUninformierte Suche in Java Informierte Suchverfahren
Uninformierte Suche in Java Informierte Suchverfahren Stephan Schwiebert WS 2009/2010 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Suchprobleme bestehen aus Zuständen
Mehr1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie
Gliederung 1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie 4/3, Folie 1 2010 Prof. Steffen Lange - HDa/FbI
MehrGrundlagen der Programmierung
Grundlagen der Programmierung Dr. Tom Kamphans 1. Vorlesung 12.10.2016 1 Organisatorisches Vorlesung: Mittwochs 14:00 15:30, Raum F 201 Übung: Mittwochs 15:45 19:00, Raum F 225 Übung: alle zwei Wochen
MehrKapitel 1: Die ersten Schritte Thema: Programmieren Seite: 1
Kapitel 1: Die ersten Schritte Thema: Programmieren Seite: 1 Kapitel 1: Die ersten Schritte mit Greenfoot 1 Starten Sie Greenfoot. (Wenn Sie Greenfoot das erste Mal öffnen, erscheint ein Dialogfenster,
MehrKapitel 3: Problemformulierungen in der KI. oder das Problem ist die halbe Lösung
Kapitel 3: Problemformulierungen in der KI oder das Problem ist die halbe Lösung Lernziele: eine Struktur für die Definition eines problemlösenden Agenten kennen die wichtige Rolle von Abstraktionen in
MehrABITURPRÜFUNG 2009 LEISTUNGSFACH INFORMATIK
ABITURPRÜFUNG 2009 LEISTUNGSFACH INFORMATIK (HAUPTTERMIN) Bearbeitungszeit: 270 Minuten Hilfsmittel: Wörterbuch zur deutschen Rechtschreibung Taschenrechner (nicht programmierbar, nicht grafikfähig) (Schüler,
MehrWissensbasierte Systeme
WBS5 Slide 1 Wissensbasierte Systeme Vorlesung 5 vom 17.11.2004 Sebastian Iwanowski FH Wedel WBS5 Slide 2 Wissensbasierte Systeme 1. Motivation 2. Prinzipien und Anwendungen 3. Logische Grundlagen 4. Suchstrategien
MehrSozialwissenschaftliche Modelle und Daten SoSe 2010
Sozialwissenschaftliche Modelle und Daten SoSe 2010 LS Sozialwissenschaftliche Methodenlehre und Sozialstatistik C. Dudel C. Dudel Sozialwissenschaftliche Modelle und Daten SoSe 2010 1 23 1 Formalia 2
MehrEinführung in die Informatik Turing Machines
Einführung in die Informatik Turing Machines Eine abstrakte Maschine zur Präzisierung des Algorithmenbegriffs Wolfram Burgard Cyrill Stachniss 1/14 Motivation und Einleitung Bisher haben wir verschiedene
MehrOrganisatorisches. drei Gruppen Gruppe 1: 10:10-11:40, Gruppe 2: 11:45-13:15 Gruppe 3: 13:20-14:50
Organisatorisches Vorlesung Donnerstag 8:35 bis 10:05 Übung drei Gruppen Gruppe 1: 10:10-11:40, Gruppe 2: 11:45-13:15 Gruppe 3: 13:20-14:50 Tutorium (Mehr oder weniger) abwechselnd Mo und Mi 10-11:30 Termine
MehrCounting - Sort [ [ ] [ [ ] 1. SS 2008 Datenstrukturen und Algorithmen Sortieren in linearer Zeit
Counting-Sort Counting - Sort ( A,B,k ). for i to k. do C[ i]. for j to length[ A]. do C[ A[ j ] C[ A[ j ] +. > C[ i] enthält Anzahl der Elemente in 6. for i to k. do C[ i] C[ i] + C[ i ]. > C[ i] enthält
MehrUML 2 glasklar Praxiswissen für die UML-Modellierung
Chris Rupp, Stefan Queins, Barbara Zengler UML 2 glasklar Praxiswissen für die UML-Modellierung ISBN-10: 3-446-41118-6 ISBN-13: 978-3-446-41118-0 Inhaltsverzeichnis Weitere Informationen oder Bestellungen
MehrLinguistische Informatik
Linguistische Informatik Gerhard Heyer Universität Leipzig heyer@informatik.uni-leipzig.de Institut für Informatik Allgemeines Schema Definition: Darstellung von Bedeutung durch eine Bedeutungs- Repräsentationssprache
MehrAlgorithmen und Datenstrukturen (für ET/IT) Wiederholung: Ziele der Vorlesung. Wintersemester 2012/13. Dr. Tobias Lasser
Algorithmen und Datenstrukturen (für ET/IT) Wintersemester 2012/13 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München Wiederholung: Ziele der Vorlesung Wissen: Algorithmische
Mehr1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie
Gliederung 1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie 4/2, Folie 1 2014 Prof. Steffen Lange - HDa/FbI
MehrKlausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:
Seite 1 von 8 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 15 Pkt.) Für eine
MehrGrundlagen der KI + Reasoning Agents
Grundlagen der KI + Reasoning Agents Prof. Thielscher Welche heuristischen Suchverfahren gibt es? Erläutern Sie A* am Beispiel. Aufbau und Schlussfolgerungen von Bayesschen Netzen. Thielscher drängt auf
Mehr1. Referenzdatentypen: Felder und Strings. Referenz- vs. einfache Datentypen. Rückblick: Einfache Datentypen (1) 4711 r
1. Felder und Strings Eigenschaften von Referenzdatentypen 1. Referenzdatentypen: Felder und Strings Referenzdatentypen sind Konstrukte, mit deren Hilfe wir aus einfachen Datentypen neue eigene Typen erzeugen
MehrHamstern mit BlueJ. Dr. Dietrich Boles. Universität Oldenburg 01.02.2006
Hamstern mit BlueJ Dr. Dietrich Boles Universität Oldenburg 01.02.2006 1. Einleitung Ziel dieses Artikels ist die Beschreibung der Integration von BlueJ und dem Java- Hamster-Modell, zwei existierenden
MehrSTRIPS. Hauptseminar: Kognitive Systeme. Stefanie Sieber Norbert Wächtler
STRIPS Hauptseminar: Kognitive Systeme Stefanie Sieber Norbert Wächtler Was ist STRIPS? STanford Research Institute Problem Solver Formalismus zur Beschreibung von Planungsproblemen Kernidee: Weltzustand
MehrWerkzeuge zur Programmentwicklung
Werkzeuge zur Programmentwicklung B-15 Bibliothek Modulschnittstellen vorübersetzte Module Eingabe Editor Übersetzer (Compiler) Binder (Linker) Rechner mit Systemsoftware Quellmodul (Source) Zielmodul
Mehr9. Heuristische Suche
9. Heuristische Suche Prof. Dr. Rudolf Kruse University of Magdeburg Faculty of Computer Science Magdeburg, Germany rudolf.kruse@cs.uni-magdeburg.de S Heuristische Suche Idee: Wir nutzen eine (heuristische)
Mehr5 Das Projekt Apfelwein
Kapitel 5 Zustandsorientierte Modellierung (Teil 1) Seite 1 5 Das Projekt Apfelwein Bemerkung: In der 10. Jahrgangsstufe (G8) werden die Schüler in die zustandsorientierte Programmierung eingeführt. Dies
MehrBacktracking mit Heuristiken
Backtracking mit Heuristiken Thomas Dübendorfer thomas@duebendorfer.ch 14. September 2000 Inhalt und Ablauf 1. Einführendes Beispiel (4 min) 2. Konzepte zu Backtracking (8 min) 3. Eingesperrt im Labyrinth
MehrEinführung in die Informatik Algorithms
Einführung in die Informatik Algorithms Vom Problem zum Algorithmus und zum Programm Wolfram Burgard Cyrill Stachniss 1.1 Motivation und Einleitung In der Informatik sucht man im Normalfall nach Verfahren
Mehr8. Uninformierte Suche
8. Uninformierte Suche Prof. Dr. Ruolf Kruse University of Mageurg Faculty of Computer Science Mageurg, Germany ruolf.kruse@cs.uni-mageurg.e S otationen () otationen: Graph Vorgänger (ancestor) von Knoten
MehrC++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22
C++ Teil 2 Sven Groß IGPM, RWTH Aachen 16. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 2 16. Apr 2015 1 / 22 Themen der letzten Vorlesung Hallo Welt Elementare Datentypen Ein-/Ausgabe Operatoren Sven
MehrPrädikatenlogik in der Praxis. Richard Cubek (Teil der Master Thesis, 2011)
Richard Cubek (Teil der Master Thesis, 2011 Übersicht Symbolische Repräsentationen in der KI Planning Domain Definition Language (PDDL Anwendungsbeispiel aus der Servicerobotik Symbolische Repräsentationen
MehrWissensmanagement WS 2010/2011
Wissensmanagement Sibylle Schwarz Westsächsische Hochschule Zwickau Dr. Friedrichs-Ring 2a, RII 263 http://wwwstud.fh-zwickau.de/~sibsc/ sibylle.schwarz@fh-zwickau.de WS 2010/2011 Motivation Wie wird Wissen
Mehr1. LPC - Lehmanns Programmier Contest - Lehmanns Logo
Aufgabe ist die Entwicklung einer vereinfachten Variante der beliebten Programmiersprache Logo. Die Aufgabe ist in drei Stufen zu erledigen, von der wir zunächst nur die erste Stufe bekannt geben. Die
MehrTeamprojekt: Programmierung verteilter eingebetteter Systeme
Stephan Friedrichs, Henning Günther, Sven Hesse, Oliver Mielentz, Christoph Peltz, Martin Wegner 8. Februar 2008 Inhaltsverzeichnis 1 Ziele 3 1.1 Beschreibung...............................................
Mehr4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.
Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel
MehrEinführung Grundbegriffe
Einführung Grundbegriffe 1.1 Der Modellbegriff Broy: Informatik 1, Springer 1998 (2) Die Modellbildung der Informatik zielt auf die Darstellung der unter dem Gesichtspunkt einer gegebenen Aufgabenstellung
MehrInformatik I Übung, Woche 41
Giuseppe Accaputo 8. Oktober, 2015 Plan für heute 1. Fragen & Nachbesprechung Übung 3 2. Zusammenfassung der bisherigen Vorlesungsslides 3. Tipps zur Übung 4 Informatik 1 (D-BAUG) Giuseppe Accaputo 2 Nachbesprechung
MehrInhalt. Einleitung Liebe Leserin, lieber Leser, Wer dieses Buch aus welchem Grund lesen sollte Ihre Meinung ist uns sehr wichtig.
Inhalt Vorwort Einleitung Liebe Leserin, lieber Leser, Wer dieses Buch aus welchem Grund lesen sollte Ihre Meinung ist uns sehr wichtig Danksagungen Die Autoren XIII XV XV XVII XVIII XVIII XIX Teil I:
MehrProbeklausur: Programmierung WS04/05
Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,
Mehr13 OOP MIT DELPHI. Records und Klassen Ein Vergleich
13 OOP MIT DELPHI Delphi war früher "Object Pascal". Dieser Name impliziert eine Funktionalität, welche in der Welt der Programmierung nicht mehr wegzudenken ist: die objektorientierte Programmierung,
MehrInstitut für Programmierung und Reaktive Systeme 27. Mai Programmieren II. 12. Übungsblatt
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 27. Mai 206 Programmieren II 2. Übungsblatt Hinweis: Auf diesem und den folgenden Übungsblättern
MehrAufgaben. Objektorientierte Programmierung
Aufgaben Objektorientierte Programmierung 1. Baue in die Klasse Wombat eine Methode turnright() ein, damit sich der Wombat auch im Uhrzeigersinn drehen kann 2. Notiere alle Befehle (Stift und Blatt Papier
MehrGrundlegende Programmierkonzepte: Anweisungen und Methoden
Grundlegende Programmierkonzepte: Anweisungen und Methoden Einleitung: Eigene Befehle definieren Kara steht vor einem Baum, der alleine in der Welt steht. Hinter dem Baum hat es ein Kleeblatt, das Kara
MehrProseminar: Geschichte des Computers Schachprogrammierung Die Digitale Revolution
Die Digitale Revolution Internet 3D-Drucker Quants Singularität 27.02.14 Johannes Polster Das Spiel der Könige Sehr altes Spiel: Entstehung vor 1500 Jahren Weltberühmt Strategisches Spiel Kein Glück, Intelligenz,
MehrVBA-Programmierung: Zusammenfassung
VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung
MehrTechnische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen
Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen 186.172 Algorithmen und Datenstrukturen 1 VL 4.0 Übungsblatt 4 für die Übung
Mehr2. Spiele. Arten von Spielen. Kombinatorik. Spieler haben festgelegte Handlungsmöglichkeiten, die durch die Spielregeln definiert werden.
. Spiele Arten von Spielen. Spiele. Spiele Arten von Spielen Kombinatorik Spieler haben festgelegte Handlungsmöglichkeiten, die durch die Spielregeln definiert werden. Kombinatorische Spiele als Suchproblem
MehrPraktische Informatik I
Praktische Informatik I WS 2005/2005 Prof. Dr. Wolfgang Effelsberg Lehrstuhl für Praktische Informatik IV Universität Mannheim 1. Einführung 1-1 Inhaltsverzeichnis (1) 1. Einführung 1.1 Was ist Informatik?
MehrZwischenbericht Projektarbeit
LMU München / LFE Medieninformatik Bearbeiter: Sven Siorpaes Bearbeitungsbeginn: 18.05.2004 Betreuer: Dipl.-Inf. Enrico Rukzio Verantwortlicher Hochschullehrer: Prof. H. Hußmann 24.09.04 Zwischenbericht
MehrÜbung Datenstrukturen. Objektorientierung in C++
Übung Datenstrukturen Objektorientierung in C++ Aufgabe 1a - Farben Schreiben Sie eine Klasse COLOR zur Beschreibung von Farben. Eine Farbe werde hierbei additiv durch ihren Rot-, Grün- und Blauanteil
MehrEinführung in die Programmierung mit VBA
Einführung in die Programmierung mit VBA Vorlesung vom 07. November 2016 Birger Krägelin Inhalt Vom Algorithmus zum Programm Programmiersprachen Programmieren mit VBA in Excel Datentypen und Variablen
MehrAutomatisierungstechnik im
Automatisierungstechnik im Technikunterricht Anwendung der didaktischen Reduktion in unterschiedlichen Bildungskonteten Universität Duisburg Essen Universitätsstraße 15 45141 Essen Phone: 0201/1832633
MehrModul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 1
Fakultät Verkehrswissenschaften Friedrich List, Professur für Verkehrsbetriebslehre und Logistik Modul Entscheidungsunterstützung in der Logistik Einführung in die Programmierung mit C++ Übung 1 SS 2016
MehrBrainfuck. 1 Brainfuck. 1.1 Brainfuck Geschichte und Umfeld. 1.2 Esoterische Programmiersprachen
Brainfuck 1 Brainfuck 1.1 Brainfuck Geschichte und Umfeld Brainfuck ist eine sogenannte esoterische Programmiersprache. Sie wurde 1993 vom Schweizer Urban Müller entworfen mit dem Ziel, eine Sprache mit
MehrEinführung in die Programmierung 1
Einführung in die Programmierung 1 Einführung (S.2) Einrichten von Eclipse (S.4) Mein Erstes Programm (S.5) Hallo Welt!? Programm Der Mensch (S.11) Klassen (S.12) Einführung Wie Funktioniert Code? Geschriebener
Mehr3 Programmierung von Robotern
3 Programmierung von Robotern 3.1 Arten der Programmierung Arten Programmierung durch Beispiele Programmierung durch Training roboterorientierte Programmierung aufgabenorientierte Programmierung 3.1.1
MehrSeminar: Denken und Problemlösen Dozent: Prof. Dr. Joachim Funke. Referent: Philip Furley
Seminar: Denken und Problemlösen Dozent: Prof. Dr. Joachim Funke Referent: Philip Furley Gliederung Einleitung Ziel: Gemeinsamkeiten und Unterschiede der Sichtweisen der Künstlichen Intelligenz und der
MehrTheorie zu Übung 8 Implementierung in Java
Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Theorie zu Übung 8 Implementierung in Java Klasse in Java Die Klasse wird durch das class-konzept
MehrWarum Programme Verträge schließen sollten
1 Warum Programme Verträge schließen sollten RALF HINZE Institut für Informatik, Lehrstuhl Softwaretechnik, Universität Freiburg Georges-Köhler-Allee, Gebäude 079, 79110 Freiburg i. Br. Email: ralf@informatik.uni-bonn.de
Mehr3. Die Programmiersprache Java
3. Die Programmiersprache Java 3.1 Arbeiten mit BlueJ 3.2 Objekte und Klassen 3.3 Klassen und Unterklassen 3.4 Daten und Operationen 3.5 Ausdrücke 3.6 Algorithmische Kernsprache 3.7 Sprachbeschreibung
Mehr2. Spielbäume und Intelligente Spiele
2. Spielbäume und Intelligente Spiele Arten von Spielen 2. Spielbäume und Intelligente Spiele Kombinatorische Spiele als Suchproblem Wie berechnet man eine gute Entscheidung? Effizienzverbesserung durch
MehrPflichtenheft. AI-Soccer Frontend 2004/2005
Pflichtenheft AI-Soccer Frontend 2004/2005 Teilnehmer : Hanno Hugenberg Jens Henneberg Mathias Otto Betreuer: Prof. Maic Masuch Jan Fritz 1 Inhalt : 1. Aufgabenstellung 3 2. Lösungsansatz 3 3. Aufbau des
Mehr