Computational Thinking

Computational ThinkingWhen computational thinking first emerged it was about displaying human thought processes in a way that early computers could understand. It evolved into formulating problems so that any programmed machine could carry out tasks effectively and efficiently. Today, computational thinking combines human creativity with the power of computers to provide robots with resolutions. In future, if this kind of thinking continues to develop all uncertainties will be eliminated!!

Theoretical mathematics concerns itself with how efficiently problems can be solved using computation models and algorithms. Algorithms are simply a set of rules that define the roadmap to be followed for any given measure that needs to be calculated or for any problem that requires solving.

By cleverly breaking down the problem into its constituent parts certain patterns and non-patterns emerge – computers are supreme at recognising this type of modelling. The detection of patterns is the pathway to the creation of a successful algorithm. The theory talks of decomposing the problem; extracting the similarities and differences; matching the patterns and identifying the solution.

Academia has assumed responsibility for qualifications and training in this area; and has developed study modules around logic and creativity. These traits are not normally present in the behaviour of most individuals. It is much more common to come across people who are logical and abstract – and others who are creative and unrestrained. Computational thinking at its best combines the sciences and logic with philosophy and creativity.

Due to the phenomenal speed of modern computers, algorithms can be extremely powerful – oftentimes positively supportive but other times negatively harmful. For example, nobody knows for sure but it is suggested that share prices can be manipulated by computer algorithms – bought and sold thousands of times per millisecond without regulators knowing!

If this appears too much to contemplate consider the following example of stage-one, basic computational thinking using only your brain supported by pencil and paper – no cheating!!

The given problem is to add up the numbers between 1 and 10.

1+2+3+4+5+6+7+8+9+10 = 55. How long did it take 20-30 seconds?

The next problem is to add up the numbers between 1 and 100.

An elementary guess might be 10 * 55 = 550 but that’s not correct.

Adding up all of the numbers in the conventional way 1+2+3…..98+99+100 will prove very time consuming.

A better way might be to use some computational thinking and break down the calculation into smaller pieces like: 1+100; 2+99; 3+98; 4+97….etc. The pattern quickly emerges – all answers are 101. There are 100 answers in the sequence so 100 * 101 = 10,100.

Still not correct because we’ve added the numbers twice so (100 * 101 = 10,100) / 2 = 5,050. Once you’ve spotted the pattern how long did it take? Another 20-30 seconds?

When we get to this point a further pattern emerges: 1 to 10 = 55; 1 to 100 = 5,050. What is 1 to 1,000? Easy 500,500!! Less than 5 seconds. Can you imagine what computational robots will eventually achieve?