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..

Having your bot play number games
 
 

Every now and then in Loebner-type contest transcripts (and my own), I see ‘number games’ appearing. People asking the bot math questions, or stuff like ‘name a number between 3 and 6’.

So, fair enough, I’m tinkering a bit with making my bot answer those. So far she can do basic algebra, make sense of ‘written’ numbers like two hundred thirty five, and name numbers between 2 others, say what the biggest or smallest of numbers is, and counting up and down.

Now my question to the more experienced botmasters: any bases I didn’t cover here? What kind of ‘number related’ things tend to be asked to bots that don’t fit the above categories?

For illustration, here is the transcript I tested some of these with:

Yoko: hi Wouter!
You: hi
You: 2+2?
Yoko: The REAL answer here is: people shouldn’t be quizzing each other on math. (that said: 4)
You: what is five times seven?
Yoko: Did I mention I HATE math?  Anyway, just because it’s you: 35
You: I have ten books and take away FIVE how many do I have left
Yoko: The REAL answer here is: people shouldn’t play number games with each other. (that said: 5)
You: that’s better
Yoko: say what now?
You: what is two thousand thirtyfive minus 200
Yoko: Man, why do people think math is a good ‘acting like a human’ test?  1835
You: 10 to the power of 3?
Yoko: *taps calculator AKA google…* 1000.
You: which number is bigger, 4 or 200?
Yoko: 200. BOOM!
You: which is smaller, 1 or -35
Yoko: Just because it’s you: 1
You: hmmm, wrong
You: ok, next: count down from 10
Yoko: Woah there with the rocket science! I’m gonna go with ‘10 9 8 7 6 5 4 3 2 1 0’.
You: count from 3 to 7
Yoko: ‘is she the next Einstein, you wonder?’ See for yourself: 7 6 5 4 3! 
You: close
Yoko: hehe
You: count to 10
Yoko: The REAL answer here is: people shouldn’t play number games with each other. (that said: 0 1 2 3 4 5 6 7 8 9 10)
You: name an odd number
Yoko: Just because it’s you: 3
You: last algebra question: 10+3^3
Yoko: *sigh* ok then: 37 (without calculator *wink wink*)

... So, which other ‘number games’ should I make sure to cover?

 

 
  [ # 1 ]

If you look through the Skynet-AI thread, you can see a number of examples that can give you some ideas.

http://www.chatbots.org/ai_zone/viewthread/316/

 

 
  [ # 2 ]

Thanks!

Right, percentage problems, and more general ‘math test’ problems that the STUDENT chatbot (right?) was so famous for.

Ok, that’s good inspiration, I’ll mess with my code some more - maybe we should do a math-bot-standoff at some point smile

 

 
  [ # 3 ]

That actually sounds like fun. I took out some of the math functionality because no one ever used it. That would give me a reason to dust off some of the old code.

Yes, I tried to cover all the student examples.

 

 
  [ # 4 ]

2, 4, 6, x?

I.e. given this sequence of numbers, which number comes next / what is the rule? I’ve been thinking about writing a program designed to find the rule for arbitrary number sequences.

 

 
  [ # 5 ]

USER:2, 4, 6?
AI: That looks like a series of numbers.
2-4-6-8

wink

 

 
  [ # 6 ]

Yeah, I tested Skynet-AI on those. It gets really basic (constant additive difference) ones, but fails to solve any others.

 

 
  [ # 7 ]

Haha, good one!

I just made a very primitive algorithm for these that covers some basic cases.

Test transcript from Yoko, editing out some of her annoying ‘I didn’t really understand everything’ blurting:

Yoko: hi Number games!
You: hi
You: ok, complete the sequence: 1,2,3,x?
Yoko: 4. BOOM!
You: nice! Now this one: 2,4,6, what comes next?
Yoko: Just because it’s you: 27
You: ok the ‘one’ seems to mess up your internals… no problem, now without distraction: 2,4,6,x?
Yoko: ‘is she the next Einstein, you wonder?’ See for yourself: 8! 
You:  A more difficult series for you! Which comes next: 3,7,19
Yoko: the answer is 55!
You: very good
You: and with negatives? 9,5,1,x?
Yoko: Woah there with the rocket science! I’m gonna go with ‘-3’.
Yoko: Cool!
You: You talk too much
Yoko: sorry, that didn’t make sense to me.
You: No worries, back to the sequences - let’s see if you know fibonacci: 2,2,4,6,10,x?
Yoko: Just because it’s you: 16
You: ... and completely silly examples, like 3 3 3 3 ?
Yoko: the answer is 3!
You:  it is
Yoko: hehe
You: bye
Yoko: byebye

(online at http://www.yokobot.com/index.php?p=transcripts&cid=429)

... I think that should give her an IQ of at least 30 or so :-D

 

 
  [ # 8 ]

Also: with all these number games… Maybe I should use Yoko’s number games plugin to make a children’s educational site or something smile If she can generate an answer, she could verify a kid-submitted one against it as well after all!

 

 
  [ # 9 ]

In the Loebner 2011 transcripts and some of Cleverbot’s and my own, most people seemed content with a fairly basic test just to see if it has math skills at all, before moving along to test more interesting skills. 2 + 2 is common, “what’s the root of…”, and anything involving Pi.
I don’t know if this is the same for php, but my 32bit c++ program can’t handle numbers over 2.4 billion (max size of an integer variable).

 

 
  [ # 10 ]

That depends upon both the server OS and the PHP version, Don. Most hosting companies that provide either “free” or “low cost” (read: low quality) hosting services still use 32 bit versions of each, and therefore have the same limit. That isn’t true across the board, however, and it’s not all that easy to determine using the “default” tools. the PHP constants PHP_INT_SIZE or PHP_INT_MAX are the best ways to know for sure, but that value isn’t displayed in the phpinfo() function. Windows OS/Apache installs have an “architecture” variable that MIGHT be used (my local install reports “x86”, which translates to 32 bit), but it’s not universally available.

Now that I’ve made that as clear as mud, I’ll go back into my “lurker’s corner”. raspberry

 

 
  [ # 11 ]

USER:What is 2,400,000,000 squared?
AI: Five quintillion, seven hundred sixty quadrillion.
wink

 

 
  [ # 12 ]

Playing around some more with my number games code, I also took the occasion to add the first easter egg to Yoko :-D

(the idea is ‘dramatic meltdown when making yoko do a division by zero’)

Ok Wouter, back to more serious improvements now, please.

 

 
  login or register to react