In Coding/Software Development, sequences of commands are given to a computer/chip containing device to solve a problem. Most of these sequences follow a linear decision tree in a flow diagram that says “First this, then that”. However, a recursive algorithm describes a method that runs itself over and over again in a very cybernetic way, not stopping until it reaches the conditions it is looking for. For a while now, especially since I’ve been reading fractals and Chaos theory, I’ve been wondering whether this Gaia called life is a recursive algorithm.
Have you seen the movie PI? It looks like a dark complex black and white movie with a lot of Jewish Kabbalah. But as the minutes progress, we realize that our hero actually wants to solve the mystery of the universe. https://www.imdb.com/title/tt0138704/
Life is a succession of events. Clouds pass through the sky for thousands of years, leaves grow on the branches of trees, fruits ripen, humans and the creatures of the earth are constantly changing with offspring similar to themselves, but somehow life is always unique.
All physical and biological formations on Earth, whatever they are, follow an invisible set of laws as they change and create life.
fibonacci2 Recursive Algorithm Called Life Algorithm, Golden Ratio, computer, fibonacci, Fractal, Life’s Secret, Chaos, Mehmet Doğan, Recursion, Recursive, Programming, Recursion, Recursive, theory, artificial intelligence
For example, you may have heard of the famous Fibonacci series. It goes 1,1,2,2,3,5,8,13…. Each element of the series is the sum of the two preceding elements and the one before it. F(n) = F(n – 1) + F(n – 2)
Really, math in its abstract form means nothing. But the situation changes when we learn that the distance between the leaves on Earth is an exact copy of the Fibonacci series. When you find these ratios in the shells of sea creatures, things change a lot.
Computer-generated tree image using a recursive algorithm.
Again, you may have heard of the artistic wonder called the Golden Ratio.
A chill runs down your spine. Does man also have such a formula? I’m not talking about the genetic DNA code, I’m talking about the mathematical algorithm at the basis of life, which is more basic, more functional, but produces an amazing result for every input value.
In other words, a hidden Mathematics that draws the molecular lattice of all living things, organic or not, in 3D. But how does this happen? When the ancient Greek scientists founded Western art and science as we know it, they emphasized the sameness of the macro and micro and thought that musical notes should have a note order with pitched intervals like the distance between the planets in the solar system. The harmony of the sky should continue on the ground.
So what do I mean by recursive algorithm?
Think of it like this; a job will go on forever as long as there are opportunities. It will be done again and again. For example, cell division is an action that is repeated until the structure dies, the formation of wind in the atmosphere, a chemical reaction, everything we see in nature is renewed again and again.
When it is used in computers, it is used in processes such as finding a part of a very large probability chain, creating a complex formation in a controlled way.
But recursive algorithms are never applied in the same way. An operation is performed and the result is weighed, so that in the next cycle a different input value is returned to the system based on this result. The snake biting its tail (!) changes in response to circumstances.
We see this again, especially in the mutations of bacterial colonies whose living conditions are changed, in their efforts to adapt to the environment. This infinite cybernetic correction between input and output means that systems seek perfect harmony.
Many life forms alive today produce results with minimal materials because of this near-perfect balance. With just enough carbon dioxide and water and sunlight to sustain them, plants photosynthesize. And then again and again.
But what happens if suddenly the world conditions start to change? Surprisingly, plants react immediately. There is talk of vegetation spreading its seeds to cooler and cooler places due to global warming.
In short, recursive algorithms are used in biological processes such as maintaining regular blood sugar levels, blood pressure and salt balance because they are constantly measured. If the result is less than expected, signals are given and the substance or hormone is supplemented. If it is too much, the process of elimination starts.
The effect of recursive algorithms on neuronal networks is unbelievable, the formulation of information for brain/nerve cells that produce patterns in the brain and the flow and processing of communication measured in trillions of bytes per second shows the existence of a regular algorithm.
Moreover, recent research shows that brain cells do not remain in a mold once, as we think, but can constantly drag themselves into new forms and different connections.
All this means money for a stockbroker. Don’t laugh, but it is true 🙂 If we see the system as a closed structure, no matter how big it is, there is still a recursion in this chaotic order, albeit difficult to understand. Like clouds in the sky, stock market fluctuations all look alike, but none of them are the same.
So can we build a science of the future? Can this recursive algorithm solve where a structure will go? Actually, there is no need to ask “can it?”. The weather patterns we watch every day and the atmospheric models built by supercomputers are run in a simulation model built with hundreds of thousands of measurement values, even though there are an unimaginable number of factors, and it is said, “There is a storm tomorrow, be careful.”
Imagine that people, no matter how complex they think, follow certain systems and behavior models. Societies have predictable common reaction processes. Everyone knows more or less what will happen if this and that is done. But in all established models, the EXCEPTION is ignored.
For example, let’s go back to our bacterial culture. This bacterial colony, after thousands of generations (don’t look at me when I say thousands, they divide incredibly fast, thousands of generations are already coming in a short time 🙂 ), when another single-celled colony, which the recursive algorithm cannot cope with, attacks the system or when the ambient temperature suddenly changes, it cannot react so quickly. This is because all recursive algorithms are based on the value entering the function to obtain the result. Unless a predefined function says “oh, I recognize this input value, give it to me and I will calculate it”, no result can be obtained.
Here is an example of this in the fall of the Roman Empire. Although they built a super system, they did not have an algorithm to meet the aggressive nomadic communities coming from the east.
Recursive Chessboard | Photographer: fdecomite Used under Creative Commons license.
* So we came to the second step:
FUNCTIONS THAT CAN CHANGE THEMSELVES!
Many years ago, the first airplane companies invited computer programmers to find the most fuel-efficient algorithm for their passenger planes flying from one country to another. The task seemed very simple at first.
Find the distances between all airports between departure and arrival, then find the fastest and most convenient way to transfer wherever the plane takes off from. Isn’t that simple 🙂 🙂 🙒
But it was not like that. Flights were disrupted due to weather conditions or maintenance work or even sudden malfunctions, planes waiting in the air corridors and airspaces that could not be landed, making transfers at different airports even though it was not determined from the beginning, clearing a certain corridor while a plane with an emergency signal was landing, and most importantly, perfect timing was required as all delays in aviation meant loss of money and customers.
Thus, the adventures that started as artificial intelligence software (Prolog, LISP) led us to “artificial neural networks” with a basic code similar to DNA. In order to solve multi-unknown equations with defined criteria, cellular codes kept alive in the decision tree (in today’s Object Oriented coding, it may be inappropriate to say object) were constantly trying different conditions and possibilities, and in the end, the survivors would pass their genes to the next code through inheritance.
This was a programming revolution. Nearly living algorithms that made adjustments to their own code as they searched for solutions. In fact, according to biologists, the viruses that we know cause disease are perhaps such biological robots. Because all they do is transfer their genetic code to other living cells to make them produce copies of themselves indefinitely. And the greatest success of viruses, which are the nightmare of living forms, including the AIDS (HIV) virus, is that they cannot be identified with their ever-changing genetic code, preventing the cells they attack from producing soldiers. For example, while the human body produces a soldier to neutralize all enemies it encounters, a constantly changing genetic code makes it seem as if thousands of different viruses are attacking. Thus, while the immune system is exhausting all its resources, the body is being depleted not by HIV, but by a virus that is insignificant for most of us, for example, the flu virus.
Yes, unfortunately, this is also a recursive algorithm.
Dear readers, I think that recursive algorithms and accordingly the theory of KAOS is richer than Einstein’s unified theory of a single law that would summarize all physical laws. Because even the formation of atoms into molecules and then the splitting of molecules back into atoms is a recursive algorithm with sharp boundaries. Maybe this will be traced even in the bonds made by the subatomic parts and the patterns they establish and their life cycles.
I leave you with the resources to do more research on it.
A Sample Recursive Code (in C Language) Fibonacci Series
int fib(int n)
{
if (n == 0)
return 0;
else if (n == 1)
return 1;
else
return fib(n-1) + fib(n-2);
}
Topics you might want to investigate 🙂 I decided not to tell everything anymore. The topic will reach its true richness when you participate 🙂
Recursive algorithms for exiting mazes
3D Modeling Recursive algorithms for light calculation in rendering techniques (for example )
Recursive sound transformations in the emergence of world languages (For example)
Bibliography:
http://en.wikipedia.org/wiki/Fibonacci_number
http://en.wikipedia.org/wiki/Recursion_(computer_science)