1 Introduction
The development of humanoid robots is a well-known and interesting research field in robotics. Humanoid robots are generally human-like and use bipedal locomotion. Existing humanoid robots have different capabilities, allowing them to be one of the most capable robots in various applications such as rescue, education, assisting, entertainment, etc. In addition, because of the high similarities of humanoid robots to humans, their vital role in future society is inevitable. Humanoid robots’ similarity to many robotics systems, besides their promising capabilities, enable them to be used in multi-robot applications (Albers et al., Reference Albers, Brudniok, Ottnad, Sauter and Sedchaicharn2007). Hence, humanoid robot development is an agenda in many research studies (Breazeal, Reference Breazeal2003; Fujita et al., Reference Fujita, Kuroki, Ishida and Doi2003; Tanie, Reference Tanie2003; Albu-Schäffer et al., Reference Albu-Schäffer, Haddadin, Ott, Stemmer, Wimböck and Hirzinger2007; Diftler et al., Reference Diftler, Mehling, Abdallah, Radford, Bridgwater, Sanders, Askew, Linn, Yamokoski and Permenter2011).
Most of the humanoid robots are generally able to walk bipedally in different environments with different abilities. Thus, each designed humanoid robot has different capabilities regarding their design aims (Taga et al., Reference Taga, Yamaguchi and Shimizu1991; Reil & Husbands, Reference Reil and Husbands2002; Huang et al., Reference Huang, Chew, Zheng and Hong2008; Wang et al., Reference Wang, Fleet and Hertzmann2010). In the recent decade, most of the introduced humanoid robots can walk stably on flat grounds, grass, and also some can walk on uneven environments. Moreover, some humanoid robots are designed and developed for climbing stairs, skiing, skating, and walking on a slope (Jeffers et al., Reference Jeffers, Auyang and Grabowski2015). As humanoid robots have a complex structure, more attention has been drawn to the design and control process of humanoid robots.
On the other hand, researchers rapidly developed and improved various software efforts. In a humanoid robot, omnidirectional walk aims to make humanoid robots autonomous. Locomotion, robot vision, and behavior control are the most critical and challenging software development efforts. In this regard, a vast variety of learning algorithms are proposed and utilized (Bäck et al., Reference Bäck, Kallio and Mäkelä2012; Wang et al., Reference Wang, Chaovalitwongse and Babuska2012; Di Nuovo et al., Reference Di Nuovo, Marocco, Di Nuovo and Cangelosi2013; Shukla et al., Reference Shukla, Tamba, Pandey and Sharma2014; Jafari et al., Reference Jafari, Saeedvand and Aghdasi2019). A humanoid robot’s height and weight are one of the critical features that influence the structure and behavior of the mentioned robots. This is related to the existing actuator technologies that can be used on humanoid robots that have some limitations for humanoid robot development considering actuators’ size, weight, and power consumptions along with their introduced torque, speed, and control precision. So, humanoid robot developers, in terms of software development still, are limited to humanoid robot hardware progress.
To develop humanoid robots and to encourage their developers and researchers, there are some formal international competitions such as FIRA competitions (Baltes et al., Reference Baltes, Tu, Sadeghnejad and Anderson2017), RoboCup Federation (International RoboCup Federation), and DARPA (Romay et al., Reference Romay, Kohlbrecher, Stumpf, von Stryk, Maniatopoulos, Kress‐Gazit, Schillinger and Conner2017). Regarding FIRA and RoboCup competitions’ recent rulebooks, humanoid robots can be categorized into two major sizes, including (1) child size and (2) adult size. The first one is also known as small-sized or kid-sized humanoid robots, and teen-sized humanoid robots are, in general, some lightweight robots generally having a height <140 cm. The main development reasons for child-sized humanoid robots are that they require low cost and fewer development efforts. Besides being light-weight, they are easy to maintain and require less development and test space. There are many developed humanoid robots at these ranges, and each one is designed with different purposes so far. Some of these robots are well-known platforms, and some are competitive or research robot platforms. For instance, DARwIn-OP (Ha et al., Reference Ha, Tamura, Asama, Han and Hong2011), DARwIn-OP3 (ROBOTIS OP2-OP3), NAO (Gouaillier et al., Reference Gouaillier, Hugel, Blazevic, Kilner, Monceaux, Lafourcade, Marnier, Serre and Maisonnier2009), igus (Allgeuer et al., Reference Allgeuer, Farazi, Schreiber and Behnke2015), and Poppy (Lapeyre et al., Reference Lapeyre, Rouanet, Grizou, Nguyen, Depraetre, Le Falher and Oudeyer2014) are considered successful robots in child-size category. The second category is adult-sized humanoid robots that are also known as big-sized, life-sized, full-sized, large-sized, and human-sized humanoid robots. Regarding the difficulties of adult-sized humanoid robot development, the main reason for studying this issue is achieving the general knowledge of manufacturing adult-sized humanoid robots. In the last two decades, the development of adult-sized humanoid robots increased dramatically, but still, their quantity is much less than child-sized humanoid robots. The well-known adult-sized humanoid robots are ASIMO (Sakagami et al., Reference Sakagami, Watanabe, Aoyama, Matsunaga, Higaki and Fujimura2002), THR3 (Toyota Global Newsroom), ATLAS (Kuindersma et al., Reference Kuindersma, Deits, Fallon, Valenzuela, Dai, Permenter, Koolen, Marion and Tedrake2016), REEM (Ferro & Marchionni, Reference Ferro and Marchionni2014), TORO (Englsberger et al., Reference Englsberger, Werner, Ott, Henze, Roa, Garofalo, Burger, Beyer, Eiberger and Schmid2014), Lola (Lohmeier et al., Reference Lohmeier, Buschmann and Ulbrich2009), and NimbRo-OP2 (Ficht et al., Reference Ficht, Farazi, Brandenburger, Rodriguez, Pavlichenko, Allgeuer, Hosseini and Behnke2018).
To the best of our knowledge, for humanoid robot development, few review papers just focused on humanoid developmental aspects (Oh et al., Reference Oh, Kim and Kim2005; Shukla et al., Reference Shukla, Tamba, Pandey and Sharma2014; Stasse & Flayols, Reference Stasse and Flayols2019). But, none of the review papers discussed and classified existing humanoid robots’ capabilities, abilities, and technologies. This classification allows humanoid robot researchers to present a general perspective of existing technologies for humanoid robots’ characteristics as much as available. So, to accelerate and enhance understanding, to have a broad comparative perspective of the developed humanoid robots, and to describe the essential aspects of humanoid robot development, we present a comparative category that introduces existing robots (including the different compositional robots) and state-of-the-art ones. In this regard, we also analyze the development aspects of humanoid robots. We perform this by classifying construction goals of each available humanoid robot based on the defined criteria. In addition, we discuss their shortcomings and also we describe a general roadmap of humanoid robots by extracting them from literature.
The rest of this paper is organized as follows. Section 2 presents an overview of humanoid robots’ structure, and their important characteristics. Section 3 provides a classification of humanoid robots by introduced applications and gives a technical comparison of open-platform humanoid robots by presenting weaknesses and strengths. Finally, Section 4 concludes the paper.
2 Humanoid robots
A humanoid robot’s main structure resembles the human body. Humanoid robots with a bipedal locomotion system offer different advantages over wheeled robots. Bipedal robots are more suitable for navigating in a complex workplace, and they are more adaptable (Silva & Machado, Reference Silva and Machado2012; Al-Shuka et al., Reference Al-Shuka, Allmendinger, Corves and Zhu2014). One of the challenges in the design and control of bipedal robots is to keep their stability during walking in different kinds of environments (Goswami, Reference Goswami1999). A remarkable argument of humanoid robots’ design is that different robots have various abilities and various specifically designed parts based on each robot’s developing purpose, working environment, and required activities. Hence, selecting a suitable design and components requires a rich knowledge of the application. Consequently, humanoid robots are considered complex and highly-integrated systems consisting of adaptable hardware design and hierarchical software architecture (Albers et al., Reference Albers, Brudniok, Ottnad, Sauter and Sedchaicharn2007).
In the rest of this section, we describe the structure of a humanoid robot from two general perspectives, including (1) hardware and software development aspects, and (2) development trends and evolution of each part of humanoid robots with examples.
2.1 Hardware design of humanoid robots
The mechanical design is the most important part of humanoid robot development. The mechanical structure and kinematics development of humanoid robots have been inspired by the human structure and kinematics. In other words, humanoid robot design is targeted to have similar capabilities of a human being (Nishiyama et al., Reference Nishiyama, Hoshino, Suzuki, Nakajima, Sawada and Tachi1999).
Regarding the mentioned requirements, developing a humanoid robot platform would be a demanding task, for which the existence of a professional team of experts is apparent. To overcome this problem, some humanoid robot development companies have been established. So, humanoid robot development in commercial sight is also considered so that several companies developing such robots are gaining money-oriented benefits by manufacturing various types of open-platform or commercial humanoid robots. Progress in this field, beside the financial virtue, has a high scientific satisfaction that speeds up the development of these robots. Generally, this kind of robots is designed to eliminate hardware efforts for researchers. Hence, if developers use them, it can speed up their research projects. In this regard, the most famous existing humanoid robots include DARwIn-OP, Open-HRP (Allgeuer et al., Reference Allgeuer, Farazi, Schreiber and Behnke2015; Ficht et al., Reference Ficht, Farazi, Brandenburger, Rodriguez, Pavlichenko, Allgeuer, Hosseini and Behnke2018), Aldebaran Nao (Gouaillier et al., Reference Gouaillier, Hugel, Blazevic, Kilner, Monceaux, Lafourcade, Marnier, Serre and Maisonnier2009), iCub (Metta et al., Reference Metta, Sandini, Vernon, Natale and Nori2008; Metta et al., Reference Metta, Natale, Nori, Sandini, Vernon, Fadiga, Von Hofsten, Rosander, Lopes, Santos-Victor and Bernardino2010), NimbRo-OP (Allgeuer et al., Reference Allgeuer, Farazi, Schreiber and Behnke2015; Ficht et al., Reference Ficht, Farazi, Brandenburger, Rodriguez, Pavlichenko, Allgeuer, Hosseini and Behnke2018), etc. In Figure 1, some of the lightweight open platforms of humanoid robots are illustrated. Based on this figure, ARC, Poppy, DARwIn-OP, igus, and iCub are open-platform humanoid robots, in which ARC, Poppy, and igus are fully 3D-printed robots.
Small-sized humanoid robots for research purpose. From left to right: ARC (Saeedvand et al., Reference Saeedvand, Aghdasi and Baltes2018), Poppy (Lapeyre et al., Reference Lapeyre, Rouanet, Grizou, Nguyen, Depraetre, Le Falher and Oudeyer2014), DARwIn-OP (Ha et al., Reference Ha, Tamura, Asama, Han and Hong2011), igus (Allgeuer et al., Reference Allgeuer, Farazi, Schreiber and Behnke2015), NAO (Gouaillier et al., Reference Gouaillier, Hugel, Blazevic, Kilner, Monceaux, Lafourcade, Marnier, Serre and Maisonnier2009), Surena mini (Nikkhah et al., Reference Nikkhah, Yousefi-Koma, Mirjalili and Farimani2017), and iCub (Metta et al., Reference Metta, Natale, Nori, Sandini, Vernon, Fadiga, Von Hofsten, Rosander, Lopes, Santos-Victor and Bernardino2010)

