----- Original Message ----- From: "rooftop8000" <[EMAIL PROTECTED]> To: <[email protected]> Sent: Saturday, March 24, 2007 4:26 AM Subject: Re: [agi] My proposal for an AGI agenda
> -so it will need to have different parts that can be developed (and run?) independently. An AGI would be huge. Working on different parts and synchronizing them on a regular basis would be the most efficient method of development. > -won't "anything goes" direct itself towards things that work? (ie. people building things > on top of the parts that already give the best results). I think group discussions of some form (wiki?) would have to take place so that the overall project would have a single direction. I don't think everyone would automatically agree what "already give the best results" means. > -what other kind of direction could you put in the system? I believe that things shouldn't be set in stone. If reason dictates a new direction then go with flow. This approach necessitates a very flexible design. > It might give a big overhead, but won't it also make the system > more fault-tolerant ? All the different parts can be designed by different people ... > Do Movement and AIR already do this? (I'm not familiar with them) People are free to create their own AGI right now. They can make communications with other designs if they wish right now. If a more cooperative scheme is desired then multi languages and different operating systems probably won't work. > Maybe there are better ways than socket communication? Someone mentioned using TCP but I don't see much difference. The socket overhead over TCP doesn't look like much to me but I don't know all the details (I don't pretend to be a network specialist). Socket communications can be made within a single computer and to anywhere over the internet. If you want to include Web browsers in your communications, then sockets are necessary. > This is probably the biggest problem. How to divide it so people can design > their own parts, in their own preferred language? And how to run them/ have > easy communication between them. > I'm sure a lot of research has been done into this? I don't know how much research has been done on this but mutual planning using something like a Wiki would be my preferred approach. > what kind of results? I think making existing ones > work in a framework would be a really good result by itself. (If other > people can easily build on it and expand it in some way) I don't know what "existing ones" you refer to but trying to get something like SOAR or others integrated into a single system would probably be impossible and net very little if it was. If the intelligence of an AI system is only in the phrases built in by some user, then the resulting intelligence will never exceed a small subset of that person's intelligence. SOAR has a single deductive algorithm that uses a set of "production rules" that a user types in. If there is any intelligence in that system then it comes only from the user who produced the "rules". In Searle's Chinese room experiment (I don't agree with this test or it's conclusions) the person who can't speak Chinese is obviously not showing any intelligent and I believe that any rule based system won't be either for the same reasons. > maybe the framework should focus on "easily modifiable" by humans, not > the system itself. (So people can design their own self-modifiable parts, but it > wouldn't be required) "If no self-modification then you have to build all the intelligence into the data or people have to program the entire AGI by hand." You don't seem to refute this point that I made in my last post. I never said *all* code needed to be self generated just that some *should* be. If you start with a system (C++ for example), no self modification can be made *at all*. Strictly typed procedural languages like C++ and Java are edited and then run, not both at the same time. Program creation (in the native language) and introspection are impossible in these languages. My language is just a C++ program that has a fast built in language. Any of my internal programs can never modify the C++ program at all, only it's own internal language. > It could use KBs as tools (like humans would use them), > For example, query opencyc for more information on cats, and use that > in some way. My previous response was that you have no way of knowing how *good* the information is (in using foreign KBs in a direct way). I think words should be stored and manipulated in context so no normal dictionary would be of much good. It would just be words without meaning. -- David Clark ----- This list is sponsored by AGIRI: http://www.agiri.org/email To unsubscribe or change your options, please go to: http://v2.listbox.com/member/?list_id=303
