Difference between revisions of "Wraithbot"

From WikiManual
Jump to: navigation, search
Line 1: Line 1:
 
== Wraithbot Wiki ==
 
== Wraithbot Wiki ==
A community project
+
 
 +
== A Community Project ==
 +
 
  
 
See [http://forum.darwinbots.com/index.php?showtopic=1086 here] for more details.
 
See [http://forum.darwinbots.com/index.php?showtopic=1086 here] for more details.
  
+
'wraithbot' to refers to the 95% caste and 'hivebot' refers to the species
'''Wraithbot'''.<br>
+
 
A hibernating bot that sleeps periodically to let it's prey's numbers increase and comes out of hibernation when the queen and the keepers decide that it's ready for 'feeding'
+
'''Heirarchy:'''
It's like an extremely advanced Black Ant or PY antbot.
+
 
 +
'''Queen''' - Head of the hive, unlike Ant queens is mobile but stays in the hive. Self-sufficient unlike Ant queens but all hivebots will protect her. Issues orders using .out/.in. There is only one Queen per hive. Queen makes high-level decisions. Keepers report information about the current state of the map to her. Queen reproduces once to produce a new queen.
 +
- Queen DNA deals with decision-making with simple self-sufficiency routines.
 +
 
 +
'''Keepers''' - 1-5% of the population will become Keepers at birth. Keepers usually patrol the hive but occasionally wander the map gather information. Keepers make low-level decisions and 'report' information to the Queen. Keepers are sterile.
 +
- Keeper DNA deals with information gathering with more complex self-sufficiency routines.
 +
 
 +
'''Wraithbots (soldiers/drones)''' - Far more autonomous than Ant workers. They reproduce and are self-sufficient. They go into hibernation at the command of the Queen and the Keepers when food is scarce, and are woken by the Keepers. 90% of the population.
 +
- wraithbot DNA deals with hibernation and feeding/breeding, and the ability to stay in constant communication using .out/.in. Each wraithbot must 'report in' at the hive periodically (to control the population ie. hibernation)
 +
 
 +
'''Life cycle and feeding patterns:'''
 +
 
 +
The simulation is started with a few hivebots, a simple prey species and veggies. Veggies get 10 nrg per turn. The sim is run on a large (2-4) map
 +
 
 +
The hivebots will go to a prearranged point on the map and 'elect' a queen. The queen will act as a normal wraithbot but will coordinate the ordinary wraithbots and search the map for a good hive (at the start). The wraithbots will scour the map and feed heavily, but leave some prey alive. When the Queen and Keepers decide that their pray's numbers have fallen too much, then they will tell the other wraithbots (via .out/.in) to hibernate. As each wraithbot returns to the hive they will see the hibernating hive and do the same. The keepers will then stay alive and monitor their pray's population levels. They will venture outside the hive occasionally to feed on their pray, but in not as great a numbers as the regular wraithbots. When the Keepers feel that the population of their pray has reached sufficient levels for another feeding then they will return to the hive, tell the queen (who will decide based on what her other Keepers say) and wake the hive. The hivebots will then wake and cull the pray population until the Keepers send them to sleep again.
 +
I would like to make them solely carniverous, but they can eat veggies if ther're desperate.
 +
 
 +
'''The hive:'''
 +
 
 +
The Queen picks a location for the hive at the start. It is somewhere as far away from the pray populations (communities) as possible.
 +
 
 +
It will be a single point (two numbers), but also have a boundary set with 2 points (opposite corners). Altogether: four numbers define the hive boundary, and two define the central point.
 +
 
 +
'''The Pray Species:'''
 +
 
 +
Need a bot that doesn't reproduce too fast and isn't exceptional at fighting. It also needs to be very communal and stay in one 'territory' (ie. one third of the map? - maybe they can lay down borders using x,y coordinates). A neat Idea would to allow them to come out to the hivebots if they have enough energy collectively. They also share nrg among their species. There will be many 'communities' of prey.
 +
- And it hasn't got to be too complicated, but there's alot of flexibility here.
 +
 
 +
'''Costs:'''
 +
 
 +
Set lower than usual so that the bots don't have to spend all their life feeding. Ie, the hivebots set up their hive in an entirely different section of the map to their prey and venture out to eat them periodically. More time for interesting behaviors.
 +
 
 +
'''Decision making:'''
 +
 
 +
The Queen must decide:
 +
- When to hibernate (if in doubt, hibernate)
 +
- When to stop hibernation (if in doubt, sleep in longer)
 +
- If a prey community is becoming too much of a threat
 +
- Which pray community to cull and when
 +
 
 +
The Keepers must:
 +
- Gather information to give to the Queen
 +
- Plan feeding patterns?
 +
 
 +
The wraithbots must:
 +
- Note anything interesting
 +
- Make periodic stops at the hive if the are out feeding
 +
 
 +
'''Hive information flow:'''
 +
 
 +
The wraithbots return to the hive periodically to check up on hibernation status etc. and give interesting information to the Keepers. The wraithbots will also go back to the hive if they see something worth reproting.
 +
The Keepers wander the map and report locations of prey communities, prey populations veg concentrations, worker progress etc. to the Queen.
 +
The Queen processes the information
  
Here's the hirarchy:<br>
+
'''In/Out:'''
'''The Queen''' - head of the hive, picks the hive coordinates and decides with the keepers when it's time to hibernate and wake up. There is only one queen that reproduces to form a hive, and only once to produce another queen. If the queen is killed or missing for too long then a random keeper becomes the new queen. If two queens exist then they will fight to the death. Queen starts off as the first bot in the sim (starts with one high-energy bot)
 
  
 +
In/Out will be used extensively for communication, and a special 'hivebot language' may well have to be developed, consisting of in/out sequences. Something like:
  
'''The Keepers''' - 10% of the population. Tasked with relaying orders and defending the hive and the hibernating 'others'. Wake the sleeping with an .out signal or a memory shot if all else fails. If a keeper is killed then the surviving keepers will wake the hive! Keepers can: Patrol the hive, protect the queen, go out hunting (in shifts) and manage the hibernation of the hive.
+
1) Wraithbot puts 1 in .out1 to catch a Keeper's attention
 +
2) Keeper replies by putting 2 in .out1
 +