Although many successes have been achieved by humanoid robot development companies, among which Boston Dynamics is a remarkable example (Wang et al., Reference Wang, Fleet and Hertzmann2010), still some unfavorable features have been seen. However, the most obvious is that humanoid robots still suffer in terms of mechanical aspects. An additional downside may be that researchers have been restricted to use specific hardware structure.
Understanding the differences between existing humanoid robots requires rich knowledge about humanoid robots, and it is a challenging issue. Hence, it has been attempted to clarify this by describing the features and characteristics of each robot. In Table 1, we present the comparison of humanoid robot specifications. In this table, we show a general perspective and classification of existing humanoid robots’ characteristics.
Important hardware specifications of well-known humanoid robots

In Table 1, the important hardware specifications of state-of-the-art humanoid robots are demonstrated. As shown in this table, robots are classified into two sizes as child size and adult size. Each joint of a humanoid robot has some parameters that determine the state of a physical system, such as the degrees of freedom (DOF). The total number of independent displacements or aspects of motion is equal to the number of robot’s DOF. A humanoid robot includes torso, hip, head, neck, two arms, hands, legs, and feet, and each joint in a humanoid robot can be rotated in three orthogonal axes in maximum as roll, pitch, and yaw (Figure 2).
Schema of a general humanoid robot structure with movement directions of joints

