Beyond the boundaries
Use of Artificial Intelligence in Android
“It's going to be interesting to see how society deals with artificial intelligence, but it will definitely be cool.” — Colin Angle
In recent decades, in the world of technology, Artificial intelligence has been the most developing technology area. Day by day the innovations of artificial intelligence has affected humans in a very convenient manner. When we talk about mobile operating systems, most constantly used mobile platform today is Android. We can see lots of devices such as TVs, tablets, vehicles, GPS receivers, phones etc. utilizing the Android platform, in the Android market there have been updates frequently. As well as there is a market for new applications using new methods and concepts. In this report I present four existing applications which utilize AI techniques. As well as their limitations to develop new applications. As an example in Android platform, there are limitations to provide enough mathematical computations.
AI Applications on Android
When we consider other recognition techniques, they have many limitations. As an example, "Eigenfaces" face recognition algorithm has two limitations. They are sensitive to lighting conditions and difficult with different poses and expressions. Therefore with the LBP algorithm we can't see those limitations. Here, I briefly point out the steps of LBP algorithm as follows.
Here are the formulas to calculate LBP value for each cell.
Android based AI Chatbots work as a real agent and reply to the questions presented by people. Chatbots act as a type of real interactive agent, it’s a program built to simulate an interactive discussion with one or team of human users via both techniques using speech recognition and the chat interface. Now available with offline apps in the play store as well. Google Allo, Google Assistant and so many chat apps released by Google. In here the systems provides clear output to its users even if they are filled with spelling mistakes. Technologies used to develop these systems include Android, Java, PHP, SQLite dB and AIML for development. The development tools used are such as Postman, Android Studio and Program AB.
Today’s applications development is based heavily on pre-defined application frameworks, known as "application programming interfaces" (APIs). APIs make life easier for developers with programming paradigms, reusable libraries, task delegation, with the object is to help and deliver effective systems and to increase productivity quality systems. But the threat is malwares nowadays. In the last few years, the number of malware has increased rapidly in mobile phones. In 2014, there were 14 % incremented the Smartphone malware than previous years. Out of those 14%, 97% were Android malware. [Westyarian, Y. Rosmansyah, and B. Dabarsyah, “Malware detection on Android smartphones using API class and machine learning, 2015] Because of the usage of Android devices also growing too rapidly.
There we can identify two types of malice’s. They are "static analysis" and "dynamic analysis". Static analysis consists of checking the code of programs to determine characteristics of the dynamic execution of these applications without running those in phone, also "static analysis" is used in reverse engineering of applications and for code understanding. Mainly the "Dynamic analysis" includes monitoring a running application to detect malicious chars.
Today, we can see many mobile learning systems with AI techniques. They already have separate features than existing e-learning systems. They are very effective systems to learning and very intelligent. They have the following common features.
Because of the applications of AI there have solved so many requests and new concepts added to Android apps.
Limitations in Android
Often, AI techniques have few problems with limited computational resources and lack of computation ability that are available in mobile devices. These are common problems for every mobile platform i.e. Android, iOS etc. A major problem is AI methods require huge memory space and a lot of CPU power. One solution to this problem is to build strong mobile devices/architectures which can use resources enough for computational tasks. Here, the system architecture was designed to face those heavyweight tasks, for instance, execute "spatial cognitive" or "intention recognition" tasks. The main property of agent-based architecture is the ability to create agents over more computational sources. For an instance, this proves very helpful for Android speech recognition.
Some other problems which are common to mobile systems.