Facts are by definition instances of templates, so it's easy to see
how facts can be created dynamically:

  if    (there's a person named X)
  and   (they want to order a copy of the book named Y )
  then  (make a fact "order-book X Y")

Rules, though, are code. Writing rules from code is just like writing
any other kind of code from code. The simple cases are also all
template-like, and most of the time driven by human intervention:
i.e., Java code that translates an English statement of a business rule
into Jess rules.

But it is certainly possible to have a program that writes entirely
new rules based just on the contents of its own working memory; this
would be an instance of "machine learning." This is an enormous
discipline with a huge literature, and so I can't do it justice in a
few words. If you're interested, start Googling!


I think M H wrote:
[Charset iso-8859-1 unsupported, filtering to ASCII...]
> Hi everyone,
> 
> This is my first post to this list, and I've already
> looked through previous messages but couldn't find the
> answer I was looking for.
> 
> It has been mentioned that new facts and rules can be
> created while JESS is running, which is great, but how
> would I go about getting an application to update its
> facts and rules by itself? 
> 
> Generally speaking, how do you program JESS or a Java
> program using JESS, to actually formulate its own JESS
> statements and run them?
> 
> How could I write code, not knowing the exact scenario
> at runtime, that would allow the software to add facts
> and rules as it needs to?
> 
> Thanks,
> Matt
> PhD Candidate, Australia
> 
> 
> 
> Find local movie times and trailers on Yahoo! Movies.
> http://au.movies.yahoo.com
> 
> --------------------------------------------------------------------
> To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
> in the BODY of a message to [EMAIL PROTECTED], NOT to the list
> (use your own address!) List problems? Notify [EMAIL PROTECTED]
> --------------------------------------------------------------------
> 



---------------------------------------------------------
Ernest Friedman-Hill  
Advanced Software Research          Phone: (925) 294-2154
Sandia National Labs                FAX:   (925) 294-2234
PO Box 969, MS 9012                 [EMAIL PROTECTED]
Livermore, CA 94550         http://herzberg.ca.sandia.gov

--------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]
--------------------------------------------------------------------

Reply via email to