The design and construction is an important part of humanoid robot development. There are few commonly used approaches to produce their parts after the designing step, including laser cut, water cut, CNC, 3D printing, etc. The 3D printing technology is one of the most recent and affordable ones. Hence, as shown in Table 1, some developed humanoid platforms are created by 3D printing materials to have an affordable and lightweight robot structure. In Table 2, the total number of DOF in state-of-the-art humanoid robots along with each part’s DOF are shown.
Humanoid robots’ DOF classified into two robot sizes

Regarding the number of DOF shown in Table 2, a humanoid robot requires at least 20 DOFs. A critical trend, in this table, is that generally when increasing a robot’s DOF, its size increases too. Also, a stronger processing unit and more power are required. Thus, this ultimately leads to an increase in the cost.
2.1.1 Humanoid robot actuators
According to the importance of the control system on humanoid robots’ locomotion and its relation to the robot’s joints and corresponding actuators, in the last century, different types of joint types have been developed (e.g., linear, revolute, sliding, or spherical). Spherical joints are one of the common joint types in many systems, but they possess multiple DOF; therefore, they are more challenging to control. Spherical joints are generally hydraulic, pneumatic cylinders or linear electric actuators. Revolute joints are rotary, and although hydraulic and pneumatic rotary joints are common, most revolute joints are electrically driven by stepper motors or servomotors.
Common successfully used servomotors in humanoid robots are the Dynamixel motor seriesFootnote 1. However, hydraulic actuators can make higher torque than an electric motor with the same size (Jung et al., Reference Jung, Lim, Bae, Lee, Joe and Oh2018). As an example, this is shown on the released videoFootnote 2 of the latest version of an Atlas humanoid robot by Boston Dynamics. With this actuator technology, Atlas is able to leap over obstacles nimbly and spring up higher levels set out in a warehouse-like space (Singler, Reference Singler2019). Thus, using hydraulic actuators can be an excellent choice to be free from insufficient joint torque problems if we ignore their high cost.
On the contrary, most robots that use electric motors (e.g., DRC-HUBO+) suffer from sufficient joint torque. To solve this problem and to deal with hydraulic actuators’ cost, a harmonic drive is recommended. A harmonic drive uses several motors simultaneously for each joint to produce more torque. However, regarding the required different mass and design constraints, it is not suitable for all types of joints in some actuators. For instance, a water-cooling system is required to increase the performance of the motor and prevent damage by raising the temperature (Hwang et al., Reference Hwang, Lee, Karng and Kim2008; Hochberg et al., Reference Hochberg, Dietsche and Dorer2013). One of the successful humanoid robots that can increase its joint torque via the water-cooling system is the Sweaty humanoid robot using a solution similar to sweat in humans (Schnekenburger et al., Reference Schnekenburger, Scharffenberg, Wülker, Hochberg and Dorer2017). Beside the liquid-cooling systems, there are air-cooling systems such as HUBO+ with fewer problems along with other challenges (Jung et al., Reference Jung, Lim, Bae, Lee, Joe and Oh2018).
2.1.2 Humanoid robot’s processing units
In addition to their mechanical structure, humanoid robots are equipped with one or a few processing units. Generally, selecting the electronic components in humanoid robots is based on the target application, including being autonomous or remote, robot’s missions, cost of related components, etc. Most of the existing robots are equipped with a wide range of processing units. In the recent decade, new technologies of small processing units are introduced, and most of the humanoid robot developers tend to equip their humanoid robots with different kinds of small processing units such as mini PCs (especially the robots meant for competition purpose) (Allali et al., Reference Allali, Deguillaume, Fabre, Gondry, Hofer, Ly, N’Guyen, Passault, Pirrone and Rouxel2016; Huan et al., Reference Huan, Dongdong, WenXing and Rong2016; Saeedvand et al., Reference Saeedvand, Jafari, Vahid, Arash and Abbaszadeh2017; Ficht et al., Reference Ficht, Farazi, Brandenburger, Rodriguez, Pavlichenko, Allgeuer, Hosseini and Behnke2018). On the other hand, in addition to the hand-made controlling boards, commercial controlling boards are used extensively. In this way, Raspberry Pi boards (Mejías et al., Reference Mejías, Herrera, Márquez, Calderón, González and Andújar2017), ARM-based boards (Almubarak & Tadesse, Reference Almubarak and Tadesse2017), compatible Arduino boards (Al-Busaidi, Reference Al-Busaidi2012), or off-board computing controls (Khokar et al., Reference Khokar, Beeson and Burridge2015) are commonly used on humanoid robots.
2.1.3 Humanoid robot sensors
In order to increase robot interactions in the environment and achieve powerful sensors, there is a wide variety of existing studies. Nonetheless, robot sensing systems are still limited, and it might sound far-fetched to achieve a human-like sensing system (Dahiya et al., Reference Dahiya, Metta, Valle and Sandini2010). Some important sensors used in humanoid robots are camera sensors, laser scanners, tactile sensors, pressure sensors, and inertial measuring units (IMUs), each one of which has a wide variety of open challenges for big companies to improve their performances. For instance, recently, the capability of tactile sensors in robots has been improved, and the result is many touch sensors exploring nearly all modes of transduction (Zhang & So, Reference Zhang and So2002; Weiss & Woern, Reference Weiss and Woern2004; Schmidt et al., Reference Schmidt, Maël and Würtz2006).
According to the bipedal nature of humanoid robots, the most important sensor in humanoid robots is IMU. An IMU is a sensor that measures and reports a body’s specific force, angular rate, and the magnetic field surrounding it using a combination of accelerometers and gyroscopes and also magnetometers. On humanoid robots, the IMU usually is attached to the upper body and measures the angles and angular velocities against the ground in sagittal and frontal planes (Cho et al., Reference Cho, Kim and Oh2011). The produced data from IMUs firstly are arranged through filtering algorithms, then walk engines are used for development (Saeedvand et al., Reference Saeedvand, Aghdasi and Baltes2018).
Humanoid robots use some ranges of sensors to support path planning, mapping, and localization tasks in uncertain and dynamic environments. In this way, ultrasonic (Dutta & Fernie, Reference Dutta and Fernie2005), infrared (Abrate et al., Reference Abrate, Bona and Indri2007), laser scanner (Cheng et al., Reference Cheng, Shaw, Palen, Larson and Hu2001; Duran et al., Reference Duran, Althoefer and Seneviratne2003), or camera-based vision (Sabe et al., Reference Sabe, Fukuchi, Gutmann, Ohashi, Kawamoto and Yoshigahara2004; Lin et al., Reference Lin, Hu, Shih, Huang and Kuo2019) are employed. There are many unresolved issues in the case of robot vision, including walking visual guidance (Kim et al., Reference Kim, Park, Lee and Oh2005), remote meeting (Morita et al., Reference Morita, Mase, Hirano and Kajita2007), stereo vision (Gutmann et al., Reference Gutmann, Fukuchi and Fujita2004), etc.
2.1.4 Humanoid robot power supply
Power supply to a bipedal humanoid robot is usually provided by portable and rechargeable battery packs. Also, in some cases, some portable generators are used (Kuindersma et al., Reference Kuindersma, Deits, Fallon, Valenzuela, Dai, Permenter, Koolen, Marion and Tedrake2016). Rechargeable batteries have different characteristics that are commonly used in mobile robots. The widely used battery type on humanoid robots is Li-PO (lithium-polymer), which has several advantages over other types of battery series, such as higher energy density against thinner size, safe performance, high discharge rate, fast charging period, and withstanding high-frequency charge–discharge cycle ability (Arvin et al., Reference Arvin, Samsudin and Ramli2009). Based on the mentioned hardware features and specifications of humanoid robots, Table 1 presents the sizes of robots.
2.2 Software architecture of humanoid robots
Like other types of robots, developed humanoid robots consist of different software development aspects, and most of them are common, except controlling the robot’s bipedal walk. For developing humanoid robots, a wide variety of programming languages and platforms are existing. To deal with the diversity problem and have a unification along with faster implementation process, the Robot Operating System (ROS) is introduced (Schmidt et al., Reference Schmidt, Maël and Würtz2006; Quigley et al., Reference Quigley, Conley, Gerkey, Faust, Foote, Leibs, Wheeler and Ng2009). ROS is a set of software libraries and tools for researchers to build their desired robot applications. In the last decade, different ROS packages for humanoid robots and their actuators have been introduced, which aim to reduce software development efforts (Zhang & So, Reference Zhang and So2002). Thus, most of the humanoid robots focus on being completely or partially compatible with the ROS (Zhang & So, Reference Zhang and So2002). However, despite some developers preferring to use other platforms to develop humanoid robots, using ROS has additional advantages over other platforms. Nowadays, most of the main and sub-processors are supported by ROS. In addition, most of the sensors are ROS-compatible, which means there are some packages that developers can use without much software development efforts. ROS is supported by very useful simulators such as open-source Gazebo (Koenig & Howard, Reference Koenig and Howard2004; Cho et al., Reference Cho, Kim and Oh2011). As a result, humanoid robot researchers can use shared simulations of existing humanoid robots or simulate and control their robots in robust simulators using ROS.
In this section, firstly, we describe the common software development aspects in humanoid robots, including (1) walk control, (2) vision and (3) behavior control. Then we introduce and classify state-of-the-art humanoid robots with their pros and cons.
2.2.1 Walk control
A humanoid robot should be able to walk omnidirectionally on different surfaces at different speeds. The purpose of omnidirectional walking is to achieve reliable, versatile, and dynamic locomotion for a robot. This enables the humanoid robot to perform complex walk patterns in different environments (Kuindersma et al., Reference Kuindersma, Deits, Fallon, Valenzuela, Dai, Permenter, Koolen, Marion and Tedrake2016). However, in some scenarios and harsh environments, omnidirectional walk control is challenging. For instance, in rescue scenarios in disaster environments, robots are required to have premium walking ability around obstacles and through narrow paths. Also, this ability needs to analyze the full kinematics of humanoid robots and to implement a robust walk engine (Wang et al., Reference Wang, Fleet and Hertzmann2010). Humanoid robots’ bipedal walking can be characterized as open-loop and closed-loop walk engines (Saeedvand et al., Reference Saeedvand, Aghdasi and Baltes2018). Different walk engines can be generated by different walking stability criteria involving whether they utilize feedback from IMU or not. In Figure 3, highly developed humanoid robot in terms of dynamic bipedal walking and control are shown.
Some well-developed humanoid robots in terms of dynamic bipedal walk and control. From left to right: Honda Asimo, NimbRo-OP2X, Toyota THR3, Boston Dynamics Atlas, DLR-TORO

