Rohan, How about a rule processing engine like ruleby?
https://github.com/Codalytics/ruleby http://sdruby.org/podcast/89 Cheers, Chris On Jan 21, 5:11 pm, Rob Kaufman <[email protected]> wrote: > Hi Rohan, > > Data structure comes down to a few factors > > If you want the system to get smarter based on user feed back you are looking > at a neural network or expert system. If the questions branch on direction or > funnel down to one solution then a tree might do you (think of it being > upside down so that the answers are the roots). If the data is pretty > non-linear and the next step only relies on the current answer then a linked > list could be a good choice. At the end of the day you can go a long way just > having a table with questions which has many potential_answers and a table of > potential_answers which has one next question. > > Best, > Rob > > On Jan 21, 2012, at 14:46, Scott Olmsted <[email protected]> wrote: > > > > > > > > > Rohan, > > > While Guyren is right in that you haven't given us much to go on, an > > expert system may be overkill for producing a useful troubleshooting > > site. Or it may not. It depends on how much information you want to > > take into account when sending the user to the next question, which is > > related to how "linear" the system is. Most of the (mostly inadequate, > > but sometimes useful anyway) troubleshooting I've encountered is very > > linear. Giving a certain answer seems to skip you over some questions, > > but never starts a new line of inquiry, there is really only one line, > > and so it need not take into account more than the answer to the > > current question to select the next. > > > An off-the-shelf expert system-based troubleshooter potentially > > encapsulate a lot of expert knowledge, but it could be expensive to > > get the expert knowledge into the system. Depends on the complexity of > > what you're troubleshooting. > > > Perhaps there is some middle ground out there that someone has come up > > with. Or perhaps the linear approach is all you need. > > > Scott > > > On Jan 21, 12:52 pm, Guyren Howe <[email protected]> wrote: > > >> I’m afraid that you haven’t given us enough to go on here, Rohan. > > >> The appropriate data structure depends on what you are trying to achieve. > >> A tree suggests you want a definite sequence with an ending, either going > >> from a leaf to the root or vice-versa. A more general graph structure > >> suggests your users will be able to wander from question to question more > >> loosely. > > >> It sounds like you’re trying to write an expert system. I would suggest > >> you start by doing some reading in that area. > > > -- > > SD Ruby mailing list > > [email protected] > >http://groups.google.com/group/sdruby -- SD Ruby mailing list [email protected] http://groups.google.com/group/sdruby
