JESS: Integrating JESS with agents

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

JESS: Integrating JESS with agents

Matt Hutchinson
Hi everyone,

I'm in the middle of trying to integrate JESS with an agent oriented
framework, and a few questions have arisen. Sorry if this is not a
strictly JESS question - but I thought this list would have ideas -
and Ernest's own experiences (only read the preface to the book
recently!).

Without going into specifics of the agent framework (it's called
JACK), I need to know how a rule based system is properly combined
with an agent. Yesterday I thought "great, I can have a rule and the
RHS can send an event back to the agent" but realized I have no idea
how to do that. Despite knowing that within JESS I can use objects
(and shadow facts) along with passing simple variables aorund - I just
don't know how I will get JESS to tap into agent events.

Also, does anyone know of any books or papers that deal with how to
combine a rule based system with an agent?

Thanks everyone,
Cheers
Matt




--
Matthew Hutchinson
Ph.D. Candidate

Department of Spatial Sciences
Curtin University of Technology
GPO Box U1987
Perth, Western Australia 6845
tel: +61 (8) 9266 7562 & mob: 040 395 3920


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

Reply | Threaded
Open this post in threaded view
|

Re: JESS: Integrating JESS with agents

friedman_hill ernest j
I think Matthew Hutchinson wrote:
[Charset iso-8859-1 unsupported, filtering to ASCII...]

>
> Without going into specifics of the agent framework (it's called
> JACK), I need to know how a rule based system is properly combined
> with an agent. Yesterday I thought "great, I can have a rule and the
> RHS can send an event back to the agent" but realized I have no idea
> how to do that. Despite knowing that within JESS I can use objects
> (and shadow facts) along with passing simple variables aorund - I just
> don't know how I will get JESS to tap into agent events.
>

The first thing to do is to understand how an agent works in this
framework. Examine a simple agent. Write a simple one of your
own. Once you understand the framework, you'll know what you want to
accomplish from Jess. It's always easier than it seems.

Note that you'll almost certainly be controlling things from Jess's
Java API. You'll tell Jess to load in some rules, then assert events
as facts when they come in. You can either call run() when
appropriate, or call runUntilHalt() in a dedicated thread. You'll
probably want to write some Userfunctions that the right-hand-sides of
the rules can call to send agent messages and the like.

> Also, does anyone know of any books or papers that deal with how to
> combine a rule based system with an agent?
>

There are a number of good links on the "Related Web Sites" page
(http://herzberg.ca.sandia.gov/links/ ) that deal with integrations
between Jess and various agent frameworks that it's been used
with. There's nothing about the JACK framework specifically, but
perhaps you can get some ideas.



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

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

Reply | Threaded
Open this post in threaded view
|

RE: JESS: Integrating JESS with agents

Matthew P. Abrams
In reply to this post by Matt Hutchinson
Here is a link to an open source project that integrated JESS with the
Cougaar agent framework.  It is a bit dated but at least it will give
you and example to look at.

http://cougaar.org/projects/delta-blackjack/

matt

> -----Original Message-----
> From: [hidden email] [mailto:[hidden email]]
On

> Behalf Of Matthew Hutchinson
> Sent: Tuesday, August 02, 2005 11:03 PM
> To: [hidden email]
> Subject: JESS: Integrating JESS with agents
>
> Hi everyone,
>
> I'm in the middle of trying to integrate JESS with an agent oriented
> framework, and a few questions have arisen. Sorry if this is not a
> strictly JESS question - but I thought this list would have ideas -
> and Ernest's own experiences (only read the preface to the book
> recently!).
>
> Without going into specifics of the agent framework (it's called
> JACK), I need to know how a rule based system is properly combined
> with an agent. Yesterday I thought "great, I can have a rule and the
> RHS can send an event back to the agent" but realized I have no idea
> how to do that. Despite knowing that within JESS I can use objects
> (and shadow facts) along with passing simple variables aorund - I just
> don't know how I will get JESS to tap into agent events.
>
> Also, does anyone know of any books or papers that deal with how to
> combine a rule based system with an agent?
>
> Thanks everyone,
> Cheers
> Matt
>
>
>
>
> --
> Matthew Hutchinson
> Ph.D. Candidate
>
> Department of Spatial Sciences
> Curtin University of Technology
> GPO Box U1987
> Perth, Western Australia 6845
> tel: +61 (8) 9266 7562 & mob: 040 395 3920
>
>
> --------------------------------------------------------------------
> To unsubscribe, send the words 'unsubscribe jess-users
[hidden email]'
> in the BODY of a message to [hidden email], NOT to the list
> (use your own address!) List problems? Notify
[hidden email].
> --------------------------------------------------------------------


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

Reply | Threaded
Open this post in threaded view
|

Re: JESS: Integrating JESS with agents

friedman_hill ernest j
I think Matthew P. Abrams wrote:
> Here is a link to an open source project that integrated JESS with the
> Cougaar agent framework.  It is a bit dated but at least it will give
> you and example to look at.
>
> http://cougaar.org/projects/delta-blackjack/

I've added this link to the Jess site.



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

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

Reply | Threaded
Open this post in threaded view
|

