Whether at work or in everyday life: we encounter algorithms every day. Especially in connection with Google and Facebook, it is impossible to imagine our modern life without them. Algorithms are becoming increasingly important and support us in a wide variety of everyday activities. But algorithms are not always harmless. What an algorithm is and where it is used is explained in the following article.
An algorithm specifies a procedure for solving a problem. Based on this determined solution, input data is converted into output data in individual steps. This conversion is also called an unambiguous course of action/recommendation.
Algorithms play a particularly important role in the IT sector. They form an important basis for programming and are thereby also still independent of a concrete programming language. Nevertheless algorithms are not only to be found in computer science or mathematics. Because algorithms are not only executed mechanically by a computer, but can also be formulated and processed by humans in "natural" language.
Everybody knows the everyday forms of algorithms. Calculation rules or formulas are a certain group of algorithms. They are considered as concrete instructions for action in mathematics and physics. Another common form are laws, contracts or simple assembly instructions. (Source)
Algorithms have the following characteristic properties:
An algorithm must consist of a finite number of solution steps and reach the end after a finite time after processing this finite number of steps.
The individual steps of an algorithm and their sequence must be described unambiguously.
An algorithm must not only describe the solution of a special problem (e.g. solution of the equation x² + 2x + 1 = 0), but must describe the solution of a class of problems (e.g. the solution of all quadratic equations ax² +bx +c = 0).
Repeated application of the algorithm with the same input data must always yield the same output data.
An algorithm must use as few resources of a machine as possible, i.e. as little computing time and as little memory as possible.
In IT, efficiency measures have been developed, called time and memory complexity, with which algorithms can be evaluated. This is practically very important, since several algorithms can be specified for the computation of a function.(Source)
Algorithms can be used in a variety of ways: If we search for a specific question in a search engine, we are presented with exactly those results that are supposed to match us, based on our search behavior. Even when we select the shortest route in a navigation system or want help with spelling and sentence structure in Microsoft Word, we are often supported by a corresponding algorithm. Technical devices and communication have also become indispensable. Behind most end devices is an algorithm, without us always being aware of it. Last but not least, the relevance of algorithms has also grown steadily due to Big Data. Here, large amounts of data can be concretely examined and evaluated according to patterns and correlations.
Algorithms are also used in the products of the Libelle IT Group. A very good example is Libelle DataMasking, which allows you to anonymize data in a GDPR-compliant manner while maintaining data consistency.
The algorithms used consider country-specific criteria and guidelines, for example, so that the data is still valid after anonymization and can withstand plausibility checks.
In total, Libelle DataMasking contains more than 30 standard algorithms that you can use to alienate your data. But it is also possible to add your own, customer-specific algorithms if there are special requirements in your company and/or for your use case.