Example #1
0
from parser import BNParser
from parser import QueryParser
from bayesnet import BayesNet

bnfile = open('tests/01.bn')
qfile = open('tests/01.in')

bnparser = BNParser(bnfile)

bnparser.parse()

qparser = QueryParser(bnparser, qfile)

print('dicionario', bnparser.parsed)

qparser.parse()



print(qparser.get_var())
print(qparser.get_evidence())
Example #2
0
args = parser.parse_args()

if __name__ == "__main__":

    # measure time
    start_time_program = time.time()

    print('Parsing Bayesian network from ' + args.bayesnet.name + '... ', end = '')
    bnp = BNParser(args.bayesnet)
    bnp.parse()
    print('Done.')

    print('Parsing query from ' + args.query.name + '... ', end = '')
    qparser = QueryParser(bnp, args.query)
    qparser.parse()
    evidence = qparser.get_evidence()
    vartoinf = qparser.get_var()
    print('Done.\n')

    # create the Bayesian network
    bn = BayesNet(bnp.parsed)

    # compute the poseterior probability distribution
    ppd = bn.ppd([vartoinf], evidence)

    sol_write = SolWriter(args.query.name)
    if args.verbose:
        sol_write.write_sol(ppd, qparser.query_str, qparser.evidence_str, bn.step_by_step)
    else:
        sol_write.write_sol(ppd, qparser.query_str, qparser.evidence_str)
    sol_write.close_file()