This Blog will be in two parts; first part is to set the high level concept of Artificial Intelligence which is relevant to our industry; second part will talk about where we can use AI features to improve our services or create brand new service offerings;
Part-1: Artificial Intelligence Basics 101 & Primer
Interest in AI started as soon as we started developing computing machines. As early as 1950, Alan Turing, pioneer in computing machines, proposed a test to determine if a computer program has "intelligence or not"; the Turing test is a test of a machine's ability to exhibit intelligent behavior indistinguishable from that of a human. In the original example, a human judge engages in natural language conversations with another human and a machine using keyboard & text input/output, if the judge cannot reliably tell the machine from the human, the machine is said to have passed the test.
One of the basic ways for a computer to solve problems is to use "Brute Force". For example in a Chess game, computer can simulate all the technically possible moves for next x steps and using a simple value based algorithm choose the best play for the current move. Is it really intelligence? Why not? If it solves complex problems, complex pattern matching etc. in super fast speeds, then it can be useful for many applications where AI needs to be used.
Ofcourse, this is not the way our brain works. We solve problems by remembering lots of knowledge, applying rules which have worked before and stored in our memories and keep making new rules as we go along. This is another way to use AI to solve problem. For example, let us take a "Doctor's Diagnosis" as a problem, the computer needs to store lots of information about anatomy, vital parameter ranges, connections between vital parameters and combined effects, symptoms and data about various diseases. It also needs set of rules; simple rules such as " if BP reading in 2 weeks is higher than the threshold, patient has hypertension” to complex ones " if blood count is less than x, temperature is higher than y, patient has x1/x2/x3 symptoms then patient has a bacterial infection" and other rules. These are called Knowledge and Rule based systems which use basic concept of using Knowledge database and applying the rules from rule database and arrive at decisions.
IBM Watson is a good example for a massive knowledge database processing machine. Watson had access to 200 million pages of structured and unstructured content consuming four terabytes of disk storage including the full text of Wikipedia.
This also looks like complex program, but is it really AI? After all, we need to give the computer all the knowledge and all the rules and all it does is apply them fast and smart. Again if it useful for many of our problems, I am Ok calling it is AI.
Let us take this little bit forward. Can computer on its own, add new "knowledge" and "new rules" as it is processing problems like our brains do? These are called "Learning Systems". The learning can be based on historical data or current data as it is happening. For e.g. a program can analyze all the patient record of clinical data, disease symptoms, diagnosis and actual results on the patient and build set of knowledge data and set of rules on its own. The conclusions such as "If a patient has x/y/z symptoms, the clinical data has x/y/z parameters; medicine X works well and patient recovers in an X number of days". This knowledge is stored and used for any new patient looking for diagnosis. The system also can learn in BAU mode; for e.g. as a patient comes back with re-occurrence of a symptom and gets cured with another medicine the earlier rule can be changed or a new rule can be created by the system. These Learning Systems accumulate knowledge and become more experienced and "grey haired" and become better and better at solving these specialized domain problems. Best example of a learning system is Google search engine; whenever you do an image web search for certain topic and select the best image you think is best for the topic, the search algorithm is learning and will use it in the future. The more you use it, more the learning.
Another area where our Brains work differently is in how quickly we eliminate options and try few options which are useful and arrive at a option which is good but we are not sure if the option is the best possible one. These are called Heuristic methods. Heuristic method is a technique designed for solving a problem more quickly when classic methods are too slow, or for finding an approximate solution when classic methods fail to find any exact solution. Heuristic method chooses speed of finding a workable solution versus highly accurate and optimal solution which takes a long time to find; for e.g. many virus scanners use heuristic rules for detecting viruses and other forms of malware.
Even though AI concepts have been around for a long time, three recent technology breakthroughs have opened the flood gates for more and more inexpensive AI solutions to hit the market.
1. Inexpensive parallel computing power & parallel processing OS/Software
Our Brains fire large number of neurons simultaneously to analyze any situation and arrive at decisions hence human thinking is a parallel process. However, the primary architecture on which AI systems are built is on Neural Networks and requires massive parallel processing capability.
With the advent of Graphics processing unit, or GPU which was originally designed for highly visual and parallel processing needs of video games, the equation changed. These GPUs become more and more powerful and with associated system software like compilers, programming languages, now parallel processing and video processing has become available for AI applications, for e.g. Facebook uses Neural nets running on GPUs to identify your friends in photos!
2. Big Data Technologies
Our Brains can process variety of data from visual image, sound, text etc. Traditional programming languages and databases could handle only structured text / number data. With the advent of Big Data and ability to store images, sound, test, unstructured data from e-mails, social networks etc., the problem of creating and using a vast knowledge database containing multiple sources of information has become feasible. For e.g. with today's Big Data technology, we can even store full on-line version of wikipedia and use it as a knowledge database.
3. Improved Algorithms
Huge advances in algorithms for natural language processing, voice recognition systems, Image processing, pattern recognition made very sophisticated AI applications possible. In addition, advances in neural net processing named "deep learning" made things like face recognition fast and easy; which is relatively simple task for humans but a huge task for a machine.
To quote Kevin Kelley in The Three Breakthroughs That Have Finally Unleashed AI on the World
"this perfect storm of parallel computation, bigger data, and deeper algorithms generated the 60-years-in-the-making overnight success of AI. And this convergence suggests that as long as these technological trends continue—and there's no reason to think they won't—AI will keep improving. "
I want to end this primer with a deep philosophical note. With these breath taking advances in technology, AI machines can do most of human tasks, but will they ever have "self awareness" and have a "consciousness"? Many AI proponents say that, we have to engineer these AI machines too proactively and explicitly prevent consciousness in them. Future premium AI products will be advertised as "consciousness free"!!
Part II: What is in AI for IT services companies? How do we use AI to deliver better services? What is TechM doing in these areas?
Good question. All these concepts are great and you agree that world is changing and more AI products are becoming affordable and people will start using them. But how does our IT services industry get the best benefit out of these technologies?
Let me highlight what we already have and what are we planning to do in the next 2-3 quarters.
1. How many of you are aware of huge investments in Run Book Automation which is the most complex part of any IMS operation? Our tool USOP (now part of mEMS Toolset) is an Analytic and processing engine where all the Run Books required to manage the operations can be automated. This toolset uses huge knowledge of Run Books created by our IMS experts documenting over 20 years of IT ops experience and also has a rule engine which has information on correlations, connections between run books and allows the Operations Architect develop customized Run Books best suited for the environment.
2. In the mEMS2.0 version (due to be released in Q1 FY1516), our teams are working on extending this even further. Yes, this will actually become a learning system. This AI Analytic engine will analyze all the P1/P2 tickets and actions/Run Books executed etc. and which worked and which did not work and will develop new run books for future P1s/P2s. We will make a human intervene to finally give the Go order to execute these Run Books in the first release but very soon we want these "learning systems" to become automatic healing systems, not only quickly analyze the P1, analyze the various associated Log files such as Oracle, Unix, Storage etc. and customize the most appropriate Run Book and create a run book and also execute the Run Book and close the ticket in the Ticketing System. This day is not far away; this is our TechM AI Run Book Manager part of the mEMS 2.0 product suite.
3. We are also working on early warning systems and not wait for a P1 to happen and quickly fix it. We are working on first automatically creating a Network of associated nodes starting from customer premise device all the way to the actual storage where the database is stored. For e.g. for a call center application, we start with customer making a call, Genesis kind of CTI/ACD application, to transaction moving to SIEBEL Application servers, middleware servers, Unix servers, database servers, storage servers etc. Complete map of e2e flow similar to tracing blood flow in our veins, once we have the e2e Network traced and stored in our Knowledge database and rules stored in our rules databases such as what is a blockage/acceptable blockage percentage/alternate blood flow paths etc., like a Angiogram tracking the blood flow and finding blocks, we will find the Blocks. These could be a Storage server fetch times behaving erratically or some oracle database throwing huge number of read/write exceptions or simple blocks like disk storage becoming full etc. Once our learning system identifies these "blocks", using our AI Run Book Manager, we can run appropriate Run Books to self heal or raise tickets on EMS Storage or Oracle database and get these blocks checked up before the P1 happens i.e the heart attack.
We have invested in a Silicon Valley company which is working on parts of this problem, our Tools team is working on adding to it and the combination of the two with the AI Run Book Manager will be a game changer in using AI to automate Managed Services Operations.
4. Our Network and Big Data Analytic teams have developed an AI Algorithm to correlate weather patterns and mobile network outages and developed an algorithm to advice Communication Service providers to proactively plan for outages and improve customer service even in adverse weather conditions. This POC has been successfully demonstrated and will be deployed in production soon.
5. Our Network and Big Data teams have developed a POC to simulate site congestion and effect on customer experience and advice the CSP Marketing groups to launch now or delay the launch of a new service till the network issues are fixed. Highly appreciated by the customer, the teams are waiting for next stage of development and deployment pretty soon; Powerful tool to decide “To be or Not to be”!!
6. Our own DMS Platform for Data Migration & Data Quality has in-built AI/heuristic algorithms to suggest what should be the new data in the To-Be database by analyzing various data fields in the current database rather than just flashing an error. If we fine tune this even further we can let our AI DMS engine to automatically fix the data and solve huge problems of data quality in all Enterprises.
7. We have just started field trials of our Sensye, the smart Glass for visually challenged persons. One of the many AI algorithms built in to this system is to look at the environment in front of the person through the eyes of the camera, identify a pothole on the road and look at various safe paths whether left or right and convey the advice to the visually challenged person, all in a split second almost same as what our Eye/Brain combination will do. Amazing isn't it? All done by our own TechM associates. This is just one of the many neat AI algorithms which make this smart glass work.
8. We have developed an AI algorithm which is a offshoot of the smart glass for cars as part of our connected car suite of products; How many of you (especially in India) parked the car on the road and opened the door and hit the next car parked or hit a pedestrian. Our AI algorithm will "see" the environment within the span of reach of the car door and will not allow you to open the door if it decides that you will hit something! Re-use of the AI algorithm developed for SensEye; Neat isn't it, again developed by TechM Associates.
9. Few years back, I was amazed to hear about what our Healthcare team and BI team was able to accomplish. We all know about huge bureaucracy and approvals required to get customer feedback post new drugs launch, also many patients do not want to fill up the feedback forms. However, when a new drug is launched, patients on their own start "social user groups" and exchange information on how they are feeling and side effects. Our team developed a Socio AI algorithm to "read" this colloquial language information about effects of the drug and map it to personal information of the patient and find out some key insights. For e.g. certain side effects are more relevant in African American patients than others, this allowed the customer to quickly modify the drug for African American patients and saved lots of discomfort and health complications; Again developed by our own TechM teams!
10. Last but not the least is our foray into building a "Driverless Car" with Mahindra Rise competition partnering with IISC, Mahindra Ecole etc. There is nothing but AI in this e2e system, "looking" at Lanes, "looking" at other cars / pedestrians, "looking" at traffic lights, merging and exiting highways, tracing the driving route path using GPS and so on & so forth, All-in-all a bundle of most sophisticated AI algorithms.
I can keep adding more but I am sure you now got the gist of what we are doing in this broad AI area and how it will help us to deliver better services and build better products. However, by looking at general comments and perception, our foray in to AI seems to be a "best kept secret". Yes, we need to package better and we need to market this better.
Over to you for your comments, suggestions.