Evolutionary Algorithm

From 2008.igem.org

(Difference between revisions)
(Genetic Algorithms)
(Evolutionary Algorithm)
 
(17 intermediate revisions not shown)
Line 8: Line 8:
!align="center"|[[Team:Calgary_Software/Team|The Team]]
!align="center"|[[Team:Calgary_Software/Team|The Team]]
!align="center"|[[Team:Calgary_Software/Project|The Project]]
!align="center"|[[Team:Calgary_Software/Project|The Project]]
-
!align="center"|[[Team:Calgary_Software/Modeling|Modeling]]
 
!align="center"|[[Team:Calgary_Software/Notebook|Notebook]]
!align="center"|[[Team:Calgary_Software/Notebook|Notebook]]
|}
|}
Line 22: Line 21:
<div align=justify>
<div align=justify>
-
The idea of agent based systems or modeling first took place in the late 1940s. This kind of modeling puts forth the idea of having independent individuals or agents within a network that have their own actions and interactions, and then combining then, and seeing how it affects the system as a whole. Each agent follow simple rules that allow for changing interactions in varying conditions. With the simultaneous operations of each agent, this kind of simulation would in turn re-create or predict the actions of a complex phenomenon of the natural world.
+
Agent-based systems and modeling first emerged in the late 1940s. In this type of modeling, independent individuals or agents have a simple function. When these are combined into a decentralized system, the observer sees how the system is affected as a whole. Each agent follows simple rules that allow for changing interactions. With the simultaneous operations of each agent, this kind of simulation would, in turn, re-create or predict the actions of a complex phenomenon of the natural world.
-
[[Image:Agent based systems.PNG|thumb|left|150px]] An example of agent based systems can be seen in an ant and its colony. Individually, an ant carries out its own function that can be seen as simple by nature. However, when an ant is put together into its own colony, then a more complex system can be seen. Each ant is still carrying out its own function, but when combined together, there's an overlying grand picture or scheme that is at work.
+
[[Image:Agent based systems.PNG|thumb|left|150px]] An example of agent-based systems is an ant and its colony. Individually, an ant carries out its own function. However, when an ant is merged into its colony, then it combines to form a more complex system. Each ant still carries out its own function, but when combined together, there is an overlying grand picture that is at work.
-
In summary, agent based systems are a decentralized system where the overall behavior emerges from the individual simple rules each agent carries out. As a result, this kind of modeling is fit for simulating molecules and their interactions since any molecular system is decentralized in principle.
+
In summary, agent-based systems are decentralized systems, where the overall behavior emerges from each agent's individual behaviour. As a result, we can use this type of model to simulate molecules and their interactions since molecular systems are decentralized in principle.
</div>
</div>
<br style="clear:both"/>
<br style="clear:both"/>
Line 32: Line 31:
== Evolutionary Algorithm ==
== Evolutionary Algorithm ==
-
EvoGEM follows an evolutionary approach to iteratively improve a population of circuits through subtle changes to the individuals. By taking individual circuits, modifications can be made in order to create an optimal solution. This is done by applying Darwinian selection on the individuals, where each individual must meet a fitness criteria to survive to the next generation. If there is survival, then there will be random changes or adaptations made to the circuit that may or may not improve the fitness of the circuit. Overall, this kind of approach is based on the two principles of adaptation
+
<div align=justify>
 +
EvoGEM follows an evolutionary approach to iteratively improve a population of circuits through subtle changes to the individuals. EvoGEM makes modifications to individual circuits in order to create an optimal solution. It does this by applying Darwinian selection on the individuals, whereby each individual must meet a fitness criteria to survive to the next generation. If the individual survives, then there are random changes or adaptations made to the circuit, potentially improving the fitness of the circuit. Overall, this kind of approach is based on the two principles of adaptation and selection.
 +
[[Image:EvolutionaryCycle.jpg|thumb|right|250px|Evolutionary Cycle]]
 +
This is how the algorithm works:
 +
* EvOGEM generates circuits randomly based on the inputs of the user
 +
