No texto “Os Sistemas Computacionais Simbolistas”, de Luís Alfredo Vidal de Carvalho, publicado no livro DATAMINING, o autor apresenta a descrição de que os sistemas simbolistas são programas de computador que seguem uma arquitetura padronizada que materializa as duas hipóteses do paradigma simbolistas informando que estes sistemas possuem basicamente 3 elementos: base de dados, regras de produção e sistema de controle.
Para o primeiro dos 3 elementos, o autor cita que a base de dados representa o conhecimento declarativo sobre o problema, ou seja, é uma representação simbólica do mesmo.
Para o segundo elemento, o autor informa que as regras de produção são a representação simbólica dos operadores, capazes de criar e alterar os símbolos, que estão representados pela a base de dados. As regras de produção são aplicadas sobre a base de dados, alterando-a até que a solução do problema seja encontrada. Ainda segundo o autor, as regras de produção tem um formato “Se um conjunto de condições é satisfeito então realize uma data operação”.
Para o terceiro elemento citado pelo autor, os sistemas simbolistas possuem uma estrutura de controle e supervisão que decide a cada instante que regra de produção será aplicada sobre a base de dados. Segundo o autor, a decisão é tomada baseada nas heurísticas existentes sobre o problema e representadas em um banco de heurísticas ao qual o sistema de controle tem acesso. No sistema de controle está guardado o conhecimento heurístico sobre o problema que é o conhecimento mais profundo e importante para o sistema simbolista.
Sistema de Controle -> Regras de Produção -> Base de Dados
O autor cita no texto os tipos de busca utilizados pelos simbolistas como:
Irrevogável, Tentativas, Backtracking, Busca Heurística.
Segundo o autor, a busca irrevogável se caracteriza por não permitir que se volte atrás na aplicação de uma regra. A regra escolhida é aplicada sobre a base de dados, gerando uma nova base de dados a partir da qual uma nova regra será aplicada. As vantagens são a economia de memória, pois a árvore de busca é pequena e sua velocidade de aplicação, porém nem sempre resulta em uma resposta única.
O Backtracking, segundo o autor, é o processo mais simples na utilização de tentativas, no qual pontos de retorno são marcados e, após a conclusão de que uma regra foi mal aplicada, retorna-se ao ponto e se aplica nova regra. Isso permite a abertura de vários ramos da árvore ao invés de somente um como na busca irrevogável. No Backtracking o critério de escolha das regras deve ser simples, pois do contrário este processo rápido e barato pode se tornar caro a ponto de ser mais útil a utilização de heurísticas.
Em seguida o autor escreve sobre a busca heurística e informa que na buscar heurística todos os ramos que são abertos são guardados e, a medida que a busca se faz, alguns ramos são expandidos e outros permanecem intocados. Em um certo momento da busca, um ramo que não fora expandido pode se tornar atraente e vir a ser expandido. Desta forma a busca se transfere de ramo, mantendo os demais ramos prontos para uma futura expansão caso seja necessário. Segundo o autor, o consumo de memória é maior do que na busca irrevogável e mesmo no backtracking, entretanto seus resultados tendem a ser melhores.
O autor entra mais a fundo e apresenta duas formas de busca heurística: uma por largura e outra por profundidade. Informa que ambos os processos são desinformados pois ordenam os nós da lista sem conhecimento específico do problema.
Em seguida, o autor apresenta a definição de heurísticas. E informa que a melhor forma de representar uma heurística é através da definição de uma função que associa um valor a cada nó gerado na árvore de busca.
Segundo o autor, a escolha por uma boa função de avaliação é fundamental para a eficiência do processo. Geralmente, ainda segundo o autor, a função ideal de avaliação F( n ) é composta de duas partes. 1) G( n ), que fornece o custo (o número de regras aplicadas) para se caminhar do nó inicial s para o nó n e 2) H( n ), que calcula o custo para se caminhar do nó n ao nó final t. Ou seja, que F( n ) = G( n )+H( n ) fornece o custo total para se ir do nó inicial s ao nó final t passando-se obrigatoriamente por n.
Por fim, o autor disserta sobre o custo da busca heurística. Na busca totalmente informada, tem-se um alto custo no processamento das heurísticas, pois as mesmas nos fornecem com exatidão o nó mais promissor a ser expandido com exatidão, mas tem-se um baixo custo de aplicação de regras, pois não serão aplicadas regras inúteis que gerem ramos não promissores. Na busca desinformada tem-se o oposto. O custo no processamento das heurísticas é pequeno (quase nulo), pois elas são simples, porém aplica-se um grande número de regras para a geração da árvore de busca na tentativa de chegar ao nó final.