CS422 Spring 2005
Assignment 4
Due: 2:00pm, Tuesday 15 March 2005.
The aim of this assignment is to learn more about representing
knowledge and about inference in belief networks.
Please read and post to the bulletin in the course WebCT site for
hints and questions. Note that this assignment is designed to get you
to think and learn, not to test your pre-existing knowledge (or that
you have absorbed what has been covered in class). You will only learn
this stuff by trying it out. Please make sure you start this
assignment early!
Suppose we want to diagnose school student's addition of
multi-digit binary numbers. Suppose we are only considering
adding two two-digit numbers to form a three digit number.
That is, problems of the form:
Here Ai, Bi and Ci are all binary digits.
- Suppose we want to model whether the student knows binary
addition and whether they know how to carry. If they know how, they
usually get the right answer, but sometimes make mistakes. If they
don't know how to do either task, they just guess.
What variables are needed to model binary addition and
the errors students could make? You need to specify, in words, what each of the variables represents. Give a DAG that specifies the
dependence of these variables.
- What are reasonable conditional probabilities for this domain?
- Implement this, for example using the belief network tool at:
http://www.cs.ubc.ca/labs/lci/CIspace/.
Test the implementation (don't forget to save your graph).
You need to give the graph, explain what each variable means,
give the probability tables, and show how it works on a number of examples.
Consider the belief network:
with Boolean variables (we will write A=true as a and A=false as
¬a) and the following conditional probabilities:
P(a) | = | 0.9 |
P(b) | = | 0.2 |
P(c|a,b) | = | 0.1 |
P(c|a,¬b) | = | 0.8 |
P(c|¬a,b) | = | 0.7 |
P(c|¬a,¬b) | = | 0.4
|
P(d| b) | = | 0.1 |
P(d|¬b) | = | 0.8 |
P(e|c) | = | 0.7 |
P(e|¬c) | = | 0.2 |
P(f|c) | = | 0.2 |
P(f|¬c) | = | 0.9
|
- Compute P(e) using variable elimination. Show the factors that
are created for a given elimination ordering. Please try to do it
by hand, then check it with the CIspace applet.
- Compute P(e|¬f) using variable elimination. How much of
the previous computation can be reused? (You only need to show the
factors that are different from those in part (a).
Please attach this page to your assignment. This will be used to improve the course and the course materials (including the applet).
- Did you use the CIspace applet in this assignment?
- Did you use any other tools? (If so, what?)
- How did you learn to use the applet? (check all that apply)
- By watching the demonstrations in class.
- By looking through the CIspace help pages.
- By watching the video tutorials online.
- By asking others.
- By exploring the applet on your own.
- Other (please specify)
- How do you typically like to learn or feel you learn best (select all that apply):
- By reading textbooks or other text-based materials
- By studying visual or graphical material
- By studying worked out sample problems
- By watching problems being worked out/demonstrated in class
- By solving problems on your own
- Did the applet help make the concepts covered in class more clear?
- On a scale of 1 to 5, how easy was the applet to use? (1=very difficult, 5=very easy):
- On a scale of 1 to 5, how useful was the applet? (1=not at all useful, 5=very useful):
- On a scale of 1 to 5, how enjoyable was the applet? (1=not at all enjoyable, 5=very enjoyable):
- For each question in this assignment, say how long you spent on it.
Was this
reasonable?
- Question 1:
- Question 2:
- Question 3:
- Do you have any other comments about the assignment?
- What would you most like to see improved in the applet?
David Poole