Wednesday, June 25, 2008

Artificial Intelligence -- Mostly Ramblings

Why has artificial intelligence failed?

One, a plethora of excuses. Two, myopia. Three, they have been trying to solve the wrong types of problems!

When one analyzes the many methods, all follow an algorithmic based system of computation. And why not? Why not search for an algorithmic solution -- after all, computers are really just one huge algorithm, are they not? Possibly too much focus has been placed on utilizing the computer, instead of solving the problem. Yes, the computer may be a part of solving the problem, but who says it even has to?

Creating real artificial intelligence will take some serious out-of-the-box-that-encloses-the-original-box thinking. First, we must be guided by theory. There seems to be a dearth of theories these days -- one that stands alone is Marvin Minsky's theory of mind. However, this is only one model, and pretty fragmented at that. Here I will present some 'crack-brained' and 'wacky' theories, my favorite kind.

The first thought experiment came to me before bed (or was it in the shower?). I was pondering the difference between me doing a task and a computer doing a task. The first thing I thought was important was that I had a reward system that drove me, (namely inner motivations such as wants). These chemical balances in my brain rewarded success and drove me away from failure (pain, etc). A computer, on the other hand, lacks this reward system, and has no way to measure whether or not it has made progress. A successful result can be programmed, of course,

The first question is then, is this 'reward process' necessary for a computer, or is programming it sufficient?

Lets come back to this.


For me to complete this task, I first take stock of my options and resources at hand. I make a decision, and see if the effect of this decision gets me closer or farther away from the goal. In otherwords, I am a feedback loop, making decisions, judging them, and making more decisions based on this knowledge. So how do I 'judge' my success after every decision? How can I make a computer 'judge' its success in the same way that I do?

How to judge my success
First, we take two different problems. One is the problem of solving some algebra. The second problem is putting a ball in a hole.

Think about the way you think when you are going to solve a math problem vs. a different sort of problem, such as putting a ball in a hole. For the math problem, you know a lot of techniques, but you don't know ultimately what the answer looks like. You will basically be floundering along through the problem, trying a host of different techniques at each step, until you get the answer. How do you judge your success at each step for the math problem? It seems like there is no real way, other than that you know that you haven't used any rules incorrectly.

Now consider the second problem - putting the ball in the hole.
The problem starts with a want. Now, computers do not have wants, and we will discuss this later. Now, based on this want, we create a mental model of the want realized some way. So, for our example, if our want is the ball to be in the hole, we create a model in our mind of this ball in this hole. This is a key step. Even before we start, we know what we want! Unlike the algebra problem, we know what the outcome looks like! Now, at each step, just like in the algebra problem, I used a host of techniques that have served me in the past to solve this problem. Only, for the ball problem, I measure success vs. this mental model that I have created. So, at each step, I judge based on how close it is to this model.

I mentioned earlier that the reason much artificial intelligence has not been created is because many people were trying to create computers that solved the wrong problems. It seems we should try to create computers that solve problems that we have to (and are good at!), instead of computers that solve problems that we have trouble with!

I believe consciouness and learning are intimately involved with the visual system more than previously thought. This is based off the idea that we form these mental models of success, and base our success off of them. In general, how can we create a model for a computer? If we can use some sort of reduction or analogy, that translates real world events into a mathematical world representation, then, within this domain we will be able to solve real world problems. For example, instead of creating a mental picture within the computer (i.e. having the computer draw itself a picture of the goal and using camera technologies to get closer to this goal), we instead represent the final state as a number, and use this number as a judge of success.

It seems we have tried to create superhuman intelligence computers, instead of human-intelligence computers.

More to come.

http://www.dewful.com for free Android Technologies!

Tuesday, June 10, 2008

What is Time?

It seems that 'time' is a human construct. We have clocks that supposedly measure time, but what are they really 'measuring'? They are basically just moving hands! Instead, they seem to be 'measuring' our position with relation to the sun.

Lets try to come up with some simple and intuitive description.

Maybe we can consider the possibility that there is no such thing as time. In this model, if we consider how some masses are currently distributed, it would difficult to describe how masses 'use to be' distributed. We could display snapshots of masses that moved around a room, and arranged these snapshots in the order that we took them. But, lets say we took the first snapshot after 10 seconds, and the second snapshot after 10 hours, and the third snapshot after 10 years. The pictures would tell us nothing of the spacing between snapshots (the time interval), which presents a big problem.

Lets say we know that a given mass is going to move parabolically. We can picture a mass in our imagination / mind's eye moving slowly over this path. In the real world, though, there seems to be 'something more' than just the movement, namely the instantaneous movement. The mass may speed up the slow down then speed up again. If we forget time, we don't get any of this slow-fast-slow movement, we just get a projected path. This almost suggests that time is necessary so that the human mind can gather more information about the qualitative nature of the system.

In other words, it is useful to have a way to qualitatively describe and causally distinguish these 'snapshots'. So it seems that we have invented 'time' to be able to measure an interval. But, is it niecessary? Is time necessary? In general, it is a qualitative aspect that gives more information to a system; think about 'length' or 'width' i.e. distance, are these necessary? As necessary as time, it seems. So, we must include time, and look for a different model, one where time does exist.

One question though. If time simply describes a snapshot, and we go back in time, do we simply go back to this snapshot?

Effects of Manipulating the Fabric of Space Time

SpaceTime. We have all heard of it, and it seems to be a revolutionary concept. One idea that I will propose (ungrounded mathematically and purely speculatively) is that of SpaceTime Residue.

What do I mean by SpaceTime residue? Well, simply arguing by analogy, let us imagine spacetime as any sort of material object that can be stretched or skewed by the presence of a mass. Pick your favorite, it could be an elastic fabric, acme rubber, or a spiderweb mesh. Now, imagine that we have placed a mass that streches this fabric (spacetime) around the mesh. Next, lets say the mass moves away, and the spacetime is no longer stretched. Now, to the casual observer it may appear that our fabric is back to normal, but many know that once something has been stretched, it is never quite the same. In other words, there is some evidence that this material has changed. This is what I call SpaceTime residue.

To put it formally, SpaceTime residue is the net effect on the spacetime by a mass that is introduced and removed.

Let's say that masses to 'stretch' spacetime. Then, by analogy, simply moving these masses around in space leaves the spacetime somewhat stretched, meaning that moving masses are constantly stretching out spacetime. The universe is expanding at an accelerating rate. While it seems very simplistic, could this be a cause?

Is there some way we can figure out if a spacetime was ever (formerly) manipulated by a given mass? It seems we would have to first figure out a 'spacetime' standard, and then somehow measure against this. First, we have to figure out what 'measuring' a spacetime really means!