Open-Source Artificial Intelligence ALICEBot Implementation/Suggestion
|
Logan Bauer
Inept Adept
Join date: 13 Jun 2004
Posts: 2,237
|
12-05-2004 11:14
Hi. Anyone out there familiar with the "ALICE Bot" AI? I saw this thing a few years ago, and have been watching the site to see how it's progressed... http://www.alicebot.org/ Check it out. You can click on the flash face in the upper left to chat with an ALICEBot right now. So anyways, Alice is an open source, a fairly convincing AI that basically parses what you say to it and responds via sophisticated "AIML" templates... About a year ago I downloaded one version and played around with it a little... And now I stumble across it again and think, "Hey, this should be able to "plug in" to secondlife with XML-RPC." Well, I wanted to figure this out myself, but I apparently know a lot less than I thought I did about XML and java (who am I kidding, to me java is little flashy bits of javascript to spice up HTML, or a drink from starbucks, that's about it), because my brain just ain't doin' it. So, anyone looking at the above URL and interested, who happens to know enough about XML-RPC and (insert language of your choice to make a client for whichever implementation of Alice you choose), have at it! I was looking at the "Charlie", "Program D", And "J-Alice" implementations, but I'm sure for someone who knows what they're doing, it shouldn't be too hard to put together a client and... well, do whatever you'd like with it! I am not saying, "Hey someone do this so I can make money off it" - as it is open source I couldn't go off and "sell AI's" that I made anyways. I would really like to see someone put together a simple solution and put it in the script library as open source, like I intended to do... BUT, it's a free country, and since I had hit a wall with it, I figured I'd post my idea for all to utilize... Possible implementations I was pondering : Put your own "HAL" AI inside a ship. AI Butlers, vendors or vendor information tour guides, story tellers, ect, ect... I'm sure anyone interested could come up with their own ideas... At the alicebot site you can find links to everything from the John Lennon bot, to "Saucy Jack", a disturbing bot made to sound like Jack the Ripper.
|
Issarlk Chatnoir
Cross L. apologist.
Join date: 3 Oct 2004
Posts: 424
|
12-05-2004 14:35
That's a fun idea. Must be easy to implement too, as long as there's a version of alice that runs on a DOS/Unix command line. I remember Emac's (a text editor) bot ; it's a psychanalist. Maybe if we put enough of him in SL, it would help reduce the drama?
_____________________
Vincit omnia Chaos From: Flugelhorn McHenry Anyway, ignore me, just listen to the cow
|
Eggy Lippmann
Wiktator
Join date: 1 May 2003
Posts: 7,939
|
12-05-2004 16:37
Java != Javascript 
|
Alondria LeFay
Registered User
Join date: 2 May 2003
Posts: 725
|
12-05-2004 17:47
There is a Perl implementation of the Artificial Intelligence Markup Language (AIML) that A.L.I.C.E. runs on... Perhaps I'll toss it up to my RPC engine. (or for even more fun, run it though my sound stream Text->speach bit and have a bot that talks back to you...  .
|
Logan Bauer
Inept Adept
Join date: 13 Jun 2004
Posts: 2,237
|
12-05-2004 18:21
Alondria, that sounds awesome. When you say sound stream text > speach, do you mean streaming audio you could broadcast into SL? That would be wild... I did find and try out an offshoot which lets you speak into the microphone, and then reply's via the speakers, using microsoft speach... Can also set it up to, say, launch secondlife when I say "Launch Secondlife" and some other mildly-interesting stuff. http://www.ryankegel.com/Projects/ACE.phpAnd ya, Issarlk, it does (At least the Prog D I am playing around with) work through the command prompt, and they have a "personality test" bot on the main alice site I mentioned, but you have to pay to talk to it... 
|
Alondria LeFay
Registered User
Join date: 2 May 2003
Posts: 725
|
12-05-2004 19:39
From: Logan Bauer Alondria, that sounds awesome. When you say sound stream text > speach, do you mean streaming audio you could broadcast into SL? That would be wild... [ Yup, shoots a message off to a server which in turn utilizes the Festival text-to-speech engine to create a way, then encodes it to be an ogg and moves the ogg to be served on the web.. shoot a message back to SL to change the land stream to that file.. (All in about 1.5 seconds. woot!)
|
Adam Zaius
Deus
Join date: 9 Jan 2004
Posts: 1,483
|
12-05-2004 21:39
I already implemented an ALICE bot in SL. Poke me if you want to check it out. 
|
Azelda Garcia
Azelda Garcia
Join date: 3 Nov 2003
Posts: 819
|
12-05-2004 22:07
FWIW, I have a really old SourceForge project that was striving to create an AI capable of learning. The basis of the project was that: - currently PCs probably dont have anywhere near the computational capacity required for decent AI (sortof like trying to fly using a steam-engine...) - however, there's nothing to stop us creating today a program/algorithm that will theoretically produce real intelligence given sufficient computational capacity in the future (year 2020/2030 roughly, probably). I started writing the project because I got tired of the whole machines can/cant be really intelligent debate, so figured the best solution would be to write an application that could be demonstrated to become theoretically intelligent at some point in the future when it will run fast enough. It's based on running statistical correlations on incoming data, which is presented in XML format. It's modular, with, for example, one part for dreaming (this is when correlations are generated), one part for sensory input (essentially pass-thru for incoming sensory XML), and one part for actions (sends out button-press XML commands for example). I created the project a few weeks before discovering SecondLife. Unfortunately discovering SecondLife spelled the death of the project, and I started work on other things like http://mmogtoolkit.sourceforge.net etc instead. Also, since then I also went to a conference on AI ( ECML/PKDD 2003, http://www.cs.kuleuven.ac.be/conference/ecmlpkdd/ ) and discovered Support Vector Machines (SVM), which is basically a computationally efficient method for generating massively multi-axis correlations. Anyway, the project is at http://artlearn.sourceforge.net It's wsh/vbscript over MSXML4. It's not designed to be computationally efficient, since the idea is to create an application that will be demonstrably intelligent given infinite computational capacity. There is no intention that it would actually run fast enough today to be intelligent, maybe in 2030. Might be interesting to at least read the blurb. Azelda
|
Hamlet Linden
Linden Lab Employee
Join date: 9 Apr 2003
Posts: 882
|
12-06-2004 02:27
Adam, consider yourself poked!
|
Adam Zaius
Deus
Join date: 9 Jan 2004
Posts: 1,483
|
12-06-2004 02:29
From: Hamlet Linden Adam, consider yourself poked! Heh, alright - send me an IM when you are next inworld, and I'll dig it out.  -Adam
|
Shack Dougall
self become: Object new
Join date: 9 Aug 2004
Posts: 1,028
|
12-06-2004 07:39
Open source != GPL 
_____________________
Prim Composer for 3dsMax -- complete offline builder for prims and sculpties in 3ds Max http://liferain.com/downloads/primcomposer/
Hierarchical Prim Archive (HPA) -- HPA is is a fully-documented, platform-independent specification for storing and transferring builds between Second Life-compatible platforms and tools. https://liferain.com/projects/hpa
|
Logan Bauer
Inept Adept
Join date: 13 Jun 2004
Posts: 2,237
|
Wow, Adam already beat me to it...
12-06-2004 19:35
 Awesome work Adam! 
|
Cross Lament
Loose-brained Vixen
Join date: 20 Mar 2004
Posts: 1,115
|
12-06-2004 19:42
Quick, enough of this Artificial Intelligence stuff! Someone write me an Artificial Stupidity script. 
_____________________
- Making everyone's day just a little more surreal -
Teeple Linden: "OK, where did the tentacled thing go while I was playing with my face?"
|
Luna Moreau
Registered User
Join date: 11 Dec 2004
Posts: 7
|
12-14-2004 13:49
I'll toss my 5 cents onto the floor. I've always been fascinated with these ELIZA style "AI"s. There's an idea I had a few years ago to make them even more realistic. But I'm not a programmer, so I never got very far.
Perhaps it could be implemented if anyone decides to make an SL AI Bot.
It's basically just like ALICE/ELIZA/Parrot, in that it searches a database for keywords in the Human's input. However, the difference is that the "database" is Google. The entire world wide web. The script would google using the whole string, pick randomly from the first 5 or 10 websites, pick a random text paragraph in the page, and paste the first sentence from that paragraph back to the user.
Since I've never been able to really test it, I don't know for sure how well it would work, but I have some idea that it might... in a chat room once, I spoke to someone in Porteguese using this method, for 45 minutes. He actually thought I knew Porteguese, and said the conversation was fairly coherent.
|
Azrael Baphomet
Registered User
Join date: 13 Sep 2005
Posts: 93
|
09-23-2005 10:49
From: Luna Moreau I'll toss my 5 cents onto the floor. I've always been fascinated with these ELIZA style "AI"s. There's an idea I had a few years ago to make them even more realistic. But I'm not a programmer, so I never got very far.
Perhaps it could be implemented if anyone decides to make an SL AI Bot.
It's basically just like ALICE/ELIZA/Parrot, in that it searches a database for keywords in the Human's input. However, the difference is that the "database" is Google. The entire world wide web. The script would google using the whole string, pick randomly from the first 5 or 10 websites, pick a random text paragraph in the page, and paste the first sentence from that paragraph back to the user.
Since I've never been able to really test it, I don't know for sure how well it would work, but I have some idea that it might... in a chat room once, I spoke to someone in Porteguese using this method, for 45 minutes. He actually thought I knew Porteguese, and said the conversation was fairly coherent. This is an old thread, and I apologize for reviving it...but I thought people might want to know about the normalized google distance, using the number of hits in a two-term google search as a method of clustering "ideas" into "concepts". I've implemented it myself, and it works. http://blog.outer-court.com/archive/2005-01-27-n48.html
|
Seagel Neville
Far East User
Join date: 2 Jan 2005
Posts: 1,476
|
09-24-2005 06:04
_____________________
 Seagel Neville 
|
Navillus Batra
Registered User
Join date: 4 Jul 2006
Posts: 22
|
HttpRequest AIML Interface
08-13-2006 19:42
We have written a script that interfaces via the HttpRequest protocols with a AIML based chatbot hosted on Pandorabots free service. To give it better 'awarness' of Second Life we have developed a set of keywords that are programmed into the AIML, but are parsed by the script to complete function calls. We have also started working on a Second Life specific aiml file, but it will always be a work in progress because of its importance. We have setup several webpages detailing our SL Chatbot. http://www.wetwarehacker.com/secondlifechatbot.html
|