There are different stability criteria of humanoid robot walking. The first walking criterion is the position of center of mass (COM) and center of pressure (COP) in a humanoid robot’s body. A robot is considered stable if its COM or COP is within the convex hull of the foot support area (Pratt & Tedrake, Reference Pratt and Tedrake2006; Wang et al., Reference Wang, Chaovalitwongse and Babuska2012). The second criterion is the quasi-dynamic walking, which is based on the concept of zero moment point (ZMP) (Vukobratovic et al., Reference Vukobratovic, Frank and Juricic1970). ZMP is a point on the ground where the results of ground reaction forces act. Also, making the ZMP of a bipedal robot that stays within the convex hull of the foot support area during walking causes a stable gait (Wang et al., Reference Wang, Chaovalitwongse and Babuska2012). The third criterion is the dynamic walk that is based on the concept of passive dynamic walking (PDW) (Wang et al., Reference Wang, Chaovalitwongse and Babuska2012). To implement a successful walk by model-based control approaches, firstly, the kinematics and the dynamics of a bipedal robot, as well as its environments, are precisely modeled. Then, a walk engine is defined. Afterward, the absolute Cartesian position of the robot can be calculated for the robot over time.
2.2.2 Vision system
One of the most important sensors for perception is the camera. Also, to extract information from the captured images, real-time robot vision algorithms are mandatory. Humanoid robots use both monocular and stereo vision systems. In a monocular vision system, it is known that the system cannot provide accurate information about the environment. This is because of the linear mimesis problem of complete motion pattern from incomplete observations (Lee & Nakamura, Reference Lee and Nakamura2007). A stereo vision system consists of two cameras usually equipped with a controller module for stereo processing. Using the stereo vision system can enable the robot to measure the distance of objects, to detect the floor, and to generate a path for walking around obstacles (Sabe et al., Reference Sabe, Fukuchi, Gutmann, Ohashi, Kawamoto and Yoshigahara2004; Pashazadeh & Saeedvand, Reference Pashazadeh and Saeedvand2014). In Table 3, a general comparison between state-of-the-art humanoid robots’ vision systems is shown.
Comparison of humanoid robots in vision system equipment

