--- Philip Goetz <[EMAIL PROTECTED]> wrote: > Wilbur Peng & I developed a set of standards for > AGI components, called MAGIC, that was intended to > form the foundation of an open-source AGI effort. [snip] > - the programs will be written in a modular fashion
>- the programs will be agent-based, meaning > - many modules have their own threads > - communication between these modules happens only > by message-passing, never by procedure call > - there are provisions for procedure calls to > library functions, as long as restrictions > related to permissions and co-location on the > same machine are observed > - every component will be annotated using XML to > describe what it does and what assumptions it > makes, as well as what messages it sends and > accepts (more specifically, what protocols it > adheres to, where protocols are re-useable > objects that describe the messages every agent > in a protocol can send and receive) Its an interesting coincidence that my java framework has very similar interfaces. I implemented a mechanism for building a James Albus style hierarchical control network as suggested to me by Ben a few years ago. Because message passing between nodes had a maximum speed of about 18,000 messages per second, I also implemented an alternative form of message passing within a single Java virtual machine, in which the sending thread actually performs the message handing process in the receiving node via an ordinary method call. According to the Albus model, each level lower in the control hierarchy processes commands and perceptions at ten times the speed of the superior level. Another issue was suspended threads after sending a message to another node. I avoided many of these at the higher control levels, where events can last for a day or more, by a psuedo-conversational mechanism in which the message contains a UUID (universally unique identifier) that the recipient includes in the reply message, and which allows the restoration of task state in a new thread. By the way I also use a thread pool. I like the message passing, service oriented architecture (SOA) approach within the Albus model. My experiments to date have been within one JVM but I plan to use Jabber as the scalable transport between JVMs on a distributed network. Thanks to everyone for their input. The GPL seems to have the most support so that's what I'll plan for. Cheers. -Steve __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com ------- To unsubscribe, change your address, or temporarily deactivate your subscription, please go to http://v2.listbox.com/member/[EMAIL PROTECTED]