A Flash Developer Resource Site

Results 1 to 9 of 9

Thread: A.I. chatbot stuff again ;)

  1. #1
    Senior Member
    Join Date
    Jun 2002
    Location
    Manchester, UK
    Posts
    2,357

    A.I. chatbot stuff again ;)

    Some time ago, I wrote a thread about the theory of an A.I chatbot - well, I wanted to add a chatter bot to my current rpg game project so I decided to go over it again and am making a chatbot based on the rules I discussed then!

    Here is a real conversation I had to teach the bot something, but it's at such early stages, and it's undergoing a major rewrite so it's pretty pointless posting the swf:

    Code:
    Carla: ok :)
    You: yup
    Carla: Ahhh, so a mobile phone is a telephone which can be used without it being attached to a phone line!
    You: well, a mobile phone is a telephone which can be used without it being attached to a phone line!
    it will become something more like this!
    Code:
    Carla: :) 
    You: np
    Carla: ahhhhh, cheers!
    You: well, a mobile phone is a telephone which can be used without it being attached to a phone line!
    My question is, for anyone who has ever used a chat bot, if there were any problems with it, what were they? Just describe the parts that bugged you or you thought should have been implimented!!

    Regards

    RipX
    Last edited by RipX; 07-20-2003 at 10:35 PM.

  2. #2
    *insert witty title here*
    Join Date
    Apr 2003
    Location
    Newcastle
    Posts
    120
    I think this is a really cool idea. Would love to help out but i don't know stuff all about programming and I am only a beginner in FLASH so pointless really. I would be happy to test for you tho
    anyhow keep us posted as i think this could turn into something interesting.

  3. #3
    for the win Asclepeos's Avatar
    Join Date
    Dec 2000
    Posts
    388
    From what I've learned is that chatbots operate more efficiently if the player is fooled/restricted into certain modes of speech and thought. Hi-res.net (requiem for a dream) did an amazing AI for some indie movie in Flash. fooled me twice.

  4. #4
    Senior Member
    Join Date
    Jun 2002
    Location
    Manchester, UK
    Posts
    2,357
    For me that is something i'm trying my best to avoid!

    I'm not sure if you read my old thread, but already it's starting to proove to be an extreamly strong bot in terms of the way it can understand even badly constructed scentences, it double checks and cross references information to make really sure that the statement/comment/question is exactly what it should be before commiting to adding an object/person/place or returning a reply. Even to the extent that once it hears about an object/person/place, even if you don't explain what it is, the bot know that it exists, and will simply ask someone else about it and it's properties at a later time to try to find out information!

    The nice thing is, when I re-wrote it I wrote it to be modular so adding new checks is as easy as just dropping in the code

    @Wolfie, when it's a little bit more complete i'll PM you or something!

    RipX

  5. #5
    Senior Member
    Join Date
    Jun 2002
    Location
    Manchester, UK
    Posts
    2,357
    This is me trying to confuse it (starts at the bottom):
    Code:
    Carla: why do you keep saying bye!
    You: hmmmmm bye?
    Carla: hmmmmm, bye!
    You: whatever, good friggin bye
    Carla: You weren't saying goodbye that time, but it regards bye!!
    You: I didn't say bye!?!?
    Carla: You said goodbye!
    You: well, i'm off bye
    As you see some of the actual replies are just generic at the moment but it catches exactly how the conversation is progressing!

    RipX

  6. #6
    Senior Member Penleeki's Avatar
    Join Date
    Mar 2003
    Location
    England
    Posts
    223
    Looks interesting, can't wait to see a finished version

    The biggest problem I found with chat bots is that if you repetitively ask them the same question they don't get bored/irritated with you, but usually keep answering in the same way over and over. Asking one something really simple like "why?" more than a few times in a row will usually do it. A bot that can Ignore you or change the subject (or at least admit that you have confused it) depending on the situation would be nice.

  7. #7
    Junior Member
    Join Date
    May 2002
    Posts
    0
    This is me trying to confuse it
    lol
    anyway, good luck with it. i remember reading through the old thread and being confused out of my mind. but so far it looks great!

  8. #8
    Senior Member
    Join Date
    Feb 2002
    Posts
    147
    Do you mind if I go off topic and talk about some of the issues from your first thread? You talk a little in the other thread about belief, and how beliefs are something that computers do not have but which humans do. I'm thinking back to my epistemology classes, and trying to determine if there's anything there that would be useful for programming this sort of bot.
    I think it's important to give the AI a set of needs. Something like that Maslov's hierarchy of needs that gets taught in school sometimes, except customize it for a bot. For example, give it the need to aquire knowledge. But having a needs tree can also enable the AI to get bored with one person, and interested in another.
    Determining what's knowledge and what's a belief is difficult. In my mind, facts are information that everyone holds true. A belief is information that is held as true only by a few, but which does not directly contradict any facts. Should the AI have beliefs? That's difficult. As you pointed out in the other thread, computers do not think in terms of beliefs. But at the very least, it should learn to recognise when someone is telling it a statement that is a belief. And when this happens, it should attempt to understand that belief in terms of facts:

    Is it a fact that Paula Abdul sucks? No.
    Is it a fact that UserX told me that Paula Abdul sucks? Yes.
    Is it a fact that UserX believes that Paula Abdul sucks? Yes. (in reality this fact cannot be derived from the previous, but it's a safe assumption).

    It needs to make a third distinction for relative information. For example, if someone says that the weather is cloudy, the computer must at some point learn that weather is relative to time and place, and just because it was cloudy in Ottawa yesterday doesn't mean it's cloudy in Dallas today. As with beliefs, every relative fact must be parsed down to concrete facts. Again, the hard part is establishing when information is relative.

    anyway, just some thoughts off the top of my head...

    What's your model for storing information? If you're using XML, I'd be very interested to see a snippet of it.


    -#

  9. #9
    Senior Member
    Join Date
    Jun 2002
    Location
    Manchester, UK
    Posts
    2,357
    hehe - think about it this is the way that any information is stored (by a users interpratation of anything)

    The way i'm doing it is to create a new Oject with specific properties dependent on the information about the object! This is turn assigns various properties which can be asked about by the bot!

    I'll try to get something worth showing in the next couple of days!

    RipX

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  




Click Here to Expand Forum to Full Width

HTML5 Development Center