Thank you for the reply Wolfgang!
Altho this particular application involves a Expert System, I quite enjoyed
learning about drools and I intend to keep studying it in the following
months regardless if I end up using it or not right now.
A solution (far from ideal) that I came up with was to 'explode' my rules,
something like this:
/Group A:
RULE: if ~A, solution is: "text here 1"
RULE: if A => ask B1
Group B:
RULE: if A,~B1 => ask C1
RULE: if A, B1 => ask B2
RULE: if A, B1, B2 => ask B3
RULE: if A, B1, ~B2 => solution is: "text here 2"
RULE: if A, B1, B2, B3 ou ~B3 => ask B4
RULE: if A, B1, B2, B3, B4 => solution is: "text here 3"
RULE: if A, B1, B2, B3, ~B4 => solution is: "text here 4"
RULE: if A, B1, B2, ~B3, B4 => solution is: "text here 5"
RULE: if A, B1, B2, ~B3, ~B4 => solution is: "text here 6"
Group C:
RULE: if A, ~C1 => ask D1
....
Groups D, E, F, G, .../
But that would means that a small sample with ~25 rules would have to be
'exploded' into ~50+ rules. The ASK command would represent a call to the
end user and it would be followed by a new Fact and fireRules.
Please note that a small sample with 25 rules has about 15 variables/facts
and altho I have one general goal: "is it a problem or not?", there are
about 17 unique answers (e.g: yes it is a problem, so do this.... to solve
it).
With that in mind, I think that using a rules system like drools would be
perfect to keep my application simple to maintain and to expand later ... a
complete solution would involve more goals, maybe 200-300 rules.
Any suggestions on how to use Drools or other solution would be greatly
appreciated.
Thanks!
Kal
--
View this message in context:
http://drools.46999.n3.nabble.com/Iterative-diagnosis-how-to-determine-wh...
Sent from the Drools: User forum mailing list archive at
Nabble.com.