* The circuits go through a tournament or fitness test where selection takes place
 +
* Allocation of fitness is based on:
 +
** Production of anything
 +
** Production of the the desired product
 +
** Termination
 +
** Points deducted for number of BioBricks to increase efficiency
 +
* Based on fitness, circuits are removed if they do not pass
 +
* The existing circuits go through mutation (adaptation)
 +
* A generation is passed, random circuits repopulate
 +
* Cycle restarts
== Navigation ==
== Navigation ==
Line 38: Line 51:
{| style="background-color:#D1ECAA;" cellpadding="3" cellspacing="1" border="1" bordercolor="#416023" width="64%" align="center"
{| style="background-color:#D1ECAA;" cellpadding="3" cellspacing="1" border="1" bordercolor="#416023" width="64%" align="center"
-
!align="cneter"|[[Evolutionary Algorithm|Evolutionary Algorithm]]
+
!align="center"|[[Evolutionary Algorithm|Evolutionary Algorithm]]
!align="center"|[[Data_Retrieval_and_Storage|Data Retrieval]]
!align="center"|[[Data_Retrieval_and_Storage|Data Retrieval]]
!align="center"|[[Modeling|Modeling]]
!align="center"|[[Modeling|Modeling]]
Line 48: Line 61:
!align="center"|[[Team:Calgary_Software/Team|The Team]]
!align="center"|[[Team:Calgary_Software/Team|The Team]]
!align="center"|[[Team:Calgary_Software/Project|The Project]]
!align="center"|[[Team:Calgary_Software/Project|The Project]]
-
!align="center"|[[Team:Calgary_Software/Modeling|Modeling]]
 
!align="center"|[[Team:Calgary_Software/Notebook|Notebook]]
!align="center"|[[Team:Calgary_Software/Notebook|Notebook]]
|}
|}

Latest revision as of 03:59, 30 October 2008

Calgary banner01.png
Home The Team The Project Notebook
Evolutionary Algorithm Data Retrieval Modeling Graphical User Interface

Agent Based Systems

Agent-based systems and modeling first emerged in the late 1940s. In this type of modeling, independent individuals or agents have a simple function. When these are combined into a decentralized system, the observer sees how the system is affected as a whole. Each agent follows simple rules that allow for changing interactions. With the simultaneous operations of each agent, this kind of simulation would, in turn, re-create or predict the actions of a complex phenomenon of the natural world.

Agent based systems.PNG
An example of agent-based systems is an ant and its colony. Individually, an ant carries out its own function. However, when an ant is merged into its colony, then it combines to form a more complex system. Each ant still carries out its own function, but when combined together, there is an overlying grand picture that is at work.

In summary, agent-based systems are decentralized systems, where the overall behavior emerges from each agent's individual behaviour. As a result, we can use this type of model to simulate molecules and their interactions since molecular systems are decentralized in principle.


Evolutionary Algorithm

EvoGEM follows an evolutionary approach to iteratively improve a population of circuits through subtle changes to the individuals. EvoGEM makes modifications to individual circuits in order to create an optimal solution. It does this by applying Darwinian selection on the individuals, whereby each individual must meet a fitness criteria to survive to the next generation. If the individual survives, then there are random changes or adaptations made to the circuit, potentially improving the fitness of the circuit. Overall, this kind of approach is based on the two principles of adaptation and selection.

Evolutionary Cycle

This is how the algorithm works:

  • EvOGEM generates circuits randomly based on the inputs of the user
  • The circuits go through a tournament or fitness test where selection takes place
  • Allocation of fitness is based on:
    • Production of anything
    • Production of the the desired product
    • Termination
    • Points deducted for number of BioBricks to increase efficiency
  • Based on fitness, circuits are removed if they do not pass
  • The existing circuits go through mutation (adaptation)
  • A generation is passed, random circuits repopulate
  • Cycle restarts

Navigation

Evolutionary Algorithm Data Retrieval Modeling Graphical User Interface
Home The Team The Project Notebook