3) Communication begins in earnest:
  
  
'''The Others''' - the rest! The bulk of the population hibernates when there isn't enough food to go around to sustain the population. They are woken by keepers when food is plentiful and will then cull nearly all living things on the map until the keepers send them into hibernation again. They will leave a small percentage of prey alive to reproduce.
+
 
  
 +
          out2  out3  out4  out5
 +
            64    83    91    53
  
'''Wraithbot''' will NEVER EVER be used in leagues (so don't worry about interference from chameleon-bots and F1 quality bots etc), but is instead for the creation of a stable ecosystem of these things preying on veggies and a simple bot (Animal Minimalis?, or one we can create - something with few genes that survives well but isn't too strong) population.
+
  
  
Makes extensive use of '''''.out1-5/in1-5'''''
 
  
:'''.out1''' Hive location x coordinate (queen picks this and all bots store it to .out1 if they see it)
+
"Defend the hive!" (just so you get the idea)
:'''.out2''' Hive location y coordinate (queen picks this and all bots store it to .out1 if they see it)
 
:'''.out3''' Time to hibernate (queen or keepers decide when to send everyone into hibernation -
 
:: normal bots that see a number in .out3 will go to the 'hive' to sleep. If the don't know
 
:: where it is then they will 'ask' a keeper via .in1-2)
 
:'''.out4''' Orders and communication
 
:'''.out5''' Orders and communication
 
  
The sim will start with one high-energy wraithbot, who will reproduce to form a hive. Alternatively, the queen could be a different species.
+
4) Keeper puts 3 in .out1 to say that it has recieved the communication
The angle function can direct bots to the hive.
+
or
For 2.37.6 ideally - for large simulations.
+
5) Keeper puts 4 in .out1 to ask the wraithbot to repeat the communication
  
Well, that's the concept.
+
A lot of flexibility here too
  
 +
 
----
 
----
 
CODE:?
 
CODE:?

Revision as of 17:35, 27 January 2006

Wraithbot Wiki

A Community Project

See here for more details.

'wraithbot' to refers to the 95% caste and 'hivebot' refers to the species

Heirarchy:

