Tekstuele aanpassingen
[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 a\textit{Burglar} event happening at some day is then (assuming a Gregorian
16 calendar and leap days):
17 $$\frac{1}{365 + 0.25 - 0.01 - 0.0025}=\frac{1}{365.2425}$$
18
19 The resultant probability distributions can be found in table ~\ref{probdist}, in order to avoid a unclear graph.
20
21 \begin{table}[H]
22 \label{probdist}
23 \begin{tabular}{|l|l|}
24 \hline
25 & Earthquake\\
26 \hline
27 T & $0.0027$\\
28 F & $0.9973$\\
29 \hline
30 \end{tabular}
31 %
32 \begin{tabular}{|l|l|}
33 \hline
34 & Burglar\\
35 \hline
36 T & $0.0027$\\
37 F & $0.9973$\\
38 \hline
39 \end{tabular}
40
41 \begin{tabular}{|l|ll|}
42 \hline
43 & \multicolumn{2}{c|}{$I_1$}\\
44 Earthquake & T & F\\
45 \hline
46 T & $0.2$ & $0.8$\\
47 F & $0$ & $1$\\
48 \hline
49 \end{tabular}
50 \begin{tabular}{|l|ll|}
51 \hline
52 & \multicolumn{2}{c|}{$I_2$}\\
53 Burglar & T & F\\
54 \hline
55 T & $0.95$ & $0.05$\\
56 F & $0$ & $1$\\
57 \hline
58 \end{tabular}
59 \begin{tabular}{|ll|ll|}
60 \hline
61 && \multicolumn{2}{c|}{Alarm}\\
62 $I_1$ & $I_2$ & T & F\\
63 \hline
64 T & T & $1$ & $0$\\
65 T & F & $1$ & $0$\\
66 F & T & $1$ & $0$\\
67 F & F & $0$ & $1$\\
68 \hline
69 \end{tabular}
70
71 \begin{tabular}{|l|ll|}
72 \hline
73 & \multicolumn{2}{c|}{Watson}\\
74 Alarm & T & F\\
75 \hline
76 T & $0.8$ & $0.2$\\
77 F & $0.4$ & $0.6$\\
78 \hline
79 \end{tabular}
80 \begin{tabular}{|l|ll|}
81 \hline
82 & \multicolumn{2}{c|}{Gibbons}\\
83 Alarm & T & F\\
84 \hline
85 T & $0.99$ & $0.01$\\
86 F & $0.04$ & $0.96$\\
87 \hline
88 \end{tabular}
89 \begin{tabular}{|l|ll|}
90 \hline
91 & \multicolumn{2}{c|}{Radio}\\
92 Earthquake & T & F\\
93 \hline
94 T & $0.9998$ & $0.0002$\\
95 F & $0.0002$ & $0.9998$\\
96 \hline
97 \end{tabular}
98 \end{table}
99
100 \textit{If there is a burglar present (which could happen once every ten years), the alarm is known to go off 95\% of the time.} We modelled this by setting the value for Burglar True and $I_2$ True on 0,95. \\
101 \textit{There’s a 40\% chance that Watson is joking and the alarm is in fact off.} This is modelled by putting the value for Watson True and Alarm F on 0,4. As Holmes expects Watson to call in 80\% of the time, the value for alarm True and Watson True is set 0,2. Because the rows have to sum to 1, the other values are easily calculated. \\
102 \textit{She may not have heard the alarm in 1\% of the cases and is thought to erroneously report an alarm when it is in fact off in 4\% of the cases.} We modelled this by assuming that when Mrs. Gibbons hears the alarm, she calls Holmes. Meaning that the value for Gibbons False and Alarm true is 0,01. As she reports when the alarm is in fact off in 4\% of the cases, the value for Gibbons True and alarm False is 0,04. \\
103
104
105
106 \section{Implementation}
107 We implemented the distributions in \textit{AILog}, see Listing~\ref{alarm.ail}
108
109 \begin{listing}[H]
110 \label{alarm.ail}
111 \caption{Alarm.ail}
112 \inputminted[linenos,fontsize=\footnotesize]{prolog}{./src/alarm.ail}
113 \end{listing}
114
115 \section{Queries}
116 Using the following queries the probabilities are as follows:\\
117 \begin{enumerate}[a)]
118 \item $P(\text{Burglary})=
119 0.002737757092501968$
120 \item $P(\text{Burglary}|\text{Watson called})=
121 0.005321803679438259$
122 \item $P(\text{Burglary}|\text{Watson called}\wedge\text{Gibbons called})=
123 0.11180941544755249$
124 \item $P(\text{Burglary}|\text{Watson called}\wedge\text{Gibbons called}
125 \wedge\text{Radio})=0.01179672476662423$
126 \end{enumerate}
127
128 \begin{listing}[H]
129 \begin{minted}[fontsize=\footnotesize]{prolog}
130 ailog: predict burglar.
131 Answer: P(burglar|Obs)=0.002737757092501968.
132 [ok,more,explanations,worlds,help]: ok.
133
134 ailog: observe watson.
135 Answer: P(watson|Obs)=0.4012587986186947.
136 [ok,more,explanations,worlds,help]: ok.
137
138 ailog: predict burglar.
139 Answer: P(burglar|Obs)=[0.005321803679438259,0.005321953115441623].
140 [ok,more,explanations,worlds,help]: ok.
141
142 ailog: observe gibbons.
143 Answer: P(gibbons|Obs)=[0.04596053565368094,0.045962328885721306].
144 [ok,more,explanations,worlds,help]: ok.
145
146 ailog: predict burglar.
147 Answer: P(burglar|Obs)=[0.11180941544755249,0.1118516494624678].
148 [ok,more,explanations,worlds,help]: ok.
149
150 ailog: observe radio.
151 Answer: P(radio|Obs)=[0.02582105837443645,0.025915745316785182].
152 [ok,more,explanations,worlds,help]: ok.
153
154 ailog: predict burglar.
155 Answer: P(burglar|Obs)=[0.01179672476662423,0.015584580594335082].
156 [ok,more,explanations,worlds,help]: ok.
157 \end{minted}
158 \end{listing}
159
160 \section{Comparison with manual calculation}
161 Querying the \textit{Alarm} variable gives the following answer:
162 \begin{minted}{prolog}
163 ailog: predict alarm.
164 Answer: P(alarm|Obs)=0.0031469965467367292.
165
166 [ok,more,explanations,worlds,help]: ok.
167 \end{minted}
168
169 Using formula: $P(i_1|C_1)+P(i_2|C_2)(1-P(i_1|C_1))$ we can calculate the
170 probability of the \textit{Alarm} variable using variable elimination. This
171 results in the following answer:
172 $$0.2*0.0027+0.95*0.0027*(1-0.2*0.0027)=0.00314699654673673$$
173 TODOOOOOOOOOOO
174
175 \newpage
176 \section{Burglary problem with extended information}
177 $P(burglary)\cdot\left(
178 P(\text{first house is holmes'})+
179 P(\text{second house is holmes'})+
180 P(\text{third house is holmes'})\right)=\\
181 0.5102041\cdot\left(
182 \frac{1}{10000}+
183 \frac{9999}{10000}\cdot\frac{1}{9999}+
184 \frac{9999}{10000}\cdot\frac{9998}{9999}\cdot\frac{1}{9998}\right)=
185 \frac{3}{19600}\approx0.000153$
186
187 \section{Bayesian networks}
188 A bayesian network representation of the burglary problem with a multitude of
189 houses and burglars is possible but would be very big and tedious because all
190 the constraints about the burglars must be incorporated in the network.
191 The network would look something like in figure~\ref{bnnetworkhouses}
192
193 \begin{tabular}{|l|l|}
194 \hline
195 Joe &\\
196 \hline
197 T & $\nicefrac{5}{7}$\\
198 F & $\nicefrac{2}{7}$\\
199 \hline
200 \end{tabular}
201 \begin{tabular}{|l|l|}
202 \hline
203 William &\\
204 \hline
205 T & $\nicefrac{5}{7}$\\
206 F & $\nicefrac{2}{7}$\\
207 \hline
208 \end{tabular}
209 \begin{tabular}{|l|l|}
210 \hline
211 Jack & \\
212 \hline
213 T & $\nicefrac{5}{7}$\\
214 F & $\nicefrac{2}{7}$\\
215 \hline
216 \end{tabular}
217 \begin{tabular}{|l|l|}
218 \hline
219 Averall & \\
220 \hline
221 T & $\nicefrac{5}{7}$\\
222 F & $\nicefrac{2}{7}$\\
223 \hline
224 \end{tabular}
225
226 \begin{tabular}{|llll|ll|}
227 \hline
228 & & & & Burglary &\\
229 Joe & William & Jack & Averall & T & F\\
230 \hline
231 F& F& F& F & $0$ & $1$\\
232 F& F& F& T & $0$ & $1$\\
233 F& F& T& F & $0$ & $1$\\
234 F& F& T& T & $0$ & $1$\\
235 F& T& F& F & $0$ & $1$\\
236 F& T& F& T & $0$ & $1$\\
237 F& T& T& F & $0$ & $1$\\
238 F& T& T& T & $0$ & $1$\\
239 T& F& F& F & $0$ & $1$\\
240 T& F& F& T & $0$ & $1$\\
241 T& F& T& F & $1$ & $0$\\
242 T& F& T& T & $0$ & $1$\\
243 T& T& F& F & $1$ & $0$\\
244 T& T& F& T & $0$ & $1$\\
245 T& T& T& F & $1$ & $0$\\
246 T& T& T& T & $1$ & $0$\\
247 \hline
248 \end{tabular}
249 \begin{tabular}{|lll|}
250 \hline
251 & Holmes &\\
252 Burglary & T & F\\
253 \hline
254 T & $0.000153$ & $0.999847$\\
255 F & $0$ & $1$\\
256 \hline
257 \end{tabular}
258
259
260 \begin{figure}[H]
261 \caption{Bayesian network of burglars and houses}
262 \label{bnnetworkhouses}
263 \centering
264 %\includegraphics[scale=0.5]{d2.eps}
265 \end{figure}