Jump to content
  • Advertisement
Sign in to follow this  
de_matt

The 5 senses

This topic is 4790 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hya, I've been thinking about AI for quite a while now and in particular evoluiton. The question that I'm stuck on at the moment though is how did the current 5 senses evolve? Primitve life - such as viruses don't exhibit the same senses - perhaps they have other senses but I'm not sure how this evolution would work. Thanks for any ideas you might have Matt

Share this post


Link to post
Share on other sites
Advertisement
Why would you ask this in a forum about AI for games?

If you think that viruses are primitive forms of life, you need to study more Biology.

Share this post


Link to post
Share on other sites
Some people think they are, some don't.. seems almost a 30/70 match respectively.
In actuality, viruses are just DNA strands (or RNA) within a "shell" of protein.

Share this post


Link to post
Share on other sites
I disagree. Lifeforms are defined by basic principles:

1. Lifeforms can recharge your energy reserves by itself.
2. Lifeforms can reproduce your own specimem.
3. Lifeforms have self-evolutive, self-protective and self-mechanical skills.

A virus have all these, so it's a lifeform.

If it helps, senses are a form of MAPPING. To medical research, walk in two hand is impossible if two of these three senses are out: VISION, HEARING and TACT.
And if one was out, the others will improve. If you sense a smell, the tendency is look to find the origin of it. Blind people can distinguish where is the smell by where this smell stimulate the nose, into it.

Viruses don't have senses because they don't need. Senses are a resource that a brain have to "hint" a menacy and avoid it, or to do it more efficiently. Another uses it haves, but is floating by specimem.
Viruses have fast-population-increase to avoid extinction.

Share this post


Link to post
Share on other sites
Senses are pretty much only essential for survival of multi-cellular organisms. Of course, we're looking at fairly complex multi-cellular organisms. The more complex an organism gets, the more specialized single cells become, thus to maintain the survival of the whole, there has to be some mechanism as to which information of the environment can be gathered.

Probably the first sense to be evolved was the tactile sense. We know that simple organisms have reflex like reactions to touching certain thing. And as the whole becomes larger and more complex, it becomes capable of processing more information to better survive. Of course, survival risks are a by product of size too. The more complex you get, the easier it is for something to fail or go wrong. So, the number of senses and the types of senses have to increase to increase the amount of information gathered.

There seems to be a somewhat numerical weight on the senses and the amount of information they gather. If you lose one sense, then the other senses will end up gathering more information to compensate for the lost information. Its actually a really nice redundant system. I personally believe that 5 senses is the max you need to go, since there really is enough redundancy there to be able to withstand failures of one or more senses.

So, I ended up rambling again, but true to life and evolution, information is power. Everything acts on a action reaction duality. There is a cause and there is an effect. And to better make the right choices, especially when it matters, the more information that is available, the better the chance of making the right choice. So, the senses are pretty much a by product of evolution that enhanced the chances of survival for complex organisms.

Share this post


Link to post
Share on other sites
So how do you think you'd go about programming something that can evolve more senses?

Do you think that as long as the world data is readily availible and some primitive awareness of it is given then the AI could evolve to read more of the data? Would this be an accurate simulaiton?

I'm not quite sure where I'm going with this idea yet - I'd like to write a game a strong simulation element to it but I'm still reading up and seeing what other people are thinking and dong.

Thanks for your replies. They were really interesting.

Matt

Share this post


Link to post
Share on other sites
Quote:
Original post by de_matt
So how do you think you'd go about programming something that can evolve more senses?

Do you think that as long as the world data is readily available and some primitive awareness of it is given then the AI could evolve to read more of the data? Would this be an accurate simulation?



It really depends on whether you are striving to simulate evolution in the sense of biology or awareness. It also depends on how you define "senses". Chances are biological evolution is too complex for what you are trying to accomplish. You might have better luck if you approach it as evolving responses to a particular collection of sensations. Using this approach you may have better luck presenting individual stimuli in an abstract manner. As the AI begins to experience different stimuli it may or may not begin to associate it with a particular result.

Real world example:

