Action: CheckOut(b,t) "Check out book b from the library at time t" Preconditions: Now(t), TimeAfter(t,n), LibraryOpen(t) Add: HaveBook(b), Now(n) Delete: Now(t) Action: Read(b, t) "Read book b at time t" Preconditions: HaveBook(b), Now(t), TimeAfter(t,n), HomeworkDone(c) Add: BookRead(b), Now(n) Delete: Now(t) Action: DoHomework(c,t) "Do homework for class c at time t" Preconditions: Now(t), TimeAfter(t,n), Assigned(c) Add: HomeworkDone(c), Now(n) Delete: Now(t)
Where the state predicates are interpretted as follows:
Now(t) "The time is now t" TimeAfter(t,n) "The next time after t is n" LibraryOpen(t) "The library is open at time t" HaveBook(b) "You have book b" Assigned(c) "Homework was assigned for class c" HomeworkDone(c) "Homework for class c is done" BookRead(b) "Book b was read"
Consider the initial state:
Now(7:30PM) TimeAfter(7:30PM, 8:30PM) TimeAfter(8:30PM, 9:30PM) TimeAfter(9:30PM, 10:30PM) LibraryOpen(7:30PM) Assigned("CS343")
And the conjunctive goal (given in this order):
BookRead("One Hundred Years of Solitude") & HomeworkDone("CS343")
a) Show a detailed, nested trace of subgoals and actions (like that given on pages 19-22 of the lecture notes on planning) resulting when STRIPS is used to solve this problem. Assume that different instantiations of an action (i.e. different ways of binding its variables) that are capable of achieving a goal (such as different times of preforming an action) are considered as alternative actions for achieving the goal. Assume that when there are multiple action instantiations for achieving a goal, that STRIPS first considers the action instantiation with the least number of currently unsatisfied preconditions. Finally, clearly show the final plan constructed and all the facts that are true in each state of the world after each action is executed.
b) Would STRIPS be able to solve this problem if the order of the goals
were reversed? Would it get an optimal solution, a suboptimal solution, or no
solution at all? Briefly explain exactly what would happen in this case.
|P(`people' | m)||0.001||0.1||0.1|
|P(`program' | m)||0.1||0.01||0.001|
|P(`student' | m)||0.01||0.2||0.01|
|P(`education' | m)||0.005||0.05||0.05|
Consider using a naive Bayesian framework in which we assume the probability of
each evidence word is independent given the meaning of the target ambiguous
word. Assume the generative model illustrated on slide 15 of the packet on
"Probabilistic Reasoning and Naive Bayes," where each word is treated as a
binary feature (not the text categorization model illustrated in slide
29). Compute the posterior probability for each of the possible
meanings of ``class'' for the following case:
P(m | not `people', `program', `student', not `education') (e.g. ``Did the student complete the homework program for the class?'')
b) Compute the full joint probability table for this Bayesian network.
Please model your table after the following template: