Abstract
Humanoid robots, unmanned rovers, entertainment pets, drones, and so on are great examples of mobile robots. They can be distinguished from other robots by their ability to move autonomously, with enough intelligence to react and make decisions based on the perception they receive from the environment. Mobile robots must have some source of input data, some way of decoding that input, and a way of taking actions (including its own motion) to respond to a changing world. The need to sense and adapt to an unknown environment requires a powerful cognition system. Nowadays, there are mobile robots that can walk, run, jump, and so on like their biological counterparts. Several fields of robotics have arisen, such as wheeled mobile robots, legged robots, flying robots, robot vision, artificial intelligence, and so on, which involve different technological areas such as mechanics, electronics, and computer science. In this article, the world of mobile robots is explored including the new trends. These new trends are led by artificial intelligence, autonomous driving, network communication, cooperative work, nanorobotics, friendly human–robot interfaces, safe human–robot interaction, and emotion expression and perception. Furthermore, these news trends are applied to different fields such as medicine, health care, sports, ergonomics, industry, distribution of goods, and service robotics. These tendencies will keep going their evolution in the coming years.
Introduction
Nowadays, mobile robotics is one of the fastest expanding fields of scientific research. Due to their abilities, mobile robots can substitute humans in many fields. Applications include surveillance, planetary exploration, patrolling, emergency rescue operations, reconnaissance, petrochemical applications, industrial automation, construction, entertainment, museum guides, personal services, intervention in extreme environments, transportation, medical care, and so on, as well as many other industrial and nonindustrial applications. Most of these are already available on the market.
Mobile robots can move autonomously (in an industrial plant, laboratory, planetary surface, etc.), that is, without assistance from external human operators. A robot is autonomous when the robot itself has the ability to determine the actions to be taken to perform a task, using a perception system that helps it. It also needs a cognition unit or a control system to coordinate all the subsystems that comprise the robot.
The basics of mobile robotics consist of the fields of locomotion, perception, cognition, and navigation. 1
Locomotion problems are solved by understanding the mechanism and kinematics, dynamics, and control theory.
Perception involves the areas of signal analysis and specialized fields such as computer vision and sensor technologies.
Cognition is responsible for analyzing the input data from sensors and taking the corresponding actions to achieve the objectives of the mobile robot. It is in charge of the control system scheme.
Navigation requires knowledge of planning algorithms, information theory, and artificial intelligence.
This article deals with mobile robots and how a mobile robot can move in a real world to fulfill its objectives without human interaction. To understand the basis, it must be noted that in a mobile robot, several technological areas and fields must be observed and integrated for the correct operation of the robot: the locomotion system and kinematics, perception system (sensors), localization system, and navigation system. All these systems have to be integrated by a control unit, so that the work or mission of the mobile robot is carried out in a coherent way. There are many academic institutions worldwide and many researches dedicated to mobile robot research. In this overview, we cannot name all of them, so we apologize for this shortcoming. However, we would like to point out the work carried out in earlier studies 2,3 because they offer a journey through the world of mobile robots (underwater robots, flying octopus, earth exploration robots, etc.), with historical overviews, recent developments, and technical approaches to mechanical design and control decisions together with interactive dynamics.
A partial review about mobile robots used on power transmission lines was published in this journal, 4 where studies on autonomous machines to travel along transmission lines to perform inspection and/or repair work are shown. Also in this journal, a review on trend in modular reconfigurable robots can be found. 5
To facilitate the reading of the article, we will start introducing the locomotion system, then perception and sensor classification. The following sections are Cognition and control system, Navigation and finally Discussion and conclusions sections are developed.
Locomotion
The first issue affecting mobile robots is locomotion. Although their motion usually takes place in known, controlled environments like a factory, department stores, and so on, on other occasions they have to move in dangerous, inhospitable, and extreme environments (e.g. the Sojourner robot used in the Mars Pathfinder mission to explore Mars in 1997, 6 Spirit and Opportunity in 2004, 7 and Curiosity in 2012 8,9 ).
The mobile robot can also move in other different environments. A small underwater robot for ocean observation, which is suitable for fixed point or small range and underwater slit and gully areas of ocean observation, is described in the study by Lingshuai et al. 10 Another example of an underwater robot can be found in Khatib et al. 11 They can also move in the air, such as unmanned aerial vehicles. 12 A latest trend such as driverless autonomous vehicles relies not only on the control but also on the locomotion system.
The robot’s locomotion system is an important aspect of the mobile robot design and it depends not only on the medium in which the robot moves (on the Earth’s surface, under water, in the air, etc.) but also on technical criteria such as maneuverability, controllability, terrain conditions, efficiency, stability, and so on.
Depending on it, robots can mainly walk, roll, jump, run, slide, skate, swim, and fly. According to their locomotion system, mobile robots can be classified into the following major categories: Stationary (arm/manipulator) Land-based Wheeled mobile robot (WMR) Walking (or legged) mobile robot Tracked slip/skid locomotion Hybrid Air-based Water-based Other
Each system has its own advantages and disadvantages.
Stationary robot (arm/manipulator)
Manipulators and industrial robots are examples of this type. The robot’s base is fixed and they consist of an open kinematic chain, mainly with an end-effector with specials tools which not only handle objects but can also perform tasks such as welding, painting, assembling, machining, and so on. Robots of this type include Abb, Kuka, Fanuc, Staubli, Kawasaki, Comau, Wittman, and so on.
Other important stationary robotic systems are grasping devices. Grasping is an important part of handling and from the beginning grasping devices were conceived mainly to help humans with handling tasks, providing solutions that can be classified into two categories: tools and prostheses. 13 Over time, grasping devices have come to be used in many sectors, such as industry; agriculture, and so on, and a variety of robotic hand and finger mechanics have been developed. A broad overview can be found in Carlos et al. 14
Land-based robots
These can be classified as follows:
Wheeled mobile robots
Wheels are one of the most important systems for robot locomotion, and autonomous intelligent vehicles (AIVs) are part of a challenging research field in mobile robotics, which relies on principles such as pattern recognition and signal–image processing. They will play an important role in transport, logistics, and distribution.
The use of wheels is simpler than using treads or legs and is easier to design, build, and program when the robot is moving on flat, nonrugged terrain. They also tend to be much cheaper than their legged counterparts. Wheel control is less complex and they cause less wear and tear on the surface where they move in comparison with other solutions. Another advantage is that they do not present any great difficulty in terms of balance issues, since the robot is usually in contact with a surface.
The main disadvantage of wheels is that they are not very good at navigating over obstacles, such as rocky terrain, sharp surfaces, or areas with low friction.
There are four basic wheel types:
15,16
Fixed standard wheel: These are conventional wheels with one degree of freedom (DOF), rotation around the contact point. Castor wheel: It has two DOF and turning around an offset steering joint. Swedish wheel: It has three DOF, revolving around the driven wheel axle, around the contact point and the rollers. Ball or spherical wheel: Its implementation is technically complex.
It is very important to know the number and type of wheels in the robot to model the kinematics and dynamics. 17
In general, wheeled robot research tends to focus on the problems of traction and stability, maneuverability, and control. 18,19 Stability is not usually a great problem in wheeled robot, because they are almost always designed so that all wheels are in contact with the ground at all times. Thus, three wheels are sufficient to guarantee stable balance, although two-wheeled robots can also be stable. 20 –22 If more than three wheels are used, a suspension system is needed. Its mission is to enable all wheels to maintain contact with the ground particularly when the robot maneuver around rough terrain. 23 There are many wheel configurations for rolling robots, as seen in Campion and Chung, 15 although there is no perfect drive configuration that simultaneously optimizes stability. Stability is more problematic in biped robots.
There are other variants of wheels, as in Laney and Hong. 24 In addition, the arrangement of the wheels and the configuration of the mobile robot are also very important.
WMRs can also be classified according to the drive system: Differential drive WMRs Car-type WMRs Omnidirectional WMRs Synchro drive WMRs
No perfect drive system exists that simultaneously optimizes maneuverability, controllability, and stability. Each mobile robot application faces unique restraints on the robot design procedure. The problem is reduced to select the most convenient drive configuration taken into account all the compromises.
The actuators attached to the wheels, in a differential drive mobile robot, must be driven along the same velocity profile, which can be endangered considering variations among wheels, actuator, and environmental working conditions.
Omnidirectional robots are capable to heading for any direction. 25,26 They can be made of spherical, Swedish, or castor wheels. The humanoid robot Pepper is an omnidirectional wheeled humanoid robot which can analyze expressions and voice tones. It has most of the more sophisticated sensors on the market (HD camera,·depth sensor, gyroscope, touch sensor, sonar, and laser). 27 The synchro drive configuration is an appropriated configuration because, although there are three or more driven and steered wheels, only two actuators motors are utilized. One of them sets the speed of all three wheels together. The other spins all the wheels about each of their own vertical steering axes. It is very important when modeling any robot to know the number and types of wheels. According to the number of wheels, the robots can be classified as follows:
Single-wheeled robots
Unicycle robots have only one fixed or conventional wheel. The unicycle system is an inherently unstable system. Both longitudinal and lateral stability controls are needed simultaneously to maintain the unicycle’s posture. 28
Two-wheeled robots
These have two alike parallel, conventional wheels (linked to both sides of the robot), which are controlled by two independent actuators. It is also considered that every wheel is perpendicular to the ground and the contact between the wheels and the ground is nonslipping and pure rolling. 29 The Roomba vacuum cleaner is a two-wheeled robot which is a good exponent of mobile robotics in recent household applications. It utilizes a contact sensor at the front and an infrared sensor on top. Segways can also be considered a self-balancing, two-wheeled robot. In the Ghost Rider robot, the wheel alignment is front and back, so that it is harder to balance when it turns.
Three-wheeled robots
Two types of three-wheeled robots can be distinguished: firstly, differentially steered (two driven wheels with an additional free turning wheel to maintain the vehicle in balance) and secondly, two wheels driven by a single actuator and a driven steering for the third wheel. 30
Four-wheeled robots
These robots are more stable than the three-wheeled counterpart, because the center of gravity (COG) is located inside the rectangle formed by the four wheels rather than a triangle. The wheels can be differentially steered (like rovers), two-by-two powered wheels (like a tank motion), or can have car-like steering. Car-like mobile robots are very important. 31,32 Google’s self-driving car, 33 AIVs, and the Hybtor Robot belong to this type. They are acquiring a great importance in transports, logistics, food industry, and food processing.
Five-wheeled robots
Five-wheeled robots are designed to move through outdoor rough terrains since they improve the contact and stability. Xu et al. 34 first proposed an innovative asymmetrical prototype of a five-wheeled robot (WMR) with reconfiguration features which can over-cross the obstacles and climb on slope. In another study, 35 the slip on that five-WMR when moving on an uneven terrain is presented, and conclusion about the relationship between the contact patch of wheel and terrain, obstacle height, and hence contact angle and the wheel rotation angle are reached.
Six-wheeled robots
When more powered wheels are used, the design becomes much more complex. The Sojourner robot from the Mars Pathfinder mission in 1997, 6 Spirit and Opportunity in 2004 7 and Curiosity in 2012 8 are good examples of six-wheeled robots. They have a suspension system which keeps all six wheels in contact with the surface and helps them go over slopes and sandy terrain. Good control is needed to avoid slipping.
Shrimp is another such robot. 9 With its six driven wheels, it is able of climbing objects up to twice its wheel diameter. This empower it to climb ordinary stairs despites of the robot is smaller than the Sojourner. By means of a rhombus mechanical structure, the Shrimp presents a steering wheel at the front and the rear and two wheels disposed on a bogie on every side. The front wheel incorporates a spring suspension to assure maximum contact between the ground and all wheels at any time. The mobile robot is steered by synchronizing the speed difference of the bogie wheels and the steering of the front and rear wheels. This fact enables for high-precision maneuvers and revolving instantly with minimum skid/slip of the four center wheels. The utilization of parallel revolute joints for the front wheel and the bogies produces a virtual center of rotation (COR) at the level of the wheel axis. This guaranties climbing abilities and maximum stability, even for very low friction coefficients between the ground and the wheel. The Shrimp’s climbing capability is remarkable when compared with most robots of similar mechanical complexity, mostly due to its concrete geometry and therefore the way in which the mobile robot’s center of mass shifts regarding the wheels over time. See also the Marsokhod robot. 36
More than six wheels
The Octopus robot is a WMR that is able to deal with obstacles autonomously on rough terrain without getting stuck. It is equipped with tilt sensors and tactile wheels. 37
Walking or legged mobile robots
Legs are another common form of locomotion, giving rise to walking robots. Although they are usually more expensive than wheels, legs have several advantages over wheels. The greatest advantage is their transversality and efficiency and the fact that they can also move on soft and uneven terrain, better mobility, better energy efficiency, better stability, and a smaller impact on the ground. Walking robots also have the advantage of easily coping with obstacles or cracks found in the environment 38 ; in short, adaptability and maneuverability on rough terrain.
There are many types of walking robots depending on the number of legs. Among the most important are biped (humanoids), four-legged (quadruped), six-legged, and so on.
A historical survey of mechanisms for walking machines can be found in the study by Ceccarelli and Kececi. 3 The review covers everything from the Greeks to Leonardo Da Vinci’s designs, the walking machines by Chebyshev, and modern solutions. Low-cost designs at LARM in Cassino are also presented.
In walking robots, stability is the main issue, as the balance of the body and gait are of extreme importance, especially in the case of a two-legged robot or humanoid. There are two types of stability: static and dynamic. Static stability is the ability to maintain a configuration when subjected to reaction forces only. Dynamic stability is linked to the ability to remain upright when subjected to both reaction and inertial forces.
While walking, the movement of the body that rests on the supporting legs should be considered and properly controlled. Legged robotic systems, gait analysis, and design problems are studied by Carbone and Ceccarelli. 39 Figliolini and Ceccarelli 40 solved stability problems for an anthropomorphic robot named ElectroPneumatic WAlking Robot. An algorithm for planning sequences of footsteps for humanoid robots is presented by Kuffner et al. 41
Structures with two to eight legs are predominant. Using a larger number of limbs supplies redundant support and frequently raises the payload capacity and safety. These advantages are achieved at the cost of increased control complexity (in terms of leg coordination), as well as power and mechanical difficulties.
A distinctive characteristic of bipedal robots is their anthropomorphic geometry (humanoid robots 42 ). They can only be statically stable to some extent. 43
Nowadays, there are many biped robots that possess the capability to climb over surfaces with different slopes. Let us look at the most common legged robots:
One-legged robot
“Hoppers” are one-legged robots. The greatest challenge with hoppers is that they cannot stand still; they need to keep hopping in order to maintain their balance. Uniroo is an example of a one-legged robot. 44
Two-legged or humanoid robots
One of the most important types of walking robots is humanoid robots. In order to reproduce human capabilities, they make good use of sensors. They can walk, talk, reproduce emotions, and so on. One of the most important problems from the point of view of locomotion is loss of balance.
In the last decade, walking and talking has been greatly improved. 45 Thinking capabilities are still their weak point and continue to pose a challenge.
The motion of biped robots is dependent upon dynamic stability. Two-legged (biped) robots can walk, run, travel up and down stairs, jump, and even do somersaults. The motions are sophisticated because the feet are quiet small and the balance has to be dynamic at all times; even standing still requires sophisticated control. Humanoid robots that present autonomous locomotion are made of the following modules: local path planning based on observation of the environment, global path planning using given geometrical information, footstep planning, and a motion planner. 46
Humanoids come in a variety of shapes and sizes, from complete human-sized biped robots to isolated robotic arms or heads with human-like sensing and expression. In these robots, as well as navigation, it is essential to consider others important human functions such as grasping and handling objects, footstep placement, and full-body motions. In contrast to wheeled robots, legged robots (biped humanoids included) present the particular capability to avoid obstacles by stepping over or upon them. Reliable two-legged robots have only been developed in recent years, and much attention has been focused on this line of research so that humanoid robots have the greatest potential to become an industrial tool of the future. There are several outstanding humanoid robots, such as Atlas. It was designed for search and rescue tasks, mainly in situations where humans cannot survive. It can walk leaving the upper limbs free to lift, carry, and manipulate the environment, as well as running, climbing stairs, talking, picking itself up from a fall and doing almost anything a real human would do to save another person’s life. Atlas includes 28 hydraulically actuated degrees of freedom, stereo cameras, and a laser range finder (Lidar) that allows it to avoid obstacles, assess the terrain, and orient itself. The newest generation of Atlas is more human than ever before. 47 –49
Another very famous humanoid robot is Valkyrie, which is similar to Atlas and supposedly able to perform tasks equivalent to those of a human being in dangerous surroundings. Apart from the cameras in its head, sonar, radar, and lidar sensors are integrated into its torso and it has additional cameras on its knees, wrists, and feet. It is designed to move among debris, handle objects, machinery, and even drive. 50,51
Asimo was designed to help people who lack full mobility; it is a multifunctional mobile assistant. It has been under development since the 1980s. At present, Asimo can walk on uneven slopes and surfaces, revolve smoothly, run, climb stairs, and reach for and grasp objects. It has also the ability to understand and respond to simple voice commands and to recognize the face of a certain group of persons. Utilizing its sensor eyes, it can map its work environment and register static objects and therefore it can avoid moving obstacles as it travels through its environment. 45,52
Also designed as a personal assistant and companion is Romeo. It can walk, see the environment in three dimensions, open doors, climb stairs, listen and speak, and reach for objects on a table. The robot has 37 DOF, including 3 DOF for the spine, 1 DOF for each foot, and 2 DOF for each eye. The innovations include human–robot interaction, moving eyes, the body’s balance system, and force control. 53
Another humanoid robot is Nao, which has been used for research and education purposes. Like the robot dog AIBO, it is used for entertainment. Nao features an inertial measurement unit with accelerometer, gyrometer, and four ultrasonic sensors and force sensors. 54
There are many other humanoid robots in academic institutions worldwide (REEM-C, OceanOne, Titan, QRIO, etc.). Online learning, autonomous motion adaptation, grasp planning, exoskeletons, affective human–robot interaction, and speech communication are the latest research lines and challenges in humanoid robots.
Friendly human–robot interfaces, safe human–robot interaction, and emotion expression and perception remain a challenge in this field.
Humanoid robots are employed in applications such as personal assistance, health care, entertainment, automotive manufacturing line, education, and greeting guests and visitors. Usage of humanoid robots developed with artificial intelligence algorithms is expected to increase in perilous tasks such as space exploration missions.
Three-legged robots
These are not very common because of the odd number of legs. STriDER is an example of a three-legged robot. 55 It presents a straightforward kinematic structure that is inherently stable like a camera tripod, it is easy to control, energy efficient, and lightweight. In the course of a step, two legs behave as supportive legs while the other works as a swing leg. The aim of the legs is to push the COG outside of the supportive legs to start a step. While the robot´s body falls forward, the swing leg naturally swings in between the two supportive legs and catches the fall.
Four-legged (quadruped) robots
When increased safety or payload capability is needed, quadrupeds or robots with a larger number of legs are used.
They have the advantage of being statically stable when not moving, but they require dynamic walking control, as the robot’s COG must be readily shifted during gait. The control and leg coordination of these larger robots is, however, more complicated.
These systems require a high computational speed. The motors and power storage system required for these systems are highly expensive.
A good example of a quadruped robot is BigDog. 56 –61 BigDog can run at 6.5 km per hour, climb 35° slopes, and carry 150 kg. But the most impressive feature is its dynamic walking; BigDog can recover from slipping and even being pushed.
The AIBO robot (1998, an entertainment pet 62 ) has a near real-time operating system and new geared servomotors that introduces a high torque enough to support the robot.
Five-legged (quadruped) robots
This kind of robots are rarely developed due to the odd number of legs. A five-legged robot inspired from starfish is presented by Besari et al. 63 One of the objectives of the article is to find the optimal gait when robot is walking. Trial and error have been used to provide learning through an interaction between the robot and the work environment based on a policy of reward and punishment.
Six-legged (hexapod) robots
A robot can be statically stable on three or more legs, so a robot with six or more legs can be controlled with static walking techniques rather than dynamic walking, thus reducing the control complexity. A common architecture for walking robots is the hexapod. These kind of robots have been very popular in mobile robotics. 64 –66
Hexapod gaits are typically stable, even on slightly rocky and uneven terrain. There are several hexapod gaits which can be suitable in different environments; for example, one leg at a time or quadruped gait. If one or two legs become disabled, the robot is still able to walk. An experimental hexapod robot can be found in Stoica et al. 67
More than six-legged robots
The most commons in this category are the eight-legged robots. They are inspired by spiders, underwater walkers, and other arachnids. An example is the Dante robot. It was designed with the aim to rappel into and explore active volcanic craters. It was used in an expedition to explore Mount Erebus in Antarctica. The objectives were to demonstrate its capabilities in a real exploration mission, in rough terrains, and its survival in the cold, windy, bright, rugged Antarctic environment (see Bares and Wettergreen 68 for more details).
Tracked robots
These are a type of robots that uses treads or caterpillar tracks instead of wheels. In the wheel configurations, we assume that wheels cannot skid against the surface. Other possible solution to steer, named skid/slip, might be used to redirect the robot by spinning wheels with the same direction at different speeds or in opposite directions. The Nanokhod rover 69 operates in this way. Tracked robots have much larger ground contact patches, and this fact plays a major role to improve their maneuverability on loose surface in comparison to conventional wheeled robots. Nevertheless, because this large ground contact patch, changing the direction of the robot normally needs a skidding turn, and therefore a large portion of the track must slide against the surface. The skid/slip steering is also a disadvantage of such configurations. Due to the great amount of skidding in the course of a turn, the exact robot´s COR is difficult to predict and the accurate change in position and direction is also subject to variation on account of the ground friction. Hence, dead reckoning in these robots is very imprecise. Moreover, a skid/slip approach on a high-friction terrain can rapidly overcome the torque value of the actuator being used. Power efficiency of this approach is reasonably acceptable on loose surfaces but very inefficient otherwise. The Soryu robot is also a good example of this kind of locomotion. 70
Hybrid robots
These are robots whose structure consists of a combination of any of the above-described types. For example, a segmented articulated and wheeled device. Hybrid solutions combine the suitability of wheels with the adaptability of legs. According to Bruzzone1 and Quaglia, 71 four categories of hybrid mobile robots can be distinguished:
AIV-based robots
An unmanned aerial robot commonly known as “drone” is a machine that performs a preprogrammed task with or without human interaction and it is inspired by an airplane’s operation. The most advanced ones can now take off and land completely independently of the actions of their operators. Initially they were mostly used in military applications but they expanded rapidly to other applications such as scientific, agricultural, commercial, recreational, policing, and surveillance, product deliveries, distribution and logistics, aerial photography, and so on (see Paul 77 for an overview on “drones”).
Water-based robots
One of man’s oldest goals has been to explore the oceans and underwater areas that are inaccessible to him. As an important branch of mobile robots, the underwater vehicle-manipulator system is one the hottest research topics nowadays. 78 Many devices have been built for this, including robotic systems. OceanOne is an example of a submarine robot. It is a humanoid robot that explores the seabed. It takes advantage of the best of remotely operated vehicles and the advantages of humanoid robots, such as having a robotic hand with which to rescue objects as if it were a human being. 9
Other robots
There are other robots, which are difficult to frame from the point of view of their motion, such as: Snake-like robots: They are highly articulated robots that can coordinate their internal DOF to perform a variety of locomotion capabilities, thus extending the capabilities of conventional legged or wheeled robots. The main advantages of these robots are that they are versatile, achieving behaviors that are not bounded to climbing, crawling, and swimming.
79,80
Worm-like robots: These use peristalsis, the same method of locomotion that earthworms use.
81
This method of locomotion is particularly effective in constrained spaces. Other advantages are high deformability of the worm structure and high stability on irregular terrain, mobility, and in narrow regions.
82
These robots could have various applications in medicine, including examination of the entire GI tract, as well as applications in search and rescue environments and military reconnaissance. Nanorobots: An emerging technology field creates robots whose components are at the scale of a nanometer. These robots allow precise interaction with nanoscale objects. Cooperative robotics: It is concerned with the coordinated control of teams of robots. Cooperative nanorobotics: It is concerned with the application to nanorobots (molecular level robots), with a difference in scale (small size, large numbers) and capabilities (self-replication).
Perception
It is vital for an autonomous mobile robot to acquire knowledge about its work environment and itself. This is achieved by means of sensors and subsequently extracting relevant information from those sensor’s measurements.
The use of sensors makes it possible to perform robot positioning and localization tasks. 83 They are also used for mapping and representation. 84 In addition, they are very useful in other robotic applications, such as object recognition. 85,86
The latest advances in sensoring and artificial intelligence are being used in speech recognition systems, which are very important to reproduce human capabilities.
Sensor classification
There are a great variety of sensors that can be used in a robot for data collection. They can be grouped into: Proprioceptive–exteroceptive Passive–active.
87
Proprioceptive sensors read values internal to the robot, such as motor speed, wheel load, joint angles, battery voltage, and so on. Exteroceptive sensors acquire information from the robot’s environment, such as distances, light intensity, and sound amplitude. Passive sensors measure ambient environmental energy entering the sensor, such as microphones, temperature probes, and Charge Coupled Device (CCD) or Complementary Metal Oxide Semiconductor (CMOS) cameras. Active sensors radiate energy into the surroundings and then measure the reaction. They can deal with more controlled interactions with the work environment, thus achieving greater performance, although they may suffer from interference between their own signal and external ones.
It is important to characterize the sensor’s performance using basic variables such as the dynamic range, power, resolution, linearity and bandwidth or frequency, sensitivity, error, accuracy, systematic errors, random errors, precision, and so on.
Types of sensors
The most common sensors used in robotics are as follows: Tactile sensors: These are designed to sense objects at a small distance with or without direct contact and are used to detect physical contact or closeness. They are usually able to detect forces and can show the exact position of an object, allowing the robot to control the position and the grasping force of the end-effector. Tactile sensors can also detect variations in heat. Force torque sensors: The robot uses a force torque sensor to know what force the robot is applying. Different robot tasks such as assembly, hand-guiding, teaching, and force limitation can be performed with this device. Encoders: To know the robot’s part position and speeds. There are a great variety (such as optical encoders, potentiometers, resolvers, inductive encoders, magnetic encoders, capacitive encoders). Infrared sensors: These are light-based sensors.
88
Ultrasonic sensors: These are sound-based sensors and are used as distance meters.
89
These sensors are designed to generate high-frequency sound waves and receive the echo reflected by the target. Sonar: This can be used primarily for object detection. This sensor offers high performance on land and in water. Active beacons: To help the robot navigate. There are two distinctive kinds of beacon systems: trilateration and triangulation. Accelerometers: To measure acceleration, from which velocity can be obtained by integration. Humanoid robots use accelerometers Gyroscopes: These are well-known and reliable rotation sensors, which measure angular velocities and orientation. Laser range finder: This is a device which uses a laser beam to generate highly precise distance measurements. The distance between sensor and target is measured by calculating the speed of light and the time it takes for emitted light to return to the receiver. Vision-based sensors: These process data from any modality and use the electromagnetic spectrum to produce an image. The two current technologies for devising vision sensors are CCD and CMOS.
90
Color-tracking sensors: These make it possible to detect and track color in the environment. Contact and proximity sensors: To measure the force of contact with the environment. Pressure sensors Depth sensors: They are used in object detection, scene reconstruction, 3-D inspection, and so on. Two elements must always be present in a depth sensor: an infrared (IR) projector and an IR camera.
Applications of these sensors can be seen, as a good example, in Mars Exploration Rover missions. The robots use autonomous passive stereo vision to create a local map of the terrain to be used for navigation. Two stereo cameras were mounted rigidly on a camera mast rather than a moving head to avoid failure. Stereo vision is a passive sensing technology, thus the sensor requires less power to operate than an active sensor that must emit a signal.
Sensors can also be seen as the robot control system’s window to the world so that no mobile robot can work without these devices and their software. Fields of recent expansion such as drones and automated driverless cars are impossible without sensors.
Cognition and control system
The mechanical structure of a mobile robot must be controlled to perform tasks and achieve its objectives. The control system involves three different pillars: perception, processing and cognition, and action. The perception system gives information about the environment, the robot itself, and the relationship between robot and environment. This information is processed, then the appropriate commands are sent to the actuators, which move the mechanical structure. Once the environment and the robot’s direction, destination, or purpose are known, the cognitive architecture of the robot must plan the path that the robot must take to achieve its objectives. Therefore, the cognitive level of the robot is the decision-making and execution part that the robot utilizes to achieve high-level objectives. Based on the information from the sensors and the robot’s objectives, the cognition and control system must decide how to act and what to do to achieve its objectives. Moreover, the control system is in charge of coordinating all the input data and planning the robot’s motion so that it can move accordingly. The robot may need a “cognitive” model. Cognitive models intend to represent the robot, the environment, and the manner in which they interact. Computer vision and pattern recognition are used to track objects. Mapping algorithms are used to build maps of the environment. Eventually, motion planning and other artificial intelligence algorithms might be used to determine how the robot should interact. For instance, a planner might determine how to attain a task without colliding with obstacles, falling over, and so on. In the next years, artificial intelligence is called to play an important role in the treatment of all the information gathered by the robot to give orders to the robot. Robots present nonlinear dynamics. Nonlinear control techniques take advantage of the system’s knowledge and/or parameters in order to reproduce its behavior. Nonlinear control, estimation, and observation lead to complex algorithms. One of the objectives of control is to track the robot’s position. A tracking error is defined in order to quantify the performance of the control, e = qd − q. The way in which this error is computed and tracked (the feedback frequency, the gains for the proportional and derivative errors, the residual steady error frequency, and so on) gives rise to many control strategies that are applied to mobile robots.
Depending on the properties analyzed (local stability, bifurcation of fixed points, phase diagrams, isoclines, attractors, and so on) and the way the nonlinear dynamics equations are tackled, the control strategies can be classified into (more details can be found in the study by Rigatos
91
: Global linearization–based control: These methods convert the nonlinear dynamics of the system into the equivalent linear state-space. The controllers use the state feedback while solving the associated state estimation problem. In turn, the global methods can be subclassified based on the theory of differentially flat systems and Lie algebra. Approximate linearization–based control: In these schemes, solutions to the problem of nonlinear control are achieved using local linear models (obtained at local equilibria). Local linear models must ensure controller stability. Parameters of local controllers should be selected to assure the robustness of the control loop to both external perturbations and to model parametric uncertainty. Lyapunov theory–based control: These methods try to minimize the Lyapunov functions so as to assure the asymptotic stability of the control loop. Lyapunov-based techniques have two main directions: the linearization method and Lyapunov’s direct method. The first provides the basis for using linear control methods. It states that a nonlinear system is locally stable if all the eigenvalues of its linear approximation are in the open left half plane and is unstable if at least one is in the open right half plane. Lyapunov’s direct method relies on the physical property that a system whose total energy (V(t)) is continuously being dissipated must eventually end up at an equilibrium point. However, it is not obvious how to choose the best V(t) function to represent the kinetic and potential energy of the system. The objectives of the control design and the constraints of the measurements result in the definition of the system states, which often guides the development of the Lyapunov function.
92
.
The best-known control strategies are described next. Computed torque control methods: A computed torque is defined using the second derivatives of the positions, the desired positions, and the mass matrix, expressed in a traditional manner with explicit gains for the proportional and derivative errors (feedback). Robust control methods: These methods are similar to computed torque control methods, with the addition of a robustifying feedback component that depends on an arbitrarily small positive design constant ϵ. Sliding mode control methods: Increasing the frequency of the controller can be used to improve the steady error of the system. Taken to the extreme, if the design parameter ϵ is set to zero, the controller requires infinite actuator bandwith and the state error vanishes. This discontinuous controller is called a sliding mode controller. Adaptive methods: Compared with the previous methods, knowledge of the exact robot dynamics is relaxed and this method uses a linear parameters assumption. These methods use estimation of the feedforward terms, thus reducing the requirement for high gains and high frequency to compensate for uncertainties/disturbance in the dynamic model. The computed torque in an adaptive feedforward controller can be designed as: Neural networks methods: These use function approximations. The advantage of function approximation is that the uncertainty does need to be modeled. The NN can approximate generic nonlinear continuous functions. Any continuous function can be expressed using activation functions and functional reconstruction errors. A variety of functions can be used as activation functions. Fuzzy logic methods: The fuzzy logic theory is used to deal with the imprecision and uncertainty inherent to perception systems. It also uses function approximations. It is possible to distinguish three types of fuzzy systems: Mamdani-type fuzzy systems, type-II fuzzy systems (this is a special case of the first type), and Takagi-Sugeno fuzzy systems. These methods also use a relaxed knowledge of the robot dynamics.
93,94
. Invariant manifold method: Using this method, the dynamic equation is broken down into its components, so that each coordinate has its own function. Zero moment point control: This is a concept associated with control and dynamics of legged locomotion, for example, for humanoid robots. It identifies the point around which the dynamic reaction force between the foot and the ground does not generate any torque, that is, the point where the total horizontal inertia and gravity forces is equal to zero. This concept entails that the contact patch is planar and has enough friction to keep the feet from sliding (see Asimo robot).
Navigation
The most important aspect in the design of a mobile robot is navigation skills. The objective is for the robot to move from one place to another in a known or unknown environment, taking into account the values of the sensors to achieve the desired targets. This means that the robot must rely on its other aspects, such as perception (the robot must use its sensors to obtain valuable data), localization (the robot must know its position and configuration), cognition (the robot must decide what to do to achieve its goals), and motion control (the robot must calculate its input forces on the actuators to achieve the desired trajectory). Most of the time, the mobile robot cannot take the direct path from its initial position to the final goal, which means that motion planning techniques must be used.
Mobile robot navigation is categorized into the following tasks: Generating a model of the world in the form of a map. Computing a collision-free trajectory from a starting position to a target position. Moving along the calculated trajectory, avoiding collision with obstacles.
Navigation skill
It is essential to provide enough information about the robot’s location so that it can navigate. Therefore, localization techniques are key to the navigation process. Besides, additional skills are required for mobile robot navigation. The first of these is trajectory planning. Given a map and an objective location, it involves obtaining the trajectory that the robot must follow in order to reach the objective location. Trajectory planning is a very important issue in robotics in general, when the robot must choose what to do over the long term to attain its objectives. The second skill is obstacle avoidance. This plays an important role in trajectory planning in order to avoid collisions.
The data from the sensors may modulate the robot’s trajectory for avoiding collisions. An important variety of techniques have proven to be effective for obstacle avoidance.
The calculated robot motion is both a function of the robot’s sensor readings and its target position and location regarding the target position. The obstacle avoidance algorithms relies on the existence of a global map and on the robot’s accurate knowledge of its location in relation to the map.
More complex algorithms are presented afterwards, considering recent sensor history, robot kinematics, and dynamics. 95 –99 .
In vision-based navigation, a robot is equipped with a local map and a path to follow. The relevant function of vision-based sensoring consists of “self-localization.” A robot is implemented with a series of images of the inner space. By comparing the camera images taken during navigation with the prerecorded images, the robot is capable out of finding its location. 100 For a survey on vision for mobile robot navigation, see DeSouza and Kak. 101
Localization and mapping
In order for the robot to navigate successfully, it must determine its position in the workplace. So localization together with perception and motion control are key issues in robot navigation.
Localization is closely related to representation. If an accurate GPS system could be installed on a robot, the localization problem would be solved. The robot would always know where it was. But at the moment, this system is not available or is not accurate enough to work with. In any case, localization implies not only knowing the robot’s absolute position on Earth but also its relative position with respect to a target.
The control system also plays a role. If the robot intends to reach a specific location, it needs an environment model or map so that it can plan a path to reach the target. This means that localization is a broad issue that includes not only determining the absolute position of the robot in space but also building a map and determining the robot’s position relative to the map. Therefore, sensors (perception system) are fundamental in the task of localization. Any inaccuracy and incompleteness of the sensor will affect the robot’s localization. Also, sensor noise and aliasing reduces the useful information picked. Uncertainty and error must be minimized. They must help in mapping the robot and its environment. 102 –104
Finally, it is by means of localizing on a map that the robot tries to recover its position and detect when it has reached at the target location. A key issue for map localization is representation.
A lot of representation techniques have been developed over the years, which have been used in path planning. 105 –109
In the literature, there are many techniques for map representation. 104
Nevertheless, main real-world characteristics are not well represented in the world maps. This is an ongoing line of research. The techniques need to identify and distinguish between permanent, static obstacles and moving obstacles. The real world is dynamic, so real obstacles can move. Estimating the motion vector of transient objects is still a research problem. Another challenge is that of wide open spaces such as parking lots, fields, and indoor atriums such as those found in conference centers. They set a difficulty due to their relative sparseness. A classic example involves occlusion by human crowds. Also the issue of sensor fusion must be addressed, as it strengthens the outcoming percepts far beyond that of any individual sensor’s readings.
The ideal scenario would be that the robot’s sensors together with the mapping strategy should immediately identify its particular location, uniquely and repeatedly. 110
Positioning
Exact knowledge of the position of a moving particle is a key issue in mobile robot applications. In seeking a solution, researchers and engineers have elaborated a diversity of systems, sensors, and methods for mobile robot positioning. Techniques and technologies used for positioning are as follows: odometry; inertial navigation; magnetic compasses; active beacons; global positioning systems; landmark navigation; and model matching.
For a review of these relevant mobile robot positioning technologies, see Borenstein et al., 111 where details of each category are given together with examples of existing technologies for each category. Another source of methodologies can be found in Gutmann et al. 112
Other methodologies are developed in earlier studies. 113,114
Map representation
The accuracy of the map should meet the accuracy, which the robot is working with. The precision of the map must also meet the accuracy and data kinds returned by the robot’s sensors. And it is important to remember that the complexity of the map representation influences the computational complexity of reasoning about mapping, localization, and navigation.
There are many techniques for creating a map representation. Some are closely related to path planning algorithms. The occupancy grid (quadtree) representation or a topological approach are two important techniques for map representation. A continuous-valued map is also one technique for a decomposition of the environment. A study about map representation can be found in literature. 92,115,116
Many map representation techniques have been used in path planning. A set of techniques are as follows: Probabilistic map–based localization Markov localization Kalman filter localization Monte Carlo localization Landmark-based navigation Globally unique localization Positioning beacon systems Route-based localization Autonomous map building The stochastic map technique Cyclic environments Dynamic environments
See Nourbakhsh 98 for more details in which the advantages and disadvantages about these algorithms and techniques are exhaustively discussed.
Path, trajectory, and motion planning
Path planning is concerned with finding the best path in order for the mobile robot to reach the target without collision, thus allowing a mobile robot to navigate through obstacles from an initial configuration to another configuration. The temporal evolution of motion is neglected. No velocities and accelerations are considered.
A more complete study, with broader objectives, is trajectory planning.
The trajectory planning entails to find out the force inputs (control u(t)) to move the actuators so that the robot follows a trajectory q(t) that enables it to go from the initial configuration to the final one while avoiding obstacles. It takes into account the robot’s dynamics and physical characteristics to plan the trajectory. In short, the temporal evolution of the motion is calculated as well as the forces needed to achieve that motion. Most of the techniques for path and trajectory planning are shared.
Both path planning and trajectory planning are part of a more comprehensive concept: motion planning (biped robots, 114 quadruped robots, 117 underwater robots, 118 –120 and drones 121 ).
Trajectory tracking and path following are also an important part of motion planning. They can also be considered part of motion control.
Over the years, numerous methodologies have arisen that attempt to solve the motion planning applied to mobile robots. The existing algorithms and techniques fall into four broad categories: “classical methods” “probabilistic methods” “heuristic planners” “evolutionary algorithms” “sensor-based planners”
Several authors also distinguish between online and off-line planners. 122
The divide between these two groups depends on the computer’s power or ability to solve the most demanding algorithm. As the years have passed and with advances in computers, many off-line techniques have turned into online ones. The main objective of these techniques is to find a solution, that is, a feasible path. Over time, they have been complemented by optimization techniques that have sought to minimize the distance traveled by the mobile robot. The earliest work on robot planning was carried out in the late 1960s and early 1970s (see Nilsson, 123,124 where the authors addressed the problem of finding the shortest path in large workspaces by introducing heuristic search techniques, Udupa, 125 and Lozano-Perez 126 ). The configuration space and its application to path planning were introduced by Lozano-Pérez. 127 That same year he introduced the method of approximate cell decomposition together with Brooks. 128 Moreover, the work carried out by Brooks, 129 Schwartz and Sharif, 130 Dubowsky and Shiller, 131 and Khatib 132 in the 1980s should not be forgotten. These contributions are part of what are known as “classical methods,” which were introduced and developed in the 1980s and 1990s. These methodologies include algorithms based on roadmaps (such as visibility graphs and the Voronoi diagram), potential functions, and cell decomposition. Khatib introduced potential functions. 132 Chatila introduced exact cell decomposition of the workspace in 1982. 133 Ó’Dúnlaing and Yap introduced a kind of Voronoi diagram in 1982. 134
Some of these methods presented problems. For example, cell decomposition required a lot of memory to analyze the workspace and gave rise to high computational complexities. One problem with artificial potential field methods is the existence of local minima in the potential field so that the planner could become trapped in local minima. New variants of these methods arose to cope with such problems, and during the 1990s, the so-called “probabilistic methods” emerged (“randomized methods” were developed). 135,136 The first planner to use randomization to escape from local minima was called randomized potential planner.
The probabilistic roadmap (PRM) planners are based on one-dimensional roadmaps in Q free (the set of collision-free configurations). Once a PRM has been built, the path planning problem is focused on figuring out paths to link q init and q final to the roadmap. This is a problem much easier than figuring out a path from q init to q final.
A PRM is a network of straightforward curved segments, or arcs, that meet at nodes. Each node accounts for a configuration. Every arc between two nodes corresponds to a collision-free path between two configurations. First, a set of random configurations is calculated to be used as the nodes in the network. Next, a local path planner is used to calculate paths that link pairs of configurations. For a specific set of nodes that correspond to configurations, the following step in creating the PRM is to check which pairs of nodes must be linked by a path. The most common approach is to attempt to link each node to its k nearest neighbours, with k being a parameter chosen by the user. Obviously, to define the nearest neighbours, a distance function is needed. (In LaValle and Kuffner, 137 the algorithm is based on rapidly exploring random trees, and inHsu, 138 it is based on randomized kinodynamic motion planning.) Other important planners can be found in Kavraki et al. 139,140
For a comparative study of PRM planners, see Kavraki et al. 139
Another group of planners are the “heuristic planners” or informed search strategy algorithms which include those based on graph search, such as: A*: This algorithm searches all possible paths to the target and identifies the one that has the smallest cost (shortest time, least distance travelled, etc.). From all the paths found, the algorithm selects the one or the ones that appear to lead most rapidly to the solution. A* works using weighted graphs: Starting from an initial node from a graph, it builds a tree of paths starting from that node, exploring the possible paths one step at a time, until one of its paths ends at the targeted node.
141
–143
Greedy search: This technique solves problems by searching for the locally optimal choice at each stage trying to find a global optimum. Usually, a greedy search algorithm does not produce the best solution, but nonetheless a greedy heuristic might produce locally optimal solutions that approximate a global optimal solution in the quickest possible time.
144
Dijkstra’s algorithm: This is an algorithm for finding the shortest paths between nodes in a graph, which may represent, for example, roadmaps or a discretized workspace. It was conceived by the computer scientist Edsger W. Dijkstra in 1956.
145
–147
D*: This technique determines a path starting from the goal and working back to the start using a slightly modified Dijkstra’s search.
148
These methods can guarantee completeness, efficiency, and optimality and can find a path faster than the classical ones.
The aforementioned techniques were successfully applied to new robotic systems that burst onto the scene in the 2000s, such as humanoid robots and space rovers.
And in the last two decades, “evolutionary algorithms” have been developed and applied to path and trajectory planning. Several of the most well-known are as follows: Genetic algorithms (GAs)
149
–153
: These are found on the fundamentals of natural selection and genetics. They combine survival of the fittest with randomized structured information to form a search algorithm that generates solutions to search problems. They use mutation, crossover, and selection as operator build possible paths. Particle swarm optimization (PSO): Developed by Kennedy and Eberhart in 1995.
154
The particle swarm concept comes from a simulation of a simplified social system that attempts to simulate the unpredictable motions of a flock of birds. PSO is very much alike the GA, in as much as the system gets started with a population of random solutions. It is unlike a GA, however, in that each potential solution is also assigned a randomized velocity, and the accomplishable solutions, called particles, are then making their way through the problem space. An application to mobile robotics can be seen in literature.
155
–157
Ant colony optimization: This method is part of the ant colony algorithms family, in swarm intelligence techniques, and it embodies metaheuristic optimizations. It was initially introduced in 1992 by Marco Dorigo. The first algorithm aimed to look for an optimal path in a graph, based on the behavior of ants looking for a path through their colony and a source of food. An application to mobile robotics can be seen in literature.
158
–161
Simulated annealing (SA)
For a chronological review of these path planning methodologies, see Masehian and Sedighizadeh. 165
Many authors have made a historical review of the above mentioned algorithms about motion planning over the years. Some examples include Isto in 1996, 166 LaValle and Hutchinson (1996), 167 Kavraki and Latombe in 1998, 140 Gupta and Del Pobil in 1998, 168 LaValle and Kuffner in 2000, 169 and so on, and a historical approach to GAs is housed by Abu-Dakka et al. 152
Many of the methods mentioned so far can be applied to trajectory planning.
Initially, those algorithms only considered the time needed to carry out the trajectory. Over the years, they have been perfected, trying to do without excessively restrictive hypotheses and adapting as much as possible to real systems. In addition, they try to optimize study parameters such as applied torque, energy consumed, overacceleration, and so on. Over the years, the algorithms have been upgraded and the analysis of the robotic system has evolved toward ones that are more realistic. One way of carrying out this is to analyze the whole behavior of the robotic system, which in turn leads us to optimize several of the operating parameters (time, torque, energy, distance) through the use of the suitable objective functions. Optimization criteria used up to nowadays can be sorted out as follows: Minimum time needed, which is related to productivity. Minimum jerk, which is related to the quality of work, accuracy, and equipment maintenance. Minimum energy consumed or minimum motor effort, both linked to savings. Hybrid criteria, for example, minimum time and energy.
Initial algorithms about trajectory planning tried to minimize the time needed to perform the mission. 170,171 In these studies, the authors forced smooth trajectories for the robot to follow them, such as spline functions.
Another way of taking up the trajectory planning was based on searching for jerk-optimal trajectories. Jerks are crucial for working with accuracy and without vibrations. They also affect the robot’s control and the wearing of mechanical parts. Jerk constraints were first introduced by Kyriakopoulos and Saridis. 172 See also Constantinescu and Croft. 173
Another different line to solve the trajectory planning problem is based on minimizing the torque and the energy consumed. An early example is found in Garg and Ruengcharungpong. 174
Energy minimization continues to be of interest in the field of automated manufacturing processes and robotics. 175
Later, new approaches appeared to generate the robot’s trajectories. The concept of using a weighted objective function to optimize the working parameters of the robot arose. 176,177
Finally, “sensor-based” planners must be cited. They have been used from the beginning. These planners mainly rely upon the robot’s sensors and yet they guarantee completeness. They have been upgraded over the years. For autonomous planetary motion planning, they are essential. The robot can move using sensors to locate itself and avoid collisions.
These planners overcome the limitations of off-line motion planning and they rely on knowledge acquired from sensor data in relation to the environment and the robot itself.
We must point out bug algorithms as sensor-based algorithms that are also used in obstacle avoidance. There are several kinds: bug1, bug2, and tangent bug. 178
In coming years, the robot cooperative work optimization to obtain minimum displacements while avoiding collisions will be more and more important and it will be related to good communication networks. Artificial intelligence will enhance cooperative robots performance.
Tracking planning
Tracking is very closely related to the control system. It is necessary to record how a mobile robot moves around. In many applications, mobile robots are required to follow a predefined trajectory. Trajectory tracking is a field of robotics that can be considered part of the motion planning problem. It can also be seen as a type of control problem which consists of planning and following a trajectory in the presence of noise and uncertainty.
The trajectory tracking problem is defined as finding a control law such that the difference between the planned trajectory and the real trajectory followed by the mobile robot must be zero. It seeks to determine the control inputs needed to follow, or track, a desired trajectory that has been previously planned for the mobile robot, while at the same time avoiding disturbances due to unmodeled dynamic effects as friction and noise. 179,180
To examine tracking in more detail, control system theory must be reviewed.
Obstacle avoidance
Collisions between the mobile robot and obstacles must be avoided during robot motion. Robot navigation is related to a mobile robot’s ability to move around the environment (known or unknown) to achieve a goal without hitting any obstacles.
The robot’s motion from its current location to the goal involves calculating a trajectory. The process needs a map, a goal location, and the robot’s current location using sensors or another location system. In addition, a good motion planner must be able to detect collisions between the robot and obstacles in the work environment so that the robot can change its trajectory or stop before a collision occurs.
Obstacle avoidance algorithms help prevent collisions. They involve obstacle detection and obstacle avoidance itself.
The algorithms to prevent collisions may be: Map-based: These algorithms depend on geometric models or topological maps of the environment. The robot has a model of the environment. By knowing its current location at each moment, it can detect collisions by calculating distances. In addition, there are many methodologies for modeling the environment. These methodologies result from path planning algorithms and the way they represent the environment, so they will ultimately determine the characteristics of the corresponding obstacle avoidance algorithm. Methods for computing the distance between the robot’s current location and the nearest obstacle are the key to obstacle detection and can be grouped into four approaches: space-time volume intersection, swept volume interference, multiple interference detection, and trajectory parameterization.
181
–183
Mapless
Distances can be obtained directly from the sensors so that the path planner can take them into account, first to detect obstacles and then to avoid collisions.
Range-based sensors (ultrasonic and laser rangefinders) are in essence well suited for the task of obstacle detection.
A review for path planning and obstacle avoidance can be found in the work of Kunchev et al. 184 A description of the most well-known methods for obstacle avoidance is outlined below 1 :
Bug algorithm
In the bug algorithm, the main concept is to track the contour of the obstacles found in the robot’s path and circumnavigate it. There are a number of modifications and adaptations of the bug algorithm, for example, the Tangent Bug. 185,186 One of the principal weaknesses of these kind of algorithms is that the robot’s behavior at each time is usually a function which only considers its most recent sensor readings. This may lead to unwanted although preventable problems in cases where the robot’s instantaneous sensor readings do not supply enough information to avoid collisions. Vector field histogram methods break this handicap by building a local map of the work environment around the robot.
Vector field histogram
This technique uses a 2-D histogram grid to model the environment, which is simplified to one dimension, the “polar histogram” built around the robot’s position at a certain instant. The sectors introduced in the polar histogram display the “polar obstacle density.” The guidance of the robot is monitored by selecting the sector with the smallest number of obstacles. The map modeled by the histogram grid is continuously renewed using the robot’s sensors with data related to the distance between the robot and obstacles. 95
Dynamic window approaches
The key idea is to choose the control in the velocity space of the robot. The robot’s trajectory is made of a “sequence of circular arcs.” Arcs are defined using a velocity vector (vi , ωi ), in which vi expresses the translational velocity and ωi denotes the rotational velocity; both variables reflect the search space. The search space is simplified to build a dynamic window, which considers the trajectory made by the circular arcs and defined by the velocity vector. The dynamic window restricts the admissible velocities to those that may be reached in a short period of time given the limited accelerations of the robot.
Vr = Vs ∩Va ∩Vd . The region Vr sited in the dynamic window is cut by the space of possible velocities denoted by Vs , the area Va in which the robot can stop and avoid collision, and the dynamic window represented by Vd . 187
Nearness diagram
The nearness diagram (ND) method utilizes a “divide and conquer” approach. The method splits the work environment into different areas to represent the location of obstacles. Observations prove that the ND method can avoid local minima successfully only when it is fully visible to the sensors. The ND method uses the behavior-based “situated activity” paradigm. This idea uses predefined groups of condition states consisting of different problems and their corresponding actions. When the method is run, the current state is determined and its corresponding action is carried out, as described in the study by Arkin. 188
Curvature velocity techniques
The curvature velocity method 189 considers the dynamic constraints of the vehicle, enabling it to move quickly in a dense environment. The velocity and acceleration constraints of the robot and the existence of obstacles modeled as circular objects are appended to a velocity space. Velocity space consists of translational and rotational velocities. The assumption is that the robot’s trajectory is related to arcs of circles c = ω/v. The velocity is chosen according to the objective function that is associated with the part of the velocity space that produces the physical constraints of the robot and the obstacles.
Potential field methods
The mobile robot is considered as a particle that submerged in a potential field created by the target and by the obstacles alleged in the work environment. The target creates an attractive potential, while each obstacle creates a repulsive potential. The robot motion is interpreted as the motion of a particle in a gradient vector field created by positive and negative electric particles. Moreover, gradients are interpreted as forces that attract the positively charged particles to a negative particle that works as the target. Obstacles are supposed to be positive charges that create repulsive forces on the robot, keeping it away. 117,132
For more techniques see Siegwart and Nourbakhsh. 1
Discussion and conclusions
The aim of this article is to provide a compact text that facilitates a global view of mobile robotics while synthesizing the given information. The main areas involved in this field are locomotion, perception, cognition, and navigation. The state of the art, trends, and novel applications are scattered though the article, and the most recent references are supplied for those readers who want to dip into this field.
Robotics in general and the mobile robotics in particular will continue with their evolution during the next years. Cognitive architecture, artificial intelligence, speech communication, and affective human–robot interaction will be increasingly incorporated into robots which are designed for many applications such as military defense and security, surveillance, dangerous work and moving in hazardous places, space exploration, and so on. Also many economic sectors will be influenced by these technologies (medicine, industry, agriculture, health care, underwater exploration, domestic service, and so on). Mobile robots will be perfected to revolutionize the world of the automotive sector (with AIVs), logistics and distribution, oceanic exploration, and household. Mobile robotics will be applied with greater and greater impact on the food industry, food processing, and pick and place applications, along with networking and collaborative work. Technological areas will continue their development.
Technological innovations such conversational skills, delivery drones, autonomous driverless cars, and smart factories that have robotic coworkers are already having a profound effect on the way industries function. Widespread adoption of advanced mobile technologies and new platforms and systems are expected.
The latest trend confirms that commercialization of automated cars due to technological advancement in mobile robotics is expected to drive the market over the next years and that open-source platforms together with reduction in sensoring prices is expected to boost demand for domestic mobile robots such as vacuum cleaners and lawn mowers.
Footnotes
Declaration of conflicting interests
2The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported by the Spanish Ministry of Economy and Competitiveness, which has funded the DPI2013-44227-R project.
