10-12-2012, 06:15 PM
Robots with their Heads in the Clouds
Robots with their Heads.docx (Size: 18.96 KB / Downloads: 21)
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.
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 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 server- based 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 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
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 compute- intensive 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 before—say, 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 task—moving a foot, grasping things, recognizing a face—requires a significant amount of processing and preprogrammed information.
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