2.2.3 Behavior control
Another critical issue proposed in the field of humanoid robot is behavior control. This is one of the challenging parts of the robotic field. A humanoid robot’s behavior control can be categorized into autonomous, semi-autonomous, or remote controlling approaches.
In terms of autonomous and semi-autonomous behavior control systems, researchers widely studied different approaches and algorithms within the artificial intelligence context (Allgeuer & Behnke, Reference Allgeuer and Behnke2018). Generally, in simple robots, some simple heuristic algorithms (Mac et al., Reference Mac, Copot, Tran and De Keyser2016) provide more fruitful results, but in complex tasks, normally an intelligent decision-making system is designed and utilized (Duguleana & Mogan, Reference Duguleana and Mogan2016). One of the most important research directions in autonomous and semi-autonomous humanoid robot behavior control systems is path planning, footstep planning, and navigation. Path planning and navigation in autonomous humanoid robots is a promising research domain due to extensive applications (Mac et al., Reference Mac, Copot, Tran and De Keyser2016). Path planning in humanoid robots is to find an optimal sequence of actions that causes the robot to walk from the start point to the goal location without colliding with obstacles.
Since bipedal robots have a unique ability to step onto or over obstacles in a bumpy environment, they can cross the obstacles which sometimes are even difficult for wheeled mobile robots (Chestnutt et al., Reference Chestnutt, Lau, Cheung, Kuffner, Hodgins and Kanade2005). On the other hand, some state-of-the-art humanoid robots can climb different kinds of stairs and ladders (Sakagami et al., Reference Sakagami, Watanabe, Aoyama, Matsunaga, Higaki and Fujimura2002). Thus, the development of path planning and footstep planning algorithms in humanoid robots has particular importance. Because of this, the decision making (DM) process in humanoid robots is more complicated (Jafari et al., Reference Jafari, Saeedvand and Aghdasi2019). While several powerful artificial intelligence techniques have been proposed to solve path planning and navigation of humanoid robots, there has been no completely suitable solution at dynamic environments.
In terms of remote-controlled robots, although most robots’ walk engines are implemented separately, some tasks require very complex DM systems that existing algorithms often are unable to cover. Thus, performing tasks by remote control policy is a necessity so far (e.g., emergency operations in disaster environments). In consideration of these problems, the Defense Advanced Research Projects Agency (DARPA) has developed robotic systems to tackle these issues (Romay et al., Reference Romay, Kohlbrecher, Stumpf, von Stryk, Maniatopoulos, Kress‐Gazit, Schillinger and Conner2017).
3 Humanoid robots’ classification based on applications
In the last decades, most developed humanoid robots have been designed for general proposes. However, some developers equipped their humanoid robots based on specific applications. To reveal this issue, we show a broad and comprehensive classification of existing humanoid robots’ applications in four categories, including (1) service, (2) research and development, (3) competitions, and (4) high-risk environmental applications (see Figure 4).
Categories of humanoid robots based on applications

