AI Zone Admin Forum Add your forum

NEWS: Chatbots.org survey on 3000 US and UK consumers shows it is time for chatbot integration in customer service!read more..

My little chatbot project…
 
 
  [ # 16 ]

That’s excellent Chuck, how many CPU cores does the system that you are you running this simulator on have?

 

 
  [ # 17 ]

Eureka!!  My chat bot can’t chat…be he can Tweet!  =)

It took several hours but I was able to construct code in conjunction with an external function ‘wget’ to allow my program to update twitter status.  The ‘wget’ and dependencies came from http://gnuwin32.sourceforge.net/packages/wget.htm.  Using a system command I was able to post an update to tweeter. I had to convert the space to   which explains why some of my program generated status updates are single words.

http://twitter.com/walters_world

Incidentally, I needed a name to get an email account so my program could get a twitter account. So, from now on the AI bot will be named ‘Walter’. Being Memorial day, I decided to name my bot after an uncle who passed away in ‘69 in Vietnam.  I think Uncle Walter would be pleased. =)

@Victor,
I’m running a slightly older Intel Core 2 Quad Processor. Of course, I’m a long way off from my program maxing out my system.

Regards,
Chuck

 

 
  [ # 18 ]

Hi,
I’m done coding for the weekend.  I’ve got a functional framework now.  Thus far…

* Multithreading capability
* 5 threads…4 implemented as classes
  * Main system
  * CBot
  * CChat
  * CThinking
  * CWorld
* Main data class…for data sharing and sychronization
* UpdateTwitterStatus functionality.

This week I need to devote some time to the garden. Here’s our blog…if you like organic gardening. http://chuckandgrace-ourfirstgarden.blogspot.com/2010_05_01_archive.html

Regards,
Chuck

 

 
  [ # 19 ]

@Chuck: our Twitter account (http://twitter.com/chatbots ) is now following you.

Did you know you can add your RSS feed to your profile (and your Twitter feed as well?). All on this page:
http://www.chatbots.org/account/social/

 

 
  [ # 20 ]

I am following your bot as well.  Chuck - is it that simple? I use wget all the time, are you on a linux system?  Is it as easy as calling a URL to have your bot do a tweet?

 

 
  [ # 21 ]
,`2@
 

 
  [ # 22 ]

Where to start? 

Now that the basic framework is in place I’m free to design ‘my’ chat bot solution.  I want to create a virtual world that will allow Walter (bot’s name) to explore.  The chatting comes in the form of responding to basic ‘where’ questions and providing updates on twitter.

One concept I want to work out involves the objects in the virtual world, making observations (simulated vision), and drawing conclusions about what is seen.  For example, Walter walks past a tree and takes a glance.  What does he see?  How much detail needs to be available for Walter. Is it enough to see green leaves?  Does he need to see low hanging branches? Can he count them?  Is there a bird’s nest or squirrel’s nest?  How about those annoying tent caterpillars? If the leaf is unrecognizable how may it be described?  Does Walter use a reference book? Does he take simulated notes and returns to his cabin to do a Google search?

More later.

Regards,
Chuck

 

 
  [ # 23 ]

I could cry, I love you man! This is the idea that I thought up that made me want to pursue Artificial Intelligence. You’re idea is very much like mine, so I can give you some thoughts that I had about mine.
IDEAS
Main Site where you can download program, and also expansions for places, objects, and things for your bot to wear.
Avatar for the bot would be very detailed and customizable, much like the Sims 2 BodyShop.
When a new bot is created, it’s personality is randomized to make every bot different or the user can move the sliders to choose their ideal personality.
                Personality sliders that make your robot.
        <Obsessively in love———————-Hateful>
        <Social————————Shy>
        <Athletic———————Lazy>
        <Slob————————-Clean Freak>
        <Book Worm————Slow>
        <Happy———————Depressed>
        <Gentle———————Agressive>
        <Talkative—————Quiet>
Ect, ect. So when you make a new bot personality with the program, it’s core personality, the soul of the bot if you will, will be unique to the bot. Sliders will make the robot have traits, and the traits impact how it reacts to you, the environment, itself, and so on and so forth.
A obsessive robot will always be focusing on you, and it will talk mostly about you and how much it loves you. It will give you presents from it’s environment and constently worship you. A hateful bot will ignore you and mouth off to you, and all else will be somewhere in between the two.
A gentle bot will grow flowers and talk kindly to you, and hardly ever get angry. It will like things like flowers, presents, roses, ect. Whereas a fully aggressive bot will break things, yell at you, be more likely to cuss and say mean things, and other bad things.

The user will be able to interact with the environment as well, and be able to place and move objects old or new. Lets say on the ‘main site’ for the program you had a section for downloads that were items you could put in the environment. It would have things like gothic furniture, sporty, girly, spooky, nerdy, trashy, ect. The user could download new items and place it in the program for the bot to have and use.
Also, there could be things to add on to the bots avatar. There would be theme packs like goth, punk, emo, prep, jock, nerd, but also more generic things. You could open the program and choose to change how the bot looked, and use items the program comes with, or things you’ve downloaded from the site to change their look.
When the user uses the program for the first time, they can make their very first personality. First they would choose a name and gender, then they could randomize or make the personality, lastly changing the avatars looks, and placing it in it’s world.

The avatars would have body sliders for things to change:
Skinny————-Bulky
Tall——————-Short
Bust——————Flat/or for males/Bulky————Small
Wide nostrils———-Skinny nostrils
upturned nostrils————-hooked nostrils
ect
And other things that you could actually add to them, like hair, skin color, eye color, clothes…
Hair
Skin
Tattoo’s/Piercings
Eyes
Makeup
Facial Hair
Moles and markings
Clothes
Misc;Muzzle’s, collars, fangs, wings, elf ears, ect.

Really hope you finish this, it’d mean everything to so many! Good luck, and let me know if there’s anything I could do, or any more advice I could give.

 

 
  [ # 24 ]

Hi Rei,

That’s quite a descriptive explanation of your idea!  You’ve done a good job thinking about the simulation’s overall behavior.  I like the slider idea for adjusting personality.  It would be interesting to adjust the various personalities to see how it affects the bots’ decision making and behavior.

Thanks for the encouragement!

Regards,
Chuck

 

 
  [ # 25 ]

Hi Everyone,
There are two challenging aspects to this problem that have captivated my thinking:

1) Acquisition of knowledge.
2) Decision making.

Regarding knowledge, I’m using ‘trees’ to think this through.  Walter’s world will contain many trees of various types, states, sizes, and conditions.  I can devise a data format to store this information about trees.

As Walter walks around I need to translate this general knowledge about trees into ‘specific’ trees that are added to the virtual world. Furthermore, these details must be translated to a virtual vision system.  Walter must be presented with a ‘pattern’ representing several of these attributes.  Then his thinking needs to zip through the database to conclude that it is most likely a tree.  This will not be easy. =)

Regarding decision making, I propose various questions with yes/no answers.  What I’ve concluded is that the same question often may be answered yes one moment and no another…even though nothing has changed. Under these conditions, I find that I may say ‘no’...but over a period of several minutes my ‘yes’ answer grows in weight…and then suddenly my decision ‘scales’ change and then I’m saying ‘yes’ with certainty. 

That’s about it for now.

Regards,
Chuck

 

 
  [ # 26 ]

Hi Everyone,

Guess what?  I actually found someone locally who not only appreciates the science and technology behind chat bots…but actually has some interesting perspectives on the topic. It’s a big deal for me because I’ve always had to reach across the internet to find like minded folks. He’ll be here tomorrow to help me rebuild my carburetor on the truck, talk AI, and drink a couple of cold ones. =)

I hope to code this weekend. I’ve developed a system, on paper, for storing general knowledge about things.  Here are a few requirements:

* Unique identifier for a general type of thing.
* Unique code for relationship, attribute, abstract meaning, etc. The list is as big as necessary.
* Set of parameters based upon the unique code above.

Based upon a point in another thread it should be possible to adapt this to other languages.  I can manage basic German and Spanish…so I’ll see if I can do this.

That’s about it for the evening.

Regards,
Chuck

 

 
  [ # 27 ]

If you need some assistance on Dutch ... grin

 

 
  [ # 28 ]

Thanks Erwin!  I’m afraid English is challenging enough…

*Update*
Did some coding on Walter today. Thought I would grab some ‘low hanging fruit’ by working on the program structure.

* Setup double-buffering for console mode.
* Created different rendering screens to include:
  * Overview of everything
  * Bot thread
  * Chat thread
  * Thinking thread
  * World thread
* Add ability to load chat bot states via a configuration file.
* Added data logging.
* Restructured the sharing of data between the various threads.
* Add 11 bot body states.  At the moment the states transition every 10 seconds.

Twitter?  I don’t want to saturate tweets right now…so I’ll add some code that will randomly tweet every 5 to 15 minutes. Since the program is not running all the time it’s important that I track elapsed time and tween an explanation for the delay. I’ll be using a running narrative until Walter begins yacking. =)

Regards,
Chuck

 

 
  [ # 29 ]

I want to give my virtual bot the ability to chat and to think in two separate threads. 

When the bot is ‘sleeping’ I would like for him to dream.  I’m certain I can take the most ‘emotional’ or ‘interesting’ event of the preceding waking period and use it as a starting point. The dreaming would then look for logical but irrational connections in the bot’s memory. These connections would be placed into short-term memory.

However, when the bot is awake, I’m not sure how to program thinking so it is not so much like ‘dreaming’.

Any ideas?

Regards,
Chuck

 

 
  [ # 30 ]
Chuck Bolin - Jun 7, 2010:

I’m not sure how to program thinking so it is not so much like ‘dreaming’.

Is dreaming like making associations on a higher abstraction level: object + relation + location + time -> more precise: vehicle, family member, hotel in a warm country, now.

In order to visualise a dream, it has to be concrete. So vehicle is replace by a car. Your memorise that it was your car, but it looked like a car you saw on TV. Doesn’t matter for the dream.

And thinking is even precise: associating, reasoning between concrete objects (unless you do maths).

 

 < 1 2 3 4 >  Last ›
2 of 22
 
  login or register to react