#!/bin/bash #cp ~/bin/yap ~/bin/school_all #YAP=~/bin/school_all YAP=~/bin/yap #OUT_FILE_NAME=results`date "+ %H:%M:%S %d-%m-%Y"`.log OUT_FILE_NAME=results.log rm -f $OUT_FILE_NAME rm -f ignore.$OUT_FILE_NAME # yap -g "['../../../../examples/School/sch32'], [missing5], use_module(library(clpbn/learning/em)), graph(L), clpbn:set_clpbn_flag(em_solver,bp), clpbn_horus:set_horus_flag(inf_alg, bp), statistics(runtime, _), em(L,0.01,10,_,Lik), statistics(runtime, [T,_])." function run_solver { if [ $2 = bp ] then if [ $4 = ve ] then extra_flag1=clpbn_horus:set_horus_flag\(inf_alg,$4\) extra_flag2=clpbn_horus:set_horus_flag\(elim_heuristic,$5\) else extra_flag1=clpbn_horus:set_horus_flag\(inf_alg,$4\) extra_flag2=clpbn_horus:set_horus_flag\(schedule,$5\) fi else extra_flag1=true extra_flag2=true fi /usr/bin/time -o "$OUT_FILE_NAME" -a -f "real:%E\tuser:%U\tsys:%S" $YAP << EOF &>> "ignore.$OUT_FILE_NAME" :- [pos:train]. :- ['../../../../examples/School/sch32']. :- use_module(library(clpbn/learning/em)). :- use_module(library(clpbn/bp)). [$1]. graph(L), clpbn:set_clpbn_flag(em_solver,$2), $extra_flag1, $extra_flag2, em(L,0.01,10,_,Lik), open("$OUT_FILE_NAME", 'append',S), format(S, '$3: ~11+ Lik = ~3f, ',[Lik]), close(S). EOF } function run_all_graphs { echo "************************************************************************" >> "$OUT_FILE_NAME" echo "results for solver $2" >> "$OUT_FILE_NAME" echo "************************************************************************" >> "$OUT_FILE_NAME" run_solver missing5 $1 missing5 $3 $4 $5 run_solver missing10 $1 missing10 $3 $4 $5 #run_solver missing20 $1 missing20 $3 $4 $5 #run_solver missing30 $1 missing30 $3 $4 $5 #run_solver missing40 $1 missing40 $3 $4 $5 #run_solver missing50 $1 missing50 $3 $4 $5 } #run_all_graphs bp "hve(min_neighbors) " ve min_neighbors #run_all_graphs bp "bp(seq_fixed) " bp seq_fixed #run_all_graphs bp "cbp(seq_fixed) " cbp seq_fixed exit run_all_graphs bp "hve(min_neighbors) " ve min_neighbors run_all_graphs bp "hve(min_weight) " ve min_weight run_all_graphs bp "hve(min_fill) " ve min_fill run_all_graphs bp "hve(w_min_fill) " ve weighted_min_fill run_all_graphs bp "bp(seq_fixed) " bp seq_fixed run_all_graphs bp "bp(max_residual) " bp max_residual run_all_graphs bp "cbp(seq_fixed) " cbp seq_fixed run_all_graphs bp "cbp(max_residual) " cbp max_residual run_all_graphs gibbs "gibbs " echo "************************************************************************" >> "$OUT_FILE_NAME" echo "results for solver ve" >> "$OUT_FILE_NAME" echo "************************************************************************" >> "$OUT_FILE_NAME" run_solver missing5 ve missing5 $3 $4 $5 run_solver missing10 ve missing10 $3 $4 $5 run_solver missing20 ve missing20 $3 $4 $5 run_solver missing30 ve missing30 $3 $4 $5 run_solver missing40 ve missing40 $3 $4 $5 #run_solver missing50 ve missing50 $3 $4 $5 #+24h! echo "************************************************************************" >> "$OUT_FILE_NAME" echo "results for solver jt" >> "$OUT_FILE_NAME" echo "************************************************************************" >> "$OUT_FILE_NAME" run_solver missing5 jt missing5 $3 $4 $5 run_solver missing10 jt missing10 $3 $4 $5 run_solver missing20 jt missing20 $3 $4 $5 #run_solver missing30 jt missing30 $3 $4 $5 #+24h! #run_solver missing40 jt missing40 $3 $4 $5 #+24h! #run_solver missing50 jt missing50 $3 $4 $5 #+24h! exit