views:

1700

answers:

3

Hello all,

does anyone know about a open source expert system? actually, I'm rather interested in calling its inferential engine from C#.

+1  A: 

Take a look at CLIPS -- it is coded in C.

There's more info on CLIPS at Wikipedia.

Doug Currie
+1  A: 

I went through the same process, about a year ago, trying to find a good .Net system for this. I recall finding a few decent engines, but they were all too general, and required too many assumptions.

In the end I found that writing my own system was pretty easy to do, and it did exactly what I wanted it to, without any extra bull to make it work with some abstract generalized engine.

It might help to know what your intended use is.

Troy Howard
A: 

Then, which is a good book to start with, in order to implement your own ES?

lmsasu
That's a great question. I didn't read any books. I just read a bunch of source code of existing systems, and read the theory on various websites (wikipedia, project sites for the open source packages available, etc). What I ended up writing was a simple forward-chaining inference engine.
Troy Howard
You may find that some of the .Net "rules engines" listed at the bottom of the inference engine article might do what you need. It all depends on what the actual practical purpose of it is. They may or may not be useful for your purpose.
Troy Howard
Some Wikipedia links: http://en.wikipedia.org/wiki/Forward_chaining , http://en.wikipedia.org/wiki/Backward_chaining , http://en.wikipedia.org/wiki/Inference_engine, http://en.wikipedia.org/wiki/Rete_algorithm
Troy Howard