RE: [agi] organising parallel processes
Well SIP is an RFC - RFC3261 with numerous associated RFC's. Also SIP has wide acceptance and can operate over various transports like it can do TCP, UDP, TLS even RS232 if you wanted it to. And SIP establishes the connection for RTP which is another RFC with many variants. RTP also has wide QOS bit support and firewall fixup support w/ SIP. RTP need not be audio. Skye is proprietary and can and will change. Ebay could change it one day and then 3rd party apps break. If you look at the evolution of chat protocols you see this happening. But I could go on and on about the benefits of SIP/RTP but then the limitations are there thus opening up potential for newer and more flexible protocols. John From: Stephen Reed [mailto:[EMAIL PROTECTED] Sent: Friday, May 16, 2008 8:24 PM To: agi@v2.listbox.com Subject: Re: [agi] organising parallel processes Hi John, good to hear from you. I appreciate your comment regarding Skype. At this point I can only imagine the message-passing characteristics of a massively distributed agent hierarchy. As the Texai use cases become more fleshed-out, it may very turn out that telephony protocols (e.g. even proprietary Skype) are important. Cheers. -Steve Stephen L. Reed Artificial Intelligence Researcher http://texai.org/blog http://texai.org 3008 Oak Crest Ave. Austin, Texas, USA 78704 512.791.7860 - Original Message From: John G. Rose <[EMAIL PROTECTED]> To: agi@v2.listbox.com Sent: Friday, May 16, 2008 6:52:52 PM Subject: RE: [agi] organising parallel processes There are ways that you could use SIP and RTP. I'm not advocating it but it is something that has crossed my mind many times. The conclusion that I've arrived at is a custom protocol modeled after telephony protocols since usurping existing ones can be a major PIA. But Skype does look good and they have LOTS of installs. existing telephony protocols though have some serious limitations which a distributed AGI could benefit from - for example modulating various stream properties, including time to destination and definitely packet payload size plus other attributes.. John From: Stephen Reed [mailto:[EMAIL PROTECTED] Sent: Sunday, May 11, 2008 8:04 PM To: agi@v2.listbox.com Subject: Re: [agi] organising parallel processes Hi Brad, I am interested in Skype of course as a VOIP <http://en.wikipedia.org/wiki/VOIP> provider for me personally. I have just re-installed the client to chat with a potential collaborator. You propose Skype as a communications backbone for Texai that solves all the problems I foresee with getting past ISPs and home DSL/cable/wireless routers to reach at-home Texai users. And I, as a result, agree that I will evaluate Skype for this purpose should n2n <http://www.ntop.org/n2n> , and all other open-source alternatives fail. One of my self-imposed constraints <http://texai.org/blog/2008/05/07/the-challenge-ahead/> is to develop free software (i.e. GPL) and reuse open source solutions. Skype uses a proprietary protocol and is closed-source. I suppose that client software that I write to their Java API can be licensed GPL but the network itself is closed. On the other hand n2n <http://www.ntop.org/n2n/> is GPL v3 and I should be able to borrow the most relevant features of Skype for the Texai peer-to-peer communications backbone that I will implement on top of n2n, should it actually work for me. From the Wikipedia article on Skype: * Skype operates on a peer-to-peer <http://en.wikipedia.org/wiki/Peer-to-peer> model * three main entities: supernodes <http://en.wikipedia.org/wiki/Supernode_%28networking%29> , ordinary nodes and the login server * each client builds and refreshes a list of reachable nodes known as the host cache. * contains IP address and port numbers of supernodes * supernodes relay communications to other clients behind a firewall * any skype client can become a supernode if it has good bandwidth, no firewall and adequate processing power * the Skype user directory is entirely decentralized and distributed among the nodes <http://en.wikipedia.org/wiki/Node_%28networking%29> of the network-i.e., users' computers * which allows the network to scale very easily to large sizes (currently about 240 million users)[44] <http://en.wikipedia.org/wiki/Skype#cite_note-43> without a complex centralized infrastructure costly to the Skype Group A good article on the details of these featuresl is here <http://www1.cs.columbia.edu/%7Elibrary/TR-repository/reports/reports-2004/c ucs-039-04.pdf> . The most important attributes of Skype are evidence that a peer-to-peer network can: * scale to several hundred million users * be done with no costly complex centralized infrastructure Thanks so much for your detailed technical suggestion. Cheers. -Steve Stephen L. Reed Artificial Intelligence Res
Re: [agi] organising parallel processes
Hi John, good to hear from you. I appreciate your comment regarding Skype. At this point I can only imagine the message-passing characteristics of a massively distributed agent hierarchy. As the Texai use cases become more fleshed-out, it may very turn out that telephony protocols (e.g. even proprietary Skype) are important. Cheers. -Steve Stephen L. Reed Artificial Intelligence Researcher http://texai.org/blog http://texai.org 3008 Oak Crest Ave. Austin, Texas, USA 78704 512.791.7860 - Original Message From: John G. Rose <[EMAIL PROTECTED]> To: agi@v2.listbox.com Sent: Friday, May 16, 2008 6:52:52 PM Subject: RE: [agi] organising parallel processes There are ways that you could use SIP and RTP. I’m not advocating it but it is something that has crossed my mind many times. The conclusion that I’ve arrived at is a custom protocol modeled after telephony protocols since usurping existing ones can be a major PIA. But Skype does look good and they have LOTS of installs… existing telephony protocols though have some serious limitations which a distributed AGI could benefit from - for example modulating various stream properties, including time to destination and definitely packet payload size plus other attributes.. John From:Stephen Reed [mailto:[EMAIL PROTECTED] Sent: Sunday, May 11, 2008 8:04 PM To: agi@v2.listbox.com Subject: Re: [agi] organising parallel processes Hi Brad, I am interested in Skype of course as a VOIP provider for me personally. I have just re-installed the client to chat with a potential collaborator. You propose Skype as a communications backbone for Texai that solves all the problems I foresee with getting past ISPs and home DSL/cable/wireless routers to reach at-home Texai users. And I, as a result, agree that I will evaluate Skype for this purpose should n2n, and all other open-source alternatives fail. One of my self-imposed constraints is to develop free software (i.e. GPL) and reuse open source solutions. Skype uses a proprietary protocol and is closed-source. I suppose that client software that I write to their Java API can be licensed GPL but the network itself is closed. On the other hand n2n is GPL v3 and I should be able to borrow the most relevant features of Skype for the Texai peer-to-peer communications backbone that I will implement on top of n2n, should it actually work for me. From the Wikipedia article on Skype: * Skype operates on a peer-to-peer model * three main entities: supernodes, ordinary nodes and the login server * each client builds and refreshes a list of reachable nodes known as the host cache. * contains IP address and port numbers of supernodes * supernodes relay communications to other clients behind a firewall * any skype client can become a supernode if it has good bandwidth, no firewall and adequate processing power * the Skype user directory is entirely decentralized and distributed among the nodes of the network—i.e., users' computers * which allows the network to scale very easily to large sizes (currently about 240 million users)[44] without a complex centralized infrastructure costly to the Skype Group A good article on the details of these featuresl is here. The most important attributes of Skype are evidence that a peer-to-peer network can: * scale to several hundred million users * be done with no costly complex centralized infrastructure Thanks so much for your detailed technical suggestion. Cheers. -Steve Stephen L. Reed Artificial Intelligence Researcher http://texai.org/blog http://texai.org 3008 Oak Crest Ave. Austin, Texas, USA 78704 512.791.7860 - Original Message From: Brad Paulsen <[EMAIL PROTECTED]> To: agi@v2.listbox.com Sent: Sunday, May 11, 2008 5:31:16 PM Subject: Re: [agi] organising parallel processes Steve, This may be a naive question, but have you considered using Skype as a P2P mechanism? The Skype User Agent (UA) software has been downloaded 100's of millions of times and the average number of users on-line at any given time is in the 8-11 million range. Skype publishes a (free) API specification for the UA which includes their very powerful and user-friendly chat system. This system can be used to host both group and public chats and also to upload/download any type of file (typical uneven P2P file transfer rates, but it's very reliable and accessible via the UA API). There are API's for Win32, Linux and Macintosh. There is also, if memory serves, a Java-based API that should run on any platform that has a JRE (although, the UA API is a text-based, message-passing API and is, thus, only platform dependent at what Skype calls the "Communications Layer"). And I notice just now, there's a new Python wrapper for the
RE: [agi] organising parallel processes
There are ways that you could use SIP and RTP. I'm not advocating it but it is something that has crossed my mind many times. The conclusion that I've arrived at is a custom protocol modeled after telephony protocols since usurping existing ones can be a major PIA. But Skype does look good and they have LOTS of installs. existing telephony protocols though have some serious limitations which a distributed AGI could benefit from - for example modulating various stream properties, including time to destination and definitely packet payload size plus other attributes.. John From: Stephen Reed [mailto:[EMAIL PROTECTED] Sent: Sunday, May 11, 2008 8:04 PM To: agi@v2.listbox.com Subject: Re: [agi] organising parallel processes Hi Brad, I am interested in Skype of course as a VOIP <http://en.wikipedia.org/wiki/VOIP> provider for me personally. I have just re-installed the client to chat with a potential collaborator. You propose Skype as a communications backbone for Texai that solves all the problems I foresee with getting past ISPs and home DSL/cable/wireless routers to reach at-home Texai users. And I, as a result, agree that I will evaluate Skype for this purpose should n2n <http://www.ntop.org/n2n> , and all other open-source alternatives fail. One of my self-imposed <http://texai.org/blog/2008/05/07/the-challenge-ahead/> constraints is to develop free software (i.e. GPL) and reuse open source solutions. Skype uses a proprietary protocol and is closed-source. I suppose that client software that I write to their Java API can be licensed GPL but the network itself is closed. On the other hand n2n <http://www.ntop.org/n2n/> is GPL v3 and I should be able to borrow the most relevant features of Skype for the Texai peer-to-peer communications backbone that I will implement on top of n2n, should it actually work for me. From the Wikipedia article on Skype: * Skype operates on a peer-to-peer <http://en.wikipedia.org/wiki/Peer-to-peer> model * three main entities: supernodes <http://en.wikipedia.org/wiki/Supernode_%28networking%29> , ordinary nodes and the login server * each client builds and refreshes a list of reachable nodes known as the host cache. * contains IP address and port numbers of supernodes * supernodes relay communications to other clients behind a firewall * any skype client can become a supernode if it has good bandwidth, no firewall and adequate processing power * the Skype user directory is entirely decentralized and distributed among the nodes <http://en.wikipedia.org/wiki/Node_%28networking%29> of the network-i.e., users' computers * which allows the network to scale very easily to large sizes (currently about 240 million users)[44] <http://en.wikipedia.org/wiki/Skype#cite_note-43> without a complex centralized infrastructure costly to the Skype Group A good article on the details of these featuresl is here <http://www1.cs.columbia.edu/%7Elibrary/TR-repository/reports/reports-2004/c ucs-039-04.pdf> . The most important attributes of Skype are evidence that a peer-to-peer network can: * scale to several hundred million users * be done with no costly complex centralized infrastructure Thanks so much for your detailed technical suggestion. Cheers. -Steve Stephen L. Reed Artificial Intelligence Researcher http://texai.org/blog http://texai.org 3008 Oak Crest Ave. Austin, Texas, USA 78704 512.791.7860 - Original Message From: Brad Paulsen <[EMAIL PROTECTED]> To: agi@v2.listbox.com Sent: Sunday, May 11, 2008 5:31:16 PM Subject: Re: [agi] organising parallel processes Steve, This may be a naive question, but have you considered using Skype as a P2P mechanism? The Skype User Agent (UA) software has been downloaded 100's of millions of times and the average number of users on-line at any given time is in the 8-11 million range. Skype publishes a (free) API specification for the UA which includes their very powerful and user-friendly chat system. This system can be used to host both group and public chats and also to upload/download any type of file (typical uneven P2P file transfer rates, but it's very reliable and accessible via the UA API). There are API's for Win32, Linux and Macintosh. There is also, if memory serves, a Java-based API that should run on any platform that has a JRE (although, the UA API is a text-based, message-passing API and is, thus, only platform dependent at what Skype calls the "Communications Layer"). And I notice just now, there's a new Python wrapper for the API (again, available on any platform that can host the Python run-time -- which list includes the usual suspects). There can be multiple programs (Texai agents?) concomitantly using the single Skype UA via the API on a single machine. Anyhow, you get a very powerful VOIP/text chat P2P
Re: [agi] organising parallel processes
And I'd also like to thank Brad for pointing out Skype's API, as I've also being wanting to use a VOIP platform for speech processing and communication. I don't know if Steve is going to end up using it, but it's nice to hear about a useful platform like this. andi Quoting Stephen Reed <[EMAIL PROTECTED]>: Hi Brad, I am interested in Skype of course as a VOIP provider for me personally. I have just re-installed the client to chat with a potential collaborator. You propose Skype as a communications backbone for Texai that solves all the problems I foresee with getting past ISPs and home DSL/cable/wireless routers to reach at-home Texai users. And I, as a result, agree that I will evaluate Skype for this purpose should n2n, and all other open-source alternatives fail. One of my self-imposed constraints is to develop free software (i.e. GPL) and reuse open source solutions. Skype uses a proprietary protocol and is closed-source. I suppose that client software that I write to their Java API can be licensed GPL but the network itself is closed. On the other hand n2n is GPL v3 and I should be able to borrow the most relevant features of Skype for the Texai peer-to-peer communications backbone that I will implement on top of n2n, should it actually work for me. From the Wikipedia article on Skype: * Skype operates on a peer-to-peer model * three main entities: supernodes, ordinary nodes and the login server * each client builds and refreshes a list of reachable nodes known as the host cache. * contains IP address and port numbers of supernodes * supernodes relay communications to other clients behind a firewall * any skype client can become a supernode if it has good bandwidth, no firewall and adequate processing power * the Skype user directory is entirely decentralized and distributed among the nodes of the network—i.e., users' computers * which allows the network to scale very easily to large sizes (currently about 240 million users)[44] without a complex centralized infrastructure costly to the Skype Group A good article on the details of these featuresl is here. The most important attributes of Skype are evidence that a peer-to-peer network can: * scale to several hundred million users * be done with no costly complex centralized infrastructureThanks so much for your detailed technical suggestion. Cheers. -Steve Stephen L. Reed Artificial Intelligence Researcher http://texai.org/blog http://texai.org 3008 Oak Crest Ave. Austin, Texas, USA 78704 512.791.7860 - Original Message From: Brad Paulsen <[EMAIL PROTECTED]> To: agi@v2.listbox.com Sent: Sunday, May 11, 2008 5:31:16 PM Subject: Re: [agi] organising parallel processes Steve, This may be a naive question, but have you considered using Skype as a P2P mechanism? The Skype User Agent (UA) software has been downloaded 100's of millions of times and the average number of users on-line at any given time is in the 8-11 million range. Skype publishes a (free) API specification for the UA which includes their very powerful and user-friendly chat system. This system can be used to host both group and public chats and also to upload/download any type of file (typical uneven P2P file transfer rates, but it's very reliable and accessible via the UA API). There are API's for Win32, Linux and Macintosh. There is also, if memory serves, a Java-based API that should run on any platform that has a JRE (although, the UA API is a text-based, message-passing API and is, thus, only platform dependent at what Skype calls the "Communications Layer"). And I notice just now, there's a new Python wrapper for the API (again, available on any platform that can host the Python run-time -- which list includes the usual suspects). There can be multiple programs (Texai agents?) concomitantly using the single Skype UA via the API on a single machine. Anyhow, you get a very powerful VOIP/text chat P2P user agent for free. You don't need to (can't, in fact) host the UA download site. You just put a Skype graphic on your site that points to the Skype-hosted download site. Check out Skype's developer site: https://developer.skype.com/. Cheers, Brad P.S. The Texai server(s) could just be a Skype UA, with its own Skype username. You could wrap any text-based application-layer protocol you'd want to inside the Skype chat protocol. I can't recall if there is a limit to how many users can be involved in a group or public chat session. I don't think there is any limit. Be a better friend, newshound, and know-
Re: [agi] organising parallel processes
Hi Brad, I am interested in Skype of course as a VOIP provider for me personally. I have just re-installed the client to chat with a potential collaborator. You propose Skype as a communications backbone for Texai that solves all the problems I foresee with getting past ISPs and home DSL/cable/wireless routers to reach at-home Texai users. And I, as a result, agree that I will evaluate Skype for this purpose should n2n, and all other open-source alternatives fail. One of my self-imposed constraints is to develop free software (i.e. GPL) and reuse open source solutions. Skype uses a proprietary protocol and is closed-source. I suppose that client software that I write to their Java API can be licensed GPL but the network itself is closed. On the other hand n2n is GPL v3 and I should be able to borrow the most relevant features of Skype for the Texai peer-to-peer communications backbone that I will implement on top of n2n, should it actually work for me. From the Wikipedia article on Skype: * Skype operates on a peer-to-peer model * three main entities: supernodes, ordinary nodes and the login server * each client builds and refreshes a list of reachable nodes known as the host cache. * contains IP address and port numbers of supernodes * supernodes relay communications to other clients behind a firewall * any skype client can become a supernode if it has good bandwidth, no firewall and adequate processing power * the Skype user directory is entirely decentralized and distributed among the nodes of the network—i.e., users' computers * which allows the network to scale very easily to large sizes (currently about 240 million users)[44] without a complex centralized infrastructure costly to the Skype Group A good article on the details of these featuresl is here. The most important attributes of Skype are evidence that a peer-to-peer network can: * scale to several hundred million users * be done with no costly complex centralized infrastructureThanks so much for your detailed technical suggestion. Cheers. -Steve Stephen L. Reed Artificial Intelligence Researcher http://texai.org/blog http://texai.org 3008 Oak Crest Ave. Austin, Texas, USA 78704 512.791.7860 - Original Message From: Brad Paulsen <[EMAIL PROTECTED]> To: agi@v2.listbox.com Sent: Sunday, May 11, 2008 5:31:16 PM Subject: Re: [agi] organising parallel processes Steve, This may be a naive question, but have you considered using Skype as a P2P mechanism? The Skype User Agent (UA) software has been downloaded 100's of millions of times and the average number of users on-line at any given time is in the 8-11 million range. Skype publishes a (free) API specification for the UA which includes their very powerful and user-friendly chat system. This system can be used to host both group and public chats and also to upload/download any type of file (typical uneven P2P file transfer rates, but it's very reliable and accessible via the UA API). There are API's for Win32, Linux and Macintosh. There is also, if memory serves, a Java-based API that should run on any platform that has a JRE (although, the UA API is a text-based, message-passing API and is, thus, only platform dependent at what Skype calls the "Communications Layer"). And I notice just now, there's a new Python wrapper for the API (again, available on any platform that can host the Python run-time -- which list includes the usual suspects). There can be multiple programs (Texai agents?) concomitantly using the single Skype UA via the API on a single machine. Anyhow, you get a very powerful VOIP/text chat P2P user agent for free. You don't need to (can't, in fact) host the UA download site. You just put a Skype graphic on your site that points to the Skype-hosted download site. Check out Skype's developer site: https://developer.skype.com/. Cheers, Brad P.S. The Texai server(s) could just be a Skype UA, with its own Skype username. You could wrap any text-based application-layer protocol you'd want to inside the Skype chat protocol. I can't recall if there is a limit to how many users can be involved in a group or public chat session. I don't think there is any limit. Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
Steve, This may be a naive question, but have you considered using Skype as a P2P mechanism? The Skype User Agent (UA) software has been downloaded 100's of millions of times and the average number of users on-line at any given time is in the 8-11 million range. Skype publishes a (free) API specification for the UA which includes their very powerful and user-friendly chat system. This system can be used to host both group and public chats and also to upload/download any type of file (typical uneven P2P file transfer rates, but it's very reliable and accessible via the UA API). There are API's for Win32, Linux and Macintosh. There is also, if memory serves, a Java-based API that should run on any platform that has a JRE (although, the UA API is a text-based, message-passing API and is, thus, only platform dependent at what Skype calls the "Communications Layer"). And I notice just now, there's a new Python wrapper for the API (again, available on any platform that can host the Python run-time -- which list includes the usual suspects). There can be multiple programs (Texai agents?) concomitantly using the single Skype UA via the API on a single machine. Anyhow, you get a very powerful VOIP/text chat P2P user agent for free. You don't need to (can't, in fact) host the UA download site. You just put a Skype graphic on your site that points to the Skype-hosted download site. Check out Skype's developer site: https://developer.skype.com/. Cheers, Brad P.S. The Texai server(s) could just be a Skype UA, with its own Skype username. You could wrap any text-based application-layer protocol you'd want to inside the Skype chat protocol. I can't recall if there is a limit to how many users can be involved in a group or public chat session. I don't think there is any limit. - Original Message - From: Stephen Reed To: agi@v2.listbox.com Sent: Tuesday, May 06, 2008 1:04 PM Subject: Re: [agi] organising parallel processes Hi YKY, You said: The distributive agents would be owned by different people on the net, who would want their agents to do different things for them. This occurs simultaneously. We need to distinguish 2 situations: A) where all the agents cooperate to solve ONE problem B) where agents are solving their own problems Your scheme would be useful for A. But it seems that most AGI users would want B. Which problem do you intend to solve? In case B, your scheme would add a lot of complications and whether it'd be beneficial or not is rather unclear. I believe the opposite of what you say I hope that my following explanation will help converge our thinking. Let me first emphasize that I plan a vast multitude of specialized agencies, in which each agency has a particular mission. This pattern is adopted from human agencies. For example, an human advertising agency has as its mission the preparation of advertising media for its customers. Agents, who are governed by the agency, fulfill its mission by carrying out commanded tasks, responding to perceived events, reporting to superiors and controlling subordinates. In the Texai organization I envisage, it would never be the case that all agents or agencies try to solve the same problem - not (A) above. Rather, if a problem arose that is both urgent and sufficiently important, then the agency capable of solving that problem would commandeer the computing resources of other, lower priority, agencies. This is analogous to a natural disaster affecting a human organization - in a flood, everyone changes roles to move materials above the water line. In my plan for Texai, the agents could cooperate together only to the extent that the problem to be solved could be decomposed to match the capabilities of particular agencies. Agents lacking the capability to help out would be omitted from that job. From the standpoint of AGI users, a Texai agent exists for each specialized role (i.e. interest, activity-type) that the user wants - (B) above. My current thinking is to a first provide an instant-message chatbot that intelligent acquires knowledge and skills. The user would only require an instant messaging client, (e.g. text messaging on a cellphone, Google Chat, Yahoo Chat, IRC, AIM, email, etc.). The user would name one or more Texai chatbots and assign them roles (i.e. sports buddy, family buddy, work buddy, cooking buddy, financial buddy, product adviser buddy, matchmaker buddy, etc. ). The required servers would, at the kickoff, be supplied by me. Users would be offered a higher level of benefit if they agree to download a Texai instance, and to leave it running as much as possible, connected to the net. When not providing work for the owning user, it would add its agent-hosting server capability to the Texai cloud. At the time that the Texai bootstrap
Re: [agi] organising parallel processes, try2
- Original Message From: rooftop8000 <[EMAIL PROTECTED]> To: agi@v2.listbox.com Sent: Saturday, May 10, 2008 12:35:49 PM Subject: Re: [agi] organising parallel processes, try2 Do you think a hierarchy structure could be too restrictive? No, I have not yet found a use case that would change my opinion. What if low-hierarchy processes need to make a snap decision to turn off high-level ones. In a hierarchical control system, a process should be deactivated by its superior node. A low-hierarchy process can make a snap decision but it cannot turn off high-level ones. It can urgently pass along its perceptions and status to its commanding process and request their mutual deactivation. How are new processes put into the hierarchy? Agencies can spawn additional agents to help fulfill their mission. Likewise they can spawn child agencies to delegate a submission in support of their own mission. Some agencies will have as their mission, the composition and creation of other agencies. What if a high-level process is faulty and should be deactivated? A faulty process should be deactivated by its superior process. Each process, even a high level process will have a superior process which can deactivate it, except for the topmost process, whose sole mission is to be friendly. Every process is responsible for ensuring that their directly subordinate processes are not faulty, and are behaving in a friendly manner according to the policies in effect for that agency. Do you know any already working systems like the one you are making (preferably ones that have a non-trivial scheme of activation, hierarchy/organization or scheduling)? Unfortunately, I do not know of any systems like the one that I am making. I suggest that you survey the literature for the topic of agent scheduling. A very good place to start is Citeseer. Cheers. -Steve Stephen L. Reed Artificial Intelligence Researcher http://texai.org/blog http://texai.org 3008 Oak Crest Ave. Austin, Texas, USA 78704 512.791.7860 Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes, try2
Do you think a hierarchy structure could be too restrictive? What if low-hierarchy processes need to make a snap decision to turn off high-level ones. How are new processes put into the hierarchy? What if a high-level process is faulty and should be deactivated?I think the 'scheduling' should be a big part of the actual problem solving. (Deciding and learning which resources to use, activating strategies...). Do you know any already working systems like the one you are making (preferably ones that have a non-trivial scheme of activation, hierarchy/organisation or scheduling)? thanks--- On Fri, 5/9/08, Stephen Reed <[EMAIL PROTECTED]> wrote:From: Stephen Reed <[EMAIL PROTECTED]>Subject: Re: [agi] organising parallel processes, try2To: agi@v2.listbox.comDate: Friday, May 9, 2008, 11:04 PMHi,The Texai system, as I envision its deployment, will have the following characteristics:a lot of processesa lot of hostsmessage passing between processes, that are arranged in a hierarchical control systemhigher level processes will be deliberative, executing compiled production rules (e.g. acquired skills)lower level processes will be reactive, even so far as not to contain any state whatsoever, if the sensed world itself will sufficesome higher level processes on each host will be agents of the Host Resource Allocation Agency and will have the learned skills sufficient to optimally allocate host resources (e.g. CPU cores, RAM, KB cache) on behalf of other processes (i.e. agents)I have not yet thought much about how these resources should be allocated except to initially adopt the scheduling algorithms used by the Linux OS for its processes (e.g. each process has a priority, schedule the processes to achieve maximum use of the resources, allow real-time response for processes that must have it, do not allow low priority processes to starve, etc.)Cheers.-Steve Stephen L. ReedArtificial Intelligence Researcherhttp://texai.org/bloghttp://texai.org3008 Oak Crest Ave.Austin, Texas, USA 78704512.791.7860- Original Message From: rooftop8000 <[EMAIL PROTECTED]>To: agi@v2.listbox.comSent: Friday, May 9, 2008 3:24:14 PMSubject: [agi] organising parallel processes, try2I'll try to explain it more..Suppose you have a lot of processes, all containing some production rule(s). They communicate with messages. They all should get cpu time somehow. Some processes just do low-level responses, some monitor other processes, etc. Some are involved in looking at the world, some involved in planning, etc. I'm thinking of a system like SOAR, but in parallel. Are there any systems that work like this, and have some way to organise the processes (assign cpu time, guide the communication, group according to some criteria..) I'd like to look at a bunch of those and compare the pros & consthanks Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now. agi | Archives | Modify Your Subscription
Re: [agi] organising parallel processes, try2
Hi, The Texai system, as I envision its deployment, will have the following characteristics: * a lot of processes * a lot of hosts * message passing between processes, that are arranged in a hierarchical control system * higher level processes will be deliberative, executing compiled production rules (e.g. acquired skills) * lower level processes will be reactive, even so far as not to contain any state whatsoever, if the sensed world itself will suffice * some higher level processes on each host will be agents of the Host Resource Allocation Agency and will have the learned skills sufficient to optimally allocate host resources (e.g. CPU cores, RAM, KB cache) on behalf of other processes (i.e. agents) * I have not yet thought much about how these resources should be allocated except to initially adopt the scheduling algorithms used by the Linux OS for its processes (e.g. each process has a priority, schedule the processes to achieve maximum use of the resources, allow real-time response for processes that must have it, do not allow low priority processes to starve, etc.) Cheers. -Steve Stephen L. Reed Artificial Intelligence Researcher http://texai.org/blog http://texai.org 3008 Oak Crest Ave. Austin, Texas, USA 78704 512.791.7860 - Original Message From: rooftop8000 <[EMAIL PROTECTED]> To: agi@v2.listbox.com Sent: Friday, May 9, 2008 3:24:14 PM Subject: [agi] organising parallel processes, try2 I'll try to explain it more.. Suppose you have a lot of processes, all containing some production rule(s). They communicate with messages. They all should get cpu time somehow. Some processes just do low-level responses, some monitor other processes, etc. Some are involved in looking at the world, some involved in planning, etc. I'm thinking of a system like SOAR, but in parallel. Are there any systems that work like this, and have some way to organise the processes (assign cpu time, guide the communication, group according to some criteria..) I'd like to look at a bunch of those and compare the pros & cons thanks Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?&; Powered by Listbox: http://www.listbox.com Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
[agi] organising parallel processes, try2
I'll try to explain it more.. Suppose you have a lot of processes, all containing some production rule(s). They communicate with messages. They all should get cpu time somehow. Some processes just do low-level responses, some monitor other processes, etc. Some are involved in looking at the world, some involved in planning, etc. I'm thinking of a system like SOAR, but in parallel. Are there any systems that work like this, and have some way to organise the processes (assign cpu time, guide the communication, group according to some criteria..) I'd like to look at a bunch of those and compare the pros & cons thanks Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
Thanks Andi for the kind words. My directly preceding post is about the combination of AI-hard problems that I am trying to solve. It hints that incrementally solving the bunch of them may be achievable, but that sufficiently solving one of them alone may not be. I've given automatic programming a lot of thought over my rather long (i.e. 40 years) experience programming computers. While at Cycorp, I persisted abstract syntax trees for an Turing-complete agent control language into the Cyc knowledge base. I had the idea then that Cyc could thus reason about programs and begin to author portions of them. But the idea did not gain traction with our sponsors nor with Cycorp management, so it languished. My current thinking about automatic programming (a.k.a program synthesis) is centered on the notion of program composition. This activity is a skill that involves both algorithmic knowledge as well as domain knowledge. I am now building an essential set of agent capabilities to compose Java classes, variables, methods, and statements. These capabilities will be associated with preconditions, input/output bindings, and postconditions. A capability matcher library will find candidate agent capabilities that match the given task preconditions and postconditions via subsumption reasoning. I intend to hand-craft some of these compositions into executable Java programs to build use cases for the essential programming skills required. Note that I am building a program composition facility rather than a task-solving interpreter. What I hope to accomplish is a system that solves a problem by writing a program that, when compiled, performs the given task. This will be much faster to repeatedly execute because the overhead of program composition greatly diminishes once the tasks are well understood (e.g. task variations become program parameters and thus no need to compose a new program). Earlier in the project I had hoped to postpone this phase until after the bootstrap English dialog system is completed. But I see now that the general facility of skill acquisition will require precondition and postcondition vocabulary. And because all skills will bottom out into the execution of a Java method, I made the decision to precede now with defining these primitives as skills. For representing pre-and-post conditions I am using an elaborated version of RDF, based upon formula-manipulating classes that I previously released for the Incremental Fluid Construction Grammar vocabulary. I added IMPLIES, NOT, OR, and AND logical operators and variables. Today I finished a class that performs canonicalization (i.e. transformation to conjunctive normal form) and hopefully tomorrow I will complete the capability subsumption matcher. Interested readers can follow my source code commits here. Having a dialog system simplifies automatic programming because Texai will be able to ask for help when required from its mentor, and will not be expected to complete the job on its own. I am resigned to the fact however that initially programming via English dialog will be much more tedious than directly performing the task myself. Until the student exceeds the skill of the mentor, programming this way will be hard. Cheers, -Steve Stephen L. Reed Artificial Intelligence Researcher http://texai.org/blog http://texai.org 3008 Oak Crest Ave. Austin, Texas, USA 78704 512.791.7860 - Original Message From: "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> To: agi@v2.listbox.com Sent: Tuesday, May 6, 2008 3:36:38 PM Subject: Re: [agi] organising parallel processes Stephen Reed wrote: > At the time that the Texai bootstrap English dialog system is > available, I'll begin fleshing out the hundreds of agencies for > which I hope to recruit human mentors. Each agency I establish will > have paragraphs of English text to describe its mission, including > its relationship with commanding and subordinate agencies. Mentors > then will use the dialog system to teach each of their respective > agencies the knowledge and skills it requires for its mission. > Learned skills will be compiled into Java code for execution. > Hopefully this will advance into automatic programming from high > level requirements, because programming is a skill which can be > taught. Furthermore, I plan agencies whose missions will accomplish > recursive self-improvement (e.g. propagate best practices from the > discovering agency to all applicable agencies). This jumped out at me because I just read an article where someone was talking about how we don't know how to program: http://paulspontifications.blogspot.com/2008/05/under-appreciated-fact-we-dont-know-how.html There is no real process for it. We don't really know how it works. There are plenty of courses, and it seems like we teach people to
Re: [agi] organising parallel processes
The blog entry is amusing. I started writing software at quite young age (about 10), and I always assumed that it was an art rather like writing a novel or a musical composition. So when I grew older and became employed to write programs I was shocked in my early career to find that some people consider programming to be an activity requiring no creative input. --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
--- [EMAIL PROTECTED] wrote: http://paulspontifications.blogspot.com/2008/05/under-appreciated-fact-we-dont-know-how.html Computer programming is an art, as Knuth observed. I teach classes in C++, Java, and x86 assember. I can show my students some simple drawings and show them how to hold a brush. But I can't make a Picasso out of them. -- Matt Mahoney, [EMAIL PROTECTED] --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
Stephen Reed wrote: At the time that the Texai bootstrap English dialog system is available, I'll begin fleshing out the hundreds of agencies for which I hope to recruit human mentors. Each agency I establish will have paragraphs of English text to describe its mission, including its relationship with commanding and subordinate agencies. Mentors then will use the dialog system to teach each of their respective agencies the knowledge and skills it requires for its mission. Learned skills will be compiled into Java code for execution. Hopefully this will advance into automatic programming from high level requirements, because programming is a skill which can be taught. Furthermore, I plan agencies whose missions will accomplish recursive self-improvement (e.g. propagate best practices from the discovering agency to all applicable agencies). This jumped out at me because I just read an article where someone was talking about how we don't know how to program: http://paulspontifications.blogspot.com/2008/05/under-appreciated-fact-we-dont-know-how.html There is no real process for it. We don't really know how it works. There are plenty of courses, and it seems like we teach people to do it, but it is a very mysterious thing. A good portion of people just don't get it when they try to learn. Anyway, it is a very hard problem, and I wouldn't be surprised if programming were an AI-complete problem, because it sure seems like programming always involves arbitrary amounts of domain knowledge, theories of mind, and who knows what all else. But I have to admit I am a fan of compiled programs as part of a set of skills of an intelligent computer agent. The idea showed up in an essay (OK, blog entry) I wrote recently. Also, I want to thank Stephen for adding to this community. He really stood out at AGI-08 as a level-headed, diligent creative force working toward AGI. andi --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
> > > On 5/6/08, Stephen Reed <[EMAIL PROTECTED]> wrote: > > > > I believe the opposite of what you say I hope that my following > > > > explanation will help converge our thinking. Let me first emphasize > > > > that I plan a vast multitude of specialized agencies, in which each > > > > agency has a particular mission. This pattern is adopted from human > > > > agencies. For example, an human advertising agency has as its mission > > > > the preparation of advertising media for its customers. Agents, who > > > > are governed by the agency, fulfill its mission by carrying out > > > > commanded tasks, responding to perceived events, reporting to superiors > > > > and controlling subordinates. If the agents have common sense, they can use their common sense to broker capabilities among themselves, but that is begging the question because we don't have commonsense AGI yet. A more interesting possibility is whether we can spawn a large number of very *weak* intelligent agents over the net, who don't have common sense, and let commonsense emerge out of them. It seems possible, but we'll need to design distributive algorithms for reasoning, especially distributive deduction... YKY --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
--- "YKY (Yan King Yin)" <[EMAIL PROTECTED]> wrote: > On 5/4/08, Stephen Reed <[EMAIL PROTECTED]> wrote: > > As perhaps you know, I want to organize Texai as a vast multitude > of agents situated in a hierarchical control system, grouped as > possibly > redundant, load-sharing, agents within an agency sharing a specific > mission. I have given some thought to the message content, and > assuming > that my bootstrap English dialog effort actually works, then English > language as an Agent Control Language vocabulary becomes possible at > the > more deliberative, higher levels of the hierarchy, when the duration > of NL parsing and generation is small compared to the overall task > duration. > > Let me offer my naive opinion: > > The distributive agents would be owned by different people on the > net, who > would want their agents to do *different* things for them. This > occurs simultaneously. > > We need to distinguish 2 situations: > A) where all the agents cooperate to solve ONE problem > B) where agents are solving their own problems > > Your scheme would be useful for A. But it seems that most AGI users > would want B. Which problem do you intend to solve? > > In case B, your scheme would add a lot of complications and whether > it'd be beneficial or not is rather unclear. > > YKY We already have many examples where cooperation between selfish agents results in solving problems that could not be solved individually. AIs would ultimately communicate faster and more effectively than humans, resulting in a more efficient division of labor and better coordination of efforts. -- Matt Mahoney, [EMAIL PROTECTED] --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
Hi YKY, You said: The distributive agents would be owned by different people on the net, who would want their agents to do different things for them. This occurs simultaneously. We need to distinguish 2 situations: A) where all the agents cooperate to solve ONE problem B) where agents are solving their own problems Your scheme would be useful for A. But it seems that most AGI users would want B. Which problem do you intend to solve? In case B, your scheme would add a lot of complications and whether it'd be beneficial or not is rather unclear. I believe the opposite of what you say I hope that my following explanation will help converge our thinking. Let me first emphasize that I plan a vast multitude of specialized agencies, in which each agency has a particular mission. This pattern is adopted from human agencies. For example, an human advertising agency has as its mission the preparation of advertising media for its customers. Agents, who are governed by the agency, fulfill its mission by carrying out commanded tasks, responding to perceived events, reporting to superiors and controlling subordinates. In the Texai organization I envisage, it would never be the case that all agents or agencies try to solve the same problem - not (A) above. Rather, if a problem arose that is both urgent and sufficiently important, then the agency capable of solving that problem would commandeer the computing resources of other, lower priority, agencies. This is analogous to a natural disaster affecting a human organization - in a flood, everyone changes roles to move materials above the water line. In my plan for Texai, the agents could cooperate together only to the extent that the problem to be solved could be decomposed to match the capabilities of particular agencies. Agents lacking the capability to help out would be omitted from that job. >From the standpoint of AGI users, a Texai agent exists for each specialized >role (i.e. interest, activity-type) that the user wants - (B) above. My >current thinking is to a first provide an instant-message chatbot that >intelligent acquires knowledge and skills. The user would only require an >instant messaging client, (e.g. text messaging on a cellphone, Google Chat, >Yahoo Chat, IRC, AIM, email, etc.). The user would name one or more Texai >chatbots and assign them roles (i.e. sports buddy, family buddy, work buddy, >cooking buddy, financial buddy, product adviser buddy, matchmaker buddy, etc. >). The required servers would, at the kickoff, be supplied by me. Users >would be offered a higher level of benefit if they agree to download a Texai >instance, and to leave it running as much as possible, connected to the net. >When not providing work for the owning user, it would add its agent-hosting >server capability to the Texai cloud. At the time that the Texai bootstrap English dialog system is available, I'll begin fleshing out the hundreds of agencies for which I hope to recruit human mentors. Each agency I establish will have paragraphs of English text to describe its mission, including its relationship with commanding and subordinate agencies. Mentors then will use the dialog system to teach each of their respective agencies the knowledge and skills it requires for its mission. Learned skills will be compiled into Java code for execution. Hopefully this will advance into automatic programming from high level requirements, because programming is a skill which can be taught. Furthermore, I plan agencies whose missions will accomplish recursive self-improvement (e.g. propagate best practices from the discovering agency to all applicable agencies). While at Cycorp, I created two previous small versions of the agency graph, which of course were very much focused on the needs of Cycorp. Now I am inspired by the Wikipedia, to work first on agencies that are required for basic infrastructure and then let mentors, governed by locally-applicable human law, and governed by consensus, establish agencies as they see fit. When I get further along on these ideas, especially when I have an initial set of agencies and missions, I would very much like to vet that organization chart with the readers of this list, before tying to deploy it. Cheers. -Steve Stephen L. Reed Artificial Intelligence Researcher http://texai.org/blog http://texai.org 3008 Oak Crest Ave. Austin, Texas, USA 78704 512.791.7860 - Original Message From: YKY (Yan King Yin) <[EMAIL PROTECTED]> To: agi@v2.listbox.com Sent: Tuesday, May 6, 2008 10:36:16 AM Subject: Re: [agi] organising parallel processes On 5/4/08, Stephen Reed <[EMAIL PROTECTED]> wrote: > As perhaps you know, I want to organize Texai as a vast multitude of agents > situated in a hierarchical control system, grouped as possibly redundant, > load-sharing, agents within an a
Re: [agi] organising parallel processes
On 5/4/08, Stephen Reed <[EMAIL PROTECTED]> wrote: > As perhaps you know, I want to organize Texai as a vast multitude of agents situated in a hierarchical control system, grouped as possibly redundant, load-sharing, agents within an agency sharing a specific mission. I have given some thought to the message content, and assuming that my bootstrap English dialog effort actually works, then English language as an Agent Control Language vocabulary becomes possible at the more deliberative, higher levels of the hierarchy, when the duration of NL parsing and generation is small compared to the overall task duration. Let me offer my naive opinion: The distributive agents would be owned by different people on the net, who would want their agents to do *different* things for them. This occurs simultaneously. We need to distinguish 2 situations: A) where all the agents cooperate to solve ONE problem B) where agents are solving their own problems Your scheme would be useful for A. But it seems that most AGI users would want B. Which problem do you intend to solve? In case B, your scheme would add a lot of complications and whether it'd be beneficial or not is rather unclear. YKY --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
--- Stephen Reed <[EMAIL PROTECTED]> wrote: > Hi Matt, > > I am glad you are looking deeply into the issue of how to deploy > vastly distributed AGI. I have some follow-up questions regarding > your informative comments. > > > ...but NAT hole punching is not really a solution. I have a home > router/firewall/NAT that by default blocks all incoming traffic (TCP, > UDP, ICMP) not initiated by me. I could configure the firewall to > open > a port for P2P traffic, but in order to get a peer widely deployed, > there has to be an incentive for users to do so. > > I've read the n2n paper and downloaded their software, but not yet > actually evaluated it. All my home computers are behind the same > NAT/router/firewall (i.e. a Netgear Cable/DSL router), so I postponed > having to collaborate with someone else who is also behind a NAT. My > understanding of n2n is that, like you say, each end-user > periodically contacts a public, redundant, super node, to maintain a > lease. The client opens the TCP socket connection, and the super > node accepts the connection request. This behavior should not be a > problem with a firewall or NAT (Network Address Translation facility > in the user's router), because the end user behind the NAT has the > client role - not the server role. Then the super node can inform > each end user's client of the other's NAT-provided IP address and > port, so that the peers can directly exchange packets as though they > were servers. The key point is that initially both of them opened a > TCP socket as a client; > they did not accept a connection as a server. Only so-called > symmetric NATs would force the super node to relay every packet from > peer to peer. There is some downloadable software that will > determine whether your NAT is symmetric. Mine, like most are not. > With the advent of Skype and other P2P, VOIP (Internet phone) > services, users are purchasing NATs that are not symmetric, but > rather support the NAT hole-punching Skype employs. The problem is not a technical one, but an economic one. People can reconfigure their firewalls to run P2P software. Your problem is to figure out how to make it worth the user's effort to do it, in addition to downloading, installing, and using your software. Skype's solution is a temporary one. Ultimately if P2P is widely deployed, networks will become more friendly to it. > Matt, given my clarification, would you then agree that you as an end > user need no firewall or router configuration beyond the defaults to > make use of n2n? Or could you please correct my understanding of the > n2n paper here. According to this paper: http://luca.ntop.org/n2n.pdf n2n emulates Ethernet on top of an application protocol like HTTP. You need a supernode with a public IP address (a server) to join a virtual network. > My plan > is deploy Texai in a distributed fashion with minimal need on > centralized infrastructure and also at the lowest possible cost. I > think that I can afford a few dedicated servers at ServerPronto for > 30 USD per month per server. Perhaps a couple of these could handle > a million Texai clients at less than 2,000 lease-renewal connections > per second apiece. I would distribute the n2n software as part of > the Texai end-user download, as it has the GPL license. A setup > wizard would inform the user if they had a symmetric NAT - that would > require replacement > before Texai could benefit them. I think there are scaling problems with n2n according to the paper. It would not work as an internet-wide Ethernet, which is what it would ultimately become. Well, it might, but I don't think that is the best approach. A central server would still be needed to set up P2P connections between clients behind NATs. For users who can't or don't want to reconfigure their firewalls, I think that you could tunnel a connection through UDP port 53 (DNS) on one end. When a peer contacts your server, you give it the IP and port of the other peer. To the firewall it looks like a DNS request and response. Of course there are many other temporary solutions with centralized servers that should be good enough to work the bugs out of your system. What you want to do is make sure there will be no barriers to switching existing users to a purely distributed system later. That will be very hard is you have a lot of users. Consider the problems Skype will have as the number of supernodes dwindles. You will probably need several different protocols (to be abandoned later) and make sure they can talk to each other. > Maybe for distributed AI you could get away with not using > encryption, > but you will still need some way to authenticate users. Otherwise > your > system is vulnerable to malicious users inserting bogus data or spam > while impersonating another source with a high reputation. > > The n2n software fully encrypts TCP messages by providing a VPN > (Virtual Private Network). So this should not be a p
Re: [agi] organising parallel processes
Hi Matt, I am glad you are looking deeply into the issue of how to deploy vastly distributed AGI. I have some follow-up questions regarding your informative comments. ...but NAT hole punching is not really a solution. I have a home router/firewall/NAT that by default blocks all incoming traffic (TCP, UDP, ICMP) not initiated by me. I could configure the firewall to open a port for P2P traffic, but in order to get a peer widely deployed, there has to be an incentive for users to do so. I've read the n2n paper and downloaded their software, but not yet actually evaluated it. All my home computers are behind the same NAT/router/firewall (i.e. a Netgear Cable/DSL router), so I postponed having to collaborate with someone else who is also behind a NAT. My understanding of n2n is that, like you say, each end-user periodically contacts a public, redundant, super node, to maintain a lease. The client opens the TCP socket connection, and the super node accepts the connection request. This behavior should not be a problem with a firewall or NAT (Network Address Translation facility in the user's router), because the end user behind the NAT has the client role - not the server role. Then the super node can inform each end user's client of the other's NAT-provided IP address and port, so that the peers can directly exchange packets as though they were servers. The key point is that initially both of them opened a TCP socket as a client; they did not accept a connection as a server. Only so-called symmetric NATs would force the super node to relay every packet from peer to peer. There is some downloadable software that will determine whether your NAT is symmetric. Mine, like most are not. With the advent of Skype and other P2P, VOIP (Internet phone) services, users are purchasing NATs that are not symmetric, but rather support the NAT hole-punching Skype employs. Matt, given my clarification, would you then agree that you as an end user need no firewall or router configuration beyond the defaults to make use of n2n? Or could you please correct my understanding of the n2n paper here. I also looked at N2N. It creates a virtual IP layer so it should work for both TCP and UDP. However it still needs supernodes with public IP addresses to set up connections. It also appears that the software needs to run at both ends. I agree that public (i.e. static) IP addresses are needed for the super nodes, and I agree that n2n software is required for each peer user. As long as the super nodes are not relaying any TCP messages between peers (e.g. those behind symmetric NATs), then I believe that a few redundant super nodes can support a vast number of clients, in the same fashion as the Network Time Protocol is deployed. My plan is deploy Texai in a distributed fashion with minimal need on centralized infrastructure and also at the lowest possible cost. I think that I can afford a few dedicated servers at ServerPronto for 30 USD per month per server. Perhaps a couple of these could handle a million Texai clients at less than 2,000 lease-renewal connections per second apiece. I would distribute the n2n software as part of the Texai end-user download, as it has the GPL license. A setup wizard would inform the user if they had a symmetric NAT - that would require replacement before Texai could benefit them. Maybe for distributed AI you could get away with not using encryption, but you will still need some way to authenticate users. Otherwise your system is vulnerable to malicious users inserting bogus data or spam while impersonating another source with a high reputation. The n2n software fully encrypts TCP messages by providing a VPN (Virtual Private Network). So this should not be a problem right? Texai will have to provide a user authentication facilty anyway to attach credentials to what a user teaches it, and also to safeguard private information designated by the user. Thanks for the advice. -Steve Stephen L. Reed Artificial Intelligence Researcher http://texai.org/blog http://texai.org 3008 Oak Crest Ave. Austin, Texas, USA 78704 512.791.7860 - Original Message From: Matt Mahoney <[EMAIL PROTECTED]> To: agi@v2.listbox.com Sent: Monday, May 5, 2008 1:43:20 PM Subject: Re: [agi] organising parallel processes --- Stephen Reed <[EMAIL PROTECTED]> wrote: > Matt (or anyone else), have you gotten as far as thinking about NAT > hole punching or some other solution for peer-to-peer? Yes, but NAT hole punching is not really a solution. I have a home router/firewall/NAT that by default blocks all incoming traffic (TCP, UDP, ICMP) not initiated by me. I could configure the firewall to open a port for P2P traffic, but in order to get a peer widely deployed, there has to be an incentive for users to do so. I looked at Skype. http://www1.cs.columbia.edu/~library/TR-repository/reports/reports-2004/cucs-039-
Re: [agi] organising parallel processes
--- Stephen Reed <[EMAIL PROTECTED]> wrote: > Matt (or anyone else), have you gotten as far as thinking about NAT > hole punching or some other solution for peer-to-peer? Yes, but NAT hole punching is not really a solution. I have a home router/firewall/NAT that by default blocks all incoming traffic (TCP, UDP, ICMP) not initiated by me. I could configure the firewall to open a port for P2P traffic, but in order to get a peer widely deployed, there has to be an incentive for users to do so. I looked at Skype. http://www1.cs.columbia.edu/~library/TR-repository/reports/reports-2004/cucs-039-04.pdf Their approach (as of 2004) to initiate a connection is to first try UDP, and if that is blocked by a firewall, then try TCP on a high port number, and then on ports 80 and 443 which aren't usually blocked. If none of these work (like trying to contact me), then both peers have to relay messages through a supernode with a public (not necessarily static) IP address that admits at least one of these ports. I would have to continually poll supernodes to see if I have any incoming calls. This is convenient because users can run Skype without reconfiguring their firewalls. However it adds traffic to supernodes. The Skype software detects if you have a firewall/NAT, and if not, your computer automatically becomes a supernode and there is no option (as of 2004) to turn this off. This creates an incentive to install a NAT, which is the opposite of what you want. I also looked at N2N. It creates a virtual IP layer so it should work for both TCP and UDP. However it still needs supernodes with public IP addresses to set up connections. It also appears that the software needs to run at both ends. A second problem is that Skype is not truly distributed. There is a central login server. Skype traffic is encrypted with AES using public key RSA to negotiate keys. However, the login server has to validate the public keys. The problem is fundamental to public key cryptography. I can publish a public key so that anyone can send me encrypted messages that only I can read. However, this does not stop people from saying "I'm Matt and here is my public key" to read messages intended for me. The Skype login server prevents this impersonation. SSH has this problem too. To set up a secure server, I register my public key with a "trusted authority" which can vouch that I am really me by signing my key. Another authority has to vouch for it, ultimately leading to a chain of certificate authorities leading back to a root authority like Verisign or Microsoft. Maybe for distributed AI you could get away with not using encryption, but you will still need some way to authenticate users. Otherwise your system is vulnerable to malicious users inserting bogus data or spam while impersonating another source with a high reputation. -- Matt Mahoney, [EMAIL PROTECTED] --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
Mike said, I assume that a 'conversation' would include all nodes interested in the discussion, and that when new nodes join they would be brought up to date and could then contribute resources. Exactly, I would employ Jabber, a low bandwidth, client/server instant messaging protocol to initiate this process. But because I desire a partitioned, distributed, and locally-cached knowledge base, there will be a need for agent peers to frequently exchange knowledge chunks with other peers. Its for this latter low-latency, high bandwidth P2P communication that I am considering NAT hole punching. Is there already an existing framework for this kind of communication? Not that I have found that fits close enough for my purpose. Please if anyone has suggestions, let me know. I want to reuse existing solutions as much as possible. By the way, the N2N software provides TCP connectivity, not UDP and the former is closer to the needs of the Texai software application. If you're going to build it, do you intend to keep the mechanism open enough that it could transport other kinds of data, or keep it tightly coupled to your application? N2N is very open in that it establishes a VPN that any application can then use. Texai by design will be a friendly system. Among the useful behaviors that users teach it may be the transport of non-knowledge data from one peer to another. There will eventually be a policy mechanism throughout the Texai agents that would ensure that Texai agents behave in a legal manner, that should prevent the transport of materials that Texai knows the user cannot legally distribute. Cheers. -Steve Stephen L. Reed Artificial Intelligence Researcher http://texai.org/blog http://texai.org 3008 Oak Crest Ave. Austin, Texas, USA 78704 512.791.7860 - Original Message From: Mike Dougherty <[EMAIL PROTECTED]> To: agi@v2.listbox.com Sent: Monday, May 5, 2008 12:26:43 AM Subject: Re: [agi] organising parallel processes On Sun, May 4, 2008 at 11:28 PM, Stephen Reed <[EMAIL PROTECTED]> wrote: > be like Skype, the popular non-scum Internet phone service that also > performs NAT hole punching (a.k.a. NAT traversal). I was not aware Skype worked like that- thanks for the info. If you are using a similar form of UDP-listener to allow the client to make a connection out where the firewall then allows responses in, you wouldn't be violating existing protocol. (and admins could turn off the feature that auto-whitelists UDP responce) > services. Relays could become performance bottlenecks too. For an initial > deployment I would like to try direct P2P unless you have a better > objection, or maybe you could just clarify the remarks you already made, > given my own clarification herein. Of course a test network can be direct P2P. I can configure my firewall (both dedicated hardware and per-machine software) to allow whatever I want. I was suggesting that a dynamic network could allow nodes to advertise their capability and perform relay services to clients that do not have direct access. From the article you posted above, it seems that the auto-whitelisting of ports for UDP response ( my firewall calls them triggered ports - if I send out port X, expect legitimate return replies on X+1 through X+Y) - your client application would only need to access any public node in the cloud to become an active server. > Thanks for the great comment. I do really do not want to waste time with the > wrong P2P design decision. I like to brainstorm. I know a little bit about computer networking. I know a little more about programming. I don't know much about artificial intelligence design, so I've mostly just been lurking here. I think if the nodes in your graph were to reinforce the existence of their connections simply by using them, it would facilitate new connections forming and becoming available for other nodes according to whatever propagation rules you devise. As the developer, you would only need to understand the mechanism on a theoretical level- there would be too much dynamic state to micromanage (or hand-code) a snapshot of the network graph at any given moment. I assume that a 'conversation' would include all nodes interested in the discussion, and that when new nodes join they would be brought up to date and could then contribute resources. Is there already an existing framework for this kind of communication? If you're going to build it, do you intend to keep the mechanism open enough that it could transport other kinds of data, or keep it tightly coupled to your application? I'm on a tangent now... it's difficult to think about this kind of thing via email. ttyl. --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your
Re: [agi] organising parallel processes
On Sun, May 4, 2008 at 11:28 PM, Stephen Reed <[EMAIL PROTECTED]> wrote: > be like Skype, the popular non-scum Internet phone service that also > performs NAT hole punching (a.k.a. NAT traversal). I was not aware Skype worked like that- thanks for the info. If you are using a similar form of UDP-listener to allow the client to make a connection out where the firewall then allows responses in, you wouldn't be violating existing protocol. (and admins could turn off the feature that auto-whitelists UDP responce) > services. Relays could become performance bottlenecks too. For an initial > deployment I would like to try direct P2P unless you have a better > objection, or maybe you could just clarify the remarks you already made, > given my own clarification herein. Of course a test network can be direct P2P. I can configure my firewall (both dedicated hardware and per-machine software) to allow whatever I want. I was suggesting that a dynamic network could allow nodes to advertise their capability and perform relay services to clients that do not have direct access. From the article you posted above, it seems that the auto-whitelisting of ports for UDP response ( my firewall calls them triggered ports - if I send out port X, expect legitimate return replies on X+1 through X+Y) - your client application would only need to access any public node in the cloud to become an active server. > Thanks for the great comment. I do really do not want to waste time with the > wrong P2P design decision. I like to brainstorm. I know a little bit about computer networking. I know a little more about programming. I don't know much about artificial intelligence design, so I've mostly just been lurking here. I think if the nodes in your graph were to reinforce the existence of their connections simply by using them, it would facilitate new connections forming and becoming available for other nodes according to whatever propagation rules you devise. As the developer, you would only need to understand the mechanism on a theoretical level- there would be too much dynamic state to micromanage (or hand-code) a snapshot of the network graph at any given moment. I assume that a 'conversation' would include all nodes interested in the discussion, and that when new nodes join they would be brought up to date and could then contribute resources. Is there already an existing framework for this kind of communication? If you're going to build it, do you intend to keep the mechanism open enough that it could transport other kinds of data, or keep it tightly coupled to your application? I'm on a tangent now... it's difficult to think about this kind of thing via email. ttyl. --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
Hi Mike, Of course you are correct about enterprise networks, or anyone else who would hire a an administrator for their network. I am totally opposed to a rouge, corporate policy-subverting employee would would download software without permission, especially one that would expose a service that endangers their workplace. This is indeed the bane of system and network admins. However, as an end user of the AT&T network, at my home, here in Austin, in which I am the administrator, and who wants only to connect to other such non-enterprise users, I think that your objections do not apply. I want to be like Skype, the popular non-scum Internet phone service that also performs NAT hole punching (a.k.a. NAT traversal). I hope that Texai software eventually will be on the list of approved corporate software. After all I plan for it to be friendly and useful in a compelling way. It will be free to use even for commercial purposes provided that the non-proprietary knowledge and skills it learns are shared for the common wealth. To address your issue with P2P being blocked by ISP, you could allow those nodes with public server capability to proxy connections to client-only nodes. I know that sounds like undue pain, but this is exactly the kind of modular flexibility that distributed agents should be able to work out in response to varying network conditions I accept your advice, and actually had some experience at Cycorp with the Sun JXTA protocol that does this. but I would far prefer to perform direct P2P. Public relays are not only slower, they will be more expensive. AT&T charges more than double for a small range of static IP addresses, and the setup is off the beaten path for most end-users who might offer relay services. Relays could become performance bottlenecks too. For an initial deployment I would like to try direct P2P unless you have a better objection, or maybe you could just clarify the remarks you already made, given my own clarification herein. Thanks for the great comment. I do really do not want to waste time with the wrong P2P design decision. -Steve Stephen L. Reed Artificial Intelligence Researcher http://texai.org/blog http://texai.org 3008 Oak Crest Ave. Austin, Texas, USA 78704 512.791.7860 - Original Message From: Mike Dougherty <[EMAIL PROTECTED]> To: agi@v2.listbox.com Sent: Sunday, May 4, 2008 9:41:16 PM Subject: Re: [agi] organising parallel processes On Sun, May 4, 2008 at 10:00 PM, Stephen Reed <[EMAIL PROTECTED]> wrote: > Matt (or anyone else), have you gotten as far as thinking about NAT hole > punching or some other solution for peer-to-peer? "NAT hole punching" has no solution because it's not a problem you can fix. If I administrate the border security for my network and I do not want your protocol running, I will block the port it uses. If you dynamically change ports to avoid this, you'll find your software blacklisted with a slew of scumware that is actively removed from the computers it infests. If you are welcome within the network, it is much less hassle (for everyone) if you properly ask for access and use bandwidth intelligently. To address your issue with P2P being blocked by ISP, you could allow those nodes with public server capability to proxy connections to client-only nodes. I know that sounds like undue pain, but this is exactly the kind of modular flexibility that distributed agents should be able to work out in response to varying network conditions (my $0.02) --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?&; Powered by Listbox: http://www.listbox.com Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
On Sun, May 4, 2008 at 10:00 PM, Stephen Reed <[EMAIL PROTECTED]> wrote: > Matt (or anyone else), have you gotten as far as thinking about NAT hole > punching or some other solution for peer-to-peer? "NAT hole punching" has no solution because it's not a problem you can fix. If I administrate the border security for my network and I do not want your protocol running, I will block the port it uses. If you dynamically change ports to avoid this, you'll find your software blacklisted with a slew of scumware that is actively removed from the computers it infests. If you are welcome within the network, it is much less hassle (for everyone) if you properly ask for access and use bandwidth intelligently. To address your issue with P2P being blocked by ISP, you could allow those nodes with public server capability to proxy connections to client-only nodes. I know that sounds like undue pain, but this is exactly the kind of modular flexibility that distributed agents should be able to work out in response to varying network conditions (my $0.02) --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
Hi Matt, As perhaps you know, I want to organize Texai as a vast multitude of agents situated in a hierarchical control system, grouped as possibly redundant, load-sharing, agents within an agency sharing a specific mission. I have given some thought to the message content, and assuming that my bootstrap English dialog effort actually works, then English language as an Agent Control Language vocabulary becomes possible at the more deliberative, higher levels of the hierarchy, when the duration of NL parsing and generation is small compared to the overall task duration. I am still some ways away from tackling this implementation, but I believe that the issues you raise are pertainent to what I plan. For example, I have spent a bit of time trying to figure out how to construct a scalable peer-to-peer network. I think that I'll use Jabber as the way for high-level agents to talk to one another and the N2N protocol (not actually evaluated yet) or some other NAT hole-punching technique for low-overhead, direct agent-to-agent communication. For the non-specialists among you, what I am referring to is the fact that Internet Service Providers subvert the original intent of the net, which was easy peer-to-peer services, with a client-server paradigm in which end-users cannot easily become service providers. NAT hole punching is a clever way to change an end-user client into a server so that two end-users can directly communicate even though they do not have public Internet addresses. Matt (or anyone else), have you gotten as far as thinking about NAT hole punching or some other solution for peer-to-peer? Cheers. -Steve Stephen L. Reed Artificial Intelligence Researcher http://texai.org/blog http://texai.org 3008 Oak Crest Ave. Austin, Texas, USA 78704 512.791.7860 - Original Message From: Matt Mahoney <[EMAIL PROTECTED]> To: agi@v2.listbox.com Sent: Sunday, May 4, 2008 12:47:45 PM Subject: Re: [agi] organising parallel processes --- rooftop8000 <[EMAIL PROTECTED]> wrote: > hi, > I have a lot of parallel processes that are in control of their own > activation (they can decide which processes are activated and for how > long). I need some kind of organisation (a simple example would be a > hierarchy of processes that only activate downwards). > > I'm looking for examples of possible organisations or hierarchies in > existing AI systems or designs of them . Any ideas? > thanks I proposed competitive message routing (CMR) as a way to organize lots of autonomous narrow AI to form AGI. The idea is that specialists communicate in natural language (understanding only messages relevant to their narrow domains) and route messages outside their specialty to other agents that it knows are more closely related. This could be done by simple term matching, although there is an economic incentive for agents to match the "meanings" of messages more intelligently, such as matching words to images. I have so far only investigated its scalability in a very abstract form. Building a working model would be very expensive. http://www.mattmahoney.net/agi.html (Most people on this list have already seen this). -- Matt Mahoney, [EMAIL PROTECTED] --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?&; Powered by Listbox: http://www.listbox.com Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
--- rooftop8000 <[EMAIL PROTECTED]> wrote: > hi, > I have a lot of parallel processes that are in control of their own > activation (they can decide which processes are activated and for how > long). I need some kind of organisation (a simple example would be a > hierarchy of processes that only activate downwards). > > I'm looking for examples of possible organisations or hierarchies in > existing AI systems or designs of them . Any ideas? > thanks I proposed competitive message routing (CMR) as a way to organize lots of autonomous narrow AI to form AGI. The idea is that specialists communicate in natural language (understanding only messages relevant to their narrow domains) and route messages outside their specialty to other agents that it knows are more closely related. This could be done by simple term matching, although there is an economic incentive for agents to match the "meanings" of messages more intelligently, such as matching words to images. I have so far only investigated its scalability in a very abstract form. Building a working model would be very expensive. http://www.mattmahoney.net/agi.html (Most people on this list have already seen this). -- Matt Mahoney, [EMAIL PROTECTED] --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
On Sun, May 4, 2008 at 7:16 PM, a <[EMAIL PROTECTED]> wrote: > > I think what he is referring to is top-down cognitive control processes > that can observe and select competitive bottom-up stimuli. > But it's too general to say something and expect to answer the question. "Parallel processes that change their state as a result of interaction" can refer to anything at all. -- Vladimir Nesov [EMAIL PROTECTED] --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
Vladimir Nesov wrote: On Sun, May 4, 2008 at 11:09 AM, rooftop8000 <[EMAIL PROTECTED]> wrote: hi, I have a lot of parallel processes that are in control of their own activation (they can decide which processes are activated and for how long). I need some kind of organisation (a simple example would be a hierarchy of processes that only activate downwards). I'm looking for examples of possible organisations or hierarchies in existing AI systems or designs of them . Any ideas? You should probably expand on this -- I have no idea what you are talking about... I think what he is referring to is top-down cognitive control processes that can observe and select competitive bottom-up stimuli. --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
rooftop8000 wrote: hi, I have a lot of parallel processes that are in control of their own activation (they can decide which processes are activated and for how long). I need some kind of organisation (a simple example would be a hierarchy of processes that only activate downwards). I'm looking for examples of possible organisations or hierarchies in existing AI systems or designs of them . Any ideas? thanks I am developing the same kind of process. (inspired by cognitive science) I am not complete. Cognitive control depends on motivation, which can be learned by reinforcement and prefrontal cortex techniques. --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
On Sun, May 4, 2008 at 11:09 AM, rooftop8000 <[EMAIL PROTECTED]> wrote: > hi, > I have a lot of parallel processes that are in control of their own > activation (they can decide which processes are activated and for how long). > I need some kind of organisation (a simple example would be a hierarchy of > processes that only activate downwards). > > I'm looking for examples of possible organisations or hierarchies in > existing AI systems or designs of them . Any ideas? > You should probably expand on this -- I have no idea what you are talking about... -- Vladimir Nesov [EMAIL PROTECTED] --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
Re: [agi] organising parallel processes
I assume that you have checked out Hofstadters architecture mixing random & relevance (Fluid Analogies Research Group)? Jean-Paul Van Belle Associate Professor Head: Postgraduate Section, Department of Information Systems Research Associate: Centre for IT and National Development in Africa (CITANDA) The IS Dept is co-hosting ZA-WWW'08 Contact details: phone +27-21-6504256; fax +27-21-6502280; office LC 4.21 >>> On 2008/05/04 at 09:09, in message <[EMAIL PROTECTED]>, rooftop8000 <[EMAIL >>> PROTECTED]> wrote: hi, I have a lot of parallel processes that are in control of their own activation (they can decide which processes are activated and for how long). I need some kind of organisation (a simple example would be a hierarchy of processes that only activate downwards). I'm looking for examples of possible organisations or hierarchies in existing AI systems or designs of them . Any ideas? thanks Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?&; Powered by Listbox: http://www.listbox.com --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com
[agi] organising parallel processes
hi, I have a lot of parallel processes that are in control of their own activation (they can decide which processes are activated and for how long). I need some kind of organisation (a simple example would be a hierarchy of processes that only activate downwards). I'm looking for examples of possible organisations or hierarchies in existing AI systems or designs of them . Any ideas? thanks Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ --- agi Archives: http://www.listbox.com/member/archive/303/=now RSS Feed: http://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: http://www.listbox.com/member/?member_id=8660244&id_secret=101455710-f059c4 Powered by Listbox: http://www.listbox.com