Subject:
|
RE: Bump switches and "aggression"
|
Newsgroups:
|
lugnet.robotics
|
Date:
|
Wed, 3 Dec 2003 19:25:37 GMT
|
Original-From:
|
Rob Limbaugh <rlimbaugh@greenfieldgroupSPAMCAKE.com>
|
Viewed:
|
979 times
|
| |
| |
> -----Original Message-----
> From: Jim Choate [mailto:ravage@einstein.ssz.com]
> Sent: Wednesday, December 03, 2003 9:58 AM
> To: lego-robotics@crynwr.com
> Cc: hangar18-general@open-forge.org;
> open-science-general@open-forge.com; hell@einstein.ssz.com
> Subject: Bump switches and "aggression"
<SNIP>
> I generaly use a bump switch on my bots, in fact several. I
> however do not give them each a seperate channel. I tie them
> all to one input and use the bump switch acctuation to
> initation a 'avoidance algorithm' since something has
> interfered with the current trajectory of the bot. If it's
> going forward, back up. If it's turning R then turn L. If
> it's moving slow, perhaps increase speed.
>
> The current approach I'm looking for is to model the 'fight or flight'
> behavior and this seems like a prime candidate. I also see it
> as being very compatible with subsumption architecture and
> nervous network approaches, which I think is critical.
>
> To my thinking there are two approaches to this, really too
> levels of difficulty,
>
> - Make it deterministic, in that if a switch is bumped invert your
> current trajectory axis, if going forward then reverse, if going R
> then go L.
>
> - Make it more stochastic. The first choice when a bump
> switch goes off
> is whether to stop, reverse your current trajectory, or
> select a random
> trajectory.
>
> I believe the second level provides a pretty good simulation
> to the 'fight or flight' approach by extending it to cover
> 'camouflage' strategies which are quite prevelant in
> biological systems. Take rabbits for example, they are
> sensitive to ground vibration. They generaly have two
> strategies (assuming they aren't in heat) freeze (ie stop) or
> run in a (semi-)random direction (ie zig-zag). This higher
> level approach is the current best candidate we have for the
> reference platform. It's also important to recognize that the
> 'stop' behavior must include a watchdog timer or else it
> becomes very boring behavior.
I think that your example indirectly shows that there are two things to
be aware of. Survival is one. Obstacle detection/avoidance is the
other. In thinking about it, I can see where there is a fine line
between the two.
Consider the rabbit is just exploring his surroundings and instinctively
knows nothing should bump it (sign of attack or agression) since it is
not moving. What is the appropriate response? It would seem that going
in the direction opposite of the sensed "attack" would be the best
choice, perhaps even in a randomized zig-zag pattern. In nature, the
rabbit would still assume there is a threat chasing it for some period
of time. But, what of obstacles encountered in that zig-zag path? If a
rabbit comes up to a wall, it will run along it to look for an escape
rather than turn around to face the agressor (depending on how long the
flight has lasted). If the rabbit is running away and it is touched
again, shouldn't it also run faster (if possible) in a direction based
on direction and location of attack?
In the original example given, a closed switch could mean "I ran into
something", "something bumped into me while I'm going somewhere",
"something is attacking me", or "something is attacking me while I'm
going somewhere". My opinion is that the best action is dependant on
the circumstances.
- Rob
|
|
1 Message in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|