New arrival

  • 12 Replies
  • 4399 Views
*

white

  • Trusty Member
  • *
  • Roomba
  • *
  • 18
New arrival
« on: July 15, 2011, 01:46:38 pm »
Hi all,

I am an enthusiast from Sweden (although living in the UK) and am new to the forum.

For me everything started when I bought a Mindstorms robot just for fun about 18 months ago. Thought I start with voice commands and began working on... well, what was supposed to be an extremely simple grammar parser. Instead I became completely sold on this subject and started developing a bot. The robot has been collecting dust ever since. :)

My spare time project is called 'white' and my ambitions are to base it on strong'ish A.I. In other words, I aim to make it learn and really understand the meanings of sentences given to it. No markup languages, third party vocabularies or parsers will be involved. Similar to, but yet very different from the member victorshulist's project "CLUES" on this forum. (He is ahead of me and I will follow his project with great interest).

After having a break from working on my bot, I am now back with renewed inspiration and more dedication of my spare time for this. Decided to rewrite 'white' from scratch after my code for handling adjectives and adverbs became a mess. So I went from having a simple self learning bot that could be given simple text and be questioned about the content, to something that is pretty much just able to parse pieces of grammar and dump colorful text in console window on how and what was interpreted. From here I will have patience, take very tiny steps and focus on robustness in the grammar parsing.

My earlier version of white could handle the very basic stuff like I am sure most of you can already do if you are into this.
user: the car is white
user: what is the color of the car?
bot: I don't know
user: white is a color
user: what is the color of the car?
bot: white

...but next, it should be able to function without being told that "white is a color". A simplified example:

user: The color of the car is white.     {white is a potential color}
user: The owner of the car is white.  {white is a potential owner}
user: The color of the car is horrible.  {horrible is a potential color}
user: The dog's color is red.  {red is a potential color}
user: He is the owner of the dog.  {white is less likely to be an owner}
user: The baloon is white, round and big.
user: what is the color of the baloon? {white is the most likely answer}
bot: white

From what I have seen so far, my approach on storing input is a bit different from the more traditional approaches (but then again, I haven't seen _that_ much). I try to avoid tree structures when I can and merge words quite wildly into objects with lots of properties. I have even managed to turn entire (but simple) sentences into single objects. This allows the learning patterns to be converted into integers with good detail later on, which can be stored in the database to optimize storage. I am far from proving my method so we'll see if I'll be shooting myself in the foot or not at a later point. :)

Anyways, that was my 2 cents. For now, I will most probably keep a low profile on my own bot as I am slowly bringing my new version up to shape. Instead, I will read up on what everyone else is up to, hope to be able to exchange thoughts around problem areas but most importantly; get inspiration.

*

Freddy

  • Administrator
  • **********************
  • Colossus
  • *
  • 6858
  • Mostly Harmless
Re: New arrival
« Reply #1 on: July 15, 2011, 02:48:24 pm »
Hi and welcome the forum White - sorry about the delay in activating your account, your username 'white' triggered the anti bot measures through no fault of your own I will add.  Anyway, glad you are here finally :)

Your project sounds very interesting and a lot of us here are interested in an AI that can learn things through natural language.  I am keen on the idea myself too. Can I ask what programming language(s) you are using and perhaps why you chose them ?

Enjoy the forum :)

*

Data

  • Trusty Member
  • ***********
  • Eve
  • *
  • 1279
  • Overclocked // Undervolted
    • Datahopa - Share your thoughts ideas and creations
Re: New arrival
« Reply #2 on: July 15, 2011, 03:04:23 pm »
May I just say:

Welcome to Ai Dreams white.

& Your project sounds interesting indeed.

*

white

  • Trusty Member
  • *
  • Roomba
  • *
  • 18
Re: New arrival
« Reply #3 on: July 15, 2011, 03:08:07 pm »
Thanks Freddy and Datahopa. ...and no worries about the delay, Freddy.

My project is being written in C# simply because it's the language I am the most comfortable with.

*

DaveMorton

  • Trusty Member
  • ********
  • Replicant
  • *
  • 636
  • Safe, Reliable Insanity, Since 1961
    • Geek Cave Creations
Re: New arrival
« Reply #4 on: July 15, 2011, 05:18:43 pm »
Hello, white, and welcome!

Listen, it's far better to join in on the discussions than to "lurk". Joining in nets you the benefit of a more detailed, intimate understanding than simply reading what others have written, not to mention that the rest of us benefit from learning more about you! :)

I have little to no experience with C (of any flavour), but I've got some pretty fair experience with programming in general (mostly PHP, Perl and VB, all self-taught), and there are others here with far more experience and knowledge than myself, so if you want to bounce an idea or two off the community at large, feel free to do so. :) We're a friendly sort here.

I would also like to suggest that you check out chatbots.org for others who share similar passions. It's not quite as informal there as it is here, but the members there are friendly and knowledgeable, and you're likely to find a lot of useful insights and ideas there. I should know. I'm not only a member, but also a moderator there. :)
Comforting the Disturbed, Disturbing the Comfortable
Chat with Morti!
LinkedIn Profile
CAPTCHA4us

*

Freddy

  • Administrator
  • **********************
  • Colossus
  • *
  • 6858
  • Mostly Harmless
Re: New arrival
« Reply #5 on: July 15, 2011, 05:59:39 pm »
I'm currently deciding whether to learn C# myself.  I am at a bit of a crossroads.  A few years back I knew Visual Basic quite well, but I left it alone for so long I am struggling a bit now.  Everything I want to do at the moment could be done in C# so it's a decision on whether to relearn VB or start fresh with C#

