Bio-inspired algorithms: Darwinism and artificial intelligence

TWS Avatar

Mariela, Senior Software Engineer

As a definition of ‘intelligence’ in a computer programming context, AI can be a controversial topic.

In 1950, Alan Turing presented a way to evaluate ‘intelligence’ with his ground-breaking Turing Test. Originally named the ‘Imitation Game,’ the Turing Test is a deceptively simple method of determining whether a machine can demonstrate human intelligence, i.e., if a machine can engage in a conversation with a human without being detected as a machine, it has successfully demonstrated ‘human intelligence.’ To date, no AI system has passed the Turing Test, but some have come very close. Unfortunately, its scope as a test of ‘intelligence’ is limited, as only computer programmes that are focused on simulating human conversation can be evaluated.

Despite the constraints of the Turing test, different forms of AI programming have surfaced over the last few decades, all with different areas of focus. Successful examples of AI can be found in many fields like video gaming, robotics, oceanography, bioinformatics, aeronautic design and optimisation. And it can already be seen in our everyday lives – the traffic jam you’re trying to avoid through the use of a smart navigation app, playing videogames with non-human opponents or receiving tailored content online.

Some forms even simulate human behaviours with natural language processing, pattern recognition and reasoning and learning, but this is not always the case. Some AI solutions are being designed to apply new approaches to programming which are not observed in people, such as ‘swarm intelligence.’

Soft computing and AI

As a branch of AI, soft computing tries to find solutions to complex real-life problems by applying what’s known in the data world as ‘approximate models.’ These are models that deal with imprecision, uncertainty and partial truth – much like humans do in real life! Soft computing involves techniques such as Fuzzy Logic, Artificial Neural Networks, Swarm Intelligence and Evolutionary Computation, with the latter being predominantly based on Darwin's principle of natural selection. Let’s explore this a little further…

Evolutionary Computation

Evolutionary Computation is a technique that’s especially useful for optimisation problems where large search spaces make the calculus difficult to implement. One of the most famous methods in this field is the Genetic Algorithm (GA), which uses algorithms based on Darwin’s theory of natural selection to simulate adaption.

The theory proposes that individuals naturally compete with each other for resources such as food, water, and shelter. Those who are most successful in obtaining these resources and surviving are more likely to attract a mate and fulfil the goal of reproducing. On the other hand, those that were unable to secure these resources will go on to have fewer offspring, and so the genes of the more successful individuals are more likely to be propagated in future generations. This process ultimately results in a next generation population that is different from the initial generation.

Generally, the average fitness of the population will have increased by this process, since mainly the successful individuals from the first generation will have reproduced, along with a small proportion of the less successful.

These less successful individuals ensure genetic diversity within that and subsequent generations. In this way, our species evolves to create individuals that are more specifically adapted to the environment in a way that ensures they continue to thrive.

As the theory behind GA is based on this ‘survival of the fittest’ principle, it works by assigning each algorithm component its own feasible solution to a given problem, and each individual will have a fitness value related to the suitability of that solution. The greater the adaptation of an individual to the problem, the greater the probability that it will be selected to reproduce, therefore crossing its genetic material with another individual selected in the same way.

By favouring the genetic crossing of the most successful individuals, the most promising areas of the search space are being explored.

And, if the GA has been well designed, the individual components will converge as a population towards an optimal solution.

GAs use a robust technique that can successfully treat a wide variety of problems from different areas, including those where other methods encounter difficulties. Although using GA does not guarantee the optimal solution to the problem, it can find solutions of an acceptable level in a competitive timeframe.

Where can we see GAs?

GAs are being applied to develop non-invasive techniques for cervical cancer detection.1 In a 2009 study, they were also used to identify seven proteins that could predict the risk of a major cardiac issue with 77% accuracy.2 Another example was presented in a 2012 study which aimed to determine the optimal timing for interventions during childbirth.3 And in the orthopaedic space, GAs were used to create a system that selects the best design of tibial locking screws to reduce the probability of screw breakage or loosening.4

Evolutionary Computation is a promising research field which is open to new contributions. There are many successful case studies that show AI technologies aren’t as scary as science fiction would have us all believe.

It will be incredibly exciting to watch how AI evolves even further in the near future to provide benefits to our quality of life in hundreds of different fields!

---- 

References

  1. Duraipandian S, Zheng W, Ng J, Low JJ, Ilancheran A, Huang Z. In vivo diagnosis of cervical precancer using Raman spectroscopy and genetic algorithm techniques. Analyst 2011. Oct,136(20): 4328–4336.
  2. Zhou X, Wang H, Wang J, Wang Y, Hoehn G, Azok J, et al. Identification of biomarkers for risk stratification of cardiovascular events using genetic algorithm with recursive local floating search. Proteomics 2009. Apr,9(8): 2286–2294.
  3. Hoh JK, Cha KJ, Park MI, Ting Lee ML, Park YS. Estimating time to full uterine cervical dilation using genetic algorithm. Kaohsiung J Med Sci 2012. Aug,28(8): 423–428.
  4. Hsu CC, Chao CK, Wang JL, Lin J. Multiobjective optimisation of tibial locking screw design using a genetic algorithm: Evaluation of mechanical performance. J Orthop Res 2006. May,24(5): 908–916.

Share this article

Next Articles

Recap: Málaga’s first Belonging, Inclusion & Diversity Day
April 29, 2022

Recap: Málaga’s first Belonging, Inclusion & Diversity Day

When the BID committee was recently tasked with bringing more awareness to what they do and why they do it, it didn’t take the team long to suggest a way forward – the first ever BID Day in Málaga! We asked them to recap the day and give us the lowdown on all the insights.
Service mesh: A primer on Istio
April 22, 2022

Service mesh: A primer on Istio

Does the term 'distributed systems' give you chills? Do you feel like you’re flying without a cockpit when observing your production environment? Distributed systems are hard to tame, and having full visibility into what’s happening within them is no easy task. Let one of our DevOps Engineers, Antonio, talk you through it!
Meet the Players team with Engineering Manager, Carlos!
April 12, 2022

Meet the Players team with Engineering Manager, Carlos!

Go behind the scenes of our Players team with Engineering Manager and amazing-beard-owner: Carlos! Get a taste of life at The Workshop with Carlos and his team of software engineers who obsess over delivering the best ecosystem for our gaming platform, handling millions of active players with a substantial tech stack…