Thursday, February 26, 2015

Human evolution explained by Computer evolution

Humans have come a long way in answering the question of how we got to current state. Darwin's theory of evolution is widely recognized as the best answer known today. There are a lot of outstanding questions though: what is the meaning of life? What is consciousness? God? This blog by no means an answer to these questions, but a point of view for discussion. Stephen Wolfram in his book "A New Kind of Science " proposes a new way of explaining complex behavior in nature. Instead of trying to explain the universe, life and other complex topics using physics and mathematics based equations and explanations, he suggests using simple computational models with one or more variables iterated several times to generate patterns and comparing to the patterns that have been created naturally over billions of years on earth. Is the evolution of computing a model that may shed light on human evolution.

Now that the evolution of computers is knocking on the door of consciousness, does the evolution of computing help us extend our understanding of human evolution. Figures 1 shows a timeline of human evolution based on Darwins theory of evolution and figure 2 shows a timeline of computing evolution. These are generic images from the Internet and not original material. 
Figure 1: Timeline of human evolution 

Figure 2: Timeline of Computing Evolution

In less than 100 years, developments in computing technology have mirrored human evolution. Single cell organisms are represented by transistors and capacitors and other electronic components, some of the earliest computers are literally known as dinosaurs. Increasing complexity of electronic chips is comparable to the increasing complexity of organs in the various species that preceded us humans. Computers of today are still lacking the human capabilities such as emotions, consciousness. Maybe computing evolution is at the level of monkeys in the human evolution timeline. Some interesting comparisons:

- a complete sets of hardware components make a computer just like our body parts make us
- the software programs makes a computer alive just like the life within us. More about this later
- flow of electrons can be compared to the flow of blood and nervous energy in our body
- failure of a critical disk or CPU in a computer leads to its death just like the failure of heart or lungs can lead to death of humans
- connections between chips are the arteries and vein
- CPU is the brain sending instructions to all other parts
- programs and data compare to the memory and knowledge in brain that directs our actions
- programming language instructions are equivalent to genes and DNA and chromosomes
- Programs are a sequence of programming language statements similar to gene sequences. We discovered the importance of genome sequencing not too long ago, even though we have been writing computer programs for much longer. 
- internet connected computers all over the world just like the explorers of yesteryears discovered the various civilizations and connected them.
I am sure we can come with a lot more parallels between human life and computing.

So what is the big deal? There are some similarities between human and computing, so what. It gives us a whole host of hypothesis to test for answering the questions about ourselves. For example we have been working hard to uncover the mysteries of our brain. We are making progress but can we learn from the computing models to solve the brain puzzle. Let's dwell on this idea in some detail. What we are doing in brain research today is to study the flow of information over neurons and doing things like functional MRI. Imagine a computer of the future trying to discover how the computer works by looking at the flow of electrons or even analyzing the machine code to understand the complex tasks it can process in a microsecond. Wouldn't it be better for future computer to learn the programming language than to decode it by going backwards from machine code. Sounds like human genome sequencing efforts may helps us solve the brain puzzle faster.

The computing evolution to human evolution comparison leads us to challenge some of our common beliefs. For example Darwin theory of evolution did a great job of documenting the sequence of species as they evolved. There are some remanants of "Natural Selection" vs "intelligent design" debate but most people are in the camp of Natural Selection. Without much proof I am not ready to discredit the theory of Natural Selection, but the computing equivalent today is being managed by human by fixing bugs in computer software and hardware and creating bigger and better computers. Some day in future, computers will certainly be creating other computers. Just to go out on a limb, if the humans lose to the machines in the future and humans are eliminated, a smart computer may some day propose a theory similar to natural selection that explains how they got to be so smart, not knowing that once there existed humans that created them. The flip side is that the computing evolution to human evolution parallel may not check out, but further investigation seems to be warranted.

Sunday, February 15, 2015

My personal digital assistant

Today everyone is trying to collect information about you except you. Music services like spotify and Pandora want to know what you like to listen and suggest songs that you will like. Netflix uses your viewing history to suggest movies you might like. Amazon is tracking your shopping habits. In short there is a whole category of businesses that are finding ingenious ways to collect information about you and then use it to offer products and services. 
The person who has the greatest opportunity to collect information about you is yourself. Why should I collect information about myself, you may ask. The fact of the matter is that computer programs have become smarter than your brain when it comes to making a choice from large number of options. For example if you would like to pick a book to read, you may research maybe 50 books and pick one. Now imagine a computer program that can analyze a thousand books to find one that best matches your likes. Today your best bet is to ask amazon and it will tell you based on the books you have purchased from Amazon before. Now imagine if you had an app that you used to keep track of your likes and dislikes. This app knows all the books you have ever read in your life and collected whatever other information is required to recommend books. 
The privacy concerns that keep lot of us awake are a very real cause for concern in letting any company collect a lot of information about us. But if each individual could control their information, the privacy concerns could be alleviated for the most part. Hackers could steal it but having it distributed would make it much harder for hackers to steal a lot of personal information for lot of people. 
How would you use the information you collect on yourself? You would need the ability to authorize other apps to access parts of your personal digital history. If you were looking for a new job, you may allow LinkedIn to access your job experience and skills information to match with open jobs. Companies like spotiffy, Pandora, Amazon, facebook and Google would really work on developing agents that can access parts of your personal information and provide the service you need.
It is not too hard to think of the components that would be needed to put together an app that would collect information about you, organize and make the pieces parts available to authorized agents. What we need is an organization that would organize the development of such a product, market it and support it. 
I am calling it a personal digital assistant. Palm pilot was the first popular PDA, but the concept above has the potential to become your new personal digital assistant that is so much more powerful and useful that it will be integral to your life. It will be your portal to the digital world. It will record and know everything about you and instantly support you in getting the most out of the future world of big data and IoT. It will help you find a job, a mate, assist you with health care, file your taxes, find business partners, plan your vacations and whatever else you need.