Saturday, October 11, 2008

Is ‘Divide and Conquer Algorithm’ a human instinct?

Last Friday I was with my son at a restaurant, I was browsing the menu, when I thought I will give my son a quick problem, and see how far he reaches in solving it. The menu had 5 pages, each page had about 20 items.

I asked my son if he could find the ‘cheapest’ and the ‘costliest’ items in the entire menu.

My son is 6 years old, and does some very basic mathematics at the school, such as arranging numbers in ascending and descending orders, simple single-digit additions and subtractions, etc.

I was amazed to find that, my son quickly found the cheapest item on page #1, then the cheapest item on page #2, chose the lesser of two ( MIN(page#1,page#2) ), and then recursively did that for pages 3, 4 and 5. And gave me the cheapest item on the menu (Rs. 6). He then did the same for costliest item, he found the costliest item on page #1, then the costliest item on page #2, chose the higher of two ( MAX(page#1,page#2) ), and gave the answer (Rs. 95). [We were at a Udipi restaurant, so things are not that costly here.]

I never taught him the ‘divide and conquer algorithm’, in fact I have never taught him any algorithm.

Is ‘Divide and Conquer Algorithm’ a human instinct? Does it come without learning?

Thoughts?

Labels: , , ,

1 Comments:

Anonymous Anonymous said...

Ultimately, the smartest algorithms we design are based on Human instinct. We try to embody our thought process in the form of an algorithm, at the same time applying mathematical rigour to make sure that we are translating our instincts correctly. In fact, I have always found thinking about Algorithms as an embodiment of the natural logical process to solve a problem.

(Of course, this applies to the simpler algorithms. For instance, I have still not understand how eigenvalues are used for determining the Page Rank, precisely, I don't find it an extension of my logical thinking process, but this does apply to all the algorithms we studied in the Basic Algorithms course [:)] )

10:15 PM  

Post a Comment

<< Home