extended shizzle uitgebreid
[ker2014-2.git] / report / ass2-1.tex
1 \chapter{Probabilistic representation and reasoning (and burglars)}
2 \section{Formal description}
3 In our representation of the model we introduced a \textit{Noisy OR} to
4 represent the causal independence of \textit{Burglar} and \textit{Earthquake}
5 on \textit{Alarm}. The representation of the network is displayed in
6 Figure~\ref{bnetwork21}
7
8 \begin{figure}[H]
9 \caption{Bayesian network alarmsystem}
10 \label{bnetwork21}
11 \centering
12 \includegraphics[scale=0.5]{d1.eps}
13 \end{figure}
14
15 Days were chosen as unit to model the story. Calculation of the probability of
16 a\textit{Burglar} event happening at some day is then (assuming a gregorian
17 calendar and leap days):
18 $$\frac{1}{365 + 0.25 - 0.01 - 0.0025}=\frac{1}{365.2425}$$
19
20 The resultant probability distributions can be found in Table~\ref{probdist},
21 in order to avoid a unclear graph.
22
23 \begin{table}[H]
24 \label{probdist}
25 \begin{tabular}{|l|l|}
26 \hline
27 & Earthquake\\
28 \hline
29 T & $0.0027$\\
30 F & $0.9973$\\
31 \hline
32 \end{tabular}
33 %
34 \begin{tabular}{|l|l|}
35 \hline
36 & Burglar\\
37 \hline
38 T & $0.0027$\\
39 F & $0.9973$\\
40 \hline
41 \end{tabular}
42
43 \begin{tabular}{|l|ll|}
44 \hline
45 & \multicolumn{2}{c|}{$I_1$}\\
46 Earthquake & T & F\\
47 \hline
48 T & $0.2$ & $0.8$\\
49 F & $0$ & $1$\\
50 \hline
51 \end{tabular}
52 \begin{tabular}{|l|ll|}
53 \hline
54 & \multicolumn{2}{c|}{$I_2$}\\
55 Burglar & T & F\\
56 \hline
57 T & $0.95$ & $0.05$\\
58 F & $0$ & $1$\\
59 \hline
60 \end{tabular}
61 \begin{tabular}{|ll|ll|}
62 \hline
63 && \multicolumn{2}{c|}{Alarm}\\
64 $I_1$ & $I_2$ & T & F\\
65 \hline
66 T & T & $1$ & $0$\\
67 T & F & $1$ & $0$\\
68 F & T & $1$ & $0$\\
69 F & F & $0$ & $1$\\
70 \hline
71 \end{tabular}
72
73 \begin{tabular}{|l|ll|}
74 \hline
75 & \multicolumn{2}{c|}{Watson}\\
76 Alarm & T & F\\
77 \hline
78 T & $0.8$ & $0.2$\\
79 F & $0.4$ & $0.6$\\
80 \hline
81 \end{tabular}
82 \begin{tabular}{|l|ll|}
83 \hline
84 & \multicolumn{2}{c|}{Gibbons}\\
85 Alarm & T & F\\
86 \hline
87 T & $0.99$ & $0.01$\\
88 F & $0.04$ & $0.96$\\
89 \hline
90 \end{tabular}
91 \begin{tabular}{|l|ll|}
92 \hline
93 & \multicolumn{2}{c|}{Radio}\\
94 Earthquake & T & F\\
95 \hline
96 T & $0.9998$ & $0.0002$\\
97 F & $0.0002$ & $0.9998$\\
98 \hline
99 \end{tabular}
100 \end{table}
101
102 \textit{If there is a burglar present (which could happen once every ten
103 years), the alarm is known to go off 95\% of the time.} We modelled this by
104 setting the value for Burglar True and $I_2$ True on 0,95.\\
105 \textit{There’s a 40\% chance that Watson is joking and the alarm is in fact
106 off.} This is modelled by putting the value for Watson True and Alarm F on 0,4.
107 As Holmes expects Watson to call in 80\% of the time, the value for alarm True
108 and Watson True is set 0,2. Because the rows have to sum to 1, the other values
109 are easily calculated.\\
110 \textit{She may not have heard the alarm in 1\% of the cases and is thought to
111 erroneously report an alarm when it is in fact off in 4\% of the cases.} We
112 modelled this by assuming that when Mrs. Gibbons hears the alarm, she calls
113 Holmes. Meaning that the value for Gibbons False and Alarm true is 0,01. As
114 she reports when the alarm is in fact off in 4\% of the cases, the value for
115 Gibbons True and alarm False is 0,04.\\
116
117
118 \section{Implementation}
119 We implemented the distributions in \textit{AILog}, see Listing~\ref{alarm.ail}
120
121 \begin{listing}[H]
122 \label{alarm.ail}
123 \caption{Alarm.ail}
124 \inputminted[linenos,fontsize=\footnotesize]{prolog}{./src/alarm.ail}
125 \end{listing}
126
127 \section{Queries}
128 Now that we have modelled the story with the corresponding probabilities, we
129 can have ailog calculate some other probabilities given a some observations.
130 Down below we wrote down some probabilties and the associated ailog output.\\
131 The chance that a burglary happens given that Watson calls is greater than the
132 chance that a burglary happens without this observations, as is observerd by
133 the difference between a and b. This makes sense as Watson calls rightly in
134 80\% of the time. So when Holmes receives a call by Watson, the chance that the
135 alarm goes of increases.\\
136 When we compare b to c, the same mechanisme holds. There are more observations
137 that give evidence for a burglary as both Watson and Gibbons have called in the
138 case of c.\\
139 When you take a look at the last case, d, you see that the probability has
140 decreased compared to c. This can be explained by an observation that is added
141 on top of the observations of b; the radio. The variable Radio means that the
142 newcast tells that there was an earhquake. As that is also a reason why the
143 alarm could go of, but has nothing to do with a burglary, it decreases the
144 probability of a burglary.
145 %We kunnen misschien de kans uitrekenen dat Watson en Gibbons allebei foutief bellen? Daar mis je denk ik info over of niet?
146 \begin{enumerate}[a)]
147 \item $P(\text{Burglary})=
148 0.002737757092501968$
149 \item $P(\text{Burglary}|\text{Watson called})=
150 0.005321803679438259$
151 \item $P(\text{Burglary}|\text{Watson called},\text{Gibbons called})=
152 0.11180941544755249$
153 \item $P(\text{Burglary}|\text{Watson called},\text{Gibbons called}
154 , \text{Radio})=0.01179672476662423$
155 \end{enumerate}
156
157 \begin{listing}[H]
158 \begin{minted}[fontsize=\footnotesize]{prolog}
159 ailog: predict burglar.
160 Answer: P(burglar|Obs)=0.002737757092501968.
161 [ok,more,explanations,worlds,help]: ok.
162
163 ailog: observe watson.
164 Answer: P(watson|Obs)=0.4012587986186947.
165 [ok,more,explanations,worlds,help]: ok.
166
167 ailog: predict burglar.
168 Answer: P(burglar|Obs)=[0.005321803679438259,0.005321953115441623].
169 [ok,more,explanations,worlds,help]: ok.
170
171 ailog: observe gibbons.
172 Answer: P(gibbons|Obs)=[0.04596053565368094,0.045962328885721306].
173 [ok,more,explanations,worlds,help]: ok.
174
175 ailog: predict burglar.
176 Answer: P(burglar|Obs)=[0.11180941544755249,0.1118516494624678].
177 [ok,more,explanations,worlds,help]: ok.
178
179 ailog: observe radio.
180 Answer: P(radio|Obs)=[0.02582105837443645,0.025915745316785182].
181 [ok,more,explanations,worlds,help]: ok.
182
183 ailog: predict burglar.
184 Answer: P(burglar|Obs)=[0.01179672476662423,0.015584580594335082].
185 [ok,more,explanations,worlds,help]: ok.
186 \end{minted}
187 \end{listing}
188
189 ToDO write down the most probable explanation for the observed evidence
190
191 \section{Comparison with manual calculation}
192 ToDO: english.
193 When we let ailog calculate the probability of alarm. %Wat is Obs hier??
194 Querying the \textit{Alarm} variable gives the following answer:
195 \begin{minted}{prolog}
196 ailog: predict alarm.
197 Answer: P(alarm|Obs)=0.0031469965467367292.
198
199 [ok,more,explanations,worlds,help]: ok.
200 \end{minted}
201
202 Using the formula for causal independence with a logical OR:\\
203 $P(Alarm|C_1, C_2) = P(i_1|C_1)+P(i_2|C_2)(1-P(i_1|C_1))$ we can calculate the
204 probability of the \textit{Alarm} variable using variable elimination. This
205 results in the following answer:\\
206 $P(Alarm|burglar, earthquake) =
207 P(i_1|burglar)+P(i_2|earthquake)(1-P(i_1|burglar)) =
208 0.2*0.0027+0.95*0.0027*(1-0.2*0.0027)=0.00314699654673673$ \\
209 TODOOOOOOOOOOO %Ik weet niet of we i_1 en i_2 nog door iets anders vervangen
210 % moeten worden.
211 When you compare the output of AILog and of the variable elimination, you see
212 that they are exactly the same.
213
214 \newpage
215 \section{Burglary problem with extended information}
216 Extending the story with multiple houses and constraints about who wants to work
217 with who the following AILog representation:
218 \inputminted[linenos,fontsize=\footnotesize]{prolog}{./src/burglary.ail}
219
220 The following demandings on the sets of colleagues, limited the number of
221 possible groups to four:
222
223 \begin{itemize}
224 \item needs(joe, [])
225 \item needs(william, [])
226 \item needs(jack, [joe])
227 \item needs(averall, [jack, william])
228 \end{itemize}
229
230 The only way that those people will burgler, is when those constraints are satisfied and when there are at least two people working. So the only combinations possible are then:
231 \begin{enumerate}
232 \item Joe and Jack
233 \item Joe and William
234 \item Joe, William and Jack
235 \item Joe, William, Jack and Averall.
236 \end{enumerate}
237
238 We implemented the extended story using a three layered model.\\
239 \textit{Each day a burglar decides whether he wants to work or not, and on
240 average this happens only 5 days a week}
241 Meaning that every burglar has the same initial working probability: 5/7 (see the first 5 lines of code).\\
242 Then we implemented the constraints on the colleagues by telling ailog that a burglary can happen when at least one of our combinations is working (see line 8 to 11).\\
243 \textit{Finally, if they decide to burgle, then they will burgle 3 houses a night.} The third layer consists of implementing the change that out of the 10,000 houses in which Joe, William, Jack and Averall are the only burglars, Holmes' house is burgled as one of the three (see line 14 to 19).\\
244 This results in the following probability for a burglary at a Holmes' house.
245
246 $P(burglary)\cdot(
247 P(\text{first house Holmes'})+
248 P(\text{second house Holmes'})+
249 P(\text{third house Holmes'}))=\\
250 0.655976676\cdot\left(
251 \frac{1}{10000}+
252 \frac{9999}{10000}\cdot\frac{1}{9999}+
253 \frac{9999}{10000}\cdot\frac{9998}{9999}\cdot\frac{1}{9998}\right)
254 \approx 0.000196773$
255
256 \section{Bayesian networks}
257 A Bayesian network representation of the burglary problem with a multitude of
258 houses and burglars is possible but would be very big and tedious because all
259 the constraints about the burglars must be incorporated in the network.
260 The network would look something like in figure~\ref{bnnetworkhouses}
261
262 \begin{tabular}{|l|l|}
263 \hline
264 Joe &\\
265 \hline
266 T & $\nicefrac{5}{7}$\\
267 F & $\nicefrac{2}{7}$\\
268 \hline
269 \end{tabular}
270 \begin{tabular}{|l|l|}
271 \hline
272 William &\\
273 \hline
274 T & $\nicefrac{5}{7}$\\
275 F & $\nicefrac{2}{7}$\\
276 \hline
277 \end{tabular}
278 \begin{tabular}{|l|l|}
279 \hline
280 Jack & \\
281 \hline
282 T & $\nicefrac{5}{7}$\\
283 F & $\nicefrac{2}{7}$\\
284 \hline
285 \end{tabular}
286 \begin{tabular}{|l|l|}
287 \hline
288 Averall & \\
289 \hline
290 T & $\nicefrac{5}{7}$\\
291 F & $\nicefrac{2}{7}$\\
292 \hline
293 \end{tabular}
294
295 \begin{tabular}{|llll|ll|}
296 \hline
297 & & & & Burglary &\\
298 Joe & William & Jack & Averall & T & F\\
299 \hline
300 F& F& F& F & $0$ & $1$\\
301 F& F& F& T & $0$ & $1$\\
302 F& F& T& F & $0$ & $1$\\
303 F& F& T& T & $0$ & $1$\\
304 F& T& F& F & $0$ & $1$\\
305 F& T& F& T & $0$ & $1$\\
306 F& T& T& F & $0$ & $1$\\
307 F& T& T& T & $0$ & $1$\\
308 T& F& F& F & $0$ & $1$\\
309 T& F& F& T & $0$ & $1$\\
310 T& F& T& F & $1$ & $0$\\
311 T& F& T& T & $0$ & $1$\\
312 T& T& F& F & $1$ & $0$\\
313 T& T& F& T & $0$ & $1$\\
314 T& T& T& F & $1$ & $0$\\
315 T& T& T& T & $1$ & $0$\\
316 \hline
317 \end{tabular}
318 \begin{tabular}{|lll|}
319 \hline
320 & Holmes &\\
321 Burglary & T & F\\
322 \hline
323 T & $0.000153$ & $0.999847$\\
324 F & $0$ & $1$\\
325 \hline
326 \end{tabular}
327
328 \begin{figure}[H]
329 \caption{Bayesian network of burglars and houses}
330 \label{bnnetworkhouses}
331 \centering
332 \includegraphics[scale=0.5]{d2.eps}
333 \end{figure}