2016-07-25 5 views
0

룰베이스 시스템에서 동료와 논의한 후에 혼란 스럽습니다. 나는 안드로이드에서 하나의 규칙을 개발했다. 내가 말한 것은 초기 사실이 엔진을 시작하기 위해 어떤 규칙과도 일치해야한다는 것입니다. 그래서 초기 사실을 작업 메모리로 보내지 않고 직접 일치시킬 수 있습니다.룰 기반 시스템 초기 사실 처리

휄로우는 아니오, 초기 사실이 작업 메모리에 입력되어야하고 그 다음에 일치가 시작되어야한다고 말하면서 여기까지 동의하지만 초기 변수에서 변수를 가져와 규칙을 일치시켜야한다고 덧붙입니다 예를 들어 IO는 대답은 '예 우리가 경우에도 호출 할 수있는 상수 값과 같은 규칙을 많이 가지고 있습니다 경우 그래서 규칙을

a(variable),b(constant) 

를 호출합니다 규칙

a(variable),b(constant) 
Initial facts in Working memory is a(VAR_VALUE) 

이 작업 메모리가 비어 있습니다.

위의 문제에 대한 전문가의 의견이 필요하므로 필요에 따라 개발 변경을 수행 할 수 있습니다.

답변

0

먼저 조건부 일치를 확인한 다음 주제가 가변적인지 여부를 확인하십시오. 일치하지 않으면 피사체와 피사체가 일치하면 correapong 규칙과 일치합니다. comstants가있는 규칙은 wm의 elementa와 일치해야합니다. 그렇지 않으면 무한 루프가됩니다. 단일 변수에는 여러 가지 상수가 올 수 있습니다. 더 나은 충돌 해결 전략을 사용하십시오.