Hello,
I work in a bioinformatics group and we're interested in using Drools for setting up an assertion engine for biological processes. We have over 300 genomes ( == sets of facts), each with upwards of 10K genes/features with annotations ( == facts). We want to be able to predict whether various biological processes exist, based on presence of the annotated genes that are the components of the process. Asserted processes are not black and white; we may have various levels of certainty, based on the percentage of component genes found (because we can't be certain that not finding a certain annotation means the the gene isn't in the genome -- it could mean that we just didn't find it). In addition, processes tend to be composed of sub-processes. The assertions then get used to make additional annotations on the features, which we then use to help us look for missing components. Therefore, we need to be able to display the decisions that led to a specific assertion, as well as the features that went into the component assertions. In addition, we regularly add new processes, as we get new ways to annotate genes, or read about newly worked-out processes. We really don't want to have to run all rules against all the genomes every time we add a new rule, but just add that rule.

We would like to define the actual rules for the assertions in Drools, but don't know how we would do certain parts. 1) Can one walk through the rule hierarchy from a given rule and tease out the hierarchy of rules and the facts that went into that rule? 2) Is it possible to add a rule, or set of interacting rules, and have them incrementally evaluated, instead of forcing full evaluation? Alternatively, can the rulesets be individually defined and run in such a way that they interact?


Thanks,
Alexander Richter
_______________________________________________
rules-users mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/rules-users

Reply via email to