As kids we think of guns as toys not a dangerous item. If one of our friends pulls out a toy gun we don't think anything of it. We don't or can't distinguish between toy guns and the real thing. As we get older we see that guns kill. If the same friend pulls out a toy gun (and we know it's a toy) we don't care. If they pull out a real gun we may feel a sense of danger. Why? Because we associate guns with death.

Game world example:

We start with zero assumption. the AI is moving through the world and another character pulls out a gun. We have no idea what it is so we don't care. The other character shoots us and our health decreases. We may not immediately associate the two but the loss of health is seen as a negative (to the AI). A few minutes later the same thing happens. We've been shot twice and each time our health has decreased. The next time we see someone with a gun we associate it with pain. Pain is bad. We avoid it. In a manner of speaking we've just sensed danger.


We didn't specifically tell the AI that guns cause pain or that guns are dangerous. But after experiencing it the AI starts to associate the two in a way that a sense of danger has evolved. But what happens when you introduce a partner in say a capture the flag scenario. That partner pulls out a gun and the sense of danger kicks in. But wait. nothing BAD happened. Guns are not always bad. The AI starts to look at new things in order to determine if guns are bad. As the AI encounters more scenarios the decision tree starts to grow. It still knows that guns are dangerous but only the enemy wants to kill it.


Collecting the information (rather than providing a long list of predefined collections) isn't very difficult. Deciding which events should be kept or discarded or even considered in other scenarios is where the difficulty comes in. You could of course track every single experience but that may not be the best approach.



Providing your AI the ability to evolve based on sensation requires a lot of work. Everything in your virtual world needs to be represented in a way that your AI can evaluate. Hot/cold, positive/negative, pretty/ugly, etc. are all attributes that you will need to assign to all parts of your virtual world. Everything that your AI can sense also needs to be represented and linked. Sight, sound, touch, and smell need to be defined. You don't have to include smell but it makes for some interesting scenarios:

The AI encounters a foul odor (seen as a negative). The odor is caused by a rotting corpse. the corpse is a dead person. Death is bad. Optimally your AI would be able to immediately link death to a particular foul odor.



That's just the beginning. You'll most certainly want to start simulating biological modifiers in order to enhance or effect the AI in a particular sensation or heightened sense of awareness. If your AI is experiencing a sense of danger it may become cautious. If it hears a sound it may stop and wait for a few seconds to see if it gets closer, moves away, or continues. Basically this is just a simulation of our bodies producing more of a certain chemical during certain situations.


Don't expect to be immediately successful when you attempt something like this. There's been a lot of research to accomplish something of this nature all with varying and not always successful results. I look at it this way: if you can create a system that allows you to approach the problem in a simplified way and is to some degree effective you've made an accomplishment. If the results are consistent and it's able to adapt you're in good shape. Don't discount unexpected results or illogical "decisions" made by the AI - people aren't always known to make the brightest decisions.

Share this post


Link to post
Share on other sites
Thanks for the post Helter Skelter. I found it really interesting.

I've been thinking about starting off with a very basic AI system where the AI has a certain number of things it can do such as eating or sleeping and each one is evaluated.

Then I'm thinking, if all goes well, to expand that so that the AI can start to look for food to eat and search for suitable places to sleep.

If I get that far I think I'll be pretty happy.

Thanks again for the excellent post.

Matt

Share this post


Link to post
Share on other sites
Quote:
Original post by de_matt
Thanks for the post Helter Skelter. I found it really interesting.

Thanks again for the excellent post.

Matt


You're quite welcome. If I understand your intentions you might want to consider researching the social structure of certain animals. You might find wolves, dogs, coyotes, and foxes interesting as they are all members of the canine family. It can also give you a good contrast with dogs being domestic and the others having their own distinct behaviors in the wild (with many similarities of course). This approach can give you a little more insight with the amount of available information on canine behavior and learning especially obedience training of dogs.

From the sounds of it you could probably expand it to deal with a miniature ecosystem. Throw in some beavers, a couple of bears, a mountain lion or two, and a few tree hugging hippies and you got yourself a party :)



Some links...

REALLY good site for A-Life Information and programs. REALLY good site: http://www.alife.net

Thesis on food collection with genetic programming (good reading): http://www.lalena.com/ai/ant/

ALife: http://www.tldp.org/HOWTO/AI-Alife-HOWTO.html

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!