Author Topic: Friction  (Read 4648 times)

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Friction
« on: May 03, 2006, 01:57:11 AM »
I'm running an ex nihilo sim.  I had brownian on and wanted to dampen it with friction.  Instead of damping it it amplified the motions!
 
 The stronger the kinetic friction should have been the faster and faster the bots started moving.

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Friction
« Reply #1 on: May 03, 2006, 02:26:21 AM »
I'll put it on my list for the next version.  There are a bunch of physics tweaks I want to look into over the next few weeks.  For example, right now I'm playing with conservation of angular momentum so that collisons and tie movements have the appropriate rotational effects....
Many beers....

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Friction
« Reply #2 on: May 03, 2006, 04:08:36 AM »
Alot of things like conservation of angular momentum can be emergent from the system you use.  They seem to be emergent properties in real life as well.

Offline Sprotiel

  • Bot Destroyer
  • ***
  • Posts: 135
    • View Profile
Friction
« Reply #3 on: May 03, 2006, 09:42:28 AM »
Quote from: Numsgil
Alot of things like conservation of angular momentum can be emergent from the system you use.  They seem to be emergent properties in real life as well.

Conservation of angular momentum is a physical constraint, it's not emergent! It's automatically respected for point masses, since their inertia momentum is zero but:
- ties aren't point masses
- it's weird to treat bots as point masses, since it means they'll never rotate due to a collision.

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Friction
« Reply #4 on: May 03, 2006, 10:39:48 AM »
Yeah, the bots themselves' angular momentum needs to be added into the sim.  I thought he meant the ties' angular momentum.

Offline Welwordion

  • Bot Destroyer
  • ***
  • Posts: 325
    • View Profile
Friction
« Reply #5 on: May 03, 2006, 11:13:08 AM »
rotation dangerous, realism dangerous, the problem I see is that the bots do not understand the have to compensate rotation.

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Friction
« Reply #6 on: May 03, 2006, 11:18:01 AM »
They would either learn to compensate or die.  It's the same with anything else.

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Friction
« Reply #7 on: May 03, 2006, 12:28:47 PM »
Quote from: Numsgil
Yeah, the bots themselves' angular momentum needs to be added into the sim.  I thought he meant the ties' angular momentum.
I meant bot angular momentum, from collisions and from tie moment forces, and also angular momentum of rigidly tied multbot structures.  Just trying to make the physics more reaslistic.

The degree to which it actually makes sense to simulate real world physcis as a means towards evolving completely articifical dignital organisms is a separate topic.  I sometimes wonder whether the environment in which bots evolve (or compete) should or need be anything like the physical world or whether it would be better for digitial organisms to reside in a world with less simulated physcis, physics more 'natural' to their digital natures.  Sure, simulation of phycisal world physics makes it easier for our own physical world selves to appreciate and enjoy and it makes perfect sense from a purly gaming, competition perspecitve, but I sometimes wonder where we want to end up.  What is DB 20 years from now?  As Gflops get cheaper and the richness and complexity of the environment grow, do you hope as I do that the space of all possibile organisms grows to include the possibility of some truely complex, truely sophistcated organisms and that perhaps one day we witness the evolotion of bots whicn can eclispe the complexity, utility and robustness of traditionally programmed software?  I do.  But if every new degree of freedom in the organism space requires a compenserate investment in physics simulation, then the complexity that emerges will be suited, will be limited to that artificial environment.  20 years from now, we may well have digital tigers roaming a simulated forest, complete with stripes and stalking behavour and mating habits, each consisting of many thousands or millions of automously executing virtual cells cooperating to create an incredibly complex and effective artifical creature.  But every selective force, from the benefit of having stripes to nautre of the forest that favors them and even the mechanims of sight and camoflage will have been embodied in the world physics.  If we want tigers, we will create the physics that favor tigers, artifical tigers in an artifical world.  Those tigers will be evolved and suited for a very specific and even more complex virutal environment defined within the context of the nth generation simulator.  Is that what we want?  I wonder.  Will that tiger be any utility outside it's environment?  Do we want it to?  Hmmm...

