Pregunta

En el pasado he tenido que desarrollar un programa que actúa como una regla evaluador.Había un antecedente y algunos consecuents (acciones) de modo que si el antecedente evaled a la verdad de las acciones que se realizan.

En ese momento he utilizado una versión modificada de la Algoritmo de RETE (hay tres versiones de la ARAÑA sólo el primer ser de dominio público) para el antecedente de coincidencia de patrón.Estamos hablando de un gran sistema con millones de operaciones por regla y algunos operadores "repetido" en varias reglas.

Es posible que voy a tener que implementar todo de nuevo en otro idioma y, a pesar de que yo soy de experiencia en ARAÑA, ¿alguien sabe de otro patrón de coincidencia de los algoritmos?Cualquier sugerencia o debo seguir usando ARAÑA?

¿Fue útil?

Solución

El TRATAMIENTO de algoritmo es similar a la ARAÑA, pero no graba los resultados parciales.Como resultado de ello, puede utilizar menos memoria de la RED en ciertas situaciones.También, si desea modificar un número significativo de los hechos conocidos, a continuación, el TRATAMIENTO puede ser mucho más rápido debido a que usted no tiene que gastar tiempo en las retracciones.

También hay RETE* que establece un equilibrio entre la ARAÑA y el TRATAMIENTO por el ahorro de algunos unir el nodo de estado dependiendo de la cantidad de memoria que desea utilizar.Por lo que aún guarda algunos afirmación de tiempo, pero también de la memoria y de la retracción de ahorro de tiempo, dependiendo de cómo ajustar el sistema.

Puede que también desee comprobar hacia fuera SALTOS, que utiliza un perezoso esquema de evaluación e incorpora elementos tanto de la ARAÑA y el TRATAMIENTO.

Sólo tengo experiencia personal con la ARAÑA, pero parece que RETE* o SALTOS son los mejores, opciones más flexibles.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top