Gouws Python 2010

download Gouws Python 2010

of 139

Transcript of Gouws Python 2010

  • 8/10/2019 Gouws Python 2010

    1/139

    A Python implementation of graphical models

    by

    Almero Gouws

    March 2010

    Thesis presented in partial fulfilment of the requirements for the degree

    of Master of Science in Engineering at Stellenbosch University

    Supervisor: Professor Ben Herbst

    Department of Applied Mathematics, Faculty of Engineering

  • 8/10/2019 Gouws Python 2010

    2/139

  • 8/10/2019 Gouws Python 2010

    3/139

  • 8/10/2019 Gouws Python 2010

    4/139

  • 8/10/2019 Gouws Python 2010

    5/139

  • 8/10/2019 Gouws Python 2010

    6/139

  • 8/10/2019 Gouws Python 2010

    7/139

  • 8/10/2019 Gouws Python 2010

    8/139

    x6

    x5

    x4

    x3 x2

    p(x1)

    p(x2)

    p(x3) p(x2)

  • 8/10/2019 Gouws Python 2010

    9/139

    n

  • 8/10/2019 Gouws Python 2010

    10/139

    p(x1)

    p(x2|x1)

    1(x1, x2)

    2(x2, x3)

    1(x1, x2) 1(x1, x2, x3)

    2(x2, x3) 2(x1, x2, x3)

    3(x1, x2, x3) 1(x1, x2, x3) 2(x1, x2, x3)

    E3(x1, x2)

    3(x1, x2, x3)

    x3= 0

    E3(x1, x3) 3(x1, x2, x3) x2= 1

    1 x1 x2

    p(x1) p(x2)

    1 2

    2x2(x2)

    [1(x1, x2) + x21(x2)]

    1x1(x1)

    p(x1)

    p(x2|x1)

    (x1, x2) ES S(x1, x2)

    ES S(x1, x1)

    E(x1|x2= 1)

    M(x1|x2= 1)

    R

    (x1, x2)

  • 8/10/2019 Gouws Python 2010

    11/139

  • 8/10/2019 Gouws Python 2010

    12/139

  • 8/10/2019 Gouws Python 2010

    13/139

  • 8/10/2019 Gouws Python 2010

    14/139

    N

    x = {x1,...,xN} x

    x N x = {x1,...,xN}

    N

    x

    x

    xi

    {x1, x2, x3, x4, x5, x6}

    x2

    x1 x2 p(x2|x1)

  • 8/10/2019 Gouws Python 2010

    15/139

    xi

    p(xi|i) i xi

    N

    p(x) =N

    i=1

    p(xi|i),

    i xi

    p(x) =p(x1)p(x2|x1)p(x3|x1)p(x4|x2)p(x5|x3)p(x6|x2, x5).

    xi

    xi

    x1

    p(x1)

  • 8/10/2019 Gouws Python 2010

    16/139

    x1 p(x1)

    x1 = 0 x1= 10.4 0.6

    p(x1)

    x2 x1 p(x2|x1)

    x2

    x1 p(x2|x1)

    x1= 0 x1 = 1x2 = 0 0.7 0.6x2 = 1 0.3 0.4

    p(x2|x1)

  • 8/10/2019 Gouws Python 2010

    17/139

    N x = {x1,...,xN} x

    N

    x = {x1,...,xN} N x

    {x1, x2, x3, x4, x5, x6}

    x2 x5 x6

    x2 x5

    x6 x2 x5

    x6

    xs (xs) C

    C

    p(x) = 1Z

    cC

    c(xc),

  • 8/10/2019 Gouws Python 2010

    18/139

    xc c 1

    Z

    Z=x

    cC

    c(xc).

    p(x) = 1

    Z(x1, x2)(x1, x3)(x2, x4)(x2, x5, x6).

    (xs)

    xs

    xs

    {x1, x2} {x2, x3}

    1(x1, x2) 2(x2, x3)

    1(x1, x2) 2(x2, x3)

    p(x) = 1

    Z

    (x1, x2)(x2, x3).

  • 8/10/2019 Gouws Python 2010

    19/139

    x2= 0 x2 = 1

    x1 = 0 0.8 0.1x1 = 1 0.4 0.9

    1(x1, x2)

    x3= 0 x3 = 1x2 = 0 0.7 0.5x2 = 1 0.5 0.3

    2(x2, x3)

    1(x1, x2) 2(x2, x3)

    1(x1, x2)

    2(x2, x3) 1(x1, x2)

    2(x2, x3) 3(x1, x2, x3)

    3(x1, x2, x3) =(x1, x2) +(x2, x3).

    3(x1, x2, x3)

    1(x1, x2) 2(x2, x3)

    x1 x2 x3 1(x1, x2) x3

    1(x1, x2) 1(x1, x2, x3)

    1(x1, x2, x3 = 0) = 1(x1, x2, x3= 1) =1(x1, x2).

    2(x2, x3)

    x1 2(x1, x2, x3)

    2(x2, x3, x1 = 0) = 2(x2, x3, x1= 1) =2(x2, x3).

    1(x1, x2)

    1(x1, x2, x3)

    2(x2, x3) 2(x1, x2, x3)

    x3 = 0 x2= 0 x2 = 1 x3 = 1 x2= 0 x2 = 1x1 = 0 0.8 0.1 x1 = 0 0.8 0.1x1 = 1 0.4 0.9 x1 = 1 0.4 0.9

    1(x1, x2) 1(x1, x2, x3)

    3(x1, x2, x3) 1(x1, x2, x3) 2(x1, x2, x3)

    1(x1, x2, x3) 2(x1, x2, x3)

  • 8/10/2019 Gouws Python 2010

    20/139

    x3 = 0 x2= 0 x2 = 1 x3 = 1 x2= 0 x2 = 1

    x1 = 0 0.7 0.5 x1 = 0 0.5 0.3x1 = 1 0.7 0.5 x1 = 1 0.5 0.3

    2(x2, x3) 2(x1, x2, x3)

    x3 = 0 x2= 0 x2 = 1 x3 = 1 x2= 0 x2 = 1x1 = 0 1.5 0.6 x1 = 0 1.3 0.4x1 = 1 1.1 1.4 x1 = 1 0.9 1.2

    3(x1, x2, x3) 1(x1, x2, x3)

    2(x1, x2, x3)

    3(x1, x2, x3) x3 = 0

    3(x1, x2, x3)

    x3 = 0 E3(x1, x2)

    3(x1, x2, x3) x3= 0 E3(x1, x2)

    E3(x1, x3) 3(x1, x2, x3) x2 = 1

    x2= 0 x2 = 1x1 = 0 1.5 0.6x1 = 1 1.1 1.4

    E3(x1, x2) 3(x1, x2, x3) x3= 0

    x3= 0 x3 = 1x1 = 0 0.6 0.4x1 = 1 1.4 1.2

    E3(x1, x3) 3(x1, x2, x3) x2= 1

    p(x)

  • 8/10/2019 Gouws Python 2010

    21/139

    p(x) = 1

    Z1(x1, x3)2(x2, x3)3(x3, x4)4(x3, x5).

    1(x1, x3) x1 x3

  • 8/10/2019 Gouws Python 2010

    22/139

  • 8/10/2019 Gouws Python 2010

    23/139

    x2 x3 x4 x5

    p(x2|x1) p(x3|x1) p(x4|x2) p(x5|x3)

    p(x2|x1) x1 x2 x1 x2

    p(x2|x1)

    (xc, xp) =p(xc|xp).

    x6 x6 x2 x5

    p(x6|x2, x5) x2 x5

    x6

    x2 x5 x2

    x5

    p(x6|x2, x5)

  • 8/10/2019 Gouws Python 2010

    24/139

    (xc,xp) =p(xc|xp).

    xc xp xc

    x1 p(x1) p(x1)

    (xc) =p(xc).

  • 8/10/2019 Gouws Python 2010

    25/139

    N

    p(xn) xn

    p(x) = 1

    Z(x1, x2)(x1, x3)(x2, x4)(x3, x5)(x2, x5, x6).

    p(x1, x2, x3, x4, x5)

    p(x1, x2, x3, x4, x5) =x6

    1

    Z

    (x1, x2)(x1, x3)(x2, x4)(x3, x5)(x2, x5, x6).

    k

    k6

    O(k6)

    k6

    x6

    x6

    p(x) = 1

    Z(x1, x2)(x1, x3)(x2, x4)(x3, x5)

    x6

    (x2, x5, x6).

    (x2, x5, x6) k3

    O(k3)

    O(k6)

    p(x1)

    p(x1) = 1

    Z

    x2,x3,x4,x5,x6

    (x1, x2)(x1, x3)(x2, x4)(x3, x5)(x2, x5, x6).

  • 8/10/2019 Gouws Python 2010

    26/139

    p(x1) = 1Z

    x2

    (x1, x2)x3

    (x1, x3)x4

    (x2, x4)x5

    (x3, x5)x6

    (x2, x5, x6).

    m6(x2, x5) =

    x6(x2, x4, x6)

    p(x1) = 1

    Z

    x2

    (x1, x2)x3

    (x1, x3)x4

    (x2, x4)x5

    (x3, x5)m6(x2, x5),

    m6(x2, x5) (x2, x5, x6) x6

    x2 x5 x6

    x6

    x6

    x6

    m5(x2, x3) =

    x5

    (x3, x5)m6(x2, x5)

    p(x1) = 1

    Z

    x2

    (x1, x2)x3

    (x1, x3)m5(x2, x3)x4

    (x2, x4).

    x5

    m5(x2, x3) x2 x3

    x2

    x3

    x5 x2 x3

    x5

  • 8/10/2019 Gouws Python 2010

    27/139

    p(x1) = 1

    Z

    x2

    (x1, x2)m4(x2)x3

    (x1, x3)m5(x2, x3),

    = 1

    Z

    x2

    (x1, x2)m4(x2)m3(x1, x2),

    = 1

    Zm2(x1),

    x4 x3 x2

    x1

    x4

    x3 x2

    p(x1|x6)

    x6 x1

    x6

    E(x2, x5) E

    p(x1|x6) = 1

    Z

    x2

    (x1, x2)x3

    (x1, x3)x4

    (x2, x4)x5

    (x3, x5)E(x2, x5).

    x6 x6

    p(x1)

  • 8/10/2019 Gouws Python 2010

    28/139

    p(x1) = 1

    Z

    x2

    (x1, x2)x3

    (x1, x3)x4

    (x2, x4)x6

    x5

    (x3, x5)(x2, x5, x6),

    = 1

    Z

    x2

    (x1, x2)x3

    (x1, x3)x4

    (x2, x4)x6

    m5(x2, x3, x6),

    = 1

    Z

    x2

    (x1, x2)m4(x2)x3

    (x1, x3)m6(x2, x3),

    = 1Z

    x2

    (x1, x2)m4(x2)m3(x1, x2),

    = 1

    Zm2(x1).

    x6

    (x2, x5, x6) k3

    O(k3)

    x5 (x2, x5, x6)(x3, x5)

    k4

    O(k4)

    p(x1)

    p(x1) p(x2)

    p(x1) p(x2)

    p(x2)

    p(x1)

  • 8/10/2019 Gouws Python 2010

    29/139

    p(x1)

    p(x2)

  • 8/10/2019 Gouws Python 2010

    30/139

    p(x) = 1

    Z(x1, x2)(x2, x3)(x3, x4)(x4, x5)(x5, x6),

    = 1

    Z

    5i=1

    (xi, xi+1),

    1Z

    p(x1)

    (6, 5, 4, 3, 2, 1)

    x1

    p(x3)

    x3

    (6, 5, 4, 2, 1, 3)

    p(x3) = 1

    Z

    x1,x2,x4,x5,x6

    (x1, x2)(x2, x3)(x3, x4)(x4, x5)(x5, x6),

    = 1

    Z

    x1,x2

    (x1, x2)(x2, x3)x4

    (x3, x4)x5

    (x4, x5)x6

    (x5, x6).

    x2 (x1, x2)(x2, x3) O(k3)

    x1

    x2

    (6, 5, 4, 1, 2, 3)

  • 8/10/2019 Gouws Python 2010

    31/139

    p(x3) = 1Z

    x2

    (x2, x3)x1

    (x1, x2)x4

    (x3, x4)x5

    (x4, x5)x6

    (x5, x6),

    O(k2)

    p(x3) = 1

    Z

    x2,x1

    1i=2

    (xi, xi+1)

    x4,x5,x6

    5i=3

    (xi, xi+1)

    .

    x3

    p(x3) = 1

    Z(x3)(x3),

    (x3) = x2,x11

    i=2 (xi, xi+1) (x3) = x4,x5,x65

    i=3 (xi, xi+1).

    (x3) x2 x3 (x3)

    x4 x3

  • 8/10/2019 Gouws Python 2010

    32/139

    (x3)

    (x3) =x2

    (x2, x3)x1

    (x1, x2),

    =x2

    (x2, x3)(x2).

    (xn)

    (xn1) xn xn1

    xn1 x1 (x2) =

    x1 (x1, x2) (xn)

    (x3) =

    x4,x5,x6

    5i=3

    (xi, xi+1),

    =x4

    (x3, x4)x5,x6

    5i=4

    (xi, xi+1),

    =x4

    (x3, x4)(x4).

    (xn) (xn+1)

    xn xn+1 xn+1

    x6 (x5) =

    x6

    (x5, x6)

    p(x1)

    x1

  • 8/10/2019 Gouws Python 2010

    33/139

    xn xm

    xm

    x3 x1

    x2 x4 x5

    x1

    x1

    x4

    x3

    p(x1)

  • 8/10/2019 Gouws Python 2010

    34/139

    p(x1)

  • 8/10/2019 Gouws Python 2010

    35/139

    3(x2) =x3

    2(x2, x3),

    4(x2) =x4

    3(x2, x4),

    2(x1) =x2

    1(x1, x2)3(x2)4(x2).

    x2 x1

    x2

    1 x21(x2)

    x21(x2)

    x2 3(x2) 4(x2)

    x21(x2) =3(x2)4(x2).

    1 x1 1

    x21(x2) 1x1(x1)

  • 8/10/2019 Gouws Python 2010

    36/139

    x1

    1x1(x1) 2(x1)

    1x1(x1) = 2(x1),

    =x2

    1(x1, x2)3(x2)4(x2),

    1x1(x1) =x2

    1(x1, x2)1x1(x1).

    1 x1

    1x1(x1)

    x1 x2

    xm s

    xms(xm) =

    rne(xm)\s

    rxm(xm),

    r ne(xm)\s xm s

    s xm

    sxm(xm) =xs\xm

    s(xs)

    rxs\xm

    xrs(xr),

    xs\xm s xm

    x(x) = 1,

    x(x) =(x).

  • 8/10/2019 Gouws Python 2010

    37/139

    p(x3)

    x3

  • 8/10/2019 Gouws Python 2010

    38/139

    p(x2)

    x2

    p(x3)

    p(x2)

    p(x3) p(x2)

    x32 2x2

    x2 2 p(x3) p(x3)

    x3

    p(xn) xn

    N

  • 8/10/2019 Gouws Python 2010

    39/139

    2(N1)

    (N1)

    2(N1)

    N

    N(N 1)

    p(x)

    x

    1

  • 8/10/2019 Gouws Python 2010

    40/139

    x2= 0 x2 = 1

    x1 = 0 0.4 0.6x1 = 1 0.4 0.1

    1 x1 x2

    p(xn) xn

    p(x1) p(x2)

    p(x1= 0) p(x1= 1) p(x2 = 0) p(x2 = 1)

    p(x1) p(x2)

    x1 = 0 x2= 0

    x1 = 0 x2 = 1

    xmax = argmax

    x

    p(x),

    p(xmax) = maxx

    p(x).

    p(xmax)

    p(x) = 1

    Z1(x1, x2)2(x2, x3),

    p(xmax) = 1

    Zmax

    x1(x1, x2)2(x2, x3).

  • 8/10/2019 Gouws Python 2010

    41/139

    p(xmax) = 1

    Zmax

    x1max

    x2max

    x31(x1, x2)2(x2, x3).

    max(ab, ac) =a max(b, c), a >0.

    (x1, x2) x3

    p(xmax) = 1

    Zmax

    x1max

    x21(x1, x2)max

    x32(x2, x3).

    log(p(xmax)) = maxx

    log(p(x)).

    log(p(x)) = log(1

    Z) + log(1(x1, x2)) + log(2(x2, x3)).

    max(a+ b, a + c) =a+ max(b, c),

    log(p(xmax)) = log(1Z

    ) + maxx1

    maxx2

    log 1(x1, x2) + maxx3

    log 2(x2, x3).

    xm s

    xms(xm) =

    rne(xm)\srxm(xm),

    r ne(xm)\s xm s

    s xm

  • 8/10/2019 Gouws Python 2010

    42/139

    sxm(xm) = maxxs\xm

    [log(s(xs)) +

    rxs\xm

    xrs(xr)],

    xs\xm s xm

    x(x) = 0,

    x(x) = log((x)).

    p(x)

    p(x)

  • 8/10/2019 Gouws Python 2010

    43/139

    x1

    x1max = argmax

    x1

    1x1(x1).

    1 x2= 0 x2 = 1 2 x3= 0 x3 = 1x1 = 0 x2 = 0 x1 = 1 x2 = 1

    1 2

    x1 x3

    x32(x3) = 0.

    2 x2

    2x2(x2) = maxx3

    [2(x2, x3) +x32(x3)],

    = maxx3

    2(x2, x3).

    x2 = 0 x2= 1

    2x2(x2)

    x3

    x2 = 0 x2 = 1 2

    x2 = 0 x3 = 0

    x2

    x3

    2

    x2 = 1 x3 = 1

  • 8/10/2019 Gouws Python 2010

    44/139

    x2 x3

    x2 x2

    1 1

    2

    x21(x2) =2x2(x2).

    1 x1

    1x1(x1) = maxx2

    [1(x1, x2) +x21(x2)].

    [1(x1, x2) + x21(x2)]

    x2= 0 x2 = 1x1 = 0 x1 = 1

    [1(x1, x2) + x21(x2)]

    1x1(x1)

    x1 = 0 x1= 1

    1x1(x1)

    x1 = 0 x2 = 1

    x1 = 1 x2 = 0

  • 8/10/2019 Gouws Python 2010

    45/139

    x1

    x1 = 0 x2 = 1 x2 = 1 x3 = 1 x1 = 1

    x2= 0 x2= 0 x3 = 0

    s xm

    xm

    sxm(xm) = argmaxxs\xm

    [log(s(xs)) + rxs\xm

    xrs(xr)].

    x5

    x2 x3

    x1 x2 x3 x4 x1

    x2 x4

  • 8/10/2019 Gouws Python 2010

    46/139

    {x1, x2, x3} {x2, x3, x5} {x2, x5, x6}

    {x2, x4}

    Ci

    p(x) = 1

    Z1(x1, x2, x3)2(x2, x3, x5)3(x2, x4)4(x2, x5, x6),

    Si

    Si i(Xs) Xs

  • 8/10/2019 Gouws Python 2010

    47/139

    p(x) =

    i i(Xi)i j(xj)

    .

    1Z

    Z

    Z

    Ci Cj CiCj x5

    x5

    x5

  • 8/10/2019 Gouws Python 2010

    48/139

    p(x1)

    C1

  • 8/10/2019 Gouws Python 2010

    49/139

    Cs Sm

    CsSm(xm) =xs\xm

    s(xs)

    rne(Cs)\Sm

    SrCs(xr),

    xm m xs

    s xs\xm xs xm ne(Cs)\Sm

    Cs Sm

    s s s

    s(xs) =s(xs)

    rne(Cs)\Sm

    SrCs(xr),

    Cs Sm

    CsSm(xm) = xs\xms(xs).

  • 8/10/2019 Gouws Python 2010

    50/139

    Sm Cs

    SmCs(xm) =m(xm)

    rne(Sm)\Cs

    CrSm(xr),

    xm m xr r ne(Sm)\Cs Sm Cs

    m

    Sm m m

    m(xm) =m(xm)

    rne(Sm)\Cs

    CrSm(xr).

    Sm Cs

    SmCs(xm) =m(xm).

    s(xs) =s(xs)

    rne(Cs)\Sm

    r(xr),

    Cs

    s

    Sm

    Cs

    s (xs) =s(xs)

    rne(Cs)\Sm

    r (xr)rne(Cs)\Sm

    r(xr).

  • 8/10/2019 Gouws Python 2010

    51/139

    s s

    Cs

    s(xs) =s(xs)

    rne(Cs)\Sm

    r(xr)rne(Cs)\Sm

    r(xr).

    rne(Cs)\Sm

    r(xr)

    Cs Sm Sm

    p(xn) xn

    xn

    xn p(x2)

    p(x2) = 1

    Z 2(x2),

    Z=x2

    2(x2).

    p(x) =

    i

    i (xi)

    i i (xi)

    .

    C4 x5

    C3 C4 C3

    C2 C3 C2 x5

    C4

    C3

    x5

  • 8/10/2019 Gouws Python 2010

    52/139

    xi

  • 8/10/2019 Gouws Python 2010

    53/139

    Cs Sm

    CsSm(xm) = maxxs\xm

    log(s(xs)) +

    rne(Cs)\Sm

    SrCs(xr),

    xm m xs s xs\xm xs xm ne(Cs)\Sm Cs Sm

    Sm Cs

    SmCs(xm) =m(xm) +

    rne(Sm)\Cs

    CrSm(xr),

    xm m xr

    r ne(Sm)\Cs Sm Cs

    m

    log(1) = 0

    C1

    C2 S1

  • 8/10/2019 Gouws Python 2010

    54/139

    C2S1(x2, x3) = maxx4

    log(2(x2, x3, x4)).

    x2

    x3

    x4

    x2 x3

    C2S1

    S1 C2

    S1C1(x2, x3) =C2S1(x2, x3),

    C1

    (x1max

    , x2max

    , x3max

    ) = argmaxx1,x2,x3 [log(1(x1, x2, x3)) +S1C1(x2, x3)].

    x4

    x2

    max

    x3max

    x4

    CsSm(xm) = argmaxxs\xm

    log(s(xs)) +

    rne(Cs)\Sm

    SrCs(xr),

  • 8/10/2019 Gouws Python 2010

    55/139

    p(x1)

  • 8/10/2019 Gouws Python 2010

    56/139

    C1 x1 x2

    n(xn) xn

    xn

    xn

    xm

    Cs m(xm)

  • 8/10/2019 Gouws Python 2010

    57/139

    n

    xmCs(xm) =m(xm).

    s(xs) =s(xs)

    mne(Cs)

    m(xm),

    s

    (xs) s(xs) ne(Cs)

    Cs

    Cs

    xm

    xm

    Csxm(xm) =xs\xm

    s(xs).

    Cs

    Cs Csxm(xm)

    Cs

    s

    xm

    m(xm) =m(xm)

    Csxm(xm)

    Csxm(xm).

    2 1

    3

  • 8/10/2019 Gouws Python 2010

    58/139

    p(xn) xn xn

    xn

  • 8/10/2019 Gouws Python 2010

    59/139

  • 8/10/2019 Gouws Python 2010

    60/139

    N

    S N

    S

  • 8/10/2019 Gouws Python 2010

    61/139

    x1 x2

    p(x1) p(x2|x1)

    p(x1) x1

    x1 S p(x1)

    x1

    x1

    x1 {0, 0, 1, 0} x1 = 0 x1 = 1 p(x1 = 0) = 3/4

    p(x1 = 1) = 1/4 p(x1)

    x1 = 0 x1= 10.75 0.25

    p(x1)

    p(x2|x1)

    p(x2|x1) p(x1)

    x1 x2

    (x1, x2) {(0, 0), (0, 1), (1, 1), (0, 0)}

    p(x2 = 0|x1 = 0) = 2/4 p(x2= 0|x1= 1) = 1/4 p(x2= 1|x1= 1) = 1/4 p(x2= 1|x1= 0) = 0/4

    p(x2|x1)

    x1= 0 x1 = 1x2 = 0 0.66 0x2 = 1 0.33 1

    p(x2|x1)

    p(xi|i)

  • 8/10/2019 Gouws Python 2010

    62/139

    p(xi|i) p(xi|i)

    xi i

    (xs)

    xs

    S

    N

    S

    x1 x2

  • 8/10/2019 Gouws Python 2010

    63/139

    (x1, x2)

    (x1, x2)

    ES S(x1, x2)

    (x1, x2) x1= 0 x1 = 1 ES S(x1, x2) x1= 0 x1 = 1x2 = 0 x2 = 0 x2 = 1 x2 = 1

    (x1, x2) ES S(x1, x2)

    {0, 0}

    {1, 1}

    {0, 0}

    (x1, x2)

    ES S(x1, x2) x1= 0 x1= 1x2 = 0 x2 = 1

    ES S(x1, x1)

    (Hidden, 1)

    (x1, x2)

    (x1, x2)

    E(x1|x2 = 1)

    E(x1|x2 = 0) x1 = 0 x1= 1x2 = 1

    E(x1|x2= 1)

  • 8/10/2019 Gouws Python 2010

    64/139

    x1

    E(x1|x2 = 1) M(x1|x2 = 1)

    M(x1|x2 = 0) x1 = 0 x1= 1x2 = 1

    M(x1|x2 = 1)

    M(x1|x2 = 0)

    (x1, x2)

    R

    (x1, x2)

    R(x1, x2) x1= 0 x1 = 1x2 = 0 x2 = 1

    R(x1, x2)

    R(x1, x2) ES S(x1, x2)

    ES S(x1, x2) x1= 0 x1= 1x2 = 0 x2 = 1

    (x1, x2)

    (x1, x2) x1= 0 x1 = 1 ES S(x1, x2) x1= 0 x1 = 1x2 = 0 x2 = 0 x2 = 1 x2 = 1

    (x1, x2) ES S(x1, x2)

    (x1, x2)

  • 8/10/2019 Gouws Python 2010

    65/139

    (Xs)

    (Xs)

    (Xs) ES S(Xs)

    Sj S

    ES S(Xs)

    Sj

    (Xs)

    ES S(Xs)

    ES S(Xs)

    ES S(Xs) (Xs)

    ES S(Xs)

  • 8/10/2019 Gouws Python 2010

    66/139

    i(Xs)

    ES Si(Xs)

    Sj S

    Sj

    i(Xs)

    i(Xs)

    ES Si(Xs)

    i(Xs)

    i(Xs)

    ES Si(Xs)

    ES Si(Xs)

    i(Xs)

    ES Si(Xs) i(Xs)

  • 8/10/2019 Gouws Python 2010

    67/139

    ES Si(Xs)

  • 8/10/2019 Gouws Python 2010

    68/139

  • 8/10/2019 Gouws Python 2010

    69/139

    {xn, yn}

  • 8/10/2019 Gouws Python 2010

    70/139

  • 8/10/2019 Gouws Python 2010

    71/139

    xi {0, 2, 5}

    {x0, x2, x5}

    xi

    k

    xi= k

  • 8/10/2019 Gouws Python 2010

    72/139

    xi

    k

    xi= k

    mlc[i] =k

    xi k

  • 8/10/2019 Gouws Python 2010

    73/139

    N

    N

    N

    N

    i

    j

  • 8/10/2019 Gouws Python 2010

    74/139

    x1 x2 x3 x4 x5 x6

    x1 x2 x3 x4 x5 x6

    xi xi

    {x1 : 2, x2 : 4, x3 : 3, x4 : 5, x5 : 2, x6 : 10} [2, 4, 3, 5, 2, 10]

    x4

    xi xj

    xi k

  • 8/10/2019 Gouws Python 2010

    75/139

    xi

  • 8/10/2019 Gouws Python 2010

    76/139

    k

    xi = k xi

    104

  • 8/10/2019 Gouws Python 2010

    77/139

    232

  • 8/10/2019 Gouws Python 2010

    78/139

    k

    xi = k xi

  • 8/10/2019 Gouws Python 2010

    79/139

  • 8/10/2019 Gouws Python 2010

    80/139

    N

    xi xj 1

    x1 x2 x3 x4 x5 x6x1 x2 x3 x4 x5 x6

    xi

  • 8/10/2019 Gouws Python 2010

    81/139

    xi xj

    xi k

    xi

  • 8/10/2019 Gouws Python 2010

    82/139

    k

  • 8/10/2019 Gouws Python 2010

    83/139

    xi = k xi

    104

    232

  • 8/10/2019 Gouws Python 2010

    84/139

    k

    xi = k xi

  • 8/10/2019 Gouws Python 2010

    85/139

  • 8/10/2019 Gouws Python 2010

    86/139

    xi xp

    xi {xi,xp}

    p(x2|x1) {x1, x2}

  • 8/10/2019 Gouws Python 2010

    87/139

    {x1, x2}

    x1

    x2

    = [x2, x5, x6]

    = [2, 4, 3]

    x2

    x6

  • 8/10/2019 Gouws Python 2010

    88/139

  • 8/10/2019 Gouws Python 2010

    89/139

    xi

    k

    xi=k

    xi

  • 8/10/2019 Gouws Python 2010

    90/139

    (x1, x2, x3) x3= 1

    E(x1, x2)

    x3 x3 = 0

    E(x1, x2) (x1, x2, x3)

    Xj Xi Xi nbr nbr[j][0]

    Xi Xj

  • 8/10/2019 Gouws Python 2010

    91/139

    {XiXj} nbr[j][1] Xi Xj

    (Xi Xj) 2(x2, x3, x5) 2(x2, x4, x5) 3(x2, x3) 4(x2, x5, x6)

    2(x2, x3, x5) nbrs

    nbrs[1][0] = [2, 3]

    nbrs[1][1]

    1(x2, x3)

    nbrs[3][0] = [2]

    nbrs[3][1]

    2(x2)

    nbrs[4][0] = [2, 5]

    nbrs[4][1]

    3(x2, x5)

    nbrs

    xj

  • 8/10/2019 Gouws Python 2010

    92/139

    k

    xdomain[i]=k

  • 8/10/2019 Gouws Python 2010

    93/139

    xi

  • 8/10/2019 Gouws Python 2010

    94/139

  • 8/10/2019 Gouws Python 2010

    95/139

    xi

    k xi=k

    xi

  • 8/10/2019 Gouws Python 2010

    96/139

    {x2, x3}

    x2

    x3

    = [x1, x3, x4] = [3, 7, 2] x3 x4

    xj

  • 8/10/2019 Gouws Python 2010

    97/139

  • 8/10/2019 Gouws Python 2010

    98/139

    xPOTENTIAL.domain[i] k xPOTENTIAL.domain[i]= k

  • 8/10/2019 Gouws Python 2010

    99/139

  • 8/10/2019 Gouws Python 2010

    100/139

    xkey

    xkey

  • 8/10/2019 Gouws Python 2010

    101/139

  • 8/10/2019 Gouws Python 2010

    102/139

  • 8/10/2019 Gouws Python 2010

    103/139

    i j

    xi

    xi

  • 8/10/2019 Gouws Python 2010

    104/139

  • 8/10/2019 Gouws Python 2010

    105/139

  • 8/10/2019 Gouws Python 2010

    106/139

  • 8/10/2019 Gouws Python 2010

    107/139

  • 8/10/2019 Gouws Python 2010

    108/139

  • 8/10/2019 Gouws Python 2010

    109/139

    xi k

    xi=k

  • 8/10/2019 Gouws Python 2010

    110/139

  • 8/10/2019 Gouws Python 2010

    111/139

    xi k

    xi=k

  • 8/10/2019 Gouws Python 2010

    112/139

  • 8/10/2019 Gouws Python 2010

    113/139

  • 8/10/2019 Gouws Python 2010

    114/139

  • 8/10/2019 Gouws Python 2010

    115/139

  • 8/10/2019 Gouws Python 2010

    116/139

  • 8/10/2019 Gouws Python 2010

    117/139

  • 8/10/2019 Gouws Python 2010

    118/139

    xi k

    xi=k

  • 8/10/2019 Gouws Python 2010

    119/139

  • 8/10/2019 Gouws Python 2010

    120/139

  • 8/10/2019 Gouws Python 2010

    121/139

  • 8/10/2019 Gouws Python 2010

    122/139

    xi k

    xi=k

  • 8/10/2019 Gouws Python 2010

    123/139

  • 8/10/2019 Gouws Python 2010

    124/139

  • 8/10/2019 Gouws Python 2010

    125/139

    xi k

    xi=k

  • 8/10/2019 Gouws Python 2010

    126/139

  • 8/10/2019 Gouws Python 2010

    127/139

  • 8/10/2019 Gouws Python 2010

    128/139

    xi xj

    xi xj

  • 8/10/2019 Gouws Python 2010

    129/139

    xi xj

    xi xj

  • 8/10/2019 Gouws Python 2010

    130/139

  • 8/10/2019 Gouws Python 2010

    131/139

  • 8/10/2019 Gouws Python 2010

    132/139

    i

    xi xi

    yi xi

    yi i

    {xi, xj}

    (xi, xj) =e(xixj)

    2

    i ,

    i

    {xi, yi}

    (xi, yi) =e(xiyi)

    2

    n ,

  • 8/10/2019 Gouws Python 2010

    133/139

    n

  • 8/10/2019 Gouws Python 2010

    134/139

    (B1, Bt,t1) B1

    Bt,t1

  • 8/10/2019 Gouws Python 2010

    135/139

  • 8/10/2019 Gouws Python 2010

    136/139

  • 8/10/2019 Gouws Python 2010

    137/139

  • 8/10/2019 Gouws Python 2010

    138/139

  • 8/10/2019 Gouws Python 2010

    139/139