Re: JESS: Integrating JESS with agents

Matt Hutchinson
In reply to this post by friedman_hill ernest j
Thanks for the suggestions, seems like there's always something new
that I didn't notice the first time I read through the book. The
Userfunction looks very useful.

One follow up question though: the whole reason why I'm including JESS
within my agent is  because JESS offers a dynamic way of storing
knowledge. The agent framework, although capable of making dynamic
choices (using plans and contexts), is still limited by the fact that
it can't write new code for itself! So if JESS is the part that will
update and change over time - learning - then I guess my question is
how does one write agent code that can make use of JESS learning -
when the agent can't change itself. Does that make sense?


Thanks again,
Matt



On 8/3/05, [hidden email] <[hidden email]> wrote:

> I think Matthew Hutchinson wrote:
> [Charset iso-8859-1 unsupported, filtering to ASCII...]
>
> >
> > Without going into specifics of the agent framework (it's called
> > JACK), I need to know how a rule based system is properly combined
> > with an agent. Yesterday I thought "great, I can have a rule and the
> > RHS can send an event back to the agent" but realized I have no idea
> > how to do that. Despite knowing that within JESS I can use objects
> > (and shadow facts) along with passing simple variables aorund - I just
> > don't know how I will get JESS to tap into agent events.
> >
>
> The first thing to do is to understand how an agent works in this
> framework. Examine a simple agent. Write a simple one of your
> own. Once you understand the framework, you'll know what you want to
> accomplish from Jess. It's always easier than it seems.
>
> Note that you'll almost certainly be controlling things from Jess's
> Java API. You'll tell Jess to load in some rules, then assert events
> as facts when they come in. You can either call run() when
> appropriate, or call runUntilHalt() in a dedicated thread. You'll
> probably want to write some Userfunctions that the right-hand-sides of
> the rules can call to send agent messages and the like.
>
> > Also, does anyone know of any books or papers that deal with how to
> > combine a rule based system with an agent?
> >
>
> There are a number of good links on the "Related Web Sites" page
> (http://herzberg.ca.sandia.gov/links/ ) that deal with integrations
> between Jess and various agent frameworks that it's been used
> with. There's nothing about the JACK framework specifically, but
> perhaps you can get some ideas.
>
>
>
> ---------------------------------------------------------
> Ernest Friedman-Hill
> Advanced Software Research          Phone: (925) 294-2154
> Sandia National Labs                FAX:   (925) 294-2234
> PO Box 969, MS 9012                 [hidden email]
> Livermore, CA 94550         http://herzberg.ca.sandia.gov
>
> --------------------------------------------------------------------
> To unsubscribe, send the words 'unsubscribe jess-users [hidden email]'
> in the BODY of a message to [hidden email], NOT to the list
> (use your own address!) List problems? Notify [hidden email].
> --------------------------------------------------------------------
>
>


--
Matthew Hutchinson
Ph.D. Candidate

Department of Spatial Sciences
Curtin University of Technology
GPO Box U1987
Perth, Western Australia 6845
tel: +61 (8) 9266 7562 & mob: 040 395 3920


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

Reply | Threaded
Open this post in threaded view
|

JESS: A question about Jess and Petri Nets

E. Katsiri
In reply to this post by Matt Hutchinson
Dear all,

I would be grateful if I caould get your insight on the following question:

How does Jess compare to Petri Nets?

I am mostly interested in the angle of expressivness. I was wondering if we
could compare these two languages(?) in terms of the formal logic that
characterises their expressiveness although I realise that can be a hard
approach, as logics involve many more parameters (monotonicity etc etc).
Any thought you have on this will be greatly appreciated!

Thank you very much,

Eli Katsiri

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

Reply | Threaded
Open this post in threaded view
|

Re: JESS: A question about Jess and Petri Nets

Ben Tomasini
Petri Nets are a formal mathematical model used to represent state
transition diagrams (probably a gross oversimplification).

As an inference engine, Jess is not really comparable to Petri Nets.

I am currently using Jess in a workflow engine whose flow is modeled by
Petri Nets.  The Petri Net model is inserted and expanded in the Rete.
The rules rely on the formal Petri Net model to make determinations.

But I rolled by own object model based on places, transitions, arcs.
Because the model is formal, it was pretty straightforward.  The
formalness helps rule development.

So a Petri Net would be a part of your fact base.

Ben Tomasini

On Mon, 2005-08-15 at 11:32, E. Katsiri wrote:

> Dear all,
>
> I would be grateful if I caould get your insight on the following question:
>
> How does Jess compare to Petri Nets?
>
> I am mostly interested in the angle of expressivness. I was wondering if we
> could compare these two languages(?) in terms of the formal logic that
> characterises their expressiveness although I realise that can be a hard
> approach, as logics involve many more parameters (monotonicity etc etc).
> Any thought you have on this will be greatly appreciated!
>
> Thank you very much,
>
> Eli Katsiri
>
> --------------------------------------------------------------------
> To unsubscribe, send the words 'unsubscribe jess-users [hidden email]'
> in the BODY of a message to [hidden email], NOT to the list
> (use your own address!) List problems? Notify [hidden email].
> --------------------------------------------------------------------

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