You are on page 1of 4

Robots with their Heads in the Clouds

web server can handle, the response time of the requested pages will be increased due to overloading. On the other hand, in times of low load much of the capacity will go unused. If the website, service, or web application is hosted in a cloud, however, additional processing and compute power is available from the cloud provider. The website would share those servers with perhaps thousands of other websites varying size and memory. If the website suddenly becomes more popular, the cloud can automatically direct more individual computers to work to serve pages for the site, and more money is paid for the extra usage. If it becomes unpopular, however, the amount of money due will be less. Cloud computing is popular for its pay-as-you-go pricing model. Clouds are sometimes set up within large corporations, or other institutions, so that many users all share the same server power. As computer power gets cheaper, many different applications are provided and managed by the cloud server. In many cases, users might not download and install applications on their own device or computer; all processing and storage is maintained by the cloud server. How Cloud computers Works? A cloud user needs a client device such as a laptop or desktop computer, pad computer, smart phone, or other computing resource with a web browser (or other approved access route) to access a cloud system via the World Wide Web. Typically the user will log into the cloud at a service provider or private company, such as their employer. Cloud computing works on a client-server basis, using web browser protocols. The cloud provides serverbased applications and all data services to the user, with output displayed on the client device. If the user wishes to create a document using a word processor, for example, the cloud provides a

1. INTRODUCTION Robotics is anything but a static field with a continuous stream of advancements adding to both the complexity and possibility behind each new development. A new subfield--cloud robotics--is emerging as a hot topic in research. As one might imagine, instead of relying on "in-house" resources, robots can potentially leverage the cloud to deliver instant information and to handle computationally-intensive tasks that would otherwise use a great deal of a robots on-board system. In one of the many famous scenes in The Matrix (1999), the character Trinity learns to fly a helicopter by having a "pilot program" downloaded to her brain. For us humans, with our offline, nonupgradable meat brains, the possibility of acquiring new skills by connecting our heads to a computer network is still science fiction. Not so for robots. Cloud computing, one of the most promising technology, when coupled with robotics can make huge changes in their abilities. 2. CLOUD COMPUTING Cloud computing means using multiple server computers via a digital network, as though they were one computer. Often, the services available are considered part of cloud computing. Traditionally, without a cloud, a web server runs as a single computer or a group of privately owned computers. The computer(s) are powerful enough to serve a given amount of requests per minute and can do so with a certain amount of latency per request. If the computer's website or web application suddenly becomes more popular, and the amount of requests are far more than the

suitable application running on the server which displays work done by the user on the client web browser display. Memory allocated to the client system's web browser is used to make the application data appear on the client system display, but all computations and changes are recorded by the server, and final results including files created or altered are permanently stored on the cloud servers. Performance of the cloud application is dependent upon the network access, speed and reliability as well as the processing speed of the client device. Since cloud services are web-based, they work on multiple platforms, including Linux, Macintosh, and Windows computers. Smart phones, pads and tablet devices with Internet and World Wide Web access also provide cloud services to telecommuting and mobile users. A service provider may pool the processing power of multiple remote computers in a cloud to achieve routine tasks such as backing up of large amounts of data, word processing, or computationally intensive work. These tasks might normally be difficult, time consuming, or expensive for an individual user or a small company to accomplish, especially with limited computing resources and funds. With cloud computing, clients require only a simple computer, such as netbooks, designed with cloud computing in mind, or even a smartphone, with a connection to the Internet, or a company network, in order to make requests to and receive data from the cloud, hence the term "software as a service" (SaaS). Computation and storage is divided among the remote computers in order to handle large volumes of both, thus the client need not purchase expensive hardware or software to handle the task. The outcome of the processing task is returned to the client over the network, dependent on the speed of the Internet connection 3. CLOUD ROBOTICS
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 off-load computeintensive tasks like image processing and voice recognition and even download new skills instantly, Matrix-style, so that it can free

up resources for other tasks, thus providing the opportunity for added sophistication due to more resources becoming available. Imagine a robot that finds an object that it's never seen or used beforesay, a box of cornflakes. The robot could simply send an image of the box to the cloud and receive the object's name, a 3-D model, nutritional information, and instructions on how to pour it. For conventional robots, every taskmoving a foot, grasping things, recognizing a facerequires a significant amount of processing and preprogrammed information. As a result, sophisticated systems such as humanoid robots need to carry powerful computers and large batteries to power them. James Kuffner, a professor at Carnegie Mellon University, currently working at Google, described the possibilities of cloud robotics at the IEEE International Conference on Humanoid Robots, in Nashville, this past December. Embracing the cloud could make robots "lighter, cheaper, and smarter," he told the assembled engineers. According to Kuffner, cloud-enabled robots could offload CPU-heavy tasks to remote servers, relying on smaller and less power-hungry onboard computers. Even more promising, the robots could turn to cloud-based services to improve such capabilities as recognizing people and objects, navigating environments, and operating tools. The idea of connecting a robot to an external computer is not new. Back in the 1990s, University of Tokyo researchers explored the concept of a "remote brain," physically separating sensors and motors from high-level "reasoning" software. But the amount of computing power a cloud-connected robot has access to is far greater now than what the researchers imagined during the Web's early days.

