# Evolutionary Algorithms in a Bacterial Consortium of Synthetic Bacteria
## 1 Introduction  
Today, the convergence of disciplines as diverse as synthetic biology and computer science has led to the acceptance of ideas that were disruptive in the near past. One such insight is the possibility of programming cells to perform specific tasks, creating innovative solutions to problems in areas ranging from medicine to the environment or industry. Although synthetic biology has its origins in the 1970s with the birth and development of genetic engineering and biotechnology, it was not until the year 2000 when this discipline adopted the current approach. At present, the aim of synthetic biology is the design and assembly of artificial biological systems. Consequently, the objective is to obtain new biological components, e.g., proteins, genetic circuits, metabolic networks, etc., taking into account the subsequent possibility of their integration into a recipient organism [1], e.g., a bacterium. This view suggests that synthetic biology was influenced from its origins by the ancient computer hardware and the way in which these early computers were programmed, e.g., the ENIAC [2]. Occasionally, it has been considered that an organism could be programmed as if it were an ENIAC computer (Figure 1) by plugging together these biological components. Therefore, the connection among elements would be the way of programming a synthetic organism, e.g., a bacterium. In this example, the bacteria would be playing the role of a desktop computer case housing the biological hardware, i.e., the program 'written' in these biological components or biobricks. As a result of this approach, it is feasible to program bacteria in silico as if they were a computer [3,4]. Based on this principle, it is possible to go a step further by programming not isolatedcells, such as bacteria, but rather groups of cells, e.g., the so-called xenobots [5]. These synthetic biological entities, created from cells of embryos of the species _Xenopus laevis_, were programmed using a supercomputer to determine their configurations. Bacteria were by their unique features the first unicellular organisms to be programmed. Their programming is made possible by the use of highly characterized functional components, in particular parts of DNA coding for proteins and other regulators that are synthesized and assembled in genetic circuits. These genetic circuits allow the implementation in bacteria of switches, feedback systems, oscillators [6], etc., as well as different AND, XOR, and NOT logic gates [7], etc. The customized design and synthesis of genetic circuits makes it possible to program in synthetic bacteria specific biological functions [8], for example, the biological production of drugs or therapeutic compounds as well as biological devices that can detect and respond to specific signals from the body. This last approach, the application of synthetic biology in therapeutic applications [9], would make it possible to treat infectious diseases, metabolic disorders, and even cancer. At present, the application of synthetic biology principles and the use of simulators has allowed the design of artificial microbial communities in which bacteria exhibit programmed behaviors [3; 4]. In nature, these microbial communities or consortia are a group of bacteria of different species or the same specie but different strains whose individuals interact with each other by sharing resources and exhibiting different behaviors [10]. At present, and in the field of synthetic biology [10], microbial communities composed of  
Figure 1: Synthetic bacterium programming. (**A**) The programming of a synthetic organism has been compared on occasions with the programming of the early computers, e.g., ENIAC. (**B**) The input data, e.g., a signal received via quorum sensing, is processed (genetic circuit of a plasmid), producing a signal or output after the expression of one or several genes, e.g., a fluorescent protein, killer antidote, etc.