3.1 Competitions
The most attractive category of applications for humanoid robots belongs to the competitive purpose. The main purpose of robotic competitions is to define some benchmark problems within a predefined roadmap to create long-term progress. This encourages developers to assess their developed humanoid robots’ performances and outputs at a formal competition. There are few formal robotic competitions with different challenges. The most important ones are FIRA (Baltes et al., Reference Baltes, Tu, Sadeghnejad and Anderson2017), RoboCup (International RoboCup Federation), and DARPA (Krotkov et al., Reference Krotkov, Hackett, Jackel, Perschbacher, Pippine, Strauss, Pratt and Orlowski2017) competitions. These competitions include computational leagues organized according to their special rule books that are rapidly updated. Also, in these competitions, current challenges are modified, or new challenges are added to their rule books. In the rest of this section, the mentioned competitive environments are examined.
FIRA: The Federation of International Robot Sports Association (FIRA) provides a competitive environment to develop humanoid robots. The main focus of FIRA is on soccer robots that consist of simulation league, wheeled robot league, and bipedal humanoid league. According to FIRA rules, humanoid robots are designed as multi-event humanoid robots; for this reason, it heavily focuses on versatility, flexibility, and robustness of the robot’s hardware and software. Three critical areas of research unique to humanoid robots in FIRA involve active balancing, complex motion planning, and human–robot interaction. In order to reduce the cost of participation, mostly a single robot is considered (Baltes et al., Reference Baltes, Tu, Sadeghnejad and Anderson2017). HuroCup is one of the important leagues in FIRA. As a benchmark problem, the goal of HuroCup league is to develop humanoid robots that can perform several tasks in complex environments (robots’ Olympics). These tasks include climbing, lifting and carrying, long jump, marathon, obstacle run, sprint, playing basketball, united soccer, and weightlifting (Federation of International Sports Association (FIRA)). DARwIn-OP is a widely used and successful platform that is an active participant in FIRA competitions. The main reasons that participants prefer DARwIn are lower cost and better adaptability to FIRA rules and demand.
RoboCup: This robotic soccer game is an excellent example of a task that can be both served as a benchmark problem and encourages both scientists and the public (Anderson et al., Reference Anderson, Baltes and Cheng2011). RoboCup has a range of soccer competitions organized by size and physiology for humanoid robots. Also, it introduces outstanding challenging problems for the robotics community. RoboCup arguably makes reasonable efforts through organizing its various competitions by introducing a robotic soccer team beating the best human team by 2050. Based on the size of humanoid robots, the RoboCup rulebook introduced three main categories of kid-sized and adult-sized humanoid robots (Baltes et al., Reference Baltes, Gerndt, McGill and Sadeghnejad2016). The distinctive features of these categories are shown in Table 4.
Distinctive features of main categories of kid-sized and adult-sized robots shown in RoboCup