I have no concrete proposals, no suggestions to make, but it strikes me that mechanisms like venom and posion and shell and mass and waste are in many ways articifical constructs when viewed from the perspective of a digital organism.  I don't have alternative suggestions on the tip of my tounge and I full well understand that the world has to have complexity for complexity to evolve, but I do think about it sometimes...
Many beers....

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Friction
« Reply #8 on: May 03, 2006, 12:37:36 PM »
In my mind, for any simulation to hold the interest of the person running it, that person needs to be able to identify with it.  For that reason alone realistic physics are important.

Try running 2.1 with gravity on and let the bots settle on the bottom.  It just doesn't feel right.  If the world looks and feels like our own, we're better able to judge exactly what the bots are doing, and our interest in the simulation grows.

I don't see Darwinbots as being much more useful than in an academic setting.  The bots don't really solve any problems that would be useful to commercialize.  In your example, the tiger really can't leave the simulated forest.  The simulation is primarily a way for people to experiment and play around on an equal footing with evolution.  A way for natural and artificial organisms to interact.

While venom and poison etc. are indeed artificial constructs, what is of primary interest is how the bots learn to use them.  Darwinbots isn't so much about emergent abilities as it is about emergent behaviors.

Offline abyaly

  • Bot Destroyer
  • ***
  • Posts: 363
    • View Profile
Friction
« Reply #9 on: May 04, 2006, 10:49:50 AM »
Quote from: EricL
Just trying to make the physics more reaslistic.
Rotational inertia would be spiffy.
Lancre operated on the feudal system, which was to say, everyone feuded all
the time and handed on the fight to their descendants.
        -- (Terry Pratchett, Carpe Jugulum)

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Friction
« Reply #10 on: May 04, 2006, 01:31:17 PM »
Quote from: Numsgil
I'm running an ex nihilo sim.  I had brownian on and wanted to dampen it with friction.  Instead of damping it it amplified the motions!
 
 The stronger the kinetic friction should have been the faster and faster the bots started moving.
I'm looking at this.  It's involved.  Kinetic friction isn't backwards, what's happening is that the resistance force is exceeding the velocity!  Your bots are being propeled (backwards) by friction!

The problem is that the resistance impulse vector is used both for forces which should never exceed the bot's velocity (like friction and tie and sphere drag forces) as well as things which should (like the push back force from the field edges).  I'm also not at all convinced that the resistive forces are taking each other into consideration properly I.e. the sphere drag and kinetic friction may sum to exceed the bot's velocity.

I'm probably going to have to make the field edge push back operate directly on velocity (like collisions) and reserve the resistance vector for frictional and drag forces, then put some sanity checks in to insure the different opposition forces sum correctly.  May or may not make the next version.  Depends on the time I can allocate.
Many beers....

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Friction
« Reply #11 on: May 04, 2006, 01:33:36 PM »
I'm having a similar issue in the C++ source with static friction, now that I think of it.  I ended up just commenting it out and working on other parts.

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Friction
« Reply #12 on: May 07, 2006, 03:53:10 PM »
FYI, in 2.42.4. I have changed kinetic friction to operate directly on a bot's velocity and have left the vector of resitition for other forces.  Kinetic friciton appears to behave well now.  There are still strange brownian-induced harmonics with tied bots - the physics of torque and hooke forces in ties and their relationship to other forces still needs some tweaking - but at least now kinetic friction dampens such forces as one would expect.

Note that the sim must have some Z axis gravity for the kinetic friction setting to operate.  I.e. the actual kinetic friction is a function of the bot's mass, the sim's Z axis gravity and the coeffecient of kinetic friction.  If any of these are 0, there will be no effect from kinetic friction.
Many beers....