Author Topic: 5 Questions re DB opns  (Read 11427 times)

Offline AZPaul

  • Bot Builder
  • **
  • Posts: 76
    • View Profile
5 Questions re DB opns
« Reply #15 on: March 25, 2005, 02:02:03 PM »
Thanks folks, again.

I was just wondering how this feature worked in 2.35

It is not a major issue, PY, and no need to spend time searching through old code.

The issue is interesting, though.

The "goal" of evolution, if it can be said to have one, is procreation. Dawkin's Selfish Gene, if you will. Number of offspring is the prime key, of course. For programming efforts, though, the secondary and tertiary sort selection is a quandry.

Is longevity a proper second?  Is a slow breeder that lives long "better" than a fast breeder with limited life? I donno.

Most cumulative mutations? Maybe. That is of interest. That is the reason for the simulation isn't it. Most mutations from the start of the sim and still tied for top breeder? That may indeed be "best."

My input: # offspring
              # cumulative mutations
              # cycles (age)
              any bot with "42" in the DNA

Well, maybe not that last one.

-P

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
5 Questions re DB opns
« Reply #16 on: March 25, 2005, 02:08:20 PM »
I think this is a strong candidate for an outgrowth of the scripting stuff PY started.

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
5 Questions re DB opns
« Reply #17 on: March 25, 2005, 02:24:17 PM »
Right. The scripting could easily me modified to include that sort of thing. Then you don't have to worry about pausing the game up or anything. Just set the scripting editor to automatically save a snapshot file when a robot meets the criteria that you set.
There are 10 kinds of people in the world
Those who understand binary.
and those who don't

:D PY :D

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
5 Questions re DB opns
« Reply #18 on: October 15, 2005, 12:16:21 PM »
We all agreed it should be expanded and included.

And have since sat on it.  We need like a team of programmers (like 5) to really get the program moving as fast as the ideas are comming in.

Offline Ulciscor

  • Bot Destroyer
  • ***
  • Posts: 401
    • View Profile
5 Questions re DB opns
« Reply #19 on: October 15, 2005, 12:19:50 PM »
I don't think I'm a good enough programmer to be of any help, personally.
:D Ulciscor :D

I used to be indecisive, but now I'm not so sure.

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
5 Questions re DB opns
« Reply #20 on: October 15, 2005, 12:23:56 PM »
It's all a matter of practice.  I'd start off a new programmer on some task that isn't directly related to the engine, some small little piece.  They'd learn a bit about the program in the process, and try for something larger.

When I started programming, I just added a few commands and sysvars, and PY checked over my work when I emailed it to him.  I'm thinking this would work the same way.

Offline Ulciscor

  • Bot Destroyer
  • ***
  • Posts: 401
    • View Profile
5 Questions re DB opns
« Reply #21 on: October 15, 2005, 12:26:57 PM »
Well I'm well eager to have a go, what could I do??
:D Ulciscor :D

I used to be indecisive, but now I'm not so sure.

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
5 Questions re DB opns
« Reply #22 on: October 15, 2005, 12:30:31 PM »
OOh, yay!

Here's a good task:  I want to make sure that the stack is working right.  Endy was saying something about how the stack was behaving screwy in a recent post.  (I'll have to find it).

Using Visual Basic in debug mode, check to see if the stack is working properly.  That includes removing values, giving 0 if there are no legit values, dropping off older terms as the stack gets too large, adding values properly, etc.

All the code is contained in the module "DNA Execution".

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
5 Questions re DB opns
« Reply #23 on: October 15, 2005, 12:31:25 PM »

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
5 Questions re DB opns
« Reply #24 on: October 15, 2005, 12:44:17 PM »
Also, this sounds alot up your alley:

Improved snapshot function.

I'm trying to pick things that won't interphere with porting the code to C++.

Offline Botsareus

  • Society makes it all backwards - there is a good reason for that
  • Bot God
  • *****
  • Posts: 4483
    • View Profile
5 Questions re DB opns
« Reply #25 on: October 15, 2005, 04:25:24 PM »
ofcorse there are some programers that write bits and peaces for the program and they never get added .. uhm .. placment control .. uhm. So thouse programers move on to bigger and better things... like fixing bugs in the program... until it gets ported into c++

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
5 Questions re DB opns
« Reply #26 on: October 15, 2005, 04:42:48 PM »
Those progammers tend to dump their code into my lap, and expect me to magically integrate it into several thousand lines of code.

Scripts would probably be alot like the settings files.  You edit them in the program, or outside the program with notepad.

They would basically be a set of if-thens that effect the DB universe.

Like:

If robage > 8000 kill robot

etc, etc.  Basically anything the user can do to the bots should be able to be scripted.  Like:

if total_run_cycles mod 1000000 = 0 then friction = friction + 4

or somethng like that.
« Last Edit: October 15, 2005, 04:42:59 PM by Numsgil »

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
5 Questions re DB opns
« Reply #27 on: October 16, 2005, 12:47:10 PM »
We already have a simple script system that I added about 6 months back. At present it works only for stuff that happens during reproduction/mutation.

We can do stuff like...

If bot DNA contains no repro commands then kill bot.

You can find this stuff in the mutations panel in the options. It consists of 3 comboboxes with pulldown menus and a big window at the bottom. You can have up to 9 simultaineous scripts at the moment but they are kind of limited in scope.

I have some plans of my own to implement some way serious scripts as soon as I get the free time to work on the program again.
There are 10 kinds of people in the world
Those who understand binary.
and those who don't

:D PY :D

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
5 Questions re DB opns
« Reply #28 on: October 16, 2005, 03:14:37 PM »
Those mutation scripts may or may not work in 2.4.  You see, I rewrote the entire mutation/DNA execution code, so random thigns that were specifically added into that code may be, um...  not working.

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
5 Questions re DB opns
« Reply #29 on: October 17, 2005, 08:53:39 AM »
The scripts work on the returned value of the string variable "x" (I think), that lists the mutations. After that it just scans the DNA file.
As long as you haven't changed the text output from the mutations then they should still work.
There are 10 kinds of people in the world
Those who understand binary.
and those who don't

:D PY :D