Os sistemas especialistas (SE) representam uma área do conhecimento que está englobada na grande área de Inteligência Artificial, justamente com os sistemas baseados em conhecimento.
Os SE são programas computacionais que emulam o comportamento de um especialistas humanos, podendo assim inferir respostas para um determinado problema ou questão. Um programa convencional faz uso e representação de dados, enquanto um sistema especialista faz uso e representação de conhecimento.
Uma das grandes vantagens da computação é poder juntar o útil ao agradável xD e para um melhor entendimento sobre Sistemas Especialistas, desenvolvi um SE capaz de indicar a melhor família e a melhor cerveja artesanal, baseado na interação feita com o usuário através de perguntas. Para o desenvolvimento, foi utilizado uma sheel chamada Expert Sinta que tem como objetivo principal simplificar o trabalho de implementação de sistemas especialistas.
Etapas do desenvolvimento
Aquisição do conhecimento: apesar de não ser tão especialista no assunto, para reunir as informações necessárias eu consultei o querido Google e também videos e documentários, para assim, poder me colocar no papel do especialista do sistema.
Foquei nas grandes famílias de cervejas artesanais: ALES e LAGER e selecionei 5 cervejas de cada família. Abaixo, mais informações:
Conceitos e Objetivos: Após a coleta, foi feita a análise das informações para a formulação das perguntas que seriam feitas ao usuário.
- Você já experimentou alguma cerveja artesanal?
- Você prefere aromas intensos ou suaves?
- Qual o teor alcoólico permitido para o momento?
- Prefere cervejas claras, douradas ou escuras?
- Gostaria de uma cerveja de sabor doce ou amargo?
- Você acha que chocolate e cerveja combinam?
- Você gosta de uma cerveja com leve sabor de caramelo?
- Você gostaria de degustar uma cerveja com leve sabor de banana e cravo?
- Gosta de sabores cítricos?
Conclusão: Reunindo o conhecimento e as informações, foi feito o fluxograma abaixo:
E então era hora de passar o sistema para o Expert Sinta. O programa utiliza quatro processos para a utilização:
- Estabelecer variáveis
- Estabelecer objetivos (variáveis de saída)
- Estabelecer interfaces (perguntas a serem feitas)
- Criar as regras.
As regras são feitas em um estrutura bem similar ao “if”.
Ao total, o sistema foi concluído com 18 regras e 10 variáveis e esta é a “cara” dele quando executado, conforme o usuário responde, o sistema utiliza as regras para avançar ou concluir a consulta.
Para quem quiser utilizar ou conhecer um pouco mais sobre a ferramenta, o sistema(+ Expert Sinta) está disponível no meu Github e pode ser baixado aqui.
Espero que tenham gostado e até a próxima! 🙂