Queen - Head of the hive, unlike Ant queens is mobile but stays in the hive. Self-sufficient unlike Ant queens but all hivebots will protect her. Issues orders using .out/.in. There is only one Queen per hive. Queen makes high-level decisions. Keepers report information about the current state of the map to her. Queen reproduces once to produce a new queen. - Queen DNA deals with decision-making with simple self-sufficiency routines.

Keepers - 1-5% of the population will become Keepers at birth. Keepers usually patrol the hive but occasionally wander the map gather information. Keepers make low-level decisions and 'report' information to the Queen. Keepers are sterile. - Keeper DNA deals with information gathering with more complex self-sufficiency routines.

Wraithbots (soldiers/drones) - Far more autonomous than Ant workers. They reproduce and are self-sufficient. They go into hibernation at the command of the Queen and the Keepers when food is scarce, and are woken by the Keepers. 90% of the population. - wraithbot DNA deals with hibernation and feeding/breeding, and the ability to stay in constant communication using .out/.in. Each wraithbot must 'report in' at the hive periodically (to control the population ie. hibernation)

Life cycle and feeding patterns:

The simulation is started with a few hivebots, a simple prey species and veggies. Veggies get 10 nrg per turn. The sim is run on a large (2-4) map

The hivebots will go to a prearranged point on the map and 'elect' a queen. The queen will act as a normal wraithbot but will coordinate the ordinary wraithbots and search the map for a good hive (at the start). The wraithbots will scour the map and feed heavily, but leave some prey alive. When the Queen and Keepers decide that their pray's numbers have fallen too much, then they will tell the other wraithbots (via .out/.in) to hibernate. As each wraithbot returns to the hive they will see the hibernating hive and do the same. The keepers will then stay alive and monitor their pray's population levels. They will venture outside the hive occasionally to feed on their pray, but in not as great a numbers as the regular wraithbots. When the Keepers feel that the population of their pray has reached sufficient levels for another feeding then they will return to the hive, tell the queen (who will decide based on what her other Keepers say) and wake the hive. The hivebots will then wake and cull the pray population until the Keepers send them to sleep again. I would like to make them solely carniverous, but they can eat veggies if ther're desperate.

The hive:

The Queen picks a location for the hive at the start. It is somewhere as far away from the pray populations (communities) as possible.

It will be a single point (two numbers), but also have a boundary set with 2 points (opposite corners). Altogether: four numbers define the hive boundary, and two define the central point.

The Pray Species:

Need a bot that doesn't reproduce too fast and isn't exceptional at fighting. It also needs to be very communal and stay in one 'territory' (ie. one third of the map? - maybe they can lay down borders using x,y coordinates). A neat Idea would to allow them to come out to the hivebots if they have enough energy collectively. They also share nrg among their species. There will be many 'communities' of prey. - And it hasn't got to be too complicated, but there's alot of flexibility here.

Costs:

Set lower than usual so that the bots don't have to spend all their life feeding. Ie, the hivebots set up their hive in an entirely different section of the map to their prey and venture out to eat them periodically. More time for interesting behaviors.

Decision making:

The Queen must decide: - When to hibernate (if in doubt, hibernate) - When to stop hibernation (if in doubt, sleep in longer) - If a prey community is becoming too much of a threat - Which pray community to cull and when

The Keepers must: - Gather information to give to the Queen - Plan feeding patterns?

The wraithbots must: - Note anything interesting - Make periodic stops at the hive if the are out feeding

Hive information flow:

The wraithbots return to the hive periodically to check up on hibernation status etc. and give interesting information to the Keepers. The wraithbots will also go back to the hive if they see something worth reproting. The Keepers wander the map and report locations of prey communities, prey populations veg concentrations, worker progress etc. to the Queen. The Queen processes the information

In/Out:

In/Out will be used extensively for communication, and a special 'hivebot language' may well have to be developed, consisting of in/out sequences. Something like:

1) Wraithbot puts 1 in .out1 to catch a Keeper's attention 2) Keeper replies by putting 2 in .out1 3) Communication begins in earnest:



          out2   out3   out4   out5
           64     83     91     53



"Defend the hive!" (just so you get the idea)

4) Keeper puts 3 in .out1 to say that it has recieved the communication or 5) Keeper puts 4 in .out1 to ask the wraithbot to repeat the communication

A lot of flexibility here too



CODE:?