[Home] [Groups] - Message: [Prev in Group] [Next in Group]

nu.kanga.list.mud-dev

13823: RE: [MUD-Dev] Thoughts about smarter Sims

[Full Header] [Plain Text]
From: Paul Schwanz - Enterprise Services <Paul.Schwanz@east.sun.com>
Newsgroups: nu.kanga.list.mud-dev
Date: Thu, 1 Jun 2000 15:54:24 -0400 (EDT)
Organization: Kanga.Nu
Jon A. Lambert wrote:
 
> I'm still working on the documentation.  :-( 
> 
> Nevertheless... 
> This is a sample PLAN. 
> 
> PLAN rats_feed
>   CONTEXT 
>      this.hungry = true;  // Using variable deined on object
>      this.attacked = false
>   ENDCONTEXT
>   BODY
>      EXECUTE this.find_food();  // message to self
>      if (this.hungry == false) 
>        ACHIEVE rats_feed;
>      else
>        CONTINUE rats_feed;
>      endif
>   ENDBODY
> ENDPLAN 
> 
> And a simple RULES definition
> 
> RULE rats_rule
>   MODEL rat_model;
>   INIT
>     PLAN rats_feed PRIORITY 5;
>     PLAN rats_reproduce PRIORITY 5;
>     PLAN rats_flee PRIORITY 1;  
>   ENDINIT
>   EVAL 
>     if (this.room.contains(objtype(cat)))  
>       PLAN rats_flee PRIORITY +5;  
>     endif 
>     if (this.attack)
>       PLAN rats_defend PRIORITY +5;
>     endif
>     if (critical_population)  // see rats_model
>       PLAN rats_reproduce PRIORITY +2;
>     endif  
>   ENDEVAL
> ENDRULE

This reminded me very much of an article I read recently.  After some searching, I 
was able to relocate the article.  It is entitled "A Modular Framework for 
Artificial Intelligence Based on Stimulus Response Directives," and was written by 
Charles Guy.

http://www.gamasutra.com/features/19991110/guy_01.htm

I wondered whether or not you were familiar with the article.  I found it 
fascinating.

Also, what happens if this.room.contains(objtype(really_cute_rat)) /*OK...this is 
hypothetical*/ and this.room.contains(objtype(hunk_of_cheese)) and rats_feed and 
rats_reproduce are at the exact same priority level?  Will this lead to a 
Capt-Kirk-like logic problem in which rats_self_destruct is initiated?  Just 
wondering.

--Phinehas

-----------------------------------------------------------------
		"All things are permissible,
			but not all things are expedient." 
-----------------------------------------------------------------                 




_______________________________________________
MUD-Dev mailing list
MUD-Dev@kanga.nu
http://www.kanga.nu/lists/listinfo/mud-dev