Frage zum ersten Uebungsblatt

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

Frage zum ersten Uebungsblatt
Was soll denn ein Internet book-shop agent sein?


Ich gehe einmal davon aus, dass damit ein Agent gemeint ist, der in Internetshops für Bücher die billigsten Preise u.ä. raussucht.
Ich kann dir aber nicht sicher sagen, ob das wirklich so gemeint ist.
Im Zweifel einfach ein bis zwei Sätze dazuschreiben ala „Ich gehe davon aus, dass ein Internetshop Agent XYZ ist“, dann sollte dir das keiner „als komplett falsch“ anstreichen (so zumindest mein Gefühl, Angaben ohne Gewehr). Solange du damit nicht total an der Aufgabe vorbeischießt, denke ich lässt jeder Korrektor mit sich reden. :smiley: Wir sind ja alle nur Menschen und jedem ist bewusst, dass komplett „neue“ Übungsblätter ohne wirkliche „vorherige Erfahrung“ halt immer gewissermaßen schwammig/problematisch/anders sind.

Ich hoffe Dennis stimmt mir da soweit zu und ist da nicht total anderer Meinung.

Edit:
Aber nicht, dass jetzt jeder auf die Idee kommt sich die wildesten Interpretationen für die Aufgaben auszudenken! :smiley:

1 „Gefällt mir“

What Shadow992 said.

Das erste Blatt sind ja eh eher Schwurbelaufgaben mit nicht 100% richtigen/falschen Antworten, also… joa. Solang halbwegs plausibel passt das (bevorzugt mit Begründung)


(Ups, im falschen thread gepostet)

Update: Ich hab mal Prof. Kohlhase gefragt; was er sich vorgestellt hatte war offenbar etwas in der Art: ein Agent, der für Buchhandlungen (abhängig von Nachfrage etc.) Bücher im Internet bestellt und damit Bestand aufstockt.

Ich werd das demnächst auf dem Übungsblatt korrigieren (wenn studOn mich das tun lässt); für die die’s nicht mitkriegen/mitgekriegt haben ist das dann auch nicht so schlimm; insofern widerspricht das den vorherigen Antworten nicht direkt :wink:

Aufgabe 2
hi,
und wie sollen die “agent programs” aussehen, die wir für Aufgabe 2 vorschlagen sollen?

“Agent programs implement (some) agent functions” (siehe Summary im Skript) - soll man da was konkret implementieren? Oder Pseudocodeartig?

Danke schon mal!


Sprache ist prinzipiell offen. Fürs erste Blatt eignet sich Pseudo-Code aber wohl am besten. Später werden wir vielleicht auch anbieten Code in richtigen Programmiersprachen abgeben zu können, aber das steht noch in den Sternen.

Fürs erste ist Pseudocode also der Weg, den ihr gehen solltet.

1 „Gefällt mir“

Ich hätte da auch nochmal ne Frage zur 1.2
Wie oben schon erwähnt soll ein Agent program ja agent functions implementieren. Heißt das jetzt für das Beispiel 1.2.1, dass man das Verhalten des Sensors und der Saugeinheit simulieren soll oder dass das die Bedingungen sind unter denen das agent program laufen soll?


Wenn ich die frage richtig verstehe letzteres; ihr sollt ja nur das agent program angeben (gerne in pseudocode); nicht die environment/architecture auch noch. Die aufgabe ließe sich also möglicherweise umformulieren in: „Gegeben die variationen auf dem übungsblatt; wie ließe sich das agent program aus der vorlesung verbessern?“

1 „Gefällt mir“

Welches Vorlesungsbeispiel ist da genau gemeint?

Mir ist aufgefallen, dass sich der Foliensatz und das Skript in ihrem Inhalt etwas unterscheiden, daher bin ich mir jetzt unsicher.


Vielleicht wird es etwas klarer, wenn man das noch einmal in etwas andere Worte packt:

