Pergunta

Eu preciso fazer escrever um sistemas especialistas que devem ajudar usuário em pegar melhor operadora de telefonia móvel. Deve ser muito simples e não com base em linguagens / libaries como CLISP ou JESS. Então eu preciso escrever tudo a partir do zero.

Você sabe alguns livros ou tutoriais on-line que explica como isso pode ser feito? O que eu realmente preciso saber é como representar conhecimento e fatos.

Qualquer ajuda seria muito apreciada.

Foi útil?

Solução

Se você receber qualquer um dos bons textos sobre AI, haverá uma seção sobre sistemas especialistas; você pode, se forçado, trabalho para fora de lá e implementar o seu próprio.

A idéia básica é realmente bastante simples: você tem um conjunto de regras em forma de "se-então" que representam inferências, implicações OR4. Como, por exemplo:

IF blood temperature > 41°C 
THEN patient.has-fever := TRUE

IF patient has wet-sounding breathing
THEN patient.has-pneumonia

IF patient.has-fever AND patient.has-pneumonia
THEN CONCLUDE bacterial pneumonia. ACTION prescribe Augmentin

Em outras palavras, você tem um monte de regras, e você avaliar as regras até chegar a uma conclusão. Há muito mais para se (para a frente ou para trás chaing e esse tipo de coisa) que você pode ler sobre em Thed bastante decente artigo Wikipedia .

Estou intrigado por que você não pode usar um motor de regra existente embora - há uma série deles, para a maioria dos idiomas, geralmente sob licenças bastante liberais. Isso é realmente uma rota mais fácil, a menos que este é um problema lição de casa ou algo assim.

Outras dicas

Prolog é bem adequado para escrever sistemas baseados em regras (uma abordagem bastante normal para o desenvolvimento de sistemas especialistas). P # compila para C #, que pode atender às suas necessidades. - E é grátis

Mais informações em P #.

A lógica base, e prova matemática, para o PROLOG linguagem , deve ajudar a compreender a maioria dos conceitos que você precisará endereço, se não fornecer a linguagem final que você precisa usar para implementá-lo.

Eu não poderia encontrar um link para a implementação original, mas não iria ajudá-lo muito de qualquer maneira. O trabalho inicial de Alain Colmerauer em lógica de programação deve ser útil.

[EDIT] Desculpe, duplicata ...

Eu votaria para alguns implementação de Prolog ou clipes, dependendo se para trás ou para a frente encadeamento lógico melhores ternos o problema. Em vez de re-implementação de qualquer um destes, passar o tempo trabalhando fora como integrá-las com o seu ambiente.

Jess é uma boa escolha, mas você deve ler o livro "Jess em ação" como um primeiro passo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top