I think to be honest, I might have an easier time learning the C#.

Hmm decisions decisions  ???

*

white

  • Trusty Member
  • *
  • Roomba
  • *
  • 18
Re: New arrival
« Reply #6 on: July 15, 2011, 06:37:01 pm »
GeekCaveCreations, that is true. I am familiar with that forum, reading it from time to time.

Freddy, I would definitely suggest C# if you need to relearn VB anyways. I migrated from VB.NET to C# myself a few years ago. Knowing VB.NET, I was able to migrate in just a few days. I read some C++ (and not C#) tutorials on the train back and forth work to get into the syntax and once learned, it was quick to get up to speed.

I personally haven't touched VB since. :) But to be fair, you can achieve more or less the same thing in both languages. Microsoft has done a great job narrowing down the gap between the two languages these days.

For me it is the syntax that makes me want to stick to C#.

I prefer things like:
int i;
over
Dim i as Integer

and

if (myVal == 2)
   DoSomething();
over
If myVal = 2 Then
  DoSomething()
End If

Also, C# is closer to other languages such as Java, Actionscript, C++ etc if you need ever feel like getting into any of these.
« Last Edit: July 15, 2011, 08:07:56 pm by white »

*

Freddy

  • Administrator
  • **********************
  • Colossus
  • *
  • 6858
  • Mostly Harmless
Re: New arrival
« Reply #7 on: July 15, 2011, 06:48:22 pm »
Yes I see what you mean. Over the past few years I have mainly been programming in PHP and some of the syntax of C# echoes a little with that and some of it quite a lot.

In PHP (don't know if you know it) you would also do :

if (myVal == 2)
 doSomething();

or

if (myVal == 3)
{
 doThis();
 doThat();
}

If you had a few things to do....

So basically the same thing and is the way I am used to thinking.

Action script I have wondered about too lately but my current ideas have dismissed that for now, but I can see myself using it in the future.  And C++ I have had on a back burner for a very long time now lol.

I think I will go for C#, thank for the encouragement and quick run down :)

*

DaveMorton

  • Trusty Member
  • ********
  • Replicant
  • *
  • 636
  • Safe, Reliable Insanity, Since 1961
    • Geek Cave Creations
Re: New arrival
« Reply #8 on: July 15, 2011, 07:44:46 pm »
I swear, you people who put the opening bracket of an execution block on it''s own line are gonna drive me to DRINK!!! :P

I work with another person who codes in PHP, and that person has the same bad habit, lol. Can we say "unnecessary code bloat"?

Seriously, though, I should probably study some version of C as well. I've been putting it off since the mid-80's. Being totally ignorant of the differences between C# and C++ (though I'm certain that either would serve me well), I'm just not sure which to look at, or even both. Like Freddy, I'm much more proficient with PHP than anything, so whichever one is closest in syntax and semantics would probably be the better choice. :)
Comforting the Disturbed, Disturbing the Comfortable
Chat with Morti!
LinkedIn Profile
CAPTCHA4us

*

Freddy

  • Administrator
  • **********************
  • Colossus
  • *
  • 6858
  • Mostly Harmless
Re: New arrival
« Reply #9 on: July 15, 2011, 07:57:26 pm »
Haha, I always put it on a new line because I find it easier to scan the code that way.  Mainly I use Notepad++ and if you click on either bracket it highlights the other bracket...so you can see quickly what chunk of code you are dealing with.  Just my preference really ;)

I did do a little C a long time back, but that's a distant memory, I remember I liked it though.  It sounds to me like C# could be the one for us.

*

white

  • Trusty Member
  • *
  • Roomba
  • *
  • 18
Re: New arrival
« Reply #10 on: July 15, 2011, 08:05:32 pm »
Hehe, if you are using Visual Studio, I am afraid you have no choice. Trying to put the opening bracket on the same line, and VS will move it down to a new line automatically by the time you type your closing bracket.

*

Art

  • At the end of the game, the King and Pawn go into the same box.
  • Trusty Member
  • **********************
  • Colossus
  • *
  • 5865
Re: New arrival
« Reply #11 on: July 15, 2011, 08:53:15 pm »
Welcome aboard, white. It's always nice to receive new people, ideas and interaction!!
Post away and enjoy your stay!! (ohh...nice rhyme...if I do say so!) O0
In the world of AI, it's the thought that counts!

*

Bragi

  • Trusty Member
  • ********
  • Replicant
  • *
  • 564
    • Neural network design blog
Re: New arrival
« Reply #12 on: July 16, 2011, 09:14:20 am »
Hi White
and have fun on the site!

 


AI controlled F-16, for real!
by frankinstien (AI News )
May 04, 2024, 01:04:11 am
OpenAI Speech-to-Speech Reasoning Demo
by MikeB (AI News )
March 31, 2024, 01:00:53 pm
Say good-bye to GPUs...
by MikeB (AI News )
March 23, 2024, 09:23:52 am
Google Bard report
by ivan.moony (AI News )
February 14, 2024, 04:42:23 pm
Elon Musk's xAI Grok Chatbot
by MikeB (AI News )
December 11, 2023, 06:26:33 am
Nvidia Hype
by 8pla.net (AI News )
December 06, 2023, 10:04:52 pm
How will the OpenAI CEO being Fired affect ChatGPT?
by 8pla.net (AI News )
December 06, 2023, 09:54:25 pm
Independent AI sovereignties
by WriterOfMinds (AI News )
November 08, 2023, 04:51:21 am

Users Online

306 Guests, 0 Users

Most Online Today: 375. Most Online Ever: 2369 (November 21, 2020, 04:08:13 pm)

Articles