Kuffner, who is a member of Google's autonomous car project, is now exploring a variety of cloud robotics ideas, including "using small mobile devices as Net-enabled brains for robots". Some of his colleagues recently unveiled Androidpowered robot software and a small mobile robot dubbed the Cellbot. The software allows an Android phone to control robots based on platforms like Lego Mindstorms, iRobot Create, and Vex Pro. iRobot had robots that used tablets as heads and control unitsthink R2D2 with a crew cut. Willow Garage and Google demonstrated how an Android tablet could be the eyes and ears of the PR2 (right). The PR2 subscribed to the tablets orientation and the tablet subscribed to the PR2s camera images (the eyes). But cloud robotics isn't limited to smartphone robots. It could apply to any kind of robot, large or small, humanoid or not. Eventually, some of these robots could become more standardized, and sharing applications would be easier. Then, Kuffner suggested, something even more interesting could emerge: an app store for robots. The app paradigm is one of the crucial factors behind the success of smartphones. What could apps do for robotics? It's too early to say. But at the Nashville gathering, roboticists received Kuffner's idea with enthusiasm. At Googles I/O conference, Google launched rosjava, a ROS (robot OS) framework in Java that is Android compatible. The move coupled with Googles Android Open Accessory API, which aims to connect a bevy of devicesphones, bikes, cameras, clocks and other household items highlights how it is positioning the Android operating system as a robotics tool. In a talk, Google project manager Ryan Hickman argued that mobile connectivity and cloud computing could give robots new capabilities with less battery power and memory. By offloading applications like mapping and sensor number crunching to the cloud, robots could become more useful and inexpensive. Mapping, voice and text services and optical character recognition are all

cloud-enhancements that can be brought to robots. What would these robots do under clunky 3G connections and areas where there wasnt access. Hickmans reply is that the robots memory could retain necessary data so it wouldnt suddenly go limp without a connection. For instance, NASAs Ames Research Centre is working with Google on the Android-cloud-robot connection with rovers in the desert. The problem is that there is no mobile connectivity in the desert. One possible solution would be to store information on the rover and then have a drone fly over and beam the data up. This drone would be Android powered of course. Add it up and you have open source ROS, Android and Linux-based robotic systems all looking at a connection to the cloud. Microsoft also has an interesting robot effort via its free Robotics Developer Studio. "The next generation of robots needs to understand not only the environment they are in but also what objects exist and how to operate them," says Kazuhito Yokoi, head of the Humanoid Research Group at Japan's National Institute of Advanced Industrial Science and Technology. "Cloud robotics could make that possible by expanding a robot's knowledge beyond its physical body." "Coupling robotics and distributed computing could bring about big changes in robot autonomy," says Jean-Paul Laumond, director of research at France's Laboratory of Analysis and Architecture of Systems, in Toulouse. He's not surprised to see Google, which develops core cloud technologies and services, pushing the idea of cloud robotics. But Laumond and others note that the cloud is not the solution to all of robotics' difficulties. In particular, controlling a robot's motionwhich relies heavily on sensors and feedbackwon't benefit much from the cloud. "Tasks that involve real-time execution require onboard processing," he says.

Worries about cloud-robot latency are real today, but will be resolved as technology advances. For the foreseeable future, the cloud will be a complement to robot storage and computing power. Prices need to come down, but off the shelf hardware, open source software and appealing to developers can bring down prices. And there are other challenges. As any Net user knows, cloud-based applications can get slow or simply become unavailable. If a robot relies too much on the cloud, a hitch in the network could leave it "brainless." Still, Kuffner is optimistic. He envisions a future when robots will feed data into a "knowledge database," where they'll share their interactions with the world and learn about new objects, places, and behaviours. Maybe they'll even be able to download a helicopter-pilot program. 4. CLOUD ROBOTICS PROJECTS RoboEarth is a European project led by the Eindhoven University of Technology, in the Netherlands, to develop a "World Wide Web for robots," a giant database where robots can share information about objects, environments, and tasks. Researchers at Singapore's ASORO (A-Star Social Robotics Laboratory) have built a cloudcomputing infrastructure that allows robots to generate 3-D maps of their environments much faster than they could with their onboard computers. Google engineers developed Android-powered robot software that allows a smartphone to control robots based on platforms like Lego Mindstorms, iRobot Create, and Vex Pro. Photo: Cellbots Researchers at the Laboratory of Analysis and Architecture of Systems, in Toulouse, France, are creating "user manual" repositories for everyday objects to help robots with manipulation tasks.

At a children's hospital in Italy, Nao humanoid robots, created by the French firm Aldebaran Robotics, will rely on a cloud infrastructure to perform speech recognition, face detection, and other tasks that might help improve their interaction with patients. Photo: Aldebaran Robotics

REFERENCES [1] Erico Guizzo, Robots with their heads in the clouds, IEEE Spectrum, March 2011 [2] Yinong Chen, Zhihui Du, and Marcos GarcaAcosta, Robot as a Service in Cloud Computing,
Fifth IEEE International Symposium on Service Oriented System Engineering, 2011 [3]

Larry Dignan, Google aims to bridge Android, cloud computing with robotics, ZDNet, May 13, 2011, http://www.zdnet.com/blog/btl/google-aimsto-bridge-android-cloud-computing-withrobotics/48693

[4] Cloud Computing, Wikipedia http://en.wikipedia.org/wiki/Cloud Computing [5] Nicole Hemsoth, Cloud Robotics Research Aims to Create Smaller, Smarter Machines, March 03, 2011, HPC In The Cloud, http://www.hpcinthecloud.com/hpccloud/201 1-03-03/ cloud_robotics_research_aims_to_create_sm aller_smarter_machines.html

You might also like