Loading ...
Sorry, an error occurred while loading the content.

Re: [GP] Re: Modularity, Parsimony and Homogeneity (was: Digest Number 606)

Expand Messages
  • Ian Badcoe
    ... Is there a group still working on it today? I d be very interested in talking with them. ... Right but imagine a situation where the input problems have
    Message 1 of 12 , Mar 1 6:39 AM
    • 0 Attachment
      At 10:31 22/02/2004 -0500, you wrote:

      >We experimented around a fair amount, but this was 3 or more years
      >ago, and I don't remember in detail.

      Is there a group still working on it today? I'd be very interested in
      talking with them.

      >ian> Also, you state that any agent dies when it's cash drops
      >ian> below the
      >ian> starting value. It this a little harsh? e.g. any agent which
      >ian> does not act (win an auction) during the first simulation after
      >ian> its birth will die instantly as it's cash-flow will be zero but
      >ian> it will pay tax on the work it did deciding not to act. That
      >ian> agent might be useful in were other examples of the problem
      >ian> presented, however. Did you try letting them live until they
      >ian> dropped below 90% of their start-level?
      >
      >My philosophy is this. I don't mind being harsh to software agents,
      >they aren't people, I don't have any moral responsibility to prove
      >beyond a reasonable doubt they are guilty before axing :^)

      Right but imagine a situation where the input problems have more
      variety. E.g. we might randomly choose between block-problems where the
      target is in (A) column#1 or (B) column#4. In this case, there may be
      agents which only come into play for A or B. These agents might need to
      survive through a number of whole instances without making any bids, before
      they encounter the situation where they can demonstrate improving the
      solution. In this case, granting them some leeway would help them last
      long enough to prove their worth.

      Of course, in this case the parent would get less money back when the child
      went bankrupt, but if start-up capitol came from somewhere else (for
      example a fund filled with taxes and the remaining assets of bankrupt
      agents) then there would be no need to play fair by the parent in that
      case. (That's for systems with no "creator" agents -- was that your term
      -- in ones with creators, then the creator's finances and IP payments serve
      this function)

      That sounds reasonable to me, but I'm sure your experience has more to say
      about it...

      Ian B


      Living@Home - Open Source Evolving Organisms -
      http://livingathome.sourceforge.net/
    • Eric Baum
      ian Is there a group still working on it today? I d be very ian interested in talking with them. We did this work at NECI which has ceased to exist, and the
      Message 2 of 12 , Mar 3 12:27 AM
      • 0 Attachment
        ian> Is there a group still working on it today? I'd be very
        ian> interested in talking with them.

        We did this work at NECI which has ceased to exist, and the work is
        not being pursued at their successor. Igor Durdanovic wrote the C++
        code for these experiments and would be able to give you detailed
        info. I don't want to post his email without asking him, send me
        direct email and I'll put you in touch.
        I may be working on these things again next year.

        ian> Right but imagine a situation where the input problems have more
        ian> variety. E.g. we might randomly choose between block-problems
        ian> where the target is in (A) column#1 or (B) column#4. In this
        ian> case, there may be agents which only come into play for A or B.
        ian> These agents might need to survive through a number of whole
        ian> instances without making any bids, before they encounter the
        ian> situation where they can demonstrate improving the solution. In
        ian> this case, granting them some leeway would help them last long
        ian> enough to prove their worth.

        Well, its still a question of cost-benefit analysis...
        our approach would still work, when you happened to create an A agent
        in an A instance and it did well, it would get started,
        when you happened to create an A agent in a B instance, it would die,
        but roughly speaking that would happen anyway. You can't try out
        too many new agents per instance, otherwise you are making big
        perturbations on the performance of the system and its ability
        to hill climb (which depends on relatively smooth variation)
        becomes impaired. With new random agents, the chance that 1 will
        improve things is a lot better than that two new ones will improve
        at the same time, if two are active, one might be good but the other
        basically lethal and result in killing them both off-- and its even
        possible the bad one will somehow profit temporarily while getting
        rid of the good one.

        So, you are testing less than of order one agent per instance,
        and whether you keep them around for a while inactive or kill them
        soon just impacts the number of agents you create, not the
        number you test. And I still believe that, on average,
        an agent that has acted and lost money is a worse bet than a new
        agent, so unless the creation cost itself is important, its
        better to test the best available.


        ian> Of course, in this case the parent would get less money back when
        ian> the child went bankrupt, but if start-up capitol came from
        ian> somewhere else (for example a fund filled with taxes and the
        ian> remaining assets of bankrupt agents) then there would be no need
        ian> to play fair by the parent in that case. (That's for systems
        ian> with no "creator" agents -- was that your term
        ian> -- in ones with creators, then the creator's finances and IP
        ian> -- payments serve
        ian> this function)

        You want to be very careful of pumping money in through new
        random agents. It gets pumped in in random, thus unproductive,
        ways...

        At one point in our early experiments with creator agents, before
        we got it working, we had amazing speculative bubbles where
        the investor agents would keep producing idiot agents with higher
        and higher bids, running the prices up way beyond reality-- in fact
        well beyond the final payoff in the instance for success!
        Each investor would create an agent that bid more than the last one,
        so they each made a profit, and only the final guy took a hit when
        the instance was solved...
        it would evolve to higher and higher bids for a while, never learning
        how to solve instances very well, and then crash...

        This was in maybe '96 or '97 while the internet bubble was already
        visible, right around the time Greenspan was talking about irrational
        exuberance, so it was kind of interesting as an economic model,
        although ultimately not useful for evolutionary programming...

        ian> That sounds reasonable to me, but I'm sure your experience has
        ian> more to say about it...
      Your message has been successfully submitted and would be delivered to recipients shortly.