Stell dir vor du hast eine derartige Staubsaugermachine daheim rumstehen und kannst sie programmieren. Die Standardprogrammierung (wie auch in der Vorlesung vorgestellt) ist:

1. Wenn aktueller Raum dreckig, dann sauge dort
2. Wenn Raum A sauber, gehe zu Raum B
3. Wenn Raum B sauber, gehe zu Raum A

Diese Programmierung klappt für einen 100% funktionierenden Roboter natürlich einwandfrei. Wir haben jetzt aber einen billig China-Roboter bekommen und wollen den trotzdem programmieren. :smiley:
Die Aufgabe 1.2.1 ist jetzt so zu verstehen:
Der Roboter kann zwar weiterhin saugen und sich bewegen, aber zusätzlich besitzt er dir Wahrscheinlichkeit von 1/4 den Raum nicht sauber zu machen und stattdessen Dreck „hin zu werfen“. Außerdem liefert der Sensor für die Dreckerfassung in 10% das falsche Ergebnis. Alles in allem also ein ziemlicher Schrottroboter. :smiley:

Gegeben diese Ausgangssituation, ist jetzt die Frage: „Wie kann man das vorgestellte Programm verbessern bzw. eignet sich ein komplett anderes programm vielleicht noch besser?“
Mehr ist es tatsächlich nicht, also bitte nicht zu kompliziert denken.

Edit:
Ich weiß nicht, ob das explizit gefordert wird, aber zumindest die Korrektoren freuen sich über Begründungen, warum das von euch entwickelte Programm besser funktionieren sollte als das bestehende. Damit vermeidet ihr Missverständnisse und prüft noch einmal logisch ab, ob der Code wirklich besser ist.

1 „Gefällt mir“

Mmmh, ich hab das als zwei getrennte Teilaufgaben verstanden - hab aber auch schon Abgaben bekommen, die das scheinbar auch als „beides gleichzeitig“ verstanden haben. Das lässt mich denken, dass die Aufgabenstellung hinreichend ungenau war um beides gelten zu lassen, aber ich tendiere nach wie vor zu zwei teilaufgaben :wink: (ignore!)

1 „Gefällt mir“

Zwei Aufgaben erleichtert das ganze natürlich. Man kann es aber schon relativ einfach falsch verstehen, weil beides unter 1.2.1 zusammengefasst wurde und eins weiter unten für eine neue bedingung, eine neue Aufgabe gemacht wurde. (ebenfalls irrelevant)

Ich denke beides als richtig anzusehen, ist das Beste. :smiley:


AAAAAAAAAAAHHH, sorrrrrry, vergiss was ich geschrieben hab; ich hab das “And the dirt sensor is wrong in one out of ten cases.” mit den 10% aus 1.2.2 verwechselt 0o
Nevermind ^^

1 „Gefällt mir“

Es soll aber immer noch ein Reflex-Agent sein oder? Dann sind ja interne “Berechnungen” und “Zustände” verboten?
Oder kann der Roboter erkennen, wenn sein Sensor kaputt ist? (Wüsste sonst nicht, wie man etwas verbessern sollte) :smiley:


Jupp… (also, muss natürlich nicht, aber… alles andere scheint unsinnig)

Weder noch (siehe slide 84ff „Reflex agents with state“) :wink:

Nee, der Sensor ist ja nicht kaputt, er ist nur nicht perfekt :wink:

Düüdidüüü… dazu sag ich lieber nix :stuck_out_tongue:


Am Ende der Aufgabenstellung von 1.1 heißt es noch

Worauf bezieht sich das? Sollen wir noch einen Agenttypen für die 5 Beispiele beschreiben?


Joa, ein begründeter typ reicht, also sowas wie "simple reflex agent reicht, weil… " oder „nachdem die environment xy ist braucht er mindestens state“ oder „entscheidung x hängt ab von vorherigen percepts; ein reflex agent ist also unzureichend“ oder so…