Os Sistemas Especialistas (SEs) são sistemas de automatizados capazes de representar e “raciocinar” sobre o conhecimento de um domínio específico, procurando resolver problemas ou aconselhar profissionais que tenham o poder de decisão.
Além do sucesso acadêmico e científico, os SEs têm sido a solução para muitos problemas na área comercial e industrial, com isso o número de empresas especializadas no desenvolvimento deste tipo de sistema vem crescendo aos poucos.
A relação entre processo de produção de software e sistemas especialistas, embora não pareça, é bastante íntima. No processo de automatização de um sistema especialista é necessário mapear, no mínimo, dois tipos requisitos:
1 – Requisitos funcionais: Por exemplo, um sistema especialista para análise de crédito deve armazenar os dados do cliente que está solicitando um empréstimo.
2 – Requisitos especialistas: Quais seriam as regras e fatos que possibilitam fornecer um empréstimo de valor x para um determinado cliente?
Além do levantamento de requisitos, a automatização de tais sistemas deve ser projetada, codificada, testada, homologada e passar por um processo de implantação. Os atores que participam da automatização de um SE são:
Engenheiro de software: Responsável por executar as atividades do processo de produção;
Gerente de projetos: Responsável por planejar e controlar as atividades delineadas no projeto. Tempo, custo e prazo são pontos importantes a serem controlados.
Especialista do domínio. Responsável por fornecer o conhecimento para o sistema. Este conhecimento é construído pelo engenheiro do conhecimento. Por exemplo: Suponha que uma empresa desenvolverá um sistema especialista para área de medicina. Neste caso o especialista do domínio será um médico. Suponha também que no projeto do software foi estabelecido que o conhecimento do especialista do domínio será explicitado em Prolog. Fica sob a responsabilidade do engenheiro do conhecimento capturar o conhecimento junto ao especialista e explicitá-lo na linguagem em questão.
Outro ponto importante a ressaltar é que todo conhecimento de um sistema especialista está armazenado em uma base, em nosso caso a base de conhecimento. A inserção e manutenção deste conhecimento devem ser feitas pela interface de aquisição de conhecimento. A união destes dois componentes deriva a subestrutura de armazenamento de um SE.
Além dos dois componentes apresentados no parágrafo anterior, todo sistema especialista possui uma máquina de inferência e uma interface com o usuário. A inferência refere-se a vários processos em que programas, de uma forma similar às pessoas, procuram chegar a conclusões, ou gerar novos conhecimentos a partir de fatos ou suposições. A interface com o usuário é o componente que permitirá a interação do usuário do sistema com o próprio sistema. É por meio dela que o usuário poderá utilizar o conhecimento armazenado na BC e obter explicações referentes às decisões e as linhas de raciocínio que o sistema usa para alcançar uma conclusão. A união destes dois componentes deriva a subestrutura de consulta de um sistema especialista.
Uma área pouco explorada principalmente no contexto nacional. Um potencial imenso para solucionar problemas. Os sistemas especialistas podem se configurar com uma boa fonte de renda para empresas consolidadas ou para os jovens empreendedores. Pense nisso! Porém, lembre-se que para a automatização deste tipo de sistema você terá, no mínimo, que levantar requisitos do software e requisitos especialistas.
Você toparia este desafio?