Automatic source code generation for computing probabilities of variables in belief networks
AssigneeCharles River Analytics, Inc.
InventorZachary T. Cox
Life of this patent
Estimating the term…
Abstract
A system for computing probabilities of variables in a belief network includes a data acquisition interface configured to receive data representative of the belief network. The system further includes a partial evaluator configured to carry out a partial evaluation algorithm that determines the probability calculations that must be performed on the received data in order to compute the probabilities of the variables in the belief network. The system further includes a source code generator configured to output the probability calculations as a source code in a programming language.
Claims18
A system for computing probabilities of variables in a belief network, the system comprising:
- a processor;
- a data acquisition interface configured to receive data representative of the belief network;
- a partial evaluator configured to carry out a partial evaluation algorithm that determines the probability calculations that must be performed on the received data in order to compute the probabilities of the variables in the belief network;
- wherein the partial evaluation algorithm comprises a standard inference algorithm that is modified in such a way that at least some of the calculations needed to calculate the probabilities are stored in memory instead of being actually performed by the standard inference algorithm;
- and
- a source code generator configured to output the probability calculations as a source code in a programming language;
- wherein the source code generator inserts source statements into a template file to generate the source code, the template file provides a standard API (Application Programming Interface) that an external source code can interface with at a number of locations in the template file marked with tags;
- wherein the source code generator generates a source code that allows one or more CPT (conditional probability table) entries and evidence values to be changed at runtime, by using one or more variables for at least some of the CPT entries and the evidence values;
- wherein the partial evaluation algorithm performs simplification of calculation before the source code generator generates the source code.
Dependencies are inferred from the claim text.