Friday, October 31, 2008

Screw AI, lets make AE

There have been a lot of broad claims made of AI, and many movies that foretell the impending succeeding of humanity by intelligent computers. Ever since the 70s people have been theorizing that super human intelligence is around the corner, at yet, for almost 40 years, nothing. 40 years and all we got is an over powered computer that can beat a grandmaster at a stupid game, but do nothing else.

There are many bots, if one would believe the Loebner Prize (which seems to be complete tripe), then Hal the Hamster is the best that the AI comunity has to offer. After talking with Hal for a few straight minutes, it become obvious it is dumb as mud when it comes to anything that would resemble true intelligence.

It is not as if we software developers haven't been able to write anything interesting in 40 years. There is plenty of amazing applications out there. So why is this one holy grail of a task eluding us so completely? Perhaps it is because the task was never well defined, or really never defined at all. Lets face it, engineers are good a solving concrete problems, but if you don't give them a concrete problem, then they quickly start walking in the clouds and chasing their own tails.

So screw AI, as it is too fluffy of a concept, not a concrete enough problem. Instead lets define a specific problem that effectively gives us the same thing, but that can actually be developed. Lets define AE, Artificial Engineering. That is, lets make a computer capable of being a software developer. Lets let it learn how to navigate the Internet, analyze code, take an active part in open source projects. We don't need to develop a computer that is more intelligent that a human in ever aspect, we just need to develop a computer that can out program a human, and it will write all the complicated AI code that escapes our little minds.

Wednesday, October 1, 2008

Do Clams have a Consciousness?

Consciousness has traditionally been portrayed as some mystical aspect of the mind. Something hard to define what it is, or even what forms of life have it. But perhaps it is not so complex and mystical a thing.

I was working on the Pandora project recently and modeling Pandora's mind and senses. Originally I had a Sense have input and output, both tied to the active memory, but the output did not seem correct, how could the Sense decide what to do? So then I realized I was missing something, the output should take an article of memory, and something must control what to send as output. Basically I needed a consciousness.

So it was quite easy to add another Thought subclass to model a Consciousness, basically a Thought whose only purpose is to monitor the Sense's inputs and decide on the output.

So what is a consciousness? It is basically a thought process that controls the senses. So what has a consciousness? Well since it is just something that controls senses, there would be little point in anything without senses having one.