Ten Algorithms That Are Ruling Our Lives

Ten Algorithms That Dominate the World

Whether you realise it or not, algorithms have changed our lives and dominate our worlds. We rely on algorithms for some of the most basic tasks that we carry out online. From simply typing keywords into a search engine to seeing what appears in online recommendations, all of this is controlled by algorithms. Even our purchases online are in some cases managed by algorithms, as we use search engines to find and select suitable products. Have you ever noticed how unstable the price of a book can be, if you shop it online ? Do you know why? it is because of algorithms.In a few decades algorithms can substitute human in many of their jobs and tasks. Algorithms can run funds accounting for billions of dollars, and it is algorithms that reside behind what some futurologists call as the internet of everything revolution, or the shift for a new economical system called the collaborative economy/sharing economy.

Before understanding which algorithms are dominating our lives however, it is important to understand what algorithms really are. According to  Marcos Otero (2014) writing for Medium.com  algorithms are:

“… any well-defined computational procedure that takes some value or set of values as input and produces some value or set of values, as output. An algorithm is thus a sequence of computational steps that transform the input into the output.”

The following animated video, done by Ted-ed, the newest project launched by TED, that aims to create lessons worth sharing, explains in a visual appealing way, what is an algorithm :

So if we oversimplify a bit, there are three characteristics that algorithms must have in order to categorise them as an algorithm. These are that the algorithm must be finite so that it does eventually solve the problem, it needs to have well defined instructions so that it is unambiguous in following the same instructions each time, and it should be effective in solving problems. While discussion of algorithms has hotted up in the past few years with the intense use of these by many organisations online, in fact algorithms have been used for many centuries and are not a new innovation by man. Based on his own definition and characteristics, Otero has developed a list of the top 10 algorithms that influence our lives currently:

1.Merge sort, quick sort and heap sort – this is an algorithm designed to sort elements, and all three of these achieve this. The merge sort algorithm in particular is important and it uses comparisons to solve problems. Quick sort uses an alternative method to organising data and is considered efficient in sorting data. Heap sort is an algorithm that utilises a priority queue. These types of algorithms are reported to be beneficial in data mining, link analysis and artificial intelligence, so they are extremely important to our lives.

2. Fourier Transform and Fast Fourier Transform – these algorithms are considered to be simple but powerful. They take signals from their time domain into their frequency domain and the other way around. All digital activities are currently thought to depend on these algorithms, so again, they essential to modern life. They are included in Wi-Fi, internet and phones, among others.

3. Dijkstra’s algorithm – this approach is a graph search algorithm and it works to use the problem modelled as a graph in order to find the shortest route between two points.

4. RSA algorithm – the RSA algorithm is essential to security online, and is used in cryptography and cyber security. This algorithm provides a solution that allows public keys to be shared between different platforms and users to provide an option for cryptography. Next time you buy something online you will probably be using this algorithm whether you realise it or not.

5. Secure hash algorithm – this is again associated with cryptography. It is included in the functioning of email, antivirus programmes and app stores among others. It helps to figure out whether you downloaded what you expected to or if instead you have been attacked online.

6. Integer factorisation – this algorithm is based heavily on maths and it also helps in securing safe cryptographic approaches. It uses prime factorisation and this makes the problems it creates hard to solve.

7. Link analysis – this is an algorithm we also use every day. It is included in search engines and social networks among others, so that the relationships between different points can be understood. The link analysis algorithm relies on the assumption that a graph can be created in a matrix form that shows the importance of different nodes within that network. It is used by Google to return search results and Facebook to show you who might be your friend. It makes recommendations.

8. Proportional integral derivative algorithm – this algorithm is based on a control loop feedback and works to cut back on problems that occur between desired output signal and actual output signal. It is used in airplanes and cell phone networks, among others.

9. Data compression algorithms – there are several algorithms that carry out this task. For example zipping up files is one of these. They are also found in how web page data is downloaded, among other essential areas.

10. Random number generation – this is used in cryptography, video games and artificial intelligence.

If you would like to know more about algorithms there are many MOOCs available for free online, done by Coursera, MIT, Opencourseware etc. You can spend hours there, understanding to the deepest detail the meanders of algorithms.