2 min Devops

Uber comes up with open-source dev library for evolutionary algorithms

Uber comes up with open-source dev library for evolutionary algorithms

Evolutionary computing is the use of biological evolutionary theory in the development of algorithms. Uber has introduced an open-source dev library for this technique called EvoGrad.

The creation of evolutionary algorithms is the goal of evolutionary computing, in which a large number of variants for the solution of a problem are tested and the best-performing variants are preserved. This is also referred to as natural evolution strategies (NES). A kind of survival of the fittest, so to speak. It sounds complicated and it is. It is extremely complex to create a prototype for this type of algorithm, because there are few tools available that are specifically designed for this purpose.

VentureBeat reports that researchers at Uber have developed a library for the open source Python programming language. This Python library is intended to help researchers go through the NES process more quickly. “The idea is to explore variants of NES more quickly, similar to how the Google TensorFlow machine learning framework enables deep learning,” wrote project staff Alex Gajewski, Jeff Clune, Kenneth O. Stanley, and Joel Lehman in a blog post. “We believe that there are still many interesting algorithms to discover in this field and we hope that this dev library will lead to progress in the machine learning community.

Simplification of mathematical approach

In the complex NES technique, the best evolving algorithms produce offspring, i.e. modified versions of the so-called parents, or combinations of two of these parents. The lower performance algorithms are removed from the population. Then, in NES, the population is considered as a mathematical probability distribution, in order to maximise the quality of the solution achieved by an algorithm. This mathematical approach is made a lot easier by Uber’s Python-library. Developers need much less specific mathematical knowledge to be able to perform NES. For example, they can choose which characteristics are more important for a certain population (think of the diversity of behaviour or the average quality of solutions).

This news article was automatically translated from Dutch to give Techzine.eu a head start. All news articles after September 1, 2019 are written in native English and NOT translated. All our background stories are written in native English as well. For more information read our launch article.