Learning of robots by using & sharing the cloud computing techniques

Download Learning of robots by using & sharing the cloud computing techniques

Post on 22-Jan-2018

93 views

Category:

Science

4 download

Embed Size (px)

TRANSCRIPT

  1. 1. Learning of Robots by Using & Sharing The Cloud Computing Techniques Pratik 3 rd Year IT Branch MITS Engineering College Rayagada, Odisha gtapratik@gmail.com Rahul Abhishek 3 rd Year IT Branch MITS Engineering College Rayagada, Odisha rahulmithu.abhishek @gmail.com Payal Sinha 3 rd Year IT Branch MITS Engineering College Rayagada, Odisha sinhapihu7@gmail.com ABSTRACT Robots are shaping a new era in the technology, many algorithms has been developed for their learning which they can apply to find the solution for the problems that they are facing. That is, we have tried to provide them a basic intelligence (like recognition, collision avoidance, etc.). But besides that basic intelligence we are interested in developing an intelligent system in which robots will use their experiences and share it with each other just like humans, who have got all its intelligence by his experience and imaginations and sharing it with each other. To implement this intelligent system we can use a local server (word interchangeable to database) that will be restricted to a robot only and a Cloud (global) server where the authorized robots can upload their experiences which can be used by every robot (which is authorized to that server) to solve their problems. Keywords Artificial Intelligence (AI), Robotics, (Global Server(cloud Computing), Local Server, Memory function. 1. INTRODUCTION 1.1 What is Robot? The term Robot is coined by Karl Capek in his play R.U.R (Rossums Universal Robots), which opened in Prague in 1921. Robot is Czech word for forced labour Robots are reprogrammable, multifunctional manipulator design to move material, parts, tools, or specialized devices through various programmed motions for the performance of a variety of test or we can say that a robot is a simple device who can move itself They have sensors to perceive their environment and effectors to assert physical forces on it. Since robots has proven that they are now the part of human life and provide benefits to us and for getting these benefits we need some human like intelligence in them and it can be obtained by AI. 1.2. Robots Theory A robot consists of various electronics circuit, ports, sensors, effectors for its functioning. Although it seems a very complicated design but it is not so. A sensor works as an interface between the robot and environment. A robot should contain both active and passive sensor. In robots three types of sensor is used first record the distance of the object second tells about the environment by capturing the image and third one measure the property of robot that how much efficiency has it work the or to solve the problem. The effectors in robots help it to manipulate or understand the environment and with the help of effectors it can move and change its shape of body according to the environment. There is a concept known as Degree of Freedom (DOF) with the help of it we test the ability of robot to interact with the environment. We count one degree of freedom for each move of robot and its effectors. The DFOs define the kinematic state of a robot. An additional advantage of learning a robot from its experience is that it can also learn from the experience of its peers. A key feature is that, we are using two servers one is the local server restricted to a robot only while other is the global server which is shared globally with all the robots. And both these servers will hold the experiences of the robots. Fig. (2) Chart showing the interaction of robot with the environment
  2. 2. 2. What is Cloud Computing? As a metaphor for the Internet, "the cloud" is a familiar clich, but when combined with "computing," the meaning gets bigger and fuzzier. It has been envisioned as the next generation architecture of IT Enterprise. According to the IEEE Computer Society cloud computing is a paradigm in which information is permanently stored in servers on the internet and cached temporarily on clients that include desktop, entertainment centers, notebooks, etc. The Internet is commonly visualized as clouds; hence the term cloud computing for computation done through the Internet. Cloud computing allows consumers and businesses to use applications without installation and access their personal files at any computer with internet access. The concept of cloud computing dates back to the 1960s, when John McCarthy opined that "computation may someday be organized as a public utility." Cloud computing is a new consumption and delivery model for IT services. The concept of cloud computing represents a shift in thought, in those end users need not know the details of a specific technology. The service is fully managed by the provider. Users can consume services at a rate that is set by their particular needs. This on-demand service can be provided at any time. The term "cloud" is used as a metaphor for the Internet, based on the cloud drawing used in the past to represent the telephone network, and later to depict the Internet in computer network diagrams as an abstraction of the underlying infrastructure it represents. Cloud computing is a natural evolution of the widespread adoption of virtualization, service-oriented architecture, autonomic, and utility computing. It is popular for its pay- as-you-go pricing model. Consumers of cloud services may see increased reliability, even as costs decline due to economies of scale and other production factors. Fig. (1) Model of a cloud 3. RELATED WORK & PREVIOUS WORK 3.1 RoboEarth[2] The RoboEarth project (i.e. World Wide Web for robots) is implementing the global server for sharing the experiences of robot. The objective of RoboEarth Project is to enable robots from all over the world to share their knowledge about actions, objects and the environment the RoboEarth platform offers the ability to store reusable data in a generic and open format. 3.2 Optimization Learning Algorithms Many algorithms have been developed for optimizing the behavior of a machine. But here we are using reinforcement learning algorithm for optimizing performances of robots. 3.3 Reinforcement Learning Reinforcement learning is the study of how animals and the machines can learn to optimize their behavior in the face of rewards and punishments. Reinforcement learning algorithms have been developed that are closely related to methods of dynamic programming, which is a general approach to optimal control. Reinforcement learning phenomena have been observed in psychological studies of animal behavior, and in neurobiological investigations of neuro-modulation and addiction [3]. Reinforcement learning algorithm consist of Set of Environment States E Set of actions required A (Solution of a problem may consists of sequence of actions) Rules of transition between states Rules that determine reward for the transition. Rules that describe what the agent observes.[4] 4. CLOUD AND ROBOT Cloud Computing Technology is discussing recent flare to integrate in the world of robotics. Cloud Robot is the result of the merger of these two technological advances. Cloud Robot is different from all the robots that exist today and said that the intelligence is extraordinary, even unlimited because of a Cloud Brain consisting of processor and unlimited data in the cloud (Internet). As cloud computing has the role of the hardware devices in the user getting smaller (transition from notebook to the net book, tablet PCs and smart phones). Similarly, the cloud is said in the future robots will become cheaper
  3. 3. manufacturing costs. Due to the needs of processors in the brain that does not require sophisticated first of all data processing is done centrally on the server cloud. Cloud robot is simply consisting only of input and output devices and the entire process focuses on the cloud. Best of the cloud robot is able to communicate with other robots of clouds to humans, even with colleagues via the Internet. Entering Cloud computing allows a robot to do the job, even superior to human intelligence, known as robot cloud. Several research groups are exploring the idea of robots that rely on cloud-computing infrastructure to access vast amounts of processing power and data. This approach, which some are calling "cloud robotics," would allow robots to offload compute-intensive tasks like image processing and voice recognition and even download new skills instantly, Matrix-style. A researcher suggests that the future of robotics is in cloud-computing. This means that robots could offload their more complex tasks to remote servers that could do the heavy computations. A cloud connected robot can:- Perceive Understand Share React Fig. (3) Robot connected with cloud 5. PROPOSED APPROACH To realize this whole scenario we will use two servers one is local to a particular robot, while other is centralized server which can be accessed by every robot which is authorized to that server. The purpose of making two servers is that the local server will handle or assist the robot to work in a particular environment and with the particular objects and as soon as the robot will continue to work in the same environment it will gain experience of working in that environment and hence it will work more intelligently while the global server will keep the solution for all the problems (tasks assigned to robots are referred as problems) which are faced by all the robots present globally, and these solutions will be generalized rather than specialized e.g. a robot working in your garden and trimming a plant, if we look at the optimal solution then your robot will be trimming the plant according to the size and shape of that particular plant. But the robot at the remote location working in another garden will have slightly different environment (difference may be very slight) and different specification of object of interaction (i.e. in this case, shape & size of plant). So the solution of first robot cannot be used by second robot directly. Hence the solution of first robot will be considered as generalized one at the global server and the robot at remote location will use this solution after applying few optimization algorithms and making slight changes in the environment variables, and specifications of object of interaction etc as per its requirement. 5.1 Local Server (Local Database) The scope of creating a local database is that every robot is having a different environment to work and they deal with different-different objects. As the robot will deal with the objects in its surroundings, it will gain experience of dealing with these objects by optimizing the solution on the basis of its environment, object of interactions and saving this solution in its local database. So the local database will act as memory of a robot to let it work more intelligently in a particular environment e.g. a robot working in a hospital will have experiences about dealing with the objects present in that hospital, these experiences will get collected in the local database and as the time passes the robot will have good intelligence to handle every object (of interaction) in the hospital expertly. 5.2 Cloud Server (Global Database) The second database we are talking about is the global database, it is the idea through which we will share the learning (experience) of one robot with the other robot. It is just like the learning of human being who learnt everything by his ideas and experiences and sharing his experiences with each other. In broader context it is about sharing the knowledge of robot with each other to get their task completed. It will be implemented in the following ways. When any problem comes or a task is assigned to a robot, first the robot will check for the solution of that problem in its local database if it does not exist there, it means robot is novice to that problem then it will look at the global server for the solution if the solution exist on the global server then it will download it from there and use reinforcement learning to optimize the solution according
  4. 4. to its own environment. But if it does not exist on the global server then the robot will apply its own learning to find the solution of the given problem and save this solution at both the server i.e. local server as well as global server. 5.3.1 Problem Characteristics & variables for global database Global problem Id (GPID) Identification of the problem globally corresponding to the problem statement. Problem Statement Key for searching the problem. Environment Description about the working condition (i.e. hospital, railway platform, library etc) Global Environment Id attached to a problem (GEID) Generated for different-different environments of the same problem. Description of Object of interaction To which the robot is interacting, may be Door, rain, train etc or it can be null. 5.3.2 Algorithms for global server The global server has two main tasks one is uploading the solution received from the robot to its database and second one is granting the permission for downloading request made by robot. The algorithms are as follows- Algorithm for Uploading Step1 Create a GPID for the problem and GEID for the environment. Step2 Get the values of various variables like problem statement and the environment variables, object of interaction etc from the robot. Step3 The global server will generalize this solution by applying some algorithms. Step4 Save it at global server. Step5 Exit. 5.3.3 Algorithm for Downloading Step1 Check for the problem and environment variables at the global server if the solution corresponding to this problem environment set exists there then download the solution. Step2 Specialize this solution by making slight changes in its variables as required and apply the reinforcement learning algorithm for optimization according to its own environment. Step3 Use the solution, initialize memory function and save it at local database. Step4 Exit. 5.3.4 Constraints/Protocols Fuzzy logic and various matching algorithms may be used for the match when the robot is looking for the solution at the global server. Only authorized Robots can access the global server. 5.3.5 Global Database Functionality Robots will have to register themselves once to get access to the Global database. A robot ID (RID) will be generated at the time of registration that will be used to identify robot while accessing the database. As soon as the time passes the Global database will keep expanding hence the robots will have a good store of knowledge. 6. Representation of how the Robots will use Cloud Server (global database)
  5. 5. 7. CONCLUSION & FUTURE WORK We have seen that how we can make robots more intelligent to work in a particular environment by enabling them to use their own experience to deal with the objects present in their surrounding environments i.e. as soon as the time passes the robot will have a good experience of dealing with the objects present in their surroundings. We...