• Keine Ergebnisse gefunden

Foundations of Artificial Intelligence

N/A
N/A
Protected

Academic year: 2022

Aktie "Foundations of Artificial Intelligence"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Foundations of Artificial Intelligence

M. Helmert S. Eriksson Spring Term 2021

University of Basel Computer Science

Exercise Sheet 3

Due: March 24, 2021 Exercise 3.1(1+1+1 marks)

Show that nontrivial state spaces with the following properties exist by providing a corresponding state space and explaining why it satisfies the required property. Your state space must have at least 5 nodes reachable from the initial state and all solutions must have at least length 2.

Note: You can omit action names and instead directly use action costs as labels in the graph.

(a) Tree search and graph search expand the same amount of nodes (when using the same expansion strategy).

(b) Breadth-first search expands|S| −1 nodes.

(c) Breadth-first search finds a suboptimal solution.

Exercise 3.2(1+1 marks)

Consider a breadth-first search in the following state space:

sI

s1a

s1b

s2a

s2b

. . .

sna

snb

sg

(a) How many search nodes are at least inserted into the open list until the agent finds a plan if duplicate detection is not used? Give an answer as a function of nand justify your answer.

(b) How does that answer differ if duplicate detection is used?

Exercise 3.3(4+1 marks)

The task in this exercise is to write a software program. We expect you to implement your code on your own, without using existing code (such as examples you find online) except for what is provided by us. If you encounter technical problems or have difficulties understanding the task, please let us – the tutor or assistant – knowsufficiently ahead of the due date.

The archive required for this exercise will be uploaded to the course website and to the ADAM instruction files only on Thursday morning, since it contains the solution to Exercise 2.4.

(a) Implementuniform cost search. Only create a single new file calledUniformCostSearch.java.

The new classUniformCostSearchmust derive fromSearchAlgorithmBase. Make sure that the value of the member variableexpandedNodesis updated correctly. A possible implemen- tation of the open list (yet certainly not the only one) is to use ajava.util.PriorityQueue and one possibility for the closed list is to use ajava.util.HashSet.

Important: Do not implement breadth-first search, even though all actions in the Pancake problem have equal cost. Your algorithm should produce optimal solutions for any black-box state space, which means it cannot know whether all actions have the same cost.

(2)

(b) Test your implementation on the example problem instances you can find on the website. Set a time limit of 10 minutes and a memory limit of 2 GB for each run. On Linux, you can set a time limit of 10 minutes with the commandulimit -t 600. Running your implementation on the first example instance with

java -Xmx2048M UniformCostSearch pancakes instances/pancakes_prob_01

sets the memory limit to 2 GB. If the RAM of your computer is 2GB or less, set the memory limit to the amount of available RAM minus 256 MB instead. In any case, describe in your solution how much RAM was used.

Report runtime, number of node expansions, solution length and solution cost for all in- stances that can be solved within the given time and memory limits. For all other instances, report if the time or the memory limit was violated.

Submission rules:

• Create a single PDF file (ending .pdf) for all non-programming exercises. If you want to submit handwritten parts, include their scans in the single PDF. Put the names of all group members on top of the first page. Use page numbers or put your names on each page. Make sure your PDF has size A4 (fits the page size if printed on A4).

• For programming exercises, create only those Java textfiles (ending .java) required by the exercise. Put your names in a comment on top of each file. Make sure your code compiles and test it!

• For the submission, you can either upload the single PDF or prepare a ZIP file (ending .zip, .tar.gz or .tgz; not .rar or anything else) containing the single PDF and the Java textfile(s) and nothing else. Please do not use directories within the ZIP, i.e., zip the files directly.

Referenzen

ÄHNLICHE DOKUMENTE

Provide a worst-case runtime estimate of the algorithm based on cutset conditioning if your cutset from the first part of this exercise is used (i.e., compute an upper bound for

Perfom DPLL on the clause set {{A, ¬B}, {¬A, B}, {B, ¬D}, {C}, {¬C, ¬B, ¬D}, {C, D}}, always picking the variable occuring in the highest number of clauses and always considering

In cases where the precondition choice function is not deterministic, choose the precondition in alphabetical order.. Exercise 11.3

– one line for each table position: maximum number of blocks in the tower at this table position, followed by the IDs of the blocks in the initial state, starting from the surface

Successor nodes are generated by applying the following actions in order, ignoring the ones that are inapplicable in a given state: transport 2 missionaries, transport 1

(c) Test your implementation by verifying the statements on Slide 23 of Chapter 20 (print version), which state that hill climbing with a random initialization finds a solution

Provide a worst-case runtime estimate of the algorithm based on cutset conditioning if your cutset from the first part of this exercise is used (i.e., compute an upper bound for

The domain description (variables and actions) is given in the file bridges-once-domain.pddl, and the problem description (objects, initial state and goal description) is given in