;;to run program type (load "nhl.scm") while scheme is running ;;I am using Elimbel which was written by Nicolas Thiery ;;Permission is granted within Elimbel with the provision that ;;his name is mentioned. ;; ;; (define nhl-order '(npp o x bb d npa ppg st gsp sg gf ga a b c ds wmp)) (define nhl-dag '( ((npp) . (0.63 0.37)) ((o) . (0.39 0.47 0.14)) ((x) . (0.72 0.28)) ((bb) . (0.14 0.86)) ((d) . (0.47 0.39 0.14)) ((npa) . (0.63 0.37)) ((ppg o npp) . ( ((0.68 0.54) (0.58 0.44) (0.48 0.34)) ((0.26 0.32) (0.23 0.28) (0.20 0.24)) ((0.06 0.14) (0.19 0.28) (0.32 0.42)))) ((st x o) . ( ((0.76 0.62) (0.39 0.37) (0.10 0.06)) ((0.22 0.32) (0.30 0.31) (0.27 0.26)) ((0.02 0.06) (0.31 0.32) (0.63 0.68)))) ((gsp d bb) . ( ((0.56 0.62)(0.29 0.32)(0.09 0.12)) ((0.38 0.36) (0.59 0.60) (0.39 0.41)) ((0.06 0.02) (0.12 0.08) (0.52 0.47)))) ((sg npa d) . ( ((0.09 0.07)(0.27 0.24)(0.56 0.51)) ((0.47 0.44) (0.56 0.54) (0.36 0.38)) ((0.44 0.49) (0.17 0.22) (0.08 0.11)))) ((gf st ppg) . ( ((0.59 0.48 0.37)(0.38 0.32 0.28) (0.34 0.18 0.09)) ((0.33 0.39 0.42) (0.51 0.50 0.45) (0.51 0.45 0.40)) ((0.08 0.13 0.29) (0.11 0.18 0.27) (0.15 0.37 0.51)))) ((ga sg gsp) . ( ((0.13 0.09 0.05) (0.25 0.21 0.18) (0.53 0.49 0.46)) ((0.34 0.33 0.33) (0.52 0.52 0.51) (0.41 0.40 0.40)) ((0.53 0.58 0.62) (0.23 0.27 0.31) (0.06 0.11 0.14)))) ((a ga gf) . ( ((0.48 0.56 0.63) (0.03 0.05 0.08) (0.02 0.04 0.05)) ((0.35 0.33 0.31) (0.64 0.68 0.68) (0.32 0.37 0.41)) ((0.17 0.11 0.06) (0.33 0.27 0.24) (0.66 0.59 0.54)))) ((b) . (0.17 0.64 0.19)) ((c) . (0.17 0.64 0.19)) ((ds c b) . ( ((0.62 0.44 0.23) (0.44 0.19 0.14) (0.23 0.14 0.02)) ((0.35 0.33 0.59) (0.33 0.61 0.32) (0.59 0.32 0.25)) ((0.03 0.10 0.18) (0.10 0.20 0.54) (0.18 0.54 0.73)))) ((wmp ds a) . ( ((0.53 0.44 0.33) (0.43 0.47 0.54) (0.32 0.34 0.43)) ((0.47 0.56 0.67) (0.57 0.53 0.46) (0.68 0.66 0.59)))) )) (define nhl-evidence '( ;;you can add evidence by saying ((...) . (...)) ((a).(1 0 0)) )) (load "elimbel") (define display-mode 0) ;(get-belief nhl-order nhl-dag nhl-evidence) (get-belief '(npp o x bb d npa ppg st gsp sg gf ga a b c ds wmp) nhl-dag nhl-evidence) (get-belief '(wmp npp o x bb d npa ppg st gsp sg gf ga a b c ds) nhl-dag nhl-evidence) (get-belief '(ds wmp npp o x bb d npa ppg st gsp sg gf ga a b c) nhl-dag nhl-evidence) (get-belief '(c ds wmp npp o x bb d npa ppg st gsp sg gf ga a b) nhl-dag nhl-evidence) (get-belief '(b c ds wmp npp o x bb d npa ppg st gsp sg gf ga a) nhl-dag nhl-evidence) (get-belief '(a b c ds wmp npp o x bb d npa ppg st gsp sg gf ga) nhl-dag nhl-evidence) (get-belief '(ga a b c ds wmp npp o x bb d npa ppg st gsp sg gf) nhl-dag nhl-evidence) (get-belief '(gf ga a b c ds wmp npp o x bb d npa ppg st gsp sg) nhl-dag nhl-evidence) (get-belief '(sg gf ga a b c ds wmp npp o x bb d npa ppg st gsp) nhl-dag nhl-evidence) (get-belief '(gsp sg gf ga a b c ds wmp npp o x bb d npa ppg st) nhl-dag nhl-evidence) (get-belief '(st gsp sg gf ga a b c ds wmp npp o x bb d npa ppg) nhl-dag nhl-evidence) (get-belief '(ppg st gsp sg gf ga a b c ds wmp npp o x bb d npa) nhl-dag nhl-evidence) (get-belief '(npa ppg st gsp sg gf ga a b c ds wmp npp o x bb d) nhl-dag nhl-evidence) (get-belief '(d npa ppg st gsp sg gf ga a b c ds wmp npp o x bb) nhl-dag nhl-evidence) (get-belief '(bb d npa ppg st gsp sg gf ga a b c ds wmp npp o x) nhl-dag nhl-evidence) (get-belief '(x bb d npa ppg st gsp sg gf ga a b c ds wmp npp o) nhl-dag nhl-evidence) (get-belief '(o x bb d npa ppg st gsp sg gf ga a b c ds wmp npp) nhl-dag nhl-evidence) (get-belief '(npp o x bb d npa ppg st gsp sg gf ga a b c ds wmp) nhl-dag nhl-evidence) ; ; Notations: ; ((a b c) .(...)) stands for P(a|b^c) = (...) or Lambda (a, b, c) ; ; ; To run this type (load "nhl.scm") in scheme