Skip to main content

Artificial behavior, or intelligence?

Artificial behavior is an area of research that seems to have been missed, or skipped over, on the path that companies like Google are taking to develop artificial intelligence. They have also jumped straight to working on human intelligence. Why not start smaller first? What about a cat or dog, or an insect?

An insect may not seem very intelligent, and companies are probably not interested because they can't make much use of an artificial insect intelligence, but simple insects are quite complex. It is also quite probable that they have a consciousness, the thing that makes them "alive". Though we don't know what consciousness is, it is thought to arise naturally as a result of the complexity of the brain.

The interesting thing is that, if this is so (and it likely is), then there is no difference between a "live" human and an artificial human, a computer program that mimics the human brain. They are the same thing. We can say the same, then, of something like an insect or a fish. An insect's level of brain and behavioral complexity leads it to have an insect's level of consciousness. That is not as much as a human, but we still say that an insect is a living creature.

My interest is in this idea. That any level of computational complexity, resulting in the subsequent behavioral complexity of an organism, is a living creature to the extent of its complexity. This follows naturally from humans down the hierarchy of life forms of less and less complexity, down further to computer programs of less complexity.

If a computer program can be developed with the complexity of an insect, then that program is an insect. An actual, living creature, although with some modifications. For instance, it would not breathe oxygen, but that would not be a requirement to qualify for life. It could simply be made to breathe oxygen if the program dictated that without physical machinery continuously supplying oxygen that the program terminate or otherwise adversely alter its state such that we would say that oxygen is a requirement for proper function.

I have said all of this so that I can say that I have seen what I believe is the behavior of a living, artificial organism. It "appeared" in a behavioral complexity simulation that I am working on. The program can best be said to be a sort of water bug. It swims and lives in water, but it has to breathe oxygen (in other words, surface outside of the water briefly to breathe, or it will die). It has to eat and is able to reproduce, among other things.

All of this behavior was explicitly programmed in, but I noticed that the bug would behave in ways I didn't expect, and couldn't figure out why. The problem (I wouldn't call it that now) is that so many behaviors interact together that it becomes too complex to predict all the ways the program will behave. As I've added in more behavior, the complexity has increased. Watching the bug and interacting with it has convinced me completely that, in some sense, it is alive.

Comments

Popular posts from this blog

Water Pea Care and Instructions

Please treat your water pea like a real pet fish. Feed daily! Click here to get the Water Pea android app. You will receive a single water pea egg. Drop the egg in the water and your baby pea will hatch. If your water pea is alive after 1 da y, it will produce an egg that you can harvest . Care and Instructions Birth When you place the water pea egg in water, it will take a few seconds for the egg to dissolve. Initially, the newborn water pea will be tiny and hard to see. Take care not to accidentally pick it up and drop it out of the tank. Water peas live for about 3 days if properly fed. Feeding Your water pea must be fed every day, or it will die. To be safe, feed it once in the morning and again at night. Water peas recycle vitamin B by producing caecal pellets . Wait for your water pea to produce the pellet and then collect it so you don't run out of food. This is their only source of nutrition! To collect the pellets, drag them to the top of the ...

Collisions with line intersections

Collisions can be determined by testing for line intersections. Imagine a line representing the ground and an object above, falling down. At time t1 , take the center point  p1  of the object. At time t2 , move the object down and take the center point p2 of the object. If the line formed by endpoints (p1, p2) intersect the ground line, a collision has occurred. On a collision, reset the object to its original position before the movement. When a collision occurs, be sure to reset the object by the same point used to determine the line intersection. In this example, I use the center point, so the object should be reset by the center point, not its actual x, y (usually top left) coordinate. It is not always the case that resetting by the x, y coordinate is sufficient. This can be seen in the following picture. It can be seen that even if the object isn't moving, but its size changes, a line intersection can occur, and resetting the object to its x, y position will...

Mean Peas

I did something silly. I'm finishing up some behavioral changes for an aquatic creature that I'm about to release, called a water pea. For fun, I've been playing with different ideas to show the player interesting behaviors. One of those was teaching water peas to be territorial. The way to teach a program to "learn" to do anything is called training. It simply means having the program recognize incorrect (undesired) behaviors, and reinforcing positive behaviors. Over time, the program starts combining a multitude of desired behaviors to produce results that were never explicitly programmed in. These results can be...surprising. I eventually had peas that would fight to protect "their" area of the water tank. But water peas also form friendships, and they won't fight their friends. At least, that was the plan. Most territorial peas simply stayed in their area, along with their friends, and any poor pea that happened to wander by would be killed....