The Fibonacci series applied to computing, mathematics, game theory and Big Data
Fernando Jimenez Motte
NEUROMORPHIC TECHNOLOGIES Founder & CEO 16K (Twitter @stockfjm) Worldwide expert in Control Systems Engineering, Robotics , Machine learning
The spiral, Fibonacci series or golden sequence is well known in the mathematical world. At the end of the twelfth century, the Italian mathematician Leonardo of Pisa (1170-1240), who was best known by Fibonacci or son of Bonaccio, a former merchant of the city of Pisa who owned business in North Africa, described this formula as a solution to a rabbit breeding problem. Fibonacci presented the succession in his book Liber Abaci, published in 1202.
In mathematics, the succession of Fibonacci (sometimes mistakenly called Fibonacci series) is the following infinite sequence of natural numbers:
0,1,1,2,3,5,8,13,21,34,55…
This consists of a series of natural numbers that are added in groups of 2, starting from 0 and 1. Basically, the Fibonacci sequence is done by adding the last 2 numbers. It has numerous applications in computer science, mathematics and game theory apart from medicine, biology, architecture, music and the description of patterns of nature. If we use a tree diagram we can graphically display this sequence.
Astronomer and German mathematician Kepler, known primarily for his laws on the motion of planets in their orbit around the Sun, described the Fibonacci numbers, and the Scottish mathematician Robert Simson, a professor of mathematics at the University of Glasgow, discovered in 1753 that the relationship between two successive Fibonacci numbers f {n + 1} / f {n} approaches the golden relation PHI when n tends to infinity. If we want to program a function that calculates the nth term, Fn, of one of these solutions, the first approximation is precisely recursive. For example, today, almost all high level programming languages support the following three lines that implement the calculation of Fibonacci numbers, with few syntax differences.
As a simple example, consider the sequence [0, 1, 1, 2, 3, 5, 8, 13]. It is easy to extract the pattern from this data. It’s the Fibonacci sequence, so:
F[n] = F[n-1] + F[n-2]
F[0] = 0; F[1] = 1
Now, what would happen if we consider a 100-number sequence and it is required to extract the underlying pattern from the whole sequence? How about a sequence of 1,000 elements or a very large sequence of 1 x 10^40 numbers?
Working with large data or Big Data (ie large amounts of data) is somewhat parallel to that. There is too much data (volume) entering too fast (speed) and with different (variety) speed.
For example, element 99 of the fibonacci sequence would be given by:
Fib(99)=218922995834555169026
And the Fib element (100) by:
Fib(100)=354224848179261915075
Definitely a pretty big number to handle!
According to a legend, many years ago, in an area north of India, a king named Rai Bhalit , ruled. [1] He was undoubtedly the richest and most powerful man in India. He had so much richness that nothing made him happy.
One day, Rai Bhalit called Sessa, who was his trusted advisor, and ordered him to invent something that would amuse him.
After several days, Sessa created the chess for its king. So much success had the game, that the king said to him:
“Sessa, you know I’m a grateful man. I’ll give you whatever you ask for"
领英推荐
Sessa answered:
“My king, you know that I am a humble man. I am satisfied that You give me a grain of wheat for the first square, two grains for the second, four for the third, and so on, bending to complete the board.”
The king laughed loudly thinking of his servant’s clumsiness for not choosing gold or land. Rai Bhalit called the court mathematician to make the calculations.
The surprise came when the mathematician told the king that there was not enough wheat in the kingdom to pay the debt. King Rai Bhalit took the petition as an offense, and ordered Sessa to be killed. If we observe the sequence that calculates the number of grains that the King should give to Sessa this, would be given by:
T64 = 1 + 2 + 4 + … 2^63 = 2^64 ? 1
The final value of the sum of the sequence is 18,446,744,073,709,551,615, that is, 18.4 trillion grains of wheat !
Given the impossibility of paying such a sum, the Brahmin ordered him to be killed. In the book, The Calculating Man, it does not mention his death but the reward of him becoming wise in the king's service.
“Working with large data or Big Data (ie large amounts of data) is somewhat parallel to that. There is too much data (volume) entering too fast (speed) and with different (variety) speed.”
Fernando Jiménez Motte Ph.D (c) EE, MSEE, BSEE
CEO of NEUROMORPHIC TECHNOLOGIES NT Robotics, Control Systems, Artificial Intelligence AI
Follow me on Twitter : @stockfjm