The RoboCup, besides the humanoid soccer league, involves another humanoid soccer league using the same type of robots. This league is named the Standard Platform League (SPL). In SPL, all teams compete with identical and autonomous robots. The current standard platform used is NAO, built by Soft Bank Robotics.
DARPA: Participants in the DARPA Robotics Challenge (DRC) are particularly interested in tasks related to disaster relief. This includes walking outdoors over irregular terrain and maintaining stability while applying forces to the environment such as cutting through a wall with a power tool (Diftler et al., Reference Diftler, Culbert, Ambrose, Platt and Bluethmann2003; Martin et al., Reference Martin, Ambrose, Diftler, Platt and Butzer2004; Atkeson et al., Reference Atkeson, Babu, Banerjee, Berenson, Bove, Cui, DeDonato, Du, Feng and Franklin2015; DeDonato et al., Reference DeDonato, Dimitrov, Du, Giovacchini, Knoedler, Long, Polido, Gennert, Padır and Feng2015). In Table 5, we show a general comparison between state-of-the-art humanoid robots in terms of applications.
Comparison of state-of-the-art humanoid robots in terms of applications

3.2 Service
Service is an interesting application for humanoid robots. This application is created by valuable aims and is defined to cover several tasks, including service processes in the home, education, cognitive, medical, simple works (human–robot interaction) and entertainment (Kawamura et al., Reference Kawamura, Wilkes, Pack, Bishay and Barile1996). Service is one of the ongoing applications for humanoid robots, which developers are rapidly working on. Service is limited to hardware and control progress of humanoid robots nowadays, but will play a vital role in humanoid robot development in the future.
3.3 High-risk environments
Following a disaster, the environment would be risky, costly, inefficient, or impossible for human missions. In this vein, developing humanoid robots with high adaptability with designed environments is one of the main goals of researchers. DRC is one of the founders of this development for disaster situations. Nuclear management, mine, rescue, astronavigation and task allocation are some of the danger missions where humanoid robots can be used in peaceful and constructive aspects (Atkeson et al., Reference Atkeson, Babu, Banerjee, Berenson, Bove, Cui, DeDonato, Du, Feng and Franklin2015; Saeedvand et al., Reference Saeedvand, Aghdasi and Baltes2019).
4 Conclusion
In the last decades, the development of humanoid robots became one of the most challenging and interesting fields in robotic research. All existing humanoid robots have been designed for various applications with different characteristics, abilities, and equipment. Humanoid robot development is extensively expanding. Hence, in this review, in addition to describing the development process and requirements, we described and classified existing humanoid robots’ characteristics and applications. In the last decade, dramatic progress at humanoid robot development was noticeable. However, the major limitation in humanoid robot development relies on current actuator technologies. In this regard, some developers designed and utilized new hydraulic actuators, but still, they are expensive and not available for general use. As a roadmap for humanoid robot development in the future, a knowledge of different fields, such as artificial intelligence, is necessary to improve robots’ mechanical abilities, including actuators.
Acknowledgments
This work was financially supported by the Chinese Language and Technology Center of National Taiwan Normal University from The Featured Areas Research Center Program within the framework of the Higher Education Sprout Project by the Ministry of Education in Taiwan, and the Ministry of Science and Technology, Taiwan, under grants nos. MOST 108-2634-F-003-002, MOST 108-2634-F-003-003, and MOST 108-2634-F-003-004 (administered through Pervasive Artificial Intelligence Research Labs), as well as MOST 107-2811-E-003-503. We are grateful to the National Center for High-Performance Computing for facilities to conduct this research.








