Re: [agi] Priors and indefinite probabilities
Hello - I'm new on this email list. I'm very interested in AI / AGI - but do not have any formal background at all. I do have a degree in Finance, and have been a professional consultant / developer for the last 9 years (including having worked at Microsoft for almost 3 of those years). I am extremely happy to see that there are people out there that believe AGI will become a reality - I share the same belief. Most, to all, of my colleagues see AI as never becoming a reality. Some that do see intelligent machines becoming a reality - believe that it is hardware, not software, that will make it so. I believe the opposite ... in that the key is in the software - the hardware we have today is ample. The reason I'm writing is that I am curious (after watching a couple of the videos on google linked off of Ben's site) as to why you're using C++ instead of other languages, such as C#, Java, or Python. The later 2, and others, do the grunt work of cleaning up resources - thus allowing for more time to work on the problem domain, as well as saving time in compiling, linking, and debugging. I'm not questioning your decision - I'm merely curious to learn about your motivations for selecting C++ as your language of choice. Thanks, ~Aki On 15-Feb-07, at 12:42 PM, Ben Goertzel wrote: gts wrote: On Thu, 15 Feb 2007 12:21:22 -0500, Ben Goertzel [EMAIL PROTECTED] wrote: As I see it, science is about building **collective** subjective understandings among a group of rational individuals coping with a shared environment That is consistent with the views of de Finetti and other subjectivists. In their view our posteriors all converge in the end anyway, so it shouldn't matter if there are no 'objective' probabilities. Which I note is highly consistent with Charles Peirce's philosophy of science, articulated at the end of the 1800's ... So none of this is very new ;-) ben However, my view is not the most common one, I would suppose... I'm quite sure you're correct about that. A minority subjectivist, attempting to communicating his bayesian conclusions to an non-subjectivist colleague in the majority, could be met with the disconcerting response that his numbers are mere statements about his psychology. :/ Thus there exists a strong disincentive to be subjectivist in the natural sciences, no matter the philosophical consequences. -gts - 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 - 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
Languages for AGI [WAS Re: [agi] Priors and indefinite probabilities]
Aki Iskandar wrote: Hello - I'm new on this email list. I'm very interested in AI / AGI - but do not have any formal background at all. I do have a degree in Finance, and have been a professional consultant / developer for the last 9 years (including having worked at Microsoft for almost 3 of those years). I am extremely happy to see that there are people out there that believe AGI will become a reality - I share the same belief. Most, to all, of my colleagues see AI as never becoming a reality. Some that do see intelligent machines becoming a reality - believe that it is hardware, not software, that will make it so. I believe the opposite ... in that the key is in the software - the hardware we have today is ample. The reason I'm writing is that I am curious (after watching a couple of the videos on google linked off of Ben's site) as to why you're using C++ instead of other languages, such as C#, Java, or Python. The later 2, and others, do the grunt work of cleaning up resources - thus allowing for more time to work on the problem domain, as well as saving time in compiling, linking, and debugging. I'm not questioning your decision - I'm merely curious to learn about your motivations for selecting C++ as your language of choice. Thanks, ~Aki It is not always true that C++ is used (I am building my own language and development environment to do it, for example), but if C++ is most common in projects overall, that probably reflects the facts that: (a) it is most widely known, and (b) for many projects, it does not hugely matter which language is used. Frankly, I think most people choose the language they are already most familiar with. There just don't happen to be any Cobol-trained AI researchers ;-). Back in the old days, it was different. Lisp and Prolog, for example, represented particular ways of thinking about the task of building an AI. The framework for those paradigms was strongly represented by the language itself. Richard Loosemore. - 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
Re: Languages for AGI [WAS Re: [agi] Priors and indefinite probabilities]
On 2/17/07, Richard Loosemore [EMAIL PROTECTED] wrote: It is not always true that C++ is used (I am building my own language and development environment to do it, for example), but if C++ is most common in projects overall, that probably reflects the facts that: ... Back in the old days, it was different. Lisp and Prolog, for example, represented particular ways of thinking about the task of building an AI. The framework for those paradigms was strongly represented by the language itself. What is the nature of your language and development environment? Is it in the same neighborhood as imperative OO languages such as Python and Java? Or something different like Prolog? What about the development environment? -Chuck - 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
Re: Languages for AGI [WAS Re: [agi] Priors and indefinite probabilities]
On Sat, Feb 17, 2007 at 08:46:17AM -0800, Peter Voss wrote: We use .net/ c#, and are very happy with our choice. Very productive. I don't know much about those. Bytecode, JIT at runtime? Might be not too slow. If you use code generation, do you do it at source or at bytecode level? Eugen(Of course AI is a massively parallel number-crunching application... Disagree. That it is massively parallel, or number-crunching? Or neither massively-parallel, nor number-crunching? -- Eugen* Leitl a href=http://leitl.org;leitl/a http://leitl.org __ ICBM: 48.07100, 11.36820http://www.ativel.com 8B29F6BE: 099D 78BA 2FD3 B014 B08A 7779 75B0 2443 8B29 F6BE - 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 signature.asc Description: Digital signature
RE: Languages for AGI [WAS Re: [agi] Priors and indefinite probabilities]
Dynamic code generation is not a major aspect of our AGI. To clarify: While I agree that many AI apps require massively parallel number-crunching, in our AGI approach neither are major requirements. 'Number crunching' is of course part of any serious AI/AGI implementation, but we find that (software) design is by far the more important bottleneck. -Original Message- From: Eugen Leitl [mailto:[EMAIL PROTECTED] Sent: Saturday, February 17, 2007 8:50 AM To: agi@v2.listbox.com Subject: Re: Languages for AGI [WAS Re: [agi] Priors and indefinite probabilities] On Sat, Feb 17, 2007 at 08:46:17AM -0800, Peter Voss wrote: We use .net/ c#, and are very happy with our choice. Very productive. I don't know much about those. Bytecode, JIT at runtime? Might be not too slow. If you use code generation, do you do it at source or at bytecode level? Eugen(Of course AI is a massively parallel number-crunching application... Disagree. That it is massively parallel, or number-crunching? Or neither massively-parallel, nor number-crunching? -- Eugen* Leitl a href=http://leitl.org;leitl/a http://leitl.org __ ICBM: 48.07100, 11.36820http://www.ativel.com 8B29F6BE: 099D 78BA 2FD3 B014 B08A 7779 75B0 2443 8B29 F6BE - 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 - 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
Re: Languages for AGI [WAS Re: [agi] Priors and indefinite probabilities]
I completely agree with you Pei. Language choice is all over the place, and for differing reasons / views. I didn't intend on having people spend so many cycles in offering their input. But it sure is a testament to how friendly, and passionate about AI, the people on this list are :-) If I can ask two quick questions, I'll get busy with following the suggestions :-) 1 - Of the many branches of mathematics, which is best as a starting point? Calculus? Linear Algebra? Statistics? Other ... 2 - What advice can you give to an AI newbie as to a program to write as the first one? In other words, what puzzle of proof would you suggest that he program the computer to solve? Thanks again everyone, ~Aki On 17-Feb-07, at 1:41 PM, Pei Wang wrote: Aki, I guess you can see, from the replies so far, that what language people choose is strongly influenced by their conception of AI. Since people have very different opinions on what an AI is and what is the best way to build it, it is natural that they selected different languages, based mainly on its convenience for their concrete goal, or even tried to invite new ones. Therefore, I don't think there is a consensus on what the most suitable language is for AI. Pei On 2/17/07, Aki Iskandar [EMAIL PROTECTED] wrote: Thanks Pei. I didn't mean for it to be a blanket statement. I was just surprised at all the different preferences, so it seemed like language didn't matter that much. I would imaging that a healthy portion of people on this list have a PhD - so clearly there are other factors in language selection than just familiarity with the language - I was just curious to learn about some if the factors - since they would help my understanding of some of the challenges that lie ahead. I'm in that boat - not a PhD, but was looking for a language more suited for AI than sticking with my most familiar language (C#) - and, for the moment anyway, settled on Python. Prolog, LISP, and LISP subsets such as Scheme, are traditional AI languages, but I found that LISP takes a lot of getting used to - more time that I have - to get proficient enough with it to the point where I can write interesting stuff. Python came naturally - and seems more flexible than C#. What I found really interesting is that there is someone in this group that is creating his own language to solve the AI puzzle. Given the time it takes to create a language, this tells me that there were too many drawabcks / limitations in using an existing language. Regards, ~Aki On 17-Feb-07, at 1:09 PM, Pei Wang wrote: On 2/17/07, Aki Iskandar [EMAIL PROTECTED] wrote: What, to me - as a complete novice to AI - seems counterintuitive in language selection, is that the pros and cons of each language come second, as a factor of selection, to familiarity. That conclusion is probably too strong. At least in my case, each time I switched from a more familiar language to a less familiar one, because of some other reasons. Pei - 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 - 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 - 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 - 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
Re: Languages for AGI [WAS Re: [agi] Priors and indefinite probabilities]
On 2/17/07, Aki Iskandar [EMAIL PROTECTED] wrote: If I can ask two quick questions, I'll get busy with following the suggestions :-) They are even more controversial than your previous question. ;-) 1 - Of the many branches of mathematics, which is best as a starting point? Calculus? Linear Algebra? Statistics? Other ... I would say Mathematical Logic and Probability Theory. Even if you (like me) don't think they are the right tools for AI, you still need to know them to understand the previous attempts. Calculus and Linear Algebra are much less relevant. 2 - What advice can you give to an AI newbie as to a program to write as the first one? In other words, what puzzle of proof would you suggest that he program the computer to solve? I don't think it is a good idea to start problem-specific coding before briefly browsing the existing approaches towards AI. However, if you just want to get some first-hand experience while checking out other people's ideas, a simple learning program may be fun to code, though I don't have any concrete recommendation now. Pei Thanks again everyone, ~Aki On 17-Feb-07, at 1:41 PM, Pei Wang wrote: Aki, I guess you can see, from the replies so far, that what language people choose is strongly influenced by their conception of AI. Since people have very different opinions on what an AI is and what is the best way to build it, it is natural that they selected different languages, based mainly on its convenience for their concrete goal, or even tried to invite new ones. Therefore, I don't think there is a consensus on what the most suitable language is for AI. Pei On 2/17/07, Aki Iskandar [EMAIL PROTECTED] wrote: Thanks Pei. I didn't mean for it to be a blanket statement. I was just surprised at all the different preferences, so it seemed like language didn't matter that much. I would imaging that a healthy portion of people on this list have a PhD - so clearly there are other factors in language selection than just familiarity with the language - I was just curious to learn about some if the factors - since they would help my understanding of some of the challenges that lie ahead. I'm in that boat - not a PhD, but was looking for a language more suited for AI than sticking with my most familiar language (C#) - and, for the moment anyway, settled on Python. Prolog, LISP, and LISP subsets such as Scheme, are traditional AI languages, but I found that LISP takes a lot of getting used to - more time that I have - to get proficient enough with it to the point where I can write interesting stuff. Python came naturally - and seems more flexible than C#. What I found really interesting is that there is someone in this group that is creating his own language to solve the AI puzzle. Given the time it takes to create a language, this tells me that there were too many drawabcks / limitations in using an existing language. Regards, ~Aki On 17-Feb-07, at 1:09 PM, Pei Wang wrote: On 2/17/07, Aki Iskandar [EMAIL PROTECTED] wrote: What, to me - as a complete novice to AI - seems counterintuitive in language selection, is that the pros and cons of each language come second, as a factor of selection, to familiarity. That conclusion is probably too strong. At least in my case, each time I switched from a more familiar language to a less familiar one, because of some other reasons. Pei - 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 - 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 - 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 - 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 - 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
Re: Languages for AGI [WAS Re: [agi] Priors and indefinite probabilities]
On 2/17/07, Aki Iskandar [EMAIL PROTECTED] wrote: Richard, Danny, Pei, Chuck, Eugen, Peter ... thanks all for answering my question. ... C# is definitely a productive language, mainly due to the IDE, and it is faster than Java - however, it is strongly typed. Perhaps the disadvantage to C#, form my perspective, is that the only ways to generate code (by code) is by using Reflection.Emit, and CodeDOM namespaces. However, the performance hit is fr to costly to run it - because it has to be compiled (to MSIL / bytecode) and then the class type has to be loaded, and only then interperated / run. Java suffers the same fate, and is slower than C#. Python is a duck typed language, and has very rich flexibility when designing datastructures. In addition, it has a few ways to evaluate code on the fly (enabling code that writes code). I've cranked out mounds of Python and C#, so I have a few things to offer on the subject. Regarding C#'s productivity coming mostly from the IDE, I think that is only part of the picture. C# offers many high level, productive features including garbage collection, classes, exception handling, bounds checking, delegates, etc. while at the same time offering excellent runtime speed. Those features aren't available in C and some of them aren't even available in C++. C# is also better designed and easier to use than Java primarily because it was designed after Java as a better version of Java. Python is still faster to crank out code with (and Ruby as well), but both Python and Ruby are ridiculously slow. That will be a serious problem if your application is CPU intensive and I believe any AGI will be (though early exploratory programs may not). One approach is to use two languages: Yahoo cranked out their web-based mail site with Python so they could develop it quickly. Then after it stabilized, they reimplemented it in C++ for performance. Of course, it would be nice if one language could truly cover both. But more on that at the end of this message. :-) Regarding the overhead of generating code in C#: * Your AI app may or may not require code generation. * Python runs so relatively slow that if you execute the generated code repeatedly, the C# version of the app will still outperform it. Btw I use WingIDE for Python and recommend it. (And of course VS 2005 for C#.) Having said all that--I get frustrated by these situations: (1) I crank out my solution in Python in record time and then grow old watching it execute. (2) I watch my C# code fly at runtime, but it takes me 2-3 times longer to write it. Bleck! So I'm working on a language that combines features from the two. It targets the .NET platform so that it can leverage the work already done on garbage collection, machine code, etc. as well as the numerous third party tools and libraries. (Likewise for Novell Mono--the open source clone of .NET.) Cobra is currently at a late alpha stage. There are some docs (including a comparison to Python) and examples. (And pardon my plain looking web site, but I have no graphics skills.) Here it is: http://cobralang.com/ It runs as fast as C# and codes almost as quick as Python. It also has language level features for quality control, including contracts, compile-time null checking and unit tests. These are found in neither Python nor C# (but are found in some other languages). Hey, we're on one of my favorite topics! Feel free to ask questions or make comments. :-) -Chuck - 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
[agi] Languages for AGI
http://modularai.corecoding.com is the Modular AI Project. http://modularai.messageforums.net/general-discussion_f3.html is where AI enthusiasts may pick a language to code Modular AI. http://modularai.messageforums.net/c-for-modular-ai_t37.html http://modularai.messageforums.net/c-for-modular-ai_t36.html C++ http://modularai.messageforums.net/forth-for-modular-ai_t29.html http://modularai.messageforums.net/java-for-modular-ai_t35.html http://modularai.messageforums.net/lisp-for-modular-ai_t34.html http://modularai.messageforums.net/perl-for-modular-ai_t28.html http://modularai.messageforums.net/prolog-for-modular-ai_t33.html http://modularai.messageforums.net/python-for-modular-ai_t32.html http://modularai.messageforums.net/ruby-for-modular-ai_t31.html http://modularai.messageforums.net/visual-basic-for-modular-ai_t30.html A.T. Murray -- http://www.scn.org/~mentifex/Mind.html -- in JavaScript for MSIE; http://www.scn.org/~mentifex/mind4th.html -- Mind.Forth robot AI. - 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