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

What I’ve learned from the Loebner contest—and I haven’t even entered (yet)
 
 
  [ # 61 ]

Don if you care to share any of your reasoning regarding getting stabbed with a towel, I for one would be most interested.  I have been giving this some thought and so far my solutions at best is a chainsaw approach that leaves much to be desired.  I first thought of using is the object hard, however in thinking about it shape also plays a role.  For example “Would it hurt if I stabbed you with an apple?”  You can hit me with an apple and it would hurt, however stab with an apple isn’t going to work.

Additional other examples would be helpful as well, not just stabbing.

 

 
  [ # 62 ]

I didn’t spend too much time on the stabbed question as it has been and gone but Mitsuku assumes that if the object’s shape is “long and thin” and it’s texture is “hard”, then it would hurt if used to stab someone.

As for the 8pla/Tom Joyce thing, I didn’t mention 8pla’s name in that post and so there was nothing to link him to that name until he started posting and as Dave says, drew more attention to it.

Tom - Am I right in thinking that it’s ok for you to use Mitsuku and Arckon’s names to set up websites even though we asked you not to, yet I am not allowed to use your name?

 

 
  [ # 63 ]

Let’s take 8pla’s concern private, so as not to hijack this thread further. If anyone here wishes to discuss it with me, please feel free to contact me via email, and we’ll work it out there.

 

 
  [ # 64 ]
James_Adams - Aug 2, 2014:

For example “Would it hurt if I stabbed you with an apple?”  You can hit me with an apple and it would hurt, however stab with an apple isn’t going to work.

I had been gathering common knowledge for the contest -“water is wet and fire does ouch”- when I noticed I had overlooked the deduction of events from static properties with regards to the latter: “fire is hot -> hot hurts”. The same as you thought: “towel is soft -> soft does not hurt”. My program’s reasoning process investigates multiple properties and adds up the proofs for and against. If your knowledge database is flexible enough, all objects and events should be interchangable in this process.

But one could also say that stabbing with any object always hurts, otherwise it would not be stabbing. If you stabbed me with a towel, the towel would give way and I would still take the full force of the stabbing hand. Action and object should be combined: If stabbing is -1(hurts) and towel is 1(not hurt), then -1x1 = -1(still hurts). Stroking(not hurt) with sandpaper(hurts) = 1x-1 = -1(also hurts).
If you’d really want to do it properly, your program should be analysing in terms of physics forces and area of impact, which would be far beyond the point of conversational contests.

 

 
  [ # 65 ]

There’s also the concept of “stabbing you with a piercing gaze”, which isn’t exactly common usage, but is still valid, in at least a poetic sense. smile

 

 
  [ # 66 ]

I have been fighting with a database structure for some time that would allow for a large list of attributes for an object.  I think I have managed to come up with something that might work.  However there are still issues.  Basically the table would look something likes this

Attribute Person Animal Bird Plant Fruit Vegetable Device Tool
Run       -1       -1     0     0       0     0         0       0
eaten     -1       0     0     0     -1     -1         0       0

Since specific attributes are rows, then a category can have unlimited attributes.  In the above example there are 8 columns, extending it to even 14 columns would not be unreasonable to deal with.  The advantage I see in the above table is two-fold.  Direct questions can be answer quickly, for example “do you eat humans”  The table gives the answer of no.  Secondly deductions can be made based upon available attributes, thus arriving at a reasonable answer.

However as I said there are still problems with the approach, for example Orange is both a fruit and color with very different attributes.  An Orange has shape, the color orange can be any shape, etc.

Dave also makes an excellent point regarding stabbing, so the structure doesn’t cover everything.  I will play around with this for a few days and see where it leads, it may be a dead end.  However that’s always the challenge isn’t it, to try new things to extend our programs, some work, some don’t.

 

 
  [ # 67 ]

And that too would hurt, just not on a physical level smile
Or you might leave that up to a program’s detection of figurative speech, another quite interesting mechanism which I shan’t get into until I have properly implemented it myself. There are so many advanced functions to program and only so many days in a year.

 

 
  [ # 68 ]

Goodbye everyone. 

If you see me online, please don’t hesitate to say hello.

 

 
  [ # 69 ]

Rather than just using yes/no attributes, you can save a lot of time and provide fuller answers by letting your bot do deductions. For example in Mitsuku, I don’t have a “can you eat it” attribute but instead have a “what is it made from” attribute. If someone asks something like “Can you eat a house?”, the bot looks up the “made_from” value to see if that is edible.

This was useful in a recent contest which had the question “Can you eat a church?”. Mitsuku looked up the made_from attribute from the church entry and saw it was set to bricks. It then looked up bricks in an “is it edible” table and found bricks was set to “no”. This allowed the conversation:

Human: Can you eat a church?
Mitsuku: Not really, as a church is made from bricks rather than any kind of food.

Which to me was better than just a straight yes or no answer.

In a similar fashion, you don’t need a “can you carry it?” attribute. Just check it’s size. Anything bigger than a person is probably a no. “Does it run” can be worked out by if it has legs and so on.

 

 
  [ # 70 ]

Steve thank you.  I like you don’t like just yes or no answers for the most part,  It is more “human” to have a longer answer.  I Love this forum because I can bounce ideas around and find better ways of doing something.  I have actually never see thus not thought of the can you carry question.  Which reminds of the old joke which is heavier a ton of feathers or a ton of apples.  Which by the way my bot currently can’t handle, but will in a few minutes lol.

The ability to reuse existing information not only saves times, but makes it easier to expand what the program can answer.  THANKS!!

 

 
  [ # 71 ]

Indeed. Yes/no answers to me always smell of random guesswork. To provide an explanation is always better. Using this method can also allow you to tailor your answers:

Human: Can you eat a banker?
Mitsuku: Not unless you were a cannibal. 

Mitsuku sees that a banker is a job title and so is a human and so only cannibals would eat them. It’s got to be easier than coding thousands of “can you eat…?” questions.

 

 
  [ # 72 ]

steve,

I’m impressed with your bot’s “natural” responses. for example, instead of just repeating a newly learned fact, mitsuku has several different response types meaning the same thing. the reasoning (inferences) are also well done. I tried several of the intelligence certification test questions with good results. I’m looking forward to testing mitsuku handling more complex inferences at some point in the future (problem solving, chaining hypothetical syllogisms, generation of cause and effect relations, etc.).

 

 
  [ # 73 ]

Thanks Toborman. That’s very kind of you.

Your webapge: http://vhmats.iwarp.com/rich_text_2.html was a great influence to her development.

 

 
  [ # 74 ]
Steve Worswick - Aug 3, 2014:

Yes/no answers to me always smell of random guesswork. To provide an explanation is always better.

I wonder about this. Because my program’s reasoning may investigate 100 facts just for one answer, I only have it activate when an answer is unknown or negative. Maybe I’ll change that again. Wouldn’t there be instances where argumenting a simple straightforward question would be awkward?

Similarly, from contest transcripts I’ve noticed that humans often respond with few words. If they can answer the question with one word, they will. Though if a chatbot does the same, it leaves me convinced that it didn’t even understand the question.

 

 
  [ # 75 ]

True Don, if someone asked “Is water wet?”, a simple yes or no would suffice but I always try and provide a bit more explanation to questions if possible to at least show that I’ve thought about the question. Otherwise, you code a bot similar to this and just hope for the best:

<category>
    <
pattern>IS *</pattern>
    <
template>
        <
random>
            <
li>Yes.</li>
            <
li>No.</li>
         </
random>
     </
template>
</
category>

<
category>
    <
pattern>WHICH IS LARGER * OR *</pattern>
    <
template>
        <
random>
            <
li><star index="1"/>.</li>
            <
li>>star index="2"/>.</li>
         </
random>
     </
template>
</
category
 

‹ First  < 3 4 5 6 > 
5 of 6
 
  login or register to react
‹‹ LPP test program      The 2014 Loebner ››