Mr Daniel Sidobre

Mr. Youcef Mezouar Mrs Jingrui Zhang

Mr Pushparaj

Dauphin Geneviève

Mr Tanguy

Ould Belkacem

Bouamama

Jing Bai

Youwei Dong

Xing Chu

Wei Jiang

Thanh Binh Do

Kinematic Constraints Dynamic Constraints

Keywords: mobile manipulator, kane's method, maximin nsga-ii, redundancy solving, motion planning, trajectory tracking

Avant de s'agrandir au dehors, il faut s'affermir au dedans.

INTRODUCTION

Since last century, many industrial manipulator systems have been used to do some repetitive tasks with high speed and high precision. However, their task policies and control inputs are normally predefined in a structured environment. In addition, they are usually fixed robotic manipulators with limited workspaces and have no interaction with human beings.

Nowadays, more and more service robots are being introduced for personal assistance, entertainment, surgery, agriculture, military, etc. Different from traditional robotic manipulators in industry, services robots are required to adapt to different environments, to interact with human beings, to make decisions independently, etc. There exist many services robots in the market, for example sweeping robots, entertainment robots, accompany robots, guidance robots, servant robots, etc. which, however, are either single-functional, or inflexible, or non-programmable, or non-interactive. Very often, they are too specialized or not intelligently autonomous, which is not practical for non-expert users. In addition, according to the world population report, aging population is increasing continuously and has become a global phenomenon, and the percentage of people with disabilities increases with people's age. As a result, the demand of the personal assistive devices and health caring is rising. Thus, the study of the multi-functional, completely autonomous and sustainable service robots is still a hot research field.

In order to meet various service demands, personal assistant robots are required to have dexterous manipulability abilities. Humanoid mobile manipulator systems are of great interests due to their human-like elegant appearance, dexterous moving and manipulation abilities over the traditional mobile vehicles and fixed manipulator robotic systems. Therefore, we designed a hyper redun-INTRODUCTION dant humanoid non-holonomic mobile dual-arm manipulator system (MDAMS, see Fig. 2.1) and constructed a virtual prototype for virtual validation in ADAMS (see Fig. 2.3). The designed robot MDAMS has up to 56 degrees of freedom (DoFs) with one mobile platform, one moving body and two arm-hand subsystems. It has a wide workspace due to the mobile platform and can execute various tasks due to the moving waist, two redundant arms and two dexterous hands. The designed humanoid is expected to be semi or fully autonomous and can imitate humans with cognitive shock-free human-like behaviors. Specifically, it is required to navigate in standard domestic environments which consist of known and unknown, static and dynamic obstacles including human beings. It should be able to provide assistance tasks like cleaning, washing, serving, sit-down and stand up helping, and to interact with other entities like human beings.

However, implementing such a complex humanoid mobile manipulator system is very challenging. The first challenge comes from the construction of kinematic and dynamic models of the high DoFs system. It requires considering the non-holonomic mobile platform, the moving waist and two arm-hand subsystems at the same time. The second challenge comes from the task policies design and motion planning meeting human expectation. In practical applications, one given task is often composed of multiple subtasks and each subtasks requires perfect motion planning. The motion planning can happen in joint space or in task space. However, due to the high redundancy, the positionorientation of mobile platform and the configuration of upper body manipulator of the designed MDAMS can be quite different for the same task which is very challenging. In fact, human beings always know where to stand and how to use their two arm-hand subsystems to accomplish tasks under multiple constraints. Therefore, the robot is expected to have similar autonomous abilities to conduct human-like activities and complete personal assistant tasks in dynamic and complex environments. The third challenge comes from motion tracking and robot control. There are uncertainties, such as modeling uncertainties, the disturbances and uncertainties from environments and hardware systems to be dealt with for real implementation. Other problems like the coupling between mobile platform and upper body manipulator system, redundancy and singular-ity problem, collision avoidance, on-line motion planning and control, etc. are all of great difficulty.

This thesis is a part of the collaboration between Prof. A. Rahmani (Centrale Lille) and Prof. Q. Zhan (BUAA) in the LIA 2MCSI project. The humanoid mobile manipulator can be used to complete various home services and for elderly and disabled caring. Meanwhile, multi-robot systems have potential applications in tasks which require cooperation of multiple robots. Under this background, our research team is currently focusing on investigating humanoid mobile manipulator systems and is committed to the control of a group of mobile robots to achieve greater flexibility, robustness and adaptability to accomplish tasks such as the handling of very heavy items, searching and rescuing, and large space security inspections.

PROBLEM STATEMENT

This thesis is the continuation of [START_REF] Qian | Design and Control of a Personal Assistant Robot[END_REF]. In [START_REF] Qian | Design and Control of a Personal Assistant Robot[END_REF], the author finished the applications and functionalities designs of personal assistant robots, and accomplished system modeling of the designed MDAMS based on Lagrangian formulations. However, the calculations of energy and its partial derivatives become complex as the DoFs increase. Besides, the motion in task space for the robot is assumed to be known in advance. The author proposed a RRT-connect-based inverse kinematic solving algorithm using the pseudo-inverse of Jacobian but without considering the redundancy, singularity, joint limit or dual-arm cooperation problems, not to mention human-like movements. Besides, there are static obstacles like walls and furniture, dynamic obstacles like other robots and human beings, and removable obstacles like doors, chairs and small objects in standard domestic environment. The motion in task space is difficult to known for such a complex robotic system. And very often even though the motion in task space is known, it is still very difficult to design the optimal trajectory in joint space due to the high non-linear property. In addition, the author proposed an adaptive RBFNN controller to cope with the uncertainties and disturbances and achieved object grasping using dexterous hands through force control. However, the cooperative control between two arm-hand subsystems and the coupling problem INTRODUCTION between the mobile platform and upper body manipulator system have not been studied. Moreover, the effectiveness of the proposed adaptive RBFNN controller remains to be validated.

To sum up, there is still a long way to go before constructing a long-term intelligent personal assistant robotic system for real applications. Therefore, the main objectives of this thesis are listed in the following.

• Kinematic modeling of the designed robot MDAMS.

• Virtual prototype validation via MATLAB/SIMULINK and ADAMS cosimulation of the adaptive RBF neural network controller.

• Dynamic modeling for the designed robot MDAMS using Kane's method.

• Human-like optimal position-orientation design for the mobile platform and optimal configuration design for the upper body manipulator at the same time under multiple constraints.

• Off-line motion planning of the designed robot MDAMS in static environments with known obstacles.

• On-line motion planning of the designed robot MDAMS in dynamic environments with unknown obstacles including human beings.

• Decoupling and Redundancy solving for the designed robot MDAMS based on task priority notion and least norm solution.

• Trajectory tracking and control of the designed robot MDAMS with joint limit and singularity avoidance.

• Validation of the proposed motion planning and tracking strategies on the virtual prototype in ADAMS via MATLAB/SIMULINK & ADAMS cosimulation.

STRUCTURE

This thesis is organized into five Chapters. The state of the art on robotic manipulator systems and service robots especially humanoid robotic systems, and a brief introduction to the technical context are given in Chapter 1.

In Chapter 2, the kinematic model is firstly established for the designed MDAMS. The Modified Denavit Hartenberg (MDH) method is used to construct the kinematic model with only four parameters. Compact expressions of the motions of mobile platform and end-effectors are formulated with the unit quaternion being used to represent the orientations of end-effectors. Then, the Lagrangian model and the adaptive RBFNN controller are recalled. Virtual prototype validation via MATLAB/SIMULINK and ADAMS co-simulation is realized to validate the effectiveness of the adaptive RBF NN controller. In order to avoid calculating energy and partial derivatives, the dynamic equations using Kane's method are formulated for MDAMS. The physical tip-over stability is studied based on the constructed Kane's model. A controller is proposed and the control stability is analyzed using the back-stepping technique.

In Chapter 3, the motion planning problem for the designed MDAMS in static environments is investigated. Firstly, an improved MaxiMin-based nondominated sorting genetic algorithm (NSGA-II) is proposed to design the optimal position-orientation of mobile platform and the optimal configuration of upper manipulator system (pose) for MDAMS at the same time. It speeds up the evolutionary algorithm MaxiMin NSGA-II by adding a MaxiMin sorting process. Five objective functions are defined, i.e. two reaching accuracy criteria, manipulability ability, joint displacement in joint space and end-effectors' displacements in task space. The proposed method searches for the optimal pose by optimizing five objective functions at the same time. In particular, a normalized combinedfitness function is defined and a post decision maker is introduced to settle the preferred solution among the candidates in the Pareto-optimal set. Then, in order to realize the collision-free transition from the initial pose to the designed optimal pose, an off-line motion planning algorithm is designed. In detail, a direct-connect BiRRT and gradient descent-based sample process is proposed which speeds up greatly the sampling phase. And a geometric optimization INTRODUCTION method is designed which always guarantees the shortest and consistent path between the initial and optimal goal poses. Besides, the hybrid linear polynomials with blends and fifth-order polynomials interpolations are used for generating the time-specified trajectory. In addition, forward movements are realized by assigning reasonable orientations to the mobile platform based on its planned positions, thus indicating robot's movement intentions to increase the quality of human-robot interaction. Finally, several motion planning tasks are realized to validate the proposed method.

In Chapter 4, in order to solve the failure problem of the off-line algorithm, an on-line collision-free motion planning method is introduced for the designed MDAMS in dynamic environments by extending the off-line motion planning method proposed in Chapter 3. Firstly, the desired motion is designed offline. Then, on-line sensing, collision test, on-line motion planning and control processes are enabled to cope with the motion planning problem in unknown dynamic environments. Environmental information is sensed on-line and the future movements of unknown obstacles are predicted in real time according to their historical motions. If there is a possible collision predicted, the on-line re-planning process will be activated and the desired motion will be updated immediately. In order to take the via-poses into account, an end-effectors' viapoints and multi-objective genetic algorithm (MOGA)-based motion planning algorithm is proposed. Four via-poses-based objective functions are defined to optimize MDAMS's via-poses, i.e. (i) sum of joint displacements, (ii) directional manipulability bypassing each via-point, (iii) via-points' positioning accuracy, and (iv) robot-obstacle collision evaluation. In other words, firstly, end-effectors' via-points are designed; secondly, the proposed end-effectors' via-points and MOGA-based algorithm is used to design the corresponding via-poses; finally, the point-to-point motion planning method is used to link the optimized viaposes. At the end of this Chapter, two virtual domestic environments are constructed, and a number of motion planning simulations are realized to validate the effectiveness of the proposed method.

In Chapter 5, the trajectory tracking problem is investigated based on the taskpriority notion, the least norm solving method and the leader-follower technique. Firstly, the task priority and least norm solving-based inverse kinematics solv-ing technique is introduced. And the modulated weighted least-norm solution method for joint limit avoidance is presented. Secondly, a semi-decentralized control law is proposed with kinematic control for the non-holonomic mobile platform. Instead of controlling the absolute motion of two end-effectors, a relative motion between two end-effectors is defined using lead-follower technique. A compact relative Jacobian is formulated in terms of the individual Jacobians of two arms using the MDH method. Besides, the tracking error matrix in terms of unit quaternion is used to represent the orientation error of end-effector. The object grasping is studied by introducing the contact matrices of two end-effectors. Thirdly, inspired by human behaviors, a new relative motion -position of the right end-effector with respect to the mobile platform of MDAMS -is defined to distribute the movements among the mobile platform and two arms. The corresponding relative Jacobian of the defined relative motion is formulated in terms of the known Jacobians applying the forward kinematics. Then, a motion distribution-based triple-trajectory tracking method is proposed. Finally, several numerical simulations are presented to validate the effectiveness of the proposed tracking methods. The comparison between the PD and back-steppingbased controllers is also presented which proves that the back-stepping-based controller has better performances.

Finally, conclusions, the work under consideration and some ideas ahead are given at the end of the thesis.

INTRODUCTION

Chapter1

STATE OF THE ART AND PRELIMINARIES

This Chapter firstly gives the state of the art on service robotic systems in Section 1.1. Then, the literature survey on robotic system modeling, motion planning and tracking controllers is presented in Section 1.2. Finally, some preliminaries are given in Section 1.3.

STATE OF THE ART ON SERVICE ROBOTS

In recent decades, service robots are widely used in maintenance, repair, transportation, cleaning, security, rescue, custody and other work. According to the classification of International Federation of Robotics (IFR), service robots are mainly divided into two categories: professional service robots and personal/domestic robots. In particular, the professional service robots include: field robots, professional cleaning robots, medical robots, logistics purposes robots, inspection and maintenance robots, construction robots, underwater robots, defense, rescue and safety applications robots and so on. The personal/domestic robots mainly include assistant robots, entertainment robots, auxiliary robots for the disabled, safety and surveillance robots. With the increasing aging population and percentage of people with disabilities, the demand on personal assistant devices services and health caring increases continuously.

Developments and Applications of Service Robots

Since the very first industrial robot Unimate presented in the 50s, robots have been widely used in manufacturing [START_REF] Kang | A target approachable force-guided control for complex assembly[END_REF]. Recently, more and more service robots are introduced. For example, the logistic robots, robots on building sites, harvest robots, domestic assistant robots, medical robots, entertainment toys, underwater robots, military robots, space manipulators [START_REF] Xu | Analytical and semi-analytical inverse kinematics of SSRMS-type manipulators with single joint locked failure[END_REF][START_REF] Diftler | Robonaut 2 -The first humanoid robot in space[END_REF][START_REF] Ambrose | Robonaut: NASA's space humanoid[END_REF], aerial vehicles, rescue robots [START_REF] Hong | Kinematic control algorithms and robust controller design for rescue robot[END_REF] and so on.

Fig. 1.1 shows some services robots that are in use or under study. Multimobile robots system in Fig. 1.1 (a) is used for logistics [START_REF] Li | Design Optimization of Amazon Robotics[END_REF] by Amazon with high efficiency. HRP-2 [START_REF] Kanehira | Design and experiments of advanced leg module (HRP-2L) for humanoid robot (HRP-2) development[END_REF] in Fig. 1.1 (d) is a Japanese humanoid robotic system which can be used as a personal assistant. Intuitive Surgical designed a robot system Da Vinci in Fig. 1.1 (e) controlled by a surgeon from a console for prostatectomies, cardiac valve repair and gynecologic surgical procedures. The bi-manual underwater humanoid robot OceanOne [START_REF] Khatib | Ocean One: A Robotic Avatar for Oceanic Discovery[END_REF] in Fig. 1.1 (g) allows human to explore the depths of the oceans with an unprecedented ability. The tracked military robot Talon in Fig. 1.1 (h) proposed by Foster-miller is designed to protect war fighters and first respond against explosive threats. Robonaut [START_REF] Diftler | Robonaut 2 -The first humanoid robot in space[END_REF][START_REF] Ambrose | Robonaut: NASA's space humanoid[END_REF] in Fig. 1.1 (i) is a humanoid robotic system designed by NASA to study how to replace human beings to work and explore in outer space.

In fact, if we enter "service robots" in Google Images, a lot of service robots can be found. For instance, servant robots in restaurant, public guidance robots, vacuum-cleaning robot Roomba and military robots of iRobot, Turtlebot of Willow Garage, DARwIn-OP of Robotics. There are also robotic systems like 3D printed robots, multi-legged robotic dogs and ghost legged unmanned ground vehicles of Boston Dynamics and so forth.

Many scientific researchers are dedicated to service robotics. Korpela [START_REF] Korpela | Towards valve turning using a dual-arm aerial manipulator[END_REF] introduced a framework for valve turning using an aerial vehicle endowed with dual multi-degrees of freedom (DoFs) manipulators. Srinivasa [START_REF] Srinivasa | The robotic busboy: Steps towards developing a mobile robotic home assistant[END_REF] designed an autonomous multi-robotic system to play the role of a robotic busboy. Zhang [START_REF] Zhang | Dynamic simulation and analysis for bolt and nut mating of dual arm robot[END_REF] studied a dual-arm robotic system for bolt and nut mating using the 3D dynamic simulation tool ADAMS. Doumanoglou [START_REF] Doumanoglou | Autonomous active recognition and unfolding of clothes using random decision forests and probabilistic planning[END_REF] introduced a dual-manipulator system to autonomously recognize and unfold articles of clothing. Bertacchini [START_REF] Bertacchini | Shopping with a robotic companion[END_REF] designed a shopping assistant robotic system to perform social-like interactions. The robot communicates with the customer based on retail's database and affects the customers' buying decisions by recognizing their emotions. Khatib [START_REF] Khatib | Ocean One: A Robotic Avatar for Oceanic Discovery[END_REF] presented a robotic avatar for oceanic discovery. In addition, many mechanical systems have been widely used by people experiencing mobility disability or upper limb impairment (ULI), such as the electric wheelchairs and prosthetic devices. Lee [START_REF] Lee | A robot teaching framework for a redundant dual arm manipulator with teleoperation from exoskeleton motion data[END_REF] introduced a robot programming method by developing a passive exoskeleton as a master device for a master-slave tele-operation system to program dual-arm industrial robots. Miyoshi [START_REF] Miyoshi | Natural behavior based teleoperation for dual robot manipulators mounted on a wheelchair[END_REF] designed a tele-operation dual-arm robot manipulator system for wheelchair R-SaDaCo. It can be operated using users' natural gestures. A coalescence/separation mechanism and a remote control mechanism are designed and implemented.

Humanoid Robots For Personal Assistance

Among various robotic manipulator systems in manufacturing and service market, the humanoid mobile manipulator systems have attracted increasing attention due to their human-like elegant appearance, dexterous moving and manipulation abilities. They can be classified into two categories: legged humanoid robot and humanoid robot with a mobile platform, according to the type of their lower body. The former would mainly play its role in non-flat situations like stairs, while the latter proves its conveniences in flat situations. The humanoid mobile manipulator systems can operate in an extended space due to the mobility of their lower body. They can mimic human beings with human accepted motions due to the upper human-like arm-hand manipulator system with dexterous end-effectors like grippers or multi-fingered hands. In the past decades, many humanoid robots have been introduced (see Fig. 1.

2).

The two-legged (biped) humanoid robot AMIO (2006) [START_REF] Seo | Motion capture-based wearable interaction system and its application to a humanoid robot, AMIO[END_REF] in Fig. 1.2 (a) is created by KAIST A.I. & Media Lab 1 , Korea, for personal accompany. It has one head, two arms, two 3-fingered-hands and two legs.

The humanoid robot Atlas (2013) [START_REF] Kuindersma | Optimization-based locomotion planning, estimation, and control design for the atlas humanoid robot[END_REF] in Fig. 1.2 (b) designed by Boston Dynamics company 2 , USA, is also a biped robotic system with two arms and a torso to achieve whole-body mobile manipulation, which greatly expands its workspace.

The 130cm tall biped humanoid robotic system ASIMO (2010) in Fig. 1.2 (c) is designed by Honda 3 , Japan. It has the ability to recognize moving objects, postures, gestures, its surrounding environment, sounds and faces, which enables it to interact with humans. However, its manipulation abilities have not been well-developed.

The annual international robotics competition RoboCup [START_REF] Gerndt | Humanoid Robots in Soccer: Robots Versus Humans in RoboCup 2050[END_REF] which is founded to promote robotics and AI research attracts many researchers each year. A group of biped humanoid robots are designed to form a soccer team and cooperate SoftBank Robotics (formerly Aldebaran Robotics), Japan, designed three humanoid robots: NAO (2006) [START_REF] Shamsuddin | Humanoid robot NAO: Review of control and motion exploration[END_REF], Romeo (2012) [START_REF] Lafaye | Linear model predictive control of the locomotion of Pepper, a humanoid robot with omnidirectional wheels[END_REF] and Pepper (2014) (see Figs.

1.2 (e), (f) and (g)) 4 . In particular, NAO is a 58cm tall biped humanoid robotic system with 14-25-DoFs. However, it is designed for entertainment accompany, which can only offer simple assistance. The 140cm tall biped humanoid robotic system Romeo is a research platform for assisting elderly people and people who experience mobility disabilities. However, it is only a mechanical base for research purpose and its manipulability ability remains to be explored.

One of the challenges for designing and controlling such a biped robotic system comes from the physical instability and redundancy introduced by two legs. Thus, the humanoid robot with one mobile platform attracts people's attention. The 120cm tall humanoid robotic system Pepper is such a robot which is designed for day-to-day accompany. It has one mobile platform, two arms and one communication screen, and is capable of identifying user's emotion. However, it is only able to entertain and accompany people with embedded multimedia systems and to execute tasks with limited manipulability abilities. The humanoid robotic system Enon (1999-2011) 5 in Fig. 1.2 (h) developed by Fujitsu Frontech Limited and Fujitsu Laboratories Ltd., Japan, has one mobile platform, two arms and a screen. Its applications include providing guidance, transporting small objects, escorting guests and security patrolling. But it is mainly for navigation applications with very limited manipulation abilities.

In order to improve the manipulation abilities, many humanoid robots with high DoFs upper body have been constructed. The 33-DoFs robotic system AMI (2001) [START_REF] Yang | Design and Development of Biped Humanoid Robot, AMI2, for Social Interaction with Humans[END_REF] which is another robot created by A.I. & Media Lab, Korea, consists of one mobile platform, one head, two arms and two three-fingered hands. It is designed for house cleaning, pick-place tasks, communication, etc.

The humanoid Care-O-bot 3 (2011) [START_REF] Graf | Robotic home assistant Care-O-bot {\textregistered} 3 -product vision and innovation platform[END_REF] created by Fraunhofer6 , is designed to assist people at home. It has one multi-directional mobile platform and two dexterous 7-DoFs arms. It can be used for entertainment, communication and emergency support. Care-O-bot 4 (2015) in Fig. 1.2 (i) is a developed version of Care-O-bot 3 with 31-DoFs for communication, surveillance and personal assistance like hand over. If the user needs to do some things out of home, the newer version can be commanded in distance. In addition, the new version has different modes of interaction and is more agile than the previous one.

The humanoid robot PR2 (2010) in Fig. 1.2 (j) [START_REF] Cohen | Search-based planning for dualarm manipulation with upright orientation constraints[END_REF] is a robotic research and development platform designed by Willow Garage 7 , USA, which consists of one omni-directional mobile platform, one 3-DoFs wrist, two 4-DoFs arms and two 1-DoF grippers. It is an open-platform which is designed to make it easy to develop and test robotics applications and technologies. For instance, Scholz [START_REF] Scholz | Cart pushing with a mobile manipulation system: Towards navigation with moveable objects[END_REF] studied the application of PR2 for cart pushing in a typical office environment.

The human-symbiotic-robot Twendy-one (2009) [START_REF] Iwata | Design of human symbiotic robot TWENDY-ONE[END_REF] in Fig. 1.2 (k) designed by Sugano Laboratory 8 , WASEDA University, Japan, is an accurate robot with two 7-DoFs arms, two 13-DoFs fingered-hands and one 1-DoF trunk. It offers personal assistance like sit-up support, caretaker-transferring, refrigerator-using, tray-handling and so on. Armar-III (2006) [START_REF] Asfour | ARMAR-III: An integrated humanoid platform for sensory-motor control[END_REF][START_REF] Vahrenkamp | Simultaneous Grasp and Motion Planning: Humanoid Robot ARMAR-III[END_REF] in Fig. 1.2 (m) is a 43-DoFs humanoid robot which is designed by Karlsruhe Institute of Technology 9 for domestic helping like dish washing. It is a mobile platform with two dexterous arm-hand subsystems. Its grasping and helping abilities remain to be explored.

Readybot (2008) in

The 32-DoFs humanoid robotic system AR (2008) in Fig. 1.2 (n) designed by IRT-Tokyo University, Japan, is able to recognize the environment, to create 3D motions, to evaluate and assess itself after having finished a task. Unfortunately, it can only do some simple household chores.

There exist also other humanoid robots like Dreamer in Fig. 1.2 (o) proposed by UT Austin, robot Robovie-II in Fig. 1.2 (p) in supermarket, etc. Apart from the robotic systems introduced above, many research groups around the world are working on personal assistant robots.

For instance, in order to face the aging society in Japan, Jouhou System Kougaku Lab. (JSKL) 10 of Tokyo University designs many robotic platforms, such as humanoid robots, daily life assistance systems and personal mobility systems, to forward Information and Robot Technology Research Initiative (IRT) innovations and image scenarios [START_REF] Zhao | Design, Modeling, and Control of an Aerial Robot DRAGON: A Dual-Rotor-Embedded Multilink Robot With the Ability of Multi-Degree-of-Freedom Aerial Transformation[END_REF].

The French research group LAAS 11 , in collaboration with VERIMAG, studies the robust and reliable architecture of autonomous robots through by combining the BIP component-based design and the modular architecture development methods. Sidobre [START_REF] Sidobre | Human-Robot Interaction[END_REF] gives a global view on human-robot interaction. Zhao and Sidobre [START_REF] Zhao | Trajectory smoothing using jerk bounded shortcuts for service manipulator robots[END_REF] work on the motion planning problem for service manipulator robots. 12 proposes five humanoid robotic platforms: C-Runner, David, Rollin' Justin, Space-Justin and TORO, for research topics of robust locomotion on two legs, mimicking human two arms, autonomous dexterous mobile manipulation in human environments, tele-manipulation, dealing with biped movement and dynamics, etc. Butterfass [START_REF] Butterfass | DLR-Hand II: next generation of a dextrous robot hand[END_REF] introduced 2nd generation of multisensory hand design at DLR. Ott [START_REF] Ott | A humanoid two-arm system for dexterous manipulation[END_REF] designed a humanoid dual-arm system based on the modular DLR-III and the DLR-Hand-II for studying dexterous two handed manipulation.

German Aerospace Center (DLR) -Institute of Robotics and Mechatronics

In particular, two arms and two hands are combined with a 3-DoFs movable torso and a visual system to form a complete humanoid upper body.

In addition to OceanOne, Stanford Robotics Lab also investigates the modeling and control of humanoid robotic system to move like human beings 13 . Stanford Computational Vision and Geometry Lab (CVGL) has developed a robot prototype Jackrabbot to study the autonomous movements among humans.

Chinese Institute of Mechatronic Engineering of Tsinghua University has developed many platforms for humanoid and bionic robots research 14 . The biped humanoid robot THBIP-I is capable of accomplishing forward, backward and lateral movements on the flat floor without cables. It can continuously walk up and down stairs up to 75mm in 0.35m steps. Its upper body is able to serve water, exercise tai chi, nod and shake hands. The micro biped humanoid THBIP-II is 18 cm high and weighs 18 kg with 18-DoFs. It is capable of moving forward and backward, turning around, sidewalks, walking up and down stairs, kicking and shooting, waving, grasping heavy objects, etc. Many efforts have been also done on biped running robots, bionic muscles drive biped robots, single and quadruped bionic robots, soccer robots, anti-strong external disturbance biped robots, robotic powered thigh prostheses, passive robotic dancer, bionic human-robot interactive arm band, etc.

We can see that the service robotic systems have attracted continuous attention and good results have been obtained. However, only a few simple personal assistant robots, such as the vacuum cleaning robots, guidance robots and some restaurant robot servants, can be found in real commercial settings. Most robotic systems introduced for personal assistance are still in the research stage. The reason is that they still lack the autonomous ability of adapting to complex and unknown dynamic environments including human-robot interaction. Thus, the development and investigation of autonomous, multi-functional health care and personal assistant robots for busy, elderly, disabled or impaired people are still an active area. Under this background, a non-holonomic redundant Mobile Dual-Arm Manipulator System (MDAMS) is designed by our group for personal assistance. However, the introduction of a non-holonomic mobile platform and a redundant upper manipulator system increases the system modeling, motion planning and control challenge.

LITERATURE SURVEY

In this Section, a brief literature survey on system modeling, motion planning and control of robotic systems is given.

Robotic System Modeling

A robotic system is a mechanical system which consist of a group of rigid bodies connected by certain joints. A concise and precise mathematical model (kinematic and dynamic) is fundamental [START_REF] Murray | A mathematical introduction to robotic manipulation[END_REF][START_REF] Craig | Introduction to Robotics: Mechanics and Control[END_REF][START_REF]Springer handbook of robotics[END_REF] to study a robotic system.

Kinematic Modeling

The kinematics of a robotic system describes the relationship between the motion in joint space and the resulting motion of the rigid bodies in task space that form the robotic system. Forward kinematics relate the motion from joint space to task space, while the inverse kinematics (IK) relate the motion from task space to joint space. There exist various representations of the position and orientation of a rigid body in space. In particular, many methods like Z-Y-X Euler angles, X-Y-Z fixed angles, angle axis, unit quaternions, etc., have been introduced to represent the orientation of mechanic systems [START_REF] Fernando | Robust adaptive geometric tracking controls on SO(3) with an application to the attitude dynamics of a quadrotor UAV[END_REF][START_REF] Gao | Free-flying dynamics and control of an astronaut assistant robot based on fuzzy sliding mode algorithm[END_REF]. The advantages and disadvantages of different parameterization methods become evident as the number of DoFs of robotic systems increases. The geometric Denavit-Hartenberg-based representation is widely used in robotics with only four parameters and simplifies greatly the kinematic modeling.

Dynamic Modeling

The dynamics of a robot manipulator system describes the relationship between the resulting motion and the applied forces and torques. There exist many dynamic modeling methods for mechanical robotic systems, such as Newton-Euler's equations, Lagrangian formulations, Kane's method, and so forth. Among these methods, the most classical one is the model based on Lagrangian formulations [START_REF] Yamamoto | Control and Coordination of Locomotion and Manipulation of a Wheeled Mobile Manipulator[END_REF][START_REF] Korayem | Optimal trajectory planning of wheeled mobile manipulators in cluttered environments using potential functions[END_REF]. For instance, Yamamoto [START_REF] Yamamoto | Control and Coordination of Locomotion and Manipulation of a Wheeled Mobile Manipulator[END_REF] used Lagrangian formulations to model a wheeled mobile manipulator system. Korayem [START_REF] Korayem | Optimal trajectory planning of wheeled mobile manipulators in cluttered environments using potential functions[END_REF] applied Lagrange equations to model a non-holonomic mobile manipulator which has one spatial arm and one mobile platform with two driving wheels independently driven by two actuators. As a result, 7-DoFs dynamic equations are formulated. Baigzadehnoe [START_REF] Baigzadehnoe | On position/force tracking control problem of cooperative robot manipulators using adaptive fuzzy backstepping approach[END_REF] used the universal approximation properties of fuzzy logic systems to estimate unknown system dynamics based on Lagrangian model. However, due to the second order differential item in the Lagrange model, the calculation amount increases rapidly as the number of DoFs increases.

Kane's [START_REF] Kane | Spacecraft dynamics[END_REF] method was first introduced for modeling the astronautical systems. It has attracted constant attention because of its advantages over Lagrangian formulations. Kane [START_REF] Kane | The Use of Kane's Dynamical Equations in Robotics[END_REF] applied this method to improve formulation and solution computational efficiency of robotic system's motion equations. Huston [START_REF] Ronald | Multibody Dynamics Formulations Via Kane's Equations[END_REF] extended Kane's equations to multi-body mechanical systems. Purushotham [START_REF] Purushotham | Kane's Method for Robotic Arm Dynamics: a Novel Approach[END_REF] used Kane's method to dynamically model a manipulator arm. Ke [START_REF] Ke | A Dynamic Model of ROV with a Robotic Manipulator Using Kane's Method[END_REF] presented a detailed dynamic modeling of a manipulator that mounted on a remotely operated underwater vehicle. Isenberg [START_REF] Isenberg | Control of systems subject to Pfaffian constraints: motivation for Kane's formulation[END_REF] employed Kane's equations to dynamically model system that subjects to Pfaffian constraints (rolling without sliding).

In addition, there are other methods like Lie group-based method and Bond graph methodology. Park [START_REF] Park | A Lie group formulation of robot dynamics[END_REF][START_REF] Park | A recursive algorithm for robot dynamics using lie groups[END_REF] presented two formulations of robot dynamics based on Lie Group. Compared with Lagrange formulations, it has less calculation amount, more unified form of models and definite physical meaning. Li [START_REF] Li | Modeling and Simulation of Space Manipulator Based on Lie Group[END_REF] applied Lie group theory for the space manipulator system's modeling through forward and backward recursive process. Bond graph methodology [START_REF] Filippo | A survey of bond graphs : Theory, applications and programs[END_REF] is a graphical modeling language for modeling multi-physical systems using a unique representation. The multi-physical systems can be random combination of electrical, mechanical, magnetic, fluid, chemical and thermodynamic systems. Many works have been done using Bond graph [START_REF] Qian | Bond Graph Modeling and Simulation of a Dual-Arm Mobile Manipulator[END_REF][START_REF] Gor | Bond graph Modeling and Control of Compliant Legged Quadruped Robot[END_REF]. It defeats the traditional modeling methods especially in multi-physical systems.

Motion Planning Methods

The environments for traditional industrial manipulator systems are normally constructed to the needs of robots. And their trajectories are usually designed in advance and fixed. On the contrary, the service robots are required to work in non artificially constructed surroundings. Thus, they should be able to plan motion strategies and take their own decisions. Motion planning consists of geometric path design and time-specified trajectory generation (Definition 1.1) under multiple physical and environmental constraints. Definition 1.1 (Path and trajectory [START_REF] Sciavicco | Modelling and control of robot manipulators[END_REF]) A path is the locus of points in joint or task space. A path is a pure geometric description of motion. A trajectory is the path on which a time law is specified.

Motion planning in robotics can happen in 2-dimensional (2D) (x, y, φ)/3D (x, y, z, α, β, γ) space (mobile vehicles or free-flying robots), or for multi-DoFs articulated robotic systems (θ 1 , ..., θ n , fixed or mobile manipulators). Obstacle avoidance is the major aspect of motion planning problem. In the past few decades, many motion planning methods have been introduced [START_REF] Wilmarth | MAPRM: a probabilistic roadmap planner with sampling on the medial axis of the free space[END_REF][START_REF] Geraerts | Clearance based path optimization for motion planning[END_REF][START_REF] Lee | A real-time dual-arm collision avoidance algorithm for assembly[END_REF][START_REF] Van Den Berg | Roadmap-based motion planning in dynamic environments[END_REF][START_REF] Raja | Path planning in dynamic environment for a rover using A* and potential field method[END_REF][START_REF] Stentz | Optimal and Efficient Path Planning for Unknown and Dynamic Environments[END_REF][START_REF] Korayem | The SDRE control of mobile base cooperative manipulators: Collision free path planning and moving obstacle avoidance[END_REF][START_REF] Kavraki | Probabilistic roadmaps for path planning in high-dimensional configuration spaces[END_REF][START_REF] Steven | Rapidly-Exploring Random Trees: A New Tool for Path Planning[END_REF][START_REF] Goldberg | Genetic Algorithms in Search, Optimization and Machine Learning[END_REF][START_REF] Huang | Particle swarm optimization for solving the inverse kinematics of 7-DOF robotic manipulators[END_REF][START_REF] Vijay | PSO based neuro fuzzy sliding mode control for a robot manipulator[END_REF][START_REF] Wang | Trajectory planning of free-floating space robot using Particle Swarm Optimization (PSO)[END_REF][START_REF] Mohammad | Particle Swarm Optimization for Single Objective Continuous Space Problems: A Review[END_REF]. For example, visibility graphs linking obstacles' vertices (O(n 2 logn)), voronoi diagrams with maximum clearance (O(nlogn)), cell decomposition (O(nlogn)) which produce a roadmap with vertex and edges [START_REF] Lee | A real-time dual-arm collision avoidance algorithm for assembly[END_REF][START_REF] Van Den Berg | Roadmap-based motion planning in dynamic environments[END_REF], A* [START_REF] Raja | Path planning in dynamic environment for a rover using A* and potential field method[END_REF] and D* [START_REF] Stentz | Optimal and Efficient Path Planning for Unknown and Dynamic Environments[END_REF], potential fields methods [START_REF] Korayem | The SDRE control of mobile base cooperative manipulators: Collision free path planning and moving obstacle avoidance[END_REF], sampling-based methods like probabilistic roadmaps (PRM) [START_REF] Kavraki | Probabilistic roadmaps for path planning in high-dimensional configuration spaces[END_REF] and Rapidly-exploring Random Trees (RRTs) [START_REF] Steven | Rapidly-Exploring Random Trees: A New Tool for Path Planning[END_REF][START_REF] Jaillet | Sampling-based path planning on configuration-space costmaps[END_REF], heuristic method like genetic algorithms (GAs) [START_REF] Goldberg | Genetic Algorithms in Search, Optimization and Machine Learning[END_REF] and particle swarm optimization (PSO) [START_REF] Huang | Particle swarm optimization for solving the inverse kinematics of 7-DOF robotic manipulators[END_REF][START_REF] Vijay | PSO based neuro fuzzy sliding mode control for a robot manipulator[END_REF][START_REF] Wang | Trajectory planning of free-floating space robot using Particle Swarm Optimization (PSO)[END_REF][START_REF] Mohammad | Particle Swarm Optimization for Single Objective Continuous Space Problems: A Review[END_REF], etc.

Redundant Manipulators

As the number of DoFs increases, obstacle avoidance is no longer the only issue. The challenge of redundancy solving under multiple constraints occurs. Apart from the required DoFs to realize target task, the additional DoFs of redundant manipulator system can be used to achieve objectives like obstacle, joint limits and singularity avoidance, human-like movements, and so on. In addition, many systems with manipulators mounted on a mobile platform have been introduced to expand the workspace and manipulation ability. As a result, the coordination between the mobile platform and the upper mounted manipulator system becomes another challenge for motion planning.

Direct Searching Methods Sampling-based planners represented by RRTs are the leading family of algorithms for higher dimensional motion planning. Tsai [START_REF] Tsai | Motion planning of a dual-arm mobile robot in the configuration-time space[END_REF] proposed a Bi-direction RRTs in Configuration Time space (CT-RRTs) planner for a dual-arm mobile manipulator in joint space. Saut [START_REF] Saut | Planning pickand-place tasks with two-hand regrasping[END_REF] designed a RRT-based planning framework to plan motion for a dual-arm-hand robot during a pickand place task which requires object exchange between the hands. Vahrenkamp [START_REF] Vahrenkamp | Simultaneous Grasp and Motion Planning: Humanoid Robot ARMAR-III[END_REF] used RRT-based algorithms to build a tree of reachable and collision-free configurations for humanoid robot ARMAR-III. Kim [START_REF] Kim | A RRT-based collision-free and occlusion-free path planning method for a 7DOF manipulator[END_REF] presented an occlusionfree and collision-free path planning algorithm for a 7DoFs manipulator with RRTs. However, the random planners are inconsistent and non-optimal, though RRT* is asymptotically optimal.

Rodriguez [START_REF] Rodríguez | Planning manipulation movements of a dual-arm system considering obstacle removing[END_REF] proposed a motion planner PRM with Obstacles (PRMwO) which searches for dual-arm system's path and determines, if necessary, the obstacles to be removed. It uses a precedence graph to look for a proper sequence of actions and for the distribution of tasks among the robot arms (can be extended to multi-arms). Wang [START_REF] Wang | Trajectory planning of free-floating space robot using Particle Swarm Optimization (PSO)[END_REF] employed the direct kinematic equations in conjunction with PSO technique for trajectory planning of a redundant manipulator which is mounted on a free-floating space robot.

IK-based Motion Planning Though many good results exist, they mainly focus on collision-free motion planning while tracking the given path in task space of end-effector. And the resulting motion of robot links in task space and other constraints are not considered. Many practical tasks impose constraints on the motion of robotic end-effectors such as carrying a cup of coffee. Therefore, IK-based motion planning methods have attracted people's attention. Many methods have been developed to solve the IK problem. The difficulty is that the mapping from task space to joint space is non-linear for redundant robots. Hence, many motion planning methods solve the redundancy problem by introducing additional optimization objectives.

For example, the gradient-based method in [START_REF] Hollerbach | Redundancy resolution of manipulators through torque optimization[END_REF] minimizes a defined scalar function in terms of obstacle and manipulability measure and projects it onto the Jacobian null-space. The resolved motion planning method in [START_REF] Flacco | A reverse priority approach to multi-task control of redundant robots[END_REF] solves multiple robotic tasks with priorities for redundant robots using pseudo-inverse Jacobian. Lewis [START_REF] Lewis | Trajectory generation for two robots cooperating to perform a task[END_REF] formulated an IK solving-based trajectory planning algorithm for two robots cooperating to perform an assembly task. It treats two robots as a single redundant system and derives two Jacobians to relate two end-effectors. Secondary goals such as collision and joint limit avoidance are defined to be projected onto the Jacobian null-space. Mohri [START_REF] Mohri | Cooperative path planning for two manipulators[END_REF] proposed a motion planning method for two cooperative manipulators to hold a common object. Potential functions are defined to avoid collisions among robotic links and obstacles. Korayem [START_REF] Korayem | Optimal trajectory planning of wheeled mobile manipulators in cluttered environments using potential functions[END_REF] presented an advanced methodology for trajectory planning of wheeled mobile manipulators in obstructed environments by defining potential functions. It models the obstacles and mobile manipulator as ellipsoids. Berenson [START_REF] Berenson | Task Space Regions: A framework for pose-constrained manipulation planning[END_REF] proposed a Constrained BiDirectional RRT (CBiRRT2) motion planner for pose-constrained manipulation planning. A Task Space Regions (TSRs) representation is introduced. It is suitable for redundant robots and takes several constraints into account, including constraints for the end-effector. In addition, a formal proof for the probabilistic completeness of RRT-based algorithms is presented [START_REF] Berenson | Probabilistically complete planning with end-effector pose constraints[END_REF]. Cohen [START_REF] Cohen | Search-based planning for dualarm manipulation with upright orientation constraints[END_REF] designed a heuristic search and graph-based motion planning algorithm for dual-arm object manipulation using robot PR2. The upper arm roll joint is chosen as the redundant DoF. Then, it computes the collision-free paths for moving the object from a start pose to a goal pose while maintaining the initial roll and pitch of the object with two arms. Huang [START_REF] Huang | Particle swarm optimization for solving the inverse kinematics of 7-DOF robotic manipulators[END_REF] introduced a PSO method for IK solving of a 7-DoFs robotic manipulator. Jamisola [START_REF] Jamisola | Guaranteeing task prioritization for redundant robots given maximum number of tasks and singularities[END_REF] introduced a method to maximize the utilization of the redundant DoFs of a given robot, within the framework of task prioritization. Tsai [START_REF] Tsai | Trajectory planning and control of a 7-DOF robotic manipulator[END_REF] introduced an IK-based planner which combines PSO algorithm and real coded genetic algorithm (RGA) to determine the configuration of a 7-DoFs manipulator.

It can be seen that the IK-based methods are designed to satisfy the primary tracking tasks, as well as secondary goals such as collision, obstacle and joint limit avoidance and world frame orientation constraints. However, they require inverse Jacobian calculation and can only solve the optimization problems expressed by continuous objective functions.

Mobile Platform and Upper Manipulator Coordination

On the other hand, only mobile platform's mobility or manipulator manipulability has been considered in the above mentioned works. Tchon [START_REF] Tchoń | Extended Jacobian motion planning algorithm for mobile manipulators[END_REF] designed an extended Jacobian pseudo-inverse method for mobile manipulators by introducing new output functions. Yamamoto [START_REF] Yamamoto | Control and Coordination of Locomotion and Manipulation of a Wheeled Mobile Manipulator[END_REF] investigated coordination of mobile manipulator systems by treating the mobile vehicle and the manipulator as two different dynamic entities. It has only one manipulator installed atop the mobile platform. Korayem [START_REF] Korayem | Maximum payload path planning for redundant manipulator using indirect solution of optimal control problem[END_REF] presented an efficient IK algorithm based on the two point boundary value problem (TPBVP) solution. It determines the maximum loadcarrying capacity and the corresponding joint optimal path for kinematically redundant manipulators. Besides, it supposes that the path of end-effector is given and redundant (R) and nonredundant (NR) joint variables are assigned manually in advance. It uses the NR joints to achieve path tracking and the R joints to avoid obstacles. Harada [START_REF] Harada | Base position planning for dual-arm mobile manipulators performing a sequence of pick-and-place tasks[END_REF] planned a sequence of base positions for the mobile dual-arm manipulator system which performs pick-and-place tasks. It formulates a quadratic programming (QP) problem to solve the IK problem. The robot uses selectively either right or left hand to pick up an object to minimize the base's movement. Ren [START_REF] Ren | A Method for Optimizing the Base Position of Mobile Painting Manipulators[END_REF] designed an algorithm to optimize mobile platform's position of a mobile manipulator to meet the requirements of local painting tasks. The globally near-optimal mobile platform's position is selected by sorting all feasible positions according to the evaluation criteria. The manipulator maneuvers to finish the painting task independently after the mobile platform arrives at a given position.

Reasoning Methods In addition, many analytical reasoning methods have been also presented for motion planning of robotic systems. Yahya [START_REF] Samer Yahya | Geometrical approach of planar hyper-redundant manipulators: Inverse kinematics, path planning and workspace[END_REF] solve the motion planning problem for a planar hyper-redundant manipulator system through a geometric approach. It sets angles between the adjacent links be the same. But it is difficult to geometrically solve the planning problem for complex robots consisting of not only planar joints. Yan [START_REF] Yan | Analytical inverse kinematics of a class of redundant manipulator based on dual arm-angle parameterization[END_REF] proposed an analytical IK solving method based on the dual-arm-angle parameterization. It uses two orthogonal vectors to define two absolute reference planes and derives an absolute reference elbow attitude matrix. Lamperti [START_REF] Lamperti | A redundancy resolution method for an anthropomorphic dual-arm manipulator based on a musculoskeletal criterion[END_REF] introduced swivel elbow angle using muscular activation. Kim [START_REF] Kim | Human-like arm motion generation for humanoid robots using motion capture database[END_REF] formulated a mathematical representation for characterizing human arm motions. It characterizes robot motion by elbow elevation angle which is determined using the position and orientation of human hands with the approximation tool-Response Surface Method (RSM).

Heuristic Methods It can be seen that many good works have been done on robotic motion planning. However, sometimes it is difficult to formulate proper objective functions, hence they are no longer competent to solve motion planning problem. In order to cope with the shortcomings of the above-mentioned direct, indirect and reasoning motion planning methods, many evolutionary metaheuristic methods have been introduced. Genetic algorithm (GA) is one of the most used heuristic methods.

Inspired by the process of natural selection and natural genetics, Goldberg [START_REF] Goldberg | Genetic Algorithms in Search, Optimization and Machine Learning[END_REF] firstly introduced the GA method. Different from conventional techniques, GA is blind by applying notions of gene, individuals, parent, offspring, child, population and chromosomes. It consists of bio-inspired operators such as mutation, crossover and selection. A standard GA has a genetic representation of the solution domain and a set of objective functions (or cost function) to evaluate the candidate solutions.

GA has the following attractive features: no constraints on the cost function's continuity, no need of inverse Jacobian computation, capable of optimizing (maximizing and minimizing at the same time) multiple objectives, etc. Many GA-based motion planning methods have been proposed for redundant robotic manipulator systems [START_REF] Parker | Inverse kinematics of redundant robots using genetic algorithms[END_REF][START_REF] Zhao | Mobile Manipulator Path Planning By A Genetic algorithm[END_REF][START_REF] Solteiro Pires | Multi-objective MaxiMin Sorting Scheme[END_REF][START_REF] Da Graça Marcos | A multi-objective approach for the motion planning of redundant manipulators[END_REF][START_REF] Mac | Heuristic approaches in robot path planning: A survey[END_REF][START_REF] Bakdi | Optimal path planning and execution for mobile robots using genetic algorithm and adaptive fuzzy-logic control[END_REF]. Parker and Goldberg [START_REF] Parker | Inverse kinematics of redundant robots using genetic algorithms[END_REF] used GA to plan motion for a redundant robotic manipulator system. The robot's end-effector is leaded from an initial position to a final position by optimizing a combined fitness function. The combined fitness function is in terms of two objective functions: positioning error of end-effector and joint displacement. Zhao [START_REF] Zhao | Mobile Manipulator Path Planning By A Genetic algorithm[END_REF] solved the path planning problem for a mobile manipulator system based on GA. A combined fitness function is defined in terms of displacements of mobile platform and joint angles. The combined fitness function in [START_REF] Da Graça Marcos | A multi-objective approach for the motion planning of redundant manipulators[END_REF] is in terms of joint displacement and end-effector's reaching error. Bakdi [START_REF] Bakdi | Optimal path planning and execution for mobile robots using genetic algorithm and adaptive fuzzy-logic control[END_REF] designed an optimal GA-PCHIP-based off-line path planning method for a mobile manipulator by optimizing also a combined fitness function. The combined fitness function is in terms of navigation length, path-obstacles intersection and total deviation of mobile platform. However, the reproduction processes require specific consideration of various intersection cases with the obstacles.

As the increasing demand of the complicated tasks, single optimization method seems incompetent. Therefore, hybrid optimization methods attract researchers' attention by compensating the inconveniences and combing the advantages of various optimization methods [START_REF] Jin | Trajectory Planning of a Six-DOF Robot Based on a Hybrid Optimization Algorithm[END_REF][START_REF] Cao | Visualized trajectory planning of flexible redundant robotic arm using a novel hybrid algorithm[END_REF][START_REF] Yang Lim | Multi-objective hybrid algorithms for layout optimization in multi-robot cellular manufacturing systems[END_REF].

Most of the above-mentioned GAs search for the solution in one direction by optimizing a combined fitness function. In order to search for the solution in multiple directions, Deb [START_REF] Deb | A fast and elitist multiobjective genetic algorithm: NSGA-II[END_REF] introduced the non-dominated and crowding distance sorting schemes to GAs. Pires [START_REF] Solteiro Pires | Multi-objective MaxiMin Sorting Scheme[END_REF] replaced the crowding distance sorting scheme with MaxiMin sorting scheme. The main idea behind the MaxiMin sorting scheme is to select the solutions in order to decrease the large gap areas existing in the already selected population.

Many of them have been used for high DoFs systems in complex environments under multiple constraints. But very few of them solve on-line motion planning problem and take human-like motion planning into account. In fact, the additional DoFs can be used to make the robot move more human-like, thus increasing the quality of human-robot interaction.

On-line Motion Planning

Autonomous navigation and manipulator abilities of service robots are increasingly demanding. But most of the above mentioned methods mainly focus on the motion planning in static environments. The off-line planned motion will be no longer realizable and applicable when the environments are time-varying. Therefore, many works have been done on motion planning [START_REF] Lee | A real-time dual-arm collision avoidance algorithm for assembly[END_REF][START_REF] Van Den Berg | Roadmap-based motion planning in dynamic environments[END_REF] in real time for robotic systems.

Primatesta [100] presented a trajectory planning algorithm based on Informed-RRT* for mobile robot navigation in crowded environments with moving people. Instead of computing the entire path in real time, it only evaluates the validity of the current path and partially repairs the path, thus often resulting in nonoptimal paths. A RRT*-based motion planning algorithm consisting of reconnect and regrow processes was introduced in [START_REF] Adiyatov | A novel RRT*-based algorithm for motion planning in Dynamic environments[END_REF] for mobile robots in dynamic environments. However, the RRT* method which needs to sample throughout the task space between the initial and goal positions is time-consuming for long distance planning. Another disadvantage is that the random sampling process will generate different paths for the same task. It treats the mobile robots as a point. Meng [START_REF] Meng | UAV path re-planning based on improved bidirectional RRT algorithm in dynamic environment[END_REF] introduced a BiRRT algorithm with pruning and re-planning processes of the global sampling tree to design paths for the unmanned aerial vehicle (UAV). Choi [START_REF] Choi | Two-layer obstacle collision avoidance with machine learning for more energyefficient unmanned aircraft trajectories[END_REF] proposed a two-level obstacle avoidance algorithm by introducing a multi-phase problem for an UAV system to avoid multiple obstacles with the minimal effort. The motion planning method proposed by Greiff [START_REF] Greiff | Optimisation-based motion planning with obstacles and priorities[END_REF] needs to find two feasible paths around an inflated obstacle by finding the projection points around the obstacles. And the process will become complex in a crowded and dynamic environment. Mercy [START_REF] Mercy | Spline-Based Motion Planning for Autonomous Guided Vehicles in a Dynamic Environment[END_REF] presented an optimization-based motion planning method based on separating hyper plane theorem and spline-based technique to generate motions for the non-holonomic vehicles. Mcleod [107] used Bezier curve to connect two via-segments of generated path in real time for mobile vehicles. However, for non-holonomic mobile platform there will be too many orientation changes. On the other hand, in a crowded environment, spline-based trajectory generation may cause unnecessary obstacle collision.

We can see that all the above techniques are for collision-free motion planning for mobile vehicles or free-flying robots. Although some of them can be applied to robots with high DoFs, their effectiveness will decrease, and they are incompetent to solve multiple constraints problems. In order to solve this problem for robots, Lee [START_REF] Lee | A real-time dual-arm collision avoidance algorithm for assembly[END_REF] established an algorithm that provides an on-line trajectory generation for a dual-arm robotic system by introducing a virtual roadmap. Berg [START_REF] Van Den Berg | Roadmap-based motion planning in dynamic environments[END_REF] proposed an algorithm to solve on-line motion planning for any robot type in configuration space with any dimension based on a roadmap. The roadmap is constructed for the static part of the environment, then only the dynamic part is dealt with on-line. A two-level search is performed to design the shortest path. On the local level, trajectories on single edges of the roadmap are found using a depth-first search on an implicit grid in state-time space. On the global level, these local trajectories are coordinated using an A*-search to find a global trajectory to the goal configuration. Pajak [START_REF] Pajak | Motion planning for mobile surgery assistant[END_REF] proposed a motion planning method for a mobile surgery assistant. Only the knowledge of the end-effector's path is needed, and the reference trajectory of the mobile platform is not needed. It is based on a penalty function approach and a redundancy resolution at the acceleration level. The motion of the mobile manipulator is planned in order to maximize the manipulability measure, thus to avoid manipulator singularities. Akli [START_REF] Akli | Motion analysis of a mobile manipulator executing pick-up tasks[END_REF] proposed a random profile approach (RPA)-based motion planning strategy for a mobile manipulator RobuTER/ULM to approach the target point by implementing the manipulability measure. Yang [START_REF] Yang | Real-time motion adaptation using relative distance space representation[END_REF] introduced a configuration re-planning or adaptation method for a fixed manipulator in a dynamic environment. However, it requires Jacobian computation between the relative distance space and the joint space and it demands that the desired configuration must be known in real time.

In order to avoid dynamic obstacles during manipulation, Chen [START_REF] Chen | A novel autonomous obstacle avoidance path planning method for manipulator in joint space[END_REF] designed an on-line joint velocity correction term to avoid obstacles by adjusting the manipulator's joint trajectory. Xin [START_REF] Xin | Real-time dynamic system to path tracking and collision avoidance for redundant robotic arms[END_REF] proposed a path planning algorithm for redundant robot arms in dynamic environments by introducing an escape velocity and projecting it onto the null space of Jacobian. An obstacle avoidance gain which depends on one minimum distance is defined to reduce computation burden in such a way to modify the IK homogeneous solution. The on-line obstacle avoidance method in [START_REF] Han | Dynamic obstacle avoidance for manipulators using distance calculation and discrete detection[END_REF] used the distance calculation and discrete detection for robot arms, but it is difficult to be applied to humanoid mobile manipulators due to the demand of the obstacle identification and the dependence on robot's structural complexity.

Nguyen [START_REF] Nguyen | A fast heuristic Cartesian space motion planning algorithm for many-DoF robotic manipulators in dynamic environments[END_REF] presented a heuristic planning method for a multi-DoFs humanoid robot's arm by employing the sampling-based RRT* algorithm directly in task space in hierarchical fashion. However, it only considers the end-effector and elbow as two hierarchical control points. In fact, as the number of control points increases, the hierarchical motion planning method will become much more complicated. Vannoy [START_REF] Vannoy | Real-Time Adaptive Motion Planning (RAMP) of Mobile Manipulators in Dynamic Environments With Unforeseen Changes[END_REF] introduced an on-line adaptive motion planning algorithm by generating a population of trajectories based on the fitness evaluation for the mobile manipulators.

Very important works have been done by Trautman [START_REF] Trautman | Unfreezing the robot: Navigation in dense, interacting crowds[END_REF][START_REF] Trautman | Robot navigation in dense human crowds: the case for cooperation[END_REF]. They study the safe navigation of a mobile robot through crowds of dynamic agents with uncertain trajectories. In particular, It applies the Interacting Gaussian Processes (IGP) to estimate the behavior of a crowd with the environment being structured. There are also motion planning methods for robots in dynamic environments Table 1.1 -Literature survey on robotic motion planning.

Mobile vehicles

Fixed manipulator Mobile manipulator

Coordination

-2014 [START_REF] Wilmarth | MAPRM: a probabilistic roadmap planner with sampling on the medial axis of the free space[END_REF][START_REF] Geraerts | Clearance based path optimization for motion planning[END_REF][START_REF] Van Den Berg | Roadmap-based motion planning in dynamic environments[END_REF][START_REF] Kavraki | Probabilistic roadmaps for path planning in high-dimensional configuration spaces[END_REF][START_REF] Steven | Rapidly-Exploring Random Trees: A New Tool for Path Planning[END_REF][START_REF] Kim | Human-like arm motion generation for humanoid robots using motion capture database[END_REF] with stochastic obstacles [START_REF] Malone | Hybrid Dynamic Moving Obstacle Avoidance Using a Stochastic Reachable Set-Based Potential Field[END_REF][START_REF] Chiang | Runtime SES planning: Online motion planning in environments with stochastic dynamics and uncertainty[END_REF] or motion planning based on probability theory [START_REF] Shlomi Hacohen | Applying probability navigation function in dynamic uncertain environments[END_REF]. Chiang [START_REF] Chiang | Runtime SES planning: Online motion planning in environments with stochastic dynamics and uncertainty[END_REF] worked on the motion planning for mobile robots in environments with stochastic dynamics and uncertainty. The Monte Carlo simulation technique is used to predict stochastic obstacle motion and handle sensor uncertainty. In addition, the motion planning methods will fail if not moving the obstacles away, for instance in order to go from one room to another, door opening is unavoidable. Levihn [START_REF] Levihn | Planning with movable obstacles in continuous environments with uncertain dynamics[END_REF] studied the situations where the obstacles are removable. Although they are of great interest but are out of this thesis's scope.

To summarize, good solutions for solving practical robotic motion planning problems exist. They can be roughly divided into search-based planning algorithms represented by A* algorithms, sampling-based planning algorithms represented by RRT, and heuristic-based planning algorithms represented by GAs. They usually design the collision-free motion from an initial configuration to a target configuration which is supposed to be known. Very often, an optimization problem of certain user-defined objective functions, e.g. path length, reaching accuracy, energy consuming, carrying capacity, obstacles avoidance, etc., is formed under multiple constraints. Table 1.1 summarizes the motion planning work mentioned above in the past few decades. To the author's knowledge, only few of them investigate the on-line motion planning, mobile platform and end-effectors coordination at the same time [START_REF] Akli | Motion analysis of a mobile manipulator executing pick-up tasks[END_REF][START_REF] Vannoy | Real-Time Adaptive Motion Planning (RAMP) of Mobile Manipulators in Dynamic Environments With Unforeseen Changes[END_REF]. It means that the coordination solving and motion planning to produce natural and human-like behavior for redundant mobile manipulator systems and the on-line motion planning in dynamic environments are still open problems. Therefore, this thesis focuses on the human-like motion planning for personal assistant robot MDAMS.

Motion Tracking and Controllers

The traditional PID controller still plays an important role in the control of robot systems in cooperation with the newly brought methods, such as relative motion control [START_REF] Lewis | Trajectory generation for cooperating robots[END_REF], force-position control [START_REF] Heck | Switched position-force tracking control of a manipulator interacting with a stiff environment[END_REF], impedance control [START_REF] Erhart | An impedancebased control architecture for multi-robot cooperative dual-arm mobile manipulation[END_REF], taskpriority method [START_REF] Simetti | Whole body control of a dual arm underwater vehicle manipulator system[END_REF], etc. In addition, many advanced methods based on sliding mode [START_REF] Galicki | Real-time constrained trajectory generation of mobile manipulators[END_REF], Fuzzy logic, Neural Network (NN), Chaos, and Expert experience have been introduced [START_REF] Kao | Intelligent control for a dynamically stable two-wheel mobile manipulator[END_REF]. Besides, in order to take advantages of multiple control techniques, some hybrid controllers [START_REF] Vijay | PSO based neuro fuzzy sliding mode control for a robot manipulator[END_REF] have been also investigated, like adaptive fuzzy control [START_REF] Zhai | Adaptive Fuzzy Control of Multilateral Asymmetric Teleoperation for Coordinated Multiple Mobile Manipulators[END_REF], robust adaptive fuzzy control [START_REF] Begnini | A robust adaptive fuzzy variable structure tracking control for the wheeled mobile robot: Simulation and experimental results[END_REF], and robust adaptive NN control [START_REF] Sam | Robust adaptive NN feedback linearization control of nonlinear systems[END_REF], etc.

Relative Motion Control

For a multi-manipulator system, many motion determination and control methods have been presented by introducing the notion of relative motion [START_REF] Jamisola | Guaranteeing task prioritization for redundant robots given maximum number of tasks and singularities[END_REF].

Master-Slave (MS) [START_REF] Samad | Position and force control of coordinated multiple arms[END_REF] and Leader-Follower (LF) [START_REF] Hirata | Leader-follower type motion control algorithm of multiple mobile robots with dual manipulators for handling a single object in coordination[END_REF] are two famous relative motion-based approaches which are used to control multi-manipulator systems.

Lewis [START_REF] Lewis | Trajectory generation for cooperating robots[END_REF] formulated two Jacobians which related the joint rates of the entire system to the relative motion of grippers. Hence, two robots are treated as a single redundant system to control two robots which cooperates to perform an assembly task. However, the mobile platforms are considered to be fixed. Choi [START_REF] Choi | Two-arm cooperative assembly using force-guided control with adaptive accommodation[END_REF] constructed a complex relative Jacobian which represents the motion of a fixed tool manipulator with respect to a fixed object manipulator using conventional propagation procedure. Chiacchio [START_REF] Chiacchio | Task-Oriented Kinematic Control of Two Cooperative 6-DOF Manipulators[END_REF] introduced a relative Jacobian in terms of two single arm's Jacobians and used the pseudo-inverse Jacobian technique for two cooperative fixed 6-DoFs manipulators. Lee [START_REF] Lee | Relative Impedance Control for Dual-Arm Robots Performing Asymmetric Bimanual Tasks[END_REF] used a similar relative Jacobian technique with the end-effector motion being defined by the relative motion between two end-effectors. However, only the relative motion between two end-effectors is controlled. Jamisola [START_REF] Jamisola | A more compact expression of relative Jacobian based on individual manipulator Jacobians[END_REF][START_REF] Jamisola | Modular relative Jacobian for dual-arms and the wrench transformation matrix[END_REF] introduced a relative Jacobian for fixed parallel dual-arm manipulators in terms of individual manipulators' Jacobians. Besides, the author extends the dual-arm system to a triple-arm cooperating parallel system. Mashali [START_REF] Mashali | Mobile manipulator dual-trajectory tracking using control variables introduced to end-effector task vector[END_REF] introduced a dualtrajectory tracking strategy for mobile manipulators. Two new joint-dependent control variables D and α are defined to augment the task vector. However, it is for a mobile manipulator with a single arm and the calculation of augmented variables D and α is complicated.

Task Priority-based Motion Control

As the complexity of target task increases, the concept of task-priority which regulates multiple tasks in order is introduced by Nakamura [START_REF] Nakamura | Taskpriority based redundancy control of robot manipulators[END_REF]. In that work, the author deals with a simple planar three links manipulator and considers the end-effector's motion be prior to the orientation using traditional kinematics. Baerlocher [START_REF] Baerlocher | Task-priority formulations for the kinematic control of highly redundant articulated structures[END_REF] presented two types of formulations for the kinematic control of highly redundant articulated robots, and validated a complex articulated humanlike 3D figure control by defining three subtasks. Basile [START_REF] Basile | Taskoriented motion planning for multi-arm robotic systems[END_REF] proposed a taskoriented path planning and IK solving method for the cooperative manipulators. But it only deals with the end-effector oriented IK solving with the real motions of the mobile platforms being fixed tracks. Lee [START_REF] Lee | Relative task prioritization for dual-arm with multiple, conflicting tasks: Derivation and experiments[END_REF] introduced four subtasks with two different priority levels. It solves the second level subtasks identically.

Owen [START_REF] Owen | On-line trajectory resolution for two-armed systems with conflicting performance criteria[END_REF] introduced a method for selecting the null-space motion based on torque limits and conflicting performance criteria. The author in [START_REF] Wang | A Unified Dynamic Control Method for a Redundant Dual Arm Robot[END_REF] designed two control laws at velocity and acceleration level, respectively, for fixed dualarm robots. However, it controls only one single arm, while another arm will not move.

After the necessary tasks being accomplished, the redundant joints are often used to avoid joint limit, velocity/acceleration/torques saturation, singularity and obstacles [START_REF] Owen | Acceleration and torque redistribution for a dual-manipulator system[END_REF][START_REF] Nazari | Failure recovery of manipulators under joint velocity limits using constrained optimization and partitioned Jacobian matrix[END_REF]. The common methods are the saturation in null space (such as the Gradient Projection Method (GPM)) and the Weighted Least Norm method (WLN). The former introduces a scalar function that is to be optimized, and the latter is based on the least-norm method by introducing a weight matrix. Flacco [START_REF] Flacco | Control of Redundant Robots Under Hard Joint Constraints: Saturation in the Null Space[END_REF] formulated a Saturation in the Null Space (SNS) algorithm for joint limit avoidance. Joint angle and joint velocity are formulated in real time while avoiding the boundary. Chan [START_REF] Fung | A weighted least-norm solution based scheme for avoiding joint limits for redundant joint manipulators[END_REF] proposed a WLN method which uses the joint limit function's gradient as the parameter to modulate the weight matrix. Besides, the author introduces a configuration and end-effector based self motion and only dampened the motion in the direction of joint limit. Wang [START_REF] Wang | Inverse kinematics and control of a dof redundant manipulator based on the closedloop algorithm[END_REF] studied the IK solving of a redundant 7-DoFs manipulator based on Closed-loop inverse kinematics (CLIK) algorithm via the null space projection to avoid joint limit. Jia [START_REF] Jia | Coordinated motion control of a nonholonomic mobile manipulator for accurate motion tracking[END_REF] developed a kinematic control method with adaptive motion distribution with the manipulability weighted pseudoinverse Jacobian. Antonelli [START_REF] Antonelli | Prioritized closed-loop inverse kinematic algorithms for redundant robotic systems with velocity saturations[END_REF] proposed a prioritized task based kinematic control with joint velocity commands being limited by dynamically chosen values. Huang [START_REF] Huang | Clamping weighted least-norm method for the manipulator kinematic control: Avoiding joint limits[END_REF] introduced a unified redundancy solving method which combined the WLN technique with clamping concept. Therefore, the joint limit is avoided by damping the direction towards limits and forcing the joints away from their limits. Furthermore, it used continuous weighted factor to improve the robustness. Hu [START_REF] Hu | Task-priority redundancy resolution for co-operative control under task conflicts and joint constraints[END_REF] designed a framework to handle multi-tasking conflicts for dual-arm robots by constructing a relative Jacobian. However, the proposed recursive joint limit avoidance solving is a little complicated.

Two Level Motion Planning and Tracking

Most of the motion planning methods mentioned in Subsection 1.2.2 design the trajectory in the open loop. Many works focus on the close loop motion planning with tracking controller to improve the movement performance. Brock [START_REF] Brock | Elastic Strips: A Framework for Motion Generation in Human Environments[END_REF] presented a framework which combines the task-oriented redundancy solving method and the local controller in the presence of moving obstacles. In that paper, it supposes the task behavior is previously planned. Then, additional behaviors such as posture, obstacle avoidance, constraints are introduced and projected into the null space of task behavior. As a result, the previously planned motion is modified in real time to realize additional behaviors without violating the task behavior. The difficulty comes from the additional behaviors' specifications in various scenarios and their gradient calculations. In addition, it focuses mainly on the redundancy solving of high DoFs robotic systems. Yoshikawa [START_REF] Yoshikawa | Dynamic manipulability of robot manipulators[END_REF] defined the concept of dynamic manipulability measure of robot arms by taking the arm dynamics into consideration. The joint driving force and the acceleration of the end-effector are used to quantitatively measure the manipulating ability in positioning and orienting the end-effectors. Mohri [START_REF] Mohri | Sub-optimal trajectory planning of mobile manipulator[END_REF] introduced the dynamics into the trajectory planning problem of a nonholonomic mobile manipulator by forming an optimal control problem using the concept of the order of priority and the gradient function which are synthesized in hierarchical manner. Karray [START_REF] Karray | Intelligent mobile manipulator navigation using hybrid adaptive-fuzzy controller[END_REF] derived a fuzzy controller to avoid obstacles in 3D space for the mobile manipulator by updating right and left wheels' velocities assuming that the desired trajectories of mobile platform and end-effectors are known in a static environment. Galicki [START_REF] Galicki | Real-time constrained trajectory generation of mobile manipulators[END_REF] applies the Lyapunov stability theory to design a group of non-linear on-line trajectory generators for mobile manipulators. The author introduces an extended task error (then obtain the non-singular terminal sliding manifold in task space) and a projection term onto the null space of the extended Jacobian. Nicolis [START_REF] Nicolis | Constraint-Based and Sensorless Force Control With an Application to a Lightweight Dual-Arm Robot[END_REF] applied the constraint-based trajectory generation and proposed a control frame for sensor-less execution of a force control task for a dual-arm redundant manipulator. Korayem [START_REF] Korayem | Maximum Allowable Load of Mobile Manipulator in the Presence of Obstacle Using Non-Linear Open and Closed Loop Optimal Control[END_REF] developed an open loop control path planning method and a close loop optimal controller to find maximum load carrying capacity of a two link planar nonholonomic wheeled mobile manipulator (WMM) in the presence of environmental obstacles. In particular, it applies the obstacle avoidance in the objective function that leads to a two-point boundary value problem, and it solves the iterative solution of nonlinear Hamilton-Jacobi-Bellman (HJB) equation using Galerkin method to design an optimal nonlinear state feedback controller. The maximum load is limited by limiting torque and jerk on joints. On the other hand, the solution for the maximum allowable load depends on the type of user-defined constraints for redundancy solving. Korayem [START_REF] Korayem | The SDRE control of mobile base cooperative manipulators: Collision free path planning and moving obstacle avoidance[END_REF] developed a control design (path planning) for a wheeled mobile manipulator among multiple obstacles using the statedependent Riccati equation (SDRE) considering holonomic and non-holonomic constraints. It solves only obstacle avoidance of the mobile platform and endeffectors without considering the redundancy solving and reasonable posture design.

The linguistic reasoning fuzzy logic method simplifies the motion planning and tracking process by using expert experiences. Son [START_REF] Son | Intelligent rule-based sequence planning algorithm with fuzzy optimization for robot manipulation tasks in partially dynamic environments[END_REF] proposed an intelligent rule-based sequence path planning algorithm by introducing a number of rules and by optimizing a fuzzy entropy for a part-bring task with mobile manipulators in 3D partially dynamic environments. Nishiguchi [START_REF] Nishiguchi | Theatrical approach: Designing human-like behaviour in humanoid robots[END_REF] analyzed the human-like behavior of a wheeled humanoid robot that acts as an actor in a human-robot interaction (HRI) theater. Ten rules are extracted for the humanoid robot to realize natural and human-like robot behaviors. The difficulty is to formulate the fuzzy rules to cover all the potential possibilities for high DoF systems.

Force Control

In addition to the above control methods, many compliant and force feedback controllers have been introduced to study robot-environment interaction [START_REF] Bonitz | Internal force-based impedance control for cooperating manipulators[END_REF][START_REF] Pushpraj | Impedance Control of Space Robots Using Passive Degrees of Freedom in Controller Domain[END_REF][START_REF] Bjerkeng | Fast dual-arm manipulation using variable admittance control: Implementation and experimental results[END_REF][START_REF] Fabrizio | Real-Time Computation of Distance to Dynamic Obstacles With Multiple Depth Sensors[END_REF]. Bonitz [START_REF] Bonitz | Internal force-based impedance control for cooperating manipulators[END_REF] introduced an internal force-based impedance control scheme for cooperating manipulators. It enforces a relationship between the velocity of each manipulator and the internal force on the manipulated objects. Each manipulator is directly given the properties of an impedance by the controller, thus eliminating the gain limitation inherent in the structure of previously proposed schemes. The controller uses the forces sensed at the end-effectors to compensate for the effects of the objects' dynamics and to compute the internal force using only kinematic relationships. Mattioli [START_REF] Mattioli | Interaction Force Reconstruction for Humanoid Robots[END_REF] introduced a method for reconstructing interaction forces and localizing the contact point for humanoids under the static hypothesis. Many hybrid force-motion control laws have been proposed [START_REF] Yang | Adaptive hybrid position/force control for robotic manipulators with compliant links[END_REF][START_REF] Gueaieb | A Robust Hybrid Intelligent Position/Force Control Scheme for Cooperative Manipulators[END_REF][START_REF] Whitney | Historical Perspective and State of the Art in Robot Force Control[END_REF][START_REF] Yoshikawa | Dynamic hybrid position/force control of robot manipulators-Description of hand constraints and calculation of joint driving force[END_REF] which cover the motion and force tracking at the same time.

Advanced Controllers

Another challenge for controlling the robotic system comes from the uncertainties, like modeling imprecision, unforeseen dynamics, measurement noise, etc. There are many ways to deal with those uncertainties, such as the robust control assuming bounded known function of the uncertainty [START_REF] Londhe | Robust nonlinear PID-like fuzzy logic control of a planar parallel (2PRP-PPR) manipulator[END_REF], uncertainties observer, probabilistic approaches, uncertainties modeling using neural network [START_REF] Shuzhi | Adaptive neural network control of robot manipulators in task space[END_REF] or fuzzy logic system [START_REF] Baigzadehnoe | On position/force tracking control problem of cooperative robot manipulators using adaptive fuzzy backstepping approach[END_REF].

In [START_REF] Sun | Adaptive synchronized control for coordination of multirobot assembly tasks[END_REF], an adaptive synchronized control algorithm is proposed for coordination of multiple manipulators in assembly tasks. Each robot is required to track its desired trajectory while maintaining a certain kinematic relationship with the other robots through motion synchronization. Boukattaya [START_REF] Boukattaya | On trajectory tracking control for nonholonomic mobile manipulators with dynamic uncertainties and external torque disturbances[END_REF] presented an effective adaptive control strategies to investigate the trajectory tracking problem of mobile manipulators. The robots are subject to non-holonomic constraints, with the presence of external torque disturbances and dynamic uncertainties. Yang [START_REF] Yang | Neural Control of Bimanual Robots with Guaranteed Global Stability and Motion Precision[END_REF] designed an adaptive neural control law for the dual-arm robotic systems to guarantee global stability under prescribed tracking performance. Karray [START_REF] Karray | Intelligent mobile manipulator navigation using hybrid adaptive-fuzzy controller[END_REF] proposed an adaptive controller for a mobile manipulator with model uncertainties and external disturbances with obstacle avoidance. Aleksandar [START_REF] Jevtić | Robot motion adaptation through user intervention and reinforcement learning[END_REF] studied the motion adaption of a robot by combining human intervention and autonomous learning.

Ge [START_REF] Ge | Adaptive static neural network control of robots[END_REF] introduced the GL matrices and operator to facilitate the stability analyses in neural network controller. Then, Ge [START_REF] Ge | Direct adaptive neural network control of robots[END_REF] proposed a direct adaptive neural network control for the robots which means there is no need for the inverse dynamical evaluation and no need for the time-consuming training process. Shuzhi [START_REF] Shuzhi | Adaptive neural network control of robot manipulators in task space[END_REF] introduced an adaptive neural network control for robot manipulators in task space. However, because of the inverse solving from the task space to the joint space the author only considered the non-redundant robot manipulators. Li [START_REF] Li | Adaptive Robust Motion/Force Control of Holonomic-Constrained Nonholonomic Mobile Manipulators[END_REF] developed systematically an unified controller for a class of mechanical systems with both holonomic and non-holonomic constraints. Besides, the author decoupled the adaptive robust motion and force control with both parameter uncertainties and external disturbances. By extending [START_REF] Shuzhi | Adaptive neural network control of robot manipulators in task space[END_REF], Qian [START_REF] Qian | Design and Control of a Personal Assistant Robot[END_REF] formulated an adaptive RBF neural network (RBFNN) controller for the mobile manipulator based on the universal approximation theorem. The result in [START_REF] Li | Adaptive Robust Motion/Force Control of Holonomic-Constrained Nonholonomic Mobile Manipulators[END_REF] is employed to solve the contact problem.

In addition, many observer-based techniques have been introduced to estimate the uncertainties and disturbances in industrial sectors [START_REF] Zhou | Observer-based adaptive fuzzy tracking control of nonlinear systems with time delay and input saturation[END_REF][START_REF] Oubabas | Interval sliding mode observer design for linear and nonlinear systems[END_REF][START_REF] Chen | Disturbance-Observer-Based Control and Related Methods #x2014;An Overview[END_REF][START_REF] Wayse | Uncertainty and disturbance estimation using inertial delay observer with integral-sliding mode control[END_REF][START_REF] Sun | Disturbance-Observer-Based Robust Backstepping Attitude Stabilization of Spacecraft Under Input Saturation and Measurement Uncertainty[END_REF][START_REF] Zhao | A Novel Extended State Observer for Output Tracking of MIMO Systems With Mismatched Uncertainty[END_REF][START_REF] Zhao | Sliding mode control for a two-joint coupling nonlinear system based on extended state observer[END_REF][START_REF] Yang | Back-stepping control of two-link flexible manipulator based on an extended state observer[END_REF][START_REF] Krasnova | Sigma function in observer design for states and perturbations[END_REF]. Extended state observer [START_REF] Zhao | A Novel Extended State Observer for Output Tracking of MIMO Systems With Mismatched Uncertainty[END_REF][START_REF] Zhao | Sliding mode control for a two-joint coupling nonlinear system based on extended state observer[END_REF][START_REF] Yang | Back-stepping control of two-link flexible manipulator based on an extended state observer[END_REF][START_REF] Krasnova | Sigma function in observer design for states and perturbations[END_REF] is one of these techniques which introduces an extra state variable to estimate the uncertainties.

The universal approximation property of fuzzy inference systems (FIS) is also used to cope with the uncertainties and disturbances. Benzaoui [START_REF] Benzaoui | Trajectory tracking with obstacle avoidance of redundant manipulator based on fuzzy inference systems[END_REF] applied FIS to model the redundant manipulator system with unknown dynamics. Baigzadehnoe [START_REF] Baigzadehnoe | On position/force tracking control problem of cooperative robot manipulators using adaptive fuzzy backstepping approach[END_REF] designed an adaptive fuzzy back-stepping approach to deal with the unknown dynamical models and unknown external disturbances. All robot manipulators are assumed to be non-redundant and have equal DoFs. Rekha [START_REF] Raja | Motion planning of a mobile manipulator using fuzzy controller to dexterity measures[END_REF] proposed a motion planning approach for a redundant mobile manipulator based on Takagi-Sugeno fuzzy system to track the trajectory of the end-effector in coordination with the mobile platform by maximizing the manipulability criterion. However, many sources of uncertainties [START_REF] Hagras | Type-2 FLCs: A New Generation of Fuzzy Controllers[END_REF] occur when applying the fuzzy logic controller (FLC). Type-2 FLC [START_REF] Mendel | Interval Type-2 Fuzzy Logic Systems Made Simple[END_REF][START_REF] Kumar | Evolving an interval type-2 fuzzy PID controller for the redundant robotic manipulator[END_REF][START_REF] Sanchez | Generalized Type-2 Fuzzy Systems for controlling a mobile robot and a performance comparison with Interval Type-2 and Type-1 Fuzzy Systems[END_REF][START_REF] Hagras | A hierarchical type-2 fuzzy logic control architecture for autonomous mobile robots[END_REF] offers a powerful method to solve the uncertainties by introducing an extra dimension based on the type-1 FLC. In other words, the type-2 FLC fuzzifies the membership values of type-1. However, when the number of DoFs increases, the fuzzy rules explodes exponentially.

According to the literature survey, motion planning and tracking, force control and adaptive control have been widely studied in recent decades. They are of great interest and challenge to introduce a real personal assistant in the market. Qian [START_REF] Qian | Design and Control of a Personal Assistant Robot[END_REF] has studied the motion and force control of robot MDAMS, and this thesis is the continuation. We focus on the human-like motion planning and tracking via coordinating the mobile platform and the upper manipulator system for the designed personal assistant MDAMS.

PRELIMINARIES

In this section, some preliminaries on robotics which will be used in the rest of this thesis are given.

Forward Kinematics Background 1.3.1.1 Modified Denavit-Hartenberg Method

The Modified Denavit-Hartenberg (MDH) method relates the frames which are fixed on each robot link through the following transformation matrix

T i i-1 = Rot(x, α i-1 )T rans(x, a i-1 )Rot(z, θ i )T rans(z, d i ) (1.1)
with four parameters α i-1 , a i-1 , θ i and d i by a sequence of rotations Rot(•, •) and translations T rans(•, •) along certain axes. Four parameters of the MDH method are defined as a i-1 : distance between (z i-1 , z i ) measured along axis x i-1 ,

d i : distance between (x i-1 , x i ) measured along axis z i , α i-1 : angle between (z i-1 , z i ) measured about axis x i-1 ,
θ i : angle between (x i-1 , x i ) measured about axis z i .

Orientation Tracking Error

If angular velocity ω is known, the orientation in task space can be expressed as q = 1 2 B(q)ω using unit quaternion q = (η, ). The corresponding orientation Jacobian [START_REF] Xian | Task-Space Tracking Control of Robot Manipulators via Quaternion Feedback[END_REF] can be formulated as

q = J q θ (1.2)
where

J q ∆ = 1 2 B(q)J ω (θ) is the attitude Jacobian, B(q) ∆ =       -T ηI 3 -ˆ       ∈ R 4×3
and < • > is a skew-symmetric matrix. Then, the rotation matrix in terms of the unit quaternion is given as follows:

R(η, ) =            2(η 2 + 2 x ) -1 2( x y -η z ) 2( x z + η y ) 2( x y + η z ) 2(η 2 + 2 y ) -1 2( y z -η x ) 2( x z -η y ) 2( y z + η x ) 2(η 2 + 2 z ) -1            . (1.3)
Assume η ≥ 0, this corresponds to an angle θ ∈ [-π, π], thus any rotation can be described without singularity.

To quantify the difference between the current and desired orientations of end-effector, define the rotation matrix error as

R ∆ = R T d R (1.4)
where R d and R are respectively the desired and real rotation matrices. Then, the tracking error e q ∈ R 4 expressed by unit quaternion can be extracted from R as follows:

e q =       e o e v       =       ηη d + T d η d -η d -ˆ d       (1.5)
where (η, ) and (η d , d ) are respectively the real and desired orientations, e T q e q = e 2

o + e T v e v = 1.

Kane's Method for Dynamic Modeling

Kane's method [START_REF] Kane | Spacecraft dynamics[END_REF] is introduced in the following.

Definition 1.2 (Generalized speed) For a system S whose configuration in a reference frame {A} is characterized by n generalized coordinates (q 1 , ..., q n ), it is often convenient to introduce n quantities called generalized speeds for S in {A}, as linear combinations of (q 1 , ..., q n ) by means of equations of the following form

u r n s=1 Y rs qs + Z r , r = 1, ..., n (1.6)
where n is the number of generalized speed.

Definition 1.3 (Partial velocity)

The partial velocities of linear or angular velocities (•) i of body B i in system S are obtained using the following formula:

r (•) i = ∂ (•) i ∂u r , r = 1, ..., n, i = 1, ..., N (1.7)
where N is the number of bodies in the mechanical system.

Definition 1.4 (Generalized active forces) Given a system S consisting of N p particles p 1 ,..., p N p . Suppose u r (r = 1, ..., n) are the generalized speeds. Let r v i be the r-th partial velocity of particle p i in frame {A}, and let R i be the resultant of all contact and body forces acting on particle p i . Then, F 1 ,...,F n are called generalized active forces for S in frame {A} which are defined as

F r N p i=1 ( r v i R i ), r = 1, ..., n. (1.8)
Definition 1.5 (Generalized inertia forces) Given a system S consisting of N p particles p 1 , ..., p N p . Suppose u r (r = 1, ..., n) are the generalized speeds. Let r v i be the r-th partial velocity of particle p i in frame {A}, and let R * i be the inertia force p i in {A} which is expressed as follows

R * i -m i a i , (i = 1, ..., N p ) (1.9)
where m i is the mass of particle p i and a i is the acceleration of particle p i in {A}.

F * 1 ,...,F * n are called generalized inertia forces for S in {A} which are defined as

F * r N p i=1 ( r v i R * i ), r = 1, ..., n. (1.10)
Besides, the contribution (F * r ) k to F * r of all inertia forces for the particles of a rigid body B k , (k = 1, ..., N ) can be expressed in terms of R * k and T * k which are defined as

R * k -m k a * k , (1.11) T * k -I k -ω k × I k ω k (1.12)
where m k is the mass of body B k . k and ω k are respectively the angular acceleration and velocity of body B k in {A}, I k is the central inertia dynamic of B k . Then the generalized inertia forces can be expressed as

F * r N k=1 [ R * k ( r v k ) + T * k ( r ω k )], r = 1, ...,
F r + F * r = 0, r = 1, ..., n.
(1.14)

Kinematic Control of Non-holonomic Mobile Platform

The non-holonomic mobile platform can be controlled kinematically using the result in [START_REF] Fierro | Control of a nonholonomic mobile robot: backstepping kinematics into dynamics[END_REF]. The motion of the mobile platform can be characterized using (x, y, φ). (x, y) and φ are respectively the position and orientation of the mobile platform. Introduce θ v = (θ r , θ l ), namely the rotational angles of the right and left wheels of mobile platform. We can choose here

v = (v, ω) = (v 1 , v 2 )
to represent the velocity of the mobile platform, where v r = (v r , ω r ) is the corresponding reference velocity. The complete equations of the nonholonomic mobile platform' motion for a mobile manipulator are given in the following.

θv = S(θ v )v, (1.15)
Mv v + Cv v + Ḡv + Qv + τdv = τ v (1.16)
where Mv is the symmetric and positive definite inertia matrix, Cv is the centripetal and Coriolis matrix, Ḡv is the friction vector, Qv is the coupling vector from the upper manipulator, τdv is the unknown bounded disturbances including unstructured dynamics and τ is the input vector.

S(θ v ) =            cosφ 0 sinφ 0 0 1            .
Introduce the tracking error vector e p = (e 1 , e 2 , e 3 ) = T e (θ vrθ v ):

           e 1 e 2 e 3            =            cosφ sinφ 0 -sinφ cosφ 0 0 0 1                       x r -x y r -y φ r -φ            (1.17)
where (x r , y r , φ r ) is the reference trajectory of the mobile platform. And the derivative of the error is

ėp =            v 2 e 2 -v 1 + v r cose 3 -v 2 e 1 + v r sine 3 -v 2 + ω r            . (1.18)
To achieve the asymptotic position tracking ability of the mobile platform, one can convert the dynamic control problem into the kinematic control problem

v = u v (1.19) u v = vc + k 4 (v c -v) (1.20)
where k 4 is a definite positive diagonal matrix. v c is defined as

v c =       v r cose 3 + k 1 e 1 ω r + k 2 v r e 2 + k 3 v r sine 3       . (1.21) Its time derivative is vc =       vr cose 3 ωr + k 2 vr e 2 + k 3 vr sine 3       +       k 1 0 -v r sine 3 0 k 2 v r k 3 v r cose 3       ėp (1.22)
where k i (i = 1, 2, 3) are definite positive gains.

Lemma 1.1 Given a nonholonomic system (Eqs. (1.15) and (1.16)) with n generalized coordinates θ, m independent constraints, r actuators, let the following assumptions hold: A.1. The number of actuators is equal to the number of DoFs (i.e.

r = n -m). A.2.
The reference linear velocity is nonzero and bounded, v r > 0 for all t.

The angular velocity w r is bounded. A.3. A smooth auxiliary velocity control input

v c is given by Eq. (1.21)

. A.4. [k 1 k 2 k 3 ]
T is a vector of positive constants. A.5. k 4 is a sufficiently large positive constant. Let the nonlinear feedback control u v ∈ R n-m given by Eq. (1.20) be used and the vehicle input commands according to Eq. (1.16). Then, the origin e p = 0 is uniformly asymptotically stable, and the velocity vector of the mobile platform satisfies v → v c as t → ∞.

Non-dominated Sorting Scheme

The definition of Dominate and Non-dominated for a multi-objective optimization problem is given in the following [START_REF] Da Graça Marcos | A multi-objective approach for the motion planning of redundant manipulators[END_REF].

Definition 1.7 (Dominate and Non-Dominated) If all objective functions are for minimization, a feasible solution s 1 dominates another feasible solution s 2 (s 1 s 2 ) in the Pareto-optimal sense if, and only if, s 1 performs better in at least one objective and, at least, as good as s 2 in the rest:

s 1 s 2 ⇔ ∀β ∈ {1, ..., n obj } : f β (s 1 ) ≤ f β (s 2 ) and ∃λ ∈ {1, ..., n obj } : f λ (s 1 ) < f λ (s 2 )
where n obj is the number of objective functions. If none of the two feasible solutions, s 1 and s 2 , dominates the other, then they are said to be non-dominated. Definition 1.8 (Fast non-dominated Sorting [START_REF] Deb | A fast and elitist multiobjective genetic algorithm: NSGA-II[END_REF]) Algorithm 1 illustrates the fast non-dominated sorting scheme. The for loop (lines 1-13) assigns the number of individuals that dominate each individual and forms the first front with nondominated individuals. The while loop (lines 14-25) assigns incrementally the following fronts among the dominated individuals.

Conclusions

This chapter gives the state of the art in robotics and preliminaries which will be used in this thesis. In the following chapters, system modeling, motion planning and tracking problems will be investigated of the designed mobile dual-arm manipulator system.

Algorithm 1 Fast non-dominated Sorting Scheme.

1: for each p ∈ P do 2:

S p = ∅, n p = 0 3:
for each q ∈ P do 4:

if (p ≺ q) then 5:

S p = S p ∪ {q} {if p dominates q} 6:
else if (q ≺ p) then 7:

n p = n p + 1 {if q dominates p} 8: end if 9:
if n p = 0 then 10:

p rank = 1, F 1 = F 1 ∪ {p} {p belongs to the first front F 1 } 11: end if 12:
end for 13: end for i = 1 {initialize the front counter} 14: while F i ∅ do for each q ∈ S p do 18:

n q = n q -1 19:
if n q = 0 then 20:

q rank = i + 1, Q = Q ∪ {q}
i = i + 1, F i = Q 25: end while Chapter 2

SYSTEM DESCRIPTION AND MODELING

INTRODUCTION

The construction of a concise and precise mathematical model is the fundamental to study the robotic system. Many methods have been introduced in Chapter 1. In [START_REF] Qian | Design and Control of a Personal Assistant Robot[END_REF], system conception and dynamic model based on Lagrangian formulations have been completed. However, the calculations of energy and its partial derivatives become complex as the number of DoFs increases. Besides, an adaptive RBFNN controller has been designed in that work to cope with the uncertainties and disturbances, but its effectiveness remains to be validated.

In this Chapter, firstly the kinematic modeling of the designed MDAMS is constructed. The MDH method is used to establish the kinematic model with only four parameters in Subsection 2.2.1. Then, Lagrangian formulations and the adaptive RBFNN controller are recalled in Subsection 2.2.2. The validation of the adaptive RBFNN controller on the virtual prototype in ADAMS via MAT-LAB/SIMULINK and ADAMS co-simulation is realized. In order to overcome the shortcomings of Lagrangian formulations, Kane's method [START_REF] Kane | Spacecraft dynamics[END_REF] is used to construct the dynamic model for MDAMS in Subsection 2.2.3. Finally, the physical tip-over stability is studied based on the constructed Kane's model and a Lyapunov stable controller is proposed using the back-stepping technique. [START_REF] Gerndt | Humanoid Robots in Soccer: Robots Versus Humans in RoboCup 2050[END_REF] is the body frame with its origin locating at P i , and frames Σ e and Σ e are end-effectors' (EEs) frames with a translation along axis z 12 and z 19 , respectively. P e and P e are the palm centers. l 0 is the translation of frame dimension of MDAMS. In particular, Σ 3 is the mobile platform's frame which locates initially at (x 0 , y 0 ). (x, y) and φ are respectively the mobile platform's position and orientation in frame Σ 0 (see Fig. 2.2).

Σ i (i = 1, ...,
The MDH method (see Section 1.3.1.1) relates frame Σ i with respect to frame Σ i-1 via the transformation matrix T i i-1 which can be written as

T i i-1 =       R i i-1 P i i-1 0 1       (2.1)
through a sequence of rotations and translations to characterize the mechanical system with only four parameters α i-1 , a i-1 , θ i and d i . R i i-1 and P i i-1 are respectively the rotation matrix and position vector of frame Σ i with respect to frame Σ i-1 which have the following expressions

R i i-1 =            cosθ i -sinθ i 0 cosα i-1 sinθ i cosα i-1 cosθ i -sinα i-1 sinα i-1 sinθ i sinα i-1 cosθ i cosα i-1            , (2.2) Table 2.1 -MDH Parameters of MDAMS. Body/Frame Σ i α i-1 a i-1 θ i0 d i 1 90 • 0 0 • b v /2 2 90 • 0 0 • -b v /2 3 - - - - 4 0 • 0 0 • l 1 + l 2 5 -90 • 0 -90 • 0 6 0 • l 3 0 • -(l 3 + l 4 ) 13 0 • l 3 0 • (l 3 + l 4 ) 7/14 -90 • 0 90 • 0 8/15 -90 • 0 -90 • 0 9/16 -90 • 0 -90 • l 5 + l 6 10/17 -90 • l 7 -180 • 0 11/18 -90 • -l 8 90 • 0 12/19 -90 • 0 -90 • l 9 e/e' 0 • 0 0 • l 10
and

P i i-1 =            a i-1 -d i sinα i-1 d i cosα i-1            . ( 2.3)
The detailed values of α i-1 , a i-1 , θ i and d i for each frame are listed in Table 2.1, where r v and b v are respectively the radius of each driving wheel and the distance between the two driving wheels.

A virtual prototype is constructed in ADAMS for numerical validation via MATMAB/SIMULINK and ADAMS co-simulation and a mechanical system is under consideration for real robot construction in Fig. 2

Forward Kinematics

Define the generalized variable θ as

θ ∆ = θ T m θ T ω θ T R θ T L T (2.4)
where θ m ∈ R n m expresses the non-holonomic mobile platform's motion which can be chosen as (x, y, φ) or (θ r , θ l ). Here, θ r and θ l are respectively the joint position of the right and left driving wheels of mobile platform. θ w ∈ R n w represents the joints in the waist. θ R ∈ R n L and θ L ∈ R n L represent respectively the right and left arms' joint positions. In this thesis, n m = 2(or 3), n w = 2, n R = 7,

n L = 7, n = n m + n w + n R + n L .
The generalized speed is defined as

u ∆ = θ = θT m θT ω θT R θT L T ∈ R n . (2.5)
u r (r = 1, ..., n) and ur are respectively the r-th generalized speed and acceleration.

Note

θ o ∆ = θ T m θ T w T
. For the right EE, the transformation matrix is

T R = T 3 0 T 4 3 T 5 4 T 6 5 T e 6 (θ o , θ R ). (2.6)
Then, the motion of the right EE can be expressed as

ẋR = J vR 0 n L u = J vR u (2.7)
where x R and ẋR ∈ R m are respectively the position and velocity of the right EE in frame Σ 0 , J vR ∈ R m×(n m +n w +n R ) and J vR ∈ R m×n are the corresponding Jacobians of the right EE. Similarly, for the left EE, the transformation matrix is

T L = T 3 0 T 4 3 T 5 4 T 13 5 T e 13 (θ o , θ L ). (2.8)
Then, the motion of the left EE can be expressed as

ẋL = J vLo 0 n R J vLa u = J vL u (2.9)
where x L and ẋL ∈ R m are respectively the position and velocity of the left EE in frame Σ 0 , J vLo ∈ R m×(n m +n w ) , J vLa ∈ R m×n R and J vL ∈ R m×n are the corresponding Jacobians of the left EE in frame Σ 0 . Here after we note J R ∆ = J vR and J L ∆ = J vL .

In addition, EEs' orientation angular velocities can be represented by

ω rl = J ω u (2.10)
where

ω rl =       ω R ω L       and J ω =       J ω R J ω L       . J ω i (i = R, L)
is the EE's orientation Jacobian. If multi-fingered hand is installed at the end of each arm [START_REF] Qian | Design and Control of a Personal Assistant Robot[END_REF], the kinematics can be derived similarly by introducing a new parameter θ f ∈ R n f using the MDH method, where n f is the number of DoFs of two multi-fingered hands. Then, the generalized variable becomes θ

∆ = θ T m θ T b θ T f T
, where

θ b ∆ = θ T w θ T R θ T L T .

Velocity and Acceleration Formulations

This part formulates linear and angular velocities and accelerations for each body B i of MDAMS. Note x i , y i , and z i as the three unit vectors of frame Σ i in the world frame Σ 0 . ω i is the angular velocity of body B i in the world frame Σ 0 ,

v i ∆ = v * i
is the linear velocity of the center of mass (CoM) of body B i in the world frame Σ 0 , (i = 1, ..., [START_REF] Gerndt | Humanoid Robots in Soccer: Robots Versus Humans in RoboCup 2050[END_REF]. V p i is the linear velocity in the world frame Σ 0 of point P i which locates at the origin of frame Σ i . Note r p i and r * i as the origin vector of frame Σ i and the position vector of link i's CoM which are listed respectively in Tables A.1 and A.4. We note r i ∆ = r * i throughout the process of formulation. We also note i as the angular acceleration of body B i , and a i ∆ = a * i as the linear acceleration of body B i 's CoM, (i = 1, ..., [START_REF] Gerndt | Humanoid Robots in Soccer: Robots Versus Humans in RoboCup 2050[END_REF], a p i as the linear acceleration of origin P i in the world frame Σ 0 . Unless otherwise stated, all vectors throughout this thesis are expressed in the world frame Σ 0 .

Non-holonomic Mobile Platform The mobile platform in Fig. 2.2 is a nonholonomic system. Its angular velocity is

ω 3 = r v b v (u 1 -u 2 ) z 0 . (2.11)
The linear velocity of the mobile platform's CoM is the same as that of frame Σ 3 , i.e. v 3 = v 0 which is expressed as follows.

v 3 = r v 2 cosφ 0 (u 1 + u 2 ) x 0 + r v 2 sinφ 0 (u 1 + u 2 ) y 0 . (2.12)
And the angular velocities of the right and left wheels are respectively

ω 1 = r v b v (u 1 -u 2 ) z 0 + u 1 z 1 , (2.13)
and

ω 2 = r v b v (u 1 -u 2 ) z 0 + u 2 z 2 . (2.14)
Then, the linear velocities of the right and left wheels' CoMs are respectively

v 1 = ( ẋ0 + r v b v (u 1 -u 2 ))b v x 0 + ẏ0 y 0 , ( 2.15)
and

v 2 = ( ẋ0 - r v b v (u 1 -u 2 ))b v x 0 + ẏ0 y 0 . (2.16)
Besides, the angular acceleration of the mobile platform can be expressed as

3 = r v b v ( u1 -u2 ) z 0 .
(2.17)

The angular accelerations of the right and left wheels are respectively

1 = r v b v ( u1 -u2 ) z 0 + r v b v (u 1 -u 2 )u 1 z 0 × z 1 + u1 z 1 , (2.18) and 2 = r v b v ( u1 -u2 ) z 0 + r v b v (u 1 -u 2 )u 2 z 0 × z 2 + u2 z 2 . (2.19)
Finally, the linear acceleration of the mobile platform is a 3 = a 0 , i.e.

a 3 = ẍ0 x 0 + ÿ0 y 0 . (2.20)
a 3 is also the linear acceleration of the mobile platform's CoM and of the frame

Σ 3 .
The linear accelerations of the right and left wheels' CoMs are respectively

a 1 = a 3 - r v b v (u 1 -u 2 )b v z 0 × y 3 , (2.21)
and

a 2 = a 3 + r v b v (u 1 -u 2 )b v z 0 × y 3 . (2.22)
Upper Body Manipulator The angular velocities of the upper manipulator system's bodies are given as follows:

ω i = ω i-1 + u i-1 z i , i = 4, ..., 19. (2.23)
In particular, the angular velocity of body B 13 is ω 13 = ω 5 + u 13 z 13 . Then, the linear velocities of upper bodies are gradually derived hereafter. The linear velocity v i of body i's CoM can be expressed as

v i = V * p i + r ω i × r * i , i = 1, ..., 19 (2.24)
where r * i is body i's CoM vector in frame Σ i which is specified in Table A.1. V p i is the linear velocity of origin P i (i = 4, ..., [START_REF] Gerndt | Humanoid Robots in Soccer: Robots Versus Humans in RoboCup 2050[END_REF]) can be derived as

V p i = V p i-1 + r ω i-1 × r p i (2.25)
where r p i and r ω i are respectively the frame position vector and the relative angular velocity of frame Σ i in frame Σ i-1 . Specifically, the linear velocities of point P 4 and body 4's CoM are respectively

V p 4 = v 3 , ( 2.26)
and

v 4 = v 3 . (2.27)
Similarly, the linear velocity of origin P 5 and body 5's CoM are respectively

V p 5 = v 4 , ( 2.28)
and

v 5 = v 3 + u 3 r * 5 z 4 × x 5 + u 4 r * 5 y 5 . (2.29)
And the linear velocity of origin P 6 and body 6's CoM are respectively

V p 6 = v 3 + u 4 l 3 y 5 , (2.30)
and

v 6 = v 3 + u 4 (l 3 y 5 -r * 6 z 5 × z 6 ). (2.31)
The linear velocities of origin P 13 and body 13's CoM are respectively

V p 13 = v 3 + u 4 l 3 y 5 , (2.32)
and

v 13 = v 3 + u 4 (l 3 y 5 + r * 13 z 5 × z 13 ). (2.33)
Recall that the implicated velocity V * p i of body i's CoM can be expressed as

V * p i = V p i-1 + r ω i-1 × r * p i (2.34)
where r * p i = r p i + r * i .

The angular accelerations of the upper bodies are firstly given as follows

i = i-1 + ( ω i-1 × r ω i + ui-1 z i ), i = 4, ..., 19. (2.35)
In particular, the angular accelerations of bodies 4, 5, 6 and 13 are expressed as: Since the relative velocity and acceleration of body i's CoM with respect to frame Σ i are v ri = ṙxi x i + ṙyi y i + ṙzi z i = 0 and a ri = ri x i + ryi y i + rzi z i = 0, respectively, then the linear acceleration a i ∆ = a * i of body i's CoM can be expressed as

4 = r v b v ( u1 -u2 ) z 0 + r v b v (u 1 -u 2 )u 3 z 0 × z 4 + u3 z 4 , (2.36) 5 = 4 + r v b v (u 1 -u 2 )u 4 z 0 × z 5 + u 3 u 4 z 4 × z 5 + u4 z 5 , ( 2
a i = a p i + i × r * i + ω i × r v i , i = 1, ..., 19 (2.40)
where a p i is the linear acceleration of origin P i , r v i is the relative linear velocity of body i's CoM with respect to origin P i . Then, the linear acceleration of body Then, the linear acceleration of origin P i can be expressed as

i's CoM is a i = a p i + i × r * i + ω i × r v i , i = 4, ...,
a p i = a p i-1 + i-1 × r p i-1 + ω i-1 × r v p i-1 , i = 6, ..., 19 (2.47)
where r p i is the position vector of frame Σ i with respect to frame Σ i-1 .

Lagrangian Formulations and Control

Dynamic Modeling using Lagrangian Formulations

In this Subsection, the dynamic model for MDAMS using Lagrange's method [START_REF] Qian | Design and Control of a Personal Assistant Robot[END_REF] is recalled. According to Lagrangian formulations, if the forces exerted on the system are partially potential, then the system dynamics can be expressed as follows

d dt ( ∂L ∂ θi ) - ∂L ∂θ i = τ i (2.48)
where L = K -P , K and P are respectively the total kinetic energy and total potential energy of the robotic system. θ i is the joint variable, θi is the first time derivative of θ i and τ i is the generalized force (torque) at joint i.

∂(•) ∂ θi
and

∂(•) ∂θ i are the corresponding partial derivatives.
Then, the dynamic equations can be given as follows:

M(θ) θ + C(θ, θ) + G(θ) + A T (θ)λ + τ d = E(θ)τ (2.49)
where M(θ) ∈ R n×n is the symmetric and positive definite inertia matrix, C(θ, θ) ∈ R n×n is the centripetal and Coriolis matrix, G(θ) ∈ R n×1 is the friction and gravity vector, A(θ) ∈ R n×n is the constraint matrix, λ ∈ R n×1 is the Lagrange multiplier vector which is the constraint forces, τ d ∈ R n×1 is the unknown bounded disturbances including unstructured dynamics, E(θ) ∈ R n×n is the input transformation matrix and τ ∈ R n×1 is the torque input vector.

The non-holonomic constraints indicate that the robot can only move in a direction perpendicular to the axis of mobile platform's drive wheel. In other words, the mobile platform satisfies both pure rolling and non slipping conditions: ẏcosφẋsinφ = 0. As derived in [START_REF] Qian | Design and Control of a Personal Assistant Robot[END_REF], Eq. (2.49) can be rewritten as:

M(θ) θ + C(θ, θ) + Ḡ(θ) + τd = τ (2.50) where τ = S T Eτ, M(θ) = S T M(θ)S, C(θ, θ) = S T M(θ) Ṡ + S T C(θ, θ)S, Ḡ(θ) = S T G(θ), τd = S T τ d . Matrix S =       S v 0 0 1       spans the null space of A(θ) =       A v 0 0 1       , i.e. S T A T (θ) = 0, with S v =            cosφ 0 sinφ 0 0 1            and A v = -sinφ cosφ 0 .
If the multi-fingered dexterous hands are mounted at the ends of robotic arms directly, then the following dynamic equation is given.

M ξ + C ξ + Ḡ (θ) + τ d = E(θ) τ (2.51)
with the dynamic matrices being expressed as follows. ξ =

           θv θb θf            , M =            S T v M v S v S T v M vb S T v M vf M bv M b M bf M f v M f v M f            , C =            S T v M v Ṡv + S T v C v S v S T v C vb S T v C vf M bv Ṡv + C bv S v C b C bf M f v Ṡv + C f v S v C f b C f            , Ḡ =            S T v G c G b G f            , τ d =            S T v τ dv τ db τ df            , Ē τ =            S T v E c τ v τ b τ f            and E c (θ c ) = 1 r v            cosφ cosφ sinφ sinφ b v 2 -b v 2            .
It can be seen that the Lagrangian formulations become complex and timeconsuming as the DoFs of robotic system increase because of the requirements of energy and its partial derivative calculations.

Adaptive RBF Neural Network Controller

Recall the adaptive radial basis function neural network (RBFNN) controller proposed in [START_REF] Qian | Design and Control of a Personal Assistant Robot[END_REF] S T Eτ = M ηr + Ĉη r + F + Kr + U s (2.52) where M, Ĉ and F represent the estimates of the true parameter matrices and vector. K is definite positive and Kr gives the PD control. The robust controller is proposed as U s = ψsgn(r) for compensating the approximation errors and uncertainties and ψ is the estimated value of the uncertain term

ψ bound. η = v ω u 3 ... u n T
, η r is the reference joint velocity and r ∆ = η rη is the tracking error.

The adaptive laws are proposed as follows using the universal approximation theory and the GL matrix.

θk = Γ k {ξ k (q)} ηr r k , αk = Q k {ς k (z)}η r r k , βk = N k {σ k (q)}r k , ψk = T k r k sgn(r)k, ċθ k = E α k {ξ kc } θk ηr r k , ċα k = E θ k {ς kc } αk η r r k , ċβ k = E β k {σ kc } βk r k , ḃθ k = I α k {ξ kb } θk ηr r k , ḃα k = I θ k {ς kb } αk η r r k , ḃβ k = I β k {σ kb } βk r k (2.53) where Γ k , Q k , N k , T k , E α k , E θ k , E β k , I α k , I θ k and I β k are definite positive.

Virtual Prototype Validation via Co-simulation

In order to validate the effectiveness of the adaptive robust RBFNN control law, MATLAB/SIMULINK and ADAMS co-simulation on the virtual prototype constructed in ADAMS (see Fig. 2.3 (a)) is realized. In other words, MATLAB/SIMULINK is used as the control module to generate the RBFNN control law to dynamically control the virtual prototype in ADAMS. The MAT-LAB/SIMULINK and ADAMS co-simulation procedure is illustrated in Fig. 2.4. can be simplified as in Fig. 2.5. Assume that we have no knowledge about the robotic system and there is no payload. For each element of dynamic matrices M, F and C, a 200-node neural network is used. The gains for the controller are chosen as: [START_REF] Shamsuddin | Humanoid robot NAO: Review of control and motion exploration[END_REF] and K = 30.

Virtual Prototype Adams

Controller Matlab/Simulink

Desired motion

Γ k = diag[20], Q k = diag[20], N k = diag[20], T k = diag[20], E α k = E θ k = E β k = diag[20], I α k = I θ k = I β k = diag
Two motion tracking simulations (cases A and B) without and with consideration of disturbances are realized respectively. The simulation time is t = 15s. The trajectory for the mobile platform is designed as show respectively the two rotational and bend-over angular velocity tracking results of the waist. We can see that robot MDAMS tracks perfectly the desired trajectories except for the perturbations at t = 9s. In order to compare the tracking performances of case A and case B, position tracking errors in two cases are show in Fig. 2.10. We can see that the virtual prototype tracks perfectly the desired trajectories in both cases. The difference is that at t = 9s there are small perturbations. And after 2 seconds the tracking errors converge to zero and stable again.

In addition, the input torques in two cases are shown in Fig. 2.11. Fig. 2.11 (a) shows the input torques for the mobile platform and the waist rotational joint, and Fig. 2.11 (b) shows the waist bend-over input torque without disturbances. We can see that the input torques in case B are the same as that in case A, except for a fault with an amplitude responding to the disturbances at t = 9s, which proves that the proposed controller manages well the disturbances. Several co-simulation shortcuts of the movements of the virtual prototype in ADAMS are illustrated in Fig. 2.12.

It can be clearly observed from the above simulation results that although the dynamic parameters are not completely known, the proposed RBFNN controller attenuates effectively the effects of uncertainties of the robot dynamics and Figure 2.12 -Co-simulation shortcuts of virtual prototype in ADAMS. disturbances.

Conclusions

In this subsection, Lagrangian formulations are reformulated and a robust adaptive RBFNN controller is recalled to control the proposed robot MDAMS. The virtual prototype validation of the adaptive RBFNN controller is realized via MATLAB/SIMULATION and ADAMS co-simulation. The simulation results validate the effectiveness of the controller. However, as the number of DoFs increases, Lagrangian formulations will become complex and time-consuming. Moreover, the desired trajectory of the robot MDAMS is assumed to be known in advance. On the other hand, the motion planning for such a complex MDAMS is not easy both in task and joint spaces which will be investigated in Chapters 3 and 4.

Dynamic Modeling and Control using Kane's Method

In order to avoid calculating system energy and the partial derivatives and to facilitate the systematic assembly of additional dynamic systems like endeffectors, Kane's method [START_REF] Kane | Spacecraft dynamics[END_REF] which was first introduced to model astronautical systems is used to model the proposed robot MDAMS.

Dynamic Modeling using Kane's Method

Recall Kane's Equations (Definition 1.6)

F r + F * r = 0, r = 1, ..., n (2.54)
where F r and F * r are the generalized active forces and the generalized inertia forces (Definitions 1.4 and 1.5), respectively.

Suppose that two wheels are pure rolling which means that the reaction forces of the ground to two wheels of mobile platform does not work. The generalized active forces can be expressed as

F r ∆ = N i=1 [m i g z 0 ( r v i ) + T i z i ( r ω i )]
(2.55)

where T 3 = 0, m i is the link mass and T i is the joint input torque. ( r v i ) and ( r ω i ) are respectively the partial velocities (Definition 1.3) of linear and angular velocities v i and ω i with respect to the r-th generalized velocity u r according to Eq. (1.7). The partial velocity tables are constructed in Tables A.2 and A.3 in Appendix A.1.

In addition, the generalized active forces can be also written as follows:

F = Dτ + B (2.56)
where

F = F 1 ... F n T ∈ R n×1
is the generalized active force vector and

τ = T 1 T 2 T 4 ... T N T ∈ R n×1 (2.57)
is the input torque vector. D is a n × n matrix which can be expressed as D(:, 1 :

2) = D a (:, 1 : 2) and D(:, 3 : n) = D a (:, 4 : N ). D a ∈ R n×N is defined as follows:

{D a } ri = z i ( r ω i ), r = 1, ..., n, i = 1, ..., N .
(2.58)

Matrix B = B 1 ... B n T ∈ R n×1 , with B r = N i=1 m i g z 0 ( r v i ), r = 1, ..., n (2.59)
where m i is the mass of body B i , i = 1, ..., N . Appendixes A.2 and A.3 list the detailed expressions of matrices D and B.

The generalized inertia forces F * r can be obtained using the following equation

F * r ∆ = N i=1 [-m i a * i ( r v i ) + (-I i i -ω i × I i ω i )( r ω i )], r = 1, ..., n (2.60)
where a * i , I i and i are respectively the acceleration of body i 's CoM, moment of inertia and angular velocity of body i in frame Σ 0 . Then, the dynamic model is given as follows:

Dτ + B = -F * (2.61)
where

F * = F * 1 ... F * n T ∈ R n×1 .
There are n unknowns and n equations, hence if the joint trajectories are known, the input torques for all joints can be numerically calculated. Besides, -F * can be written as -F * = M u + B * . Note C = B * -B, the dynamic model can also be given as

M u + C(u, θ) = Dτ.
(2.62)

Controller Design using Back-stepping Technique

The back-stepping technique is used to design the control law. Rewrite Eq. (2.62) in the following form:

         θ = u u = M -1 (Dτ -C(u, θ))
.

(2.63)

Define the joint position tracking error as

z 1 = θ -θ d (2.64)
where θ d is the desired joint position. Differentiate z 1 as

ż1 = θ -θd = z 2 + α -u d (2.65)
where z 2 = uα is the defined velocity tracking error, α is the virtual controller to be determined. Choose the first Lyapunov function as:

V 1 = 1 2 z 2 1 , its differentiation is V1 = z 1 ż1 = z 1 (z 2 + α -u d )
.

(2.66)

If choose α = -c 1 z 1 + u d (2.67)
where c 1 > 0 is an adjustable parameter, inequality V1 = -c

1 z 2 1 + z 1 z 2 ≤ 0 is obtained. Then, ż2 = u + c 1 ż1 -ud . (2.68)
Choose the second Lyapunov function as

V 2 = V 1 + 1 2 z 2 2 (2.69)
and differentiate it as

V2 = -c 1 z 2 1 + z 1 z 2 + z 2 ż2 . (2.70) We expect that ż2 = -c 2 z 2 -z 1 (2.71)
where c 2 > 0 is an adjustable parameter, to obtain the following inequality

V2 = -c 1 z 2 1 -c 2 z 2 2 ≤ 0. (2.72)
Replace the left side of Eq. 2.68 with Eq. 2.71 as follows:

-c 2 z 2 -z 1 = u + c 1 ż1 -ud . (2.73)
The joint acceleration can be expressed as

u = ud -c 1 ż1 -c 2 z 2 -z 1 .
(2.74)

Then, substitute Eq. (2.74) into Eq. (2.62), the controller is given as follows:

τ = D -1 (M( ud -c 2 z 2 -c 1 ż1 -z 1 ) + C(u, θ)). ( 2.75)
From the above demonstration, the system will be stable in the sense of Lyapunov if the input control torque is chosen as Eq. (2.75).

Object Dynamics and Control

The object to be manipulated is assumed to be rigid and of known mass and inertia. Formulate the object dynamics [START_REF] Qian | Design and Control of a Personal Assistant Robot[END_REF] in a compact form:

M o (X o ) Ẍo + C o (X o , Ẋo ) + G o (X o , Ẋo ) = F o (2.76)
where M o is the inertia matrix of object, C o is the Coriolis and centrifugal matrix, G o is the vector of friction and gravity, F o is the force and moment vector which exerts on the object's CoM. Suppose F oR and F oL are the force and moment vectors of two EEs which are applied to the object's CoM. Then, the force and moment vector on the object's CoM is:

F o = F oR + F oL = J T oR F cR + J T oL F cL (2.77)
where F cR and F cL are respectively the contact force and moment vectors of the right and left EEs. J oR and J oL are the contact matrices with

J T oi =       R ci 0 3 rci R ci R ci       (i = R, L)
. rci is a skew-symmetric matrix. (r ci , R ci ) is the configuration of the contact frame Σ i with respect to object frame. r ci ∈ R 3×1 is a distance vector from the center of object seen from the contact point of the i-th EE.

Therefore, the loading efforts on the EEs can be expressed as forces R e = F cR , R e = F cL and torques T e = 0, T e = 0. The contact force is given as follows:

F ci = (-J T oi ) -1 W i (M o Ẍo re + C o + G o ) (2.78)
where W i (i = R, L) is the weighted matrix to distribute the resultant on the object by the two EEs.

Ẍo re = Ẍod + k c ( Ẋod -Ẋo ) + k p (X od -X o )
, where X od is the object desired motion, X o is the object motion, k c and k p are the control gains. There are no inertia contributions, thus only the generalized active forces are modified.

The contribution to the generalized active forces on the EEs can be derived as

F e r = F cR ( r v e ) + F cL ( r v e ) (2.79)
where r v e and r v e are the partial velocities (Definition 1.3) of the linear velocities v e and v e of two EEs with respect to the r-th generalized velocity u r according to Eq. (1.7). As a result, Eq. (2.61) can be modified as

M u + C e (u, θ) = Dτ (2.80)
where C e = C -B e and B e = F e 1 ... F e n T ∈ R n×1 . Then, the control law is proposed as follows based on Eq. (2.74):

τ = D -1 {M[ ud -c 2 z 2 -c 1 ż1 -z 1 ] + C e (u, θ)}.
(2.81)

Physical Stability Analysis

Different from many humanoid robots with a mobile platform, robot MDAMS introduced in this thesis consists of one moving waist with bend-over and rotational movements. When the robot's waist bends too much, there will be a great possibility to tip over. In order to avoid tip-over, the following equality should be maintained

( n i=1 τ i + Γ + F cR × r e + F cL × r e + Γ g ) • e i = 0 (2.82)
where e i = x 0 (or e i = y 0 ) and Γ = N i=1 ((-m i a * i + m i g z 0 ) × r * i ). Γ g is the reaction torque of the ground which can only be known in real application. In fact, the ground can only passively respond to the movements of MDAMS. It is required to compensate the resulting tip-over active torque.

Simulation Results

Numerical simulations are realized to validate the constructed Kane's model. The virtual prototype of robot MDAMS is constructed in ADAMS (see Fig. 2.3). The main inertial properties of prototype MDAMS are listed in Table 2.2. The detailed parameters of the virtual prototype are shown in Fig. 2

[q r q l ] T = [0.1sin(π/12t) 0.1sin(π/12t)] T
and the trajectories for other joints are constant.

The controller in Eq. (2.75) is used for the trajectory tracking. The tracking results are shown in Fig. 2. [START_REF] Doumanoglou | Autonomous active recognition and unfolding of clothes using random decision forests and probabilistic planning[END_REF]. We can see that the mobile platform tracks well the desired trajectory with the joint position tracking error converging to zero and stable in Fig. 2.13 (a) and the velocity tracking errors converging to zero and stable in Fig. 2.13 (b). In order to validate the constructed Kane's model, the same trajectory tracking simulation is realized using Lagrangian model as a comparison. Fig. 2.14 shows the input torque error between two models. It can be seen that the differences between the input torques for two wheels converge to zero stable.

CONCLUSIONS

In this Chapter, system description and forward kinematics are firstly presented. Then, Lagrangian formulations and an adaptive robust RBFNN controller for robot MDAMS are recalled. The virtual prototype validation via MATLAB/SIMULINK and ADAMS co-simulation is realized to validate the effectiveness of the RBFNN controller. However, Lagrangian formulations require calculating energy and the partial derivatives which will lose the efficiency when applied to complex high DoFs robots. In order to overcome this problem, Kane's method is used to dynamically model robot MDAMS. Kane's method greatly simplifies and improves the dynamic modeling process. It can be extended systematically to study object grasping and environmental interaction. In addition, physical stability based on the constructed Kane's model is analyzed which will be of great value to avoid tip-over in real application. Finally, a controller which is stable in the sense of Lyapunov is proposed using the back-stepping technique.

Chapter 3

MOTION PLANNING IN STATIC ENVIRONMENTS

INTRODUCTION

Motion planning, especially the coordination between mobile platform and upper manipulator system, is one of the main challenges in studying the proposed robot MDAMS. As reviewed in Chapter 1, many motion planning methods have been introduced [START_REF] Raja | Path planning in dynamic environment for a rover using A* and potential field method[END_REF][START_REF] Stentz | Optimal and Efficient Path Planning for Unknown and Dynamic Environments[END_REF][START_REF] Korayem | The SDRE control of mobile base cooperative manipulators: Collision free path planning and moving obstacle avoidance[END_REF][START_REF] Kavraki | Probabilistic roadmaps for path planning in high-dimensional configuration spaces[END_REF]. Though they can be extended to multi-degrees of freedom (DoFs) systems, they are incapable to solve motion planning problem under multiple constraints like redundancy and singularity problems.

In order to overcome the shortcomings, many direct and inverse kinematics (IK)-based indirect motion planning methods with good results have been introduced for multi-DoFs manipulators [40, 70-72, 74, 76, 79, 84, 125, 129]. However, the EEs' movements generated by direct planning methods are difficult to predict. Moreover, the IK-based indirect methods solve the redundancy by optimizing a predefined objective function like potential-based mobile platform obstacle avoidance given task path in [START_REF] Harada | Base position planning for dual-arm mobile manipulators performing a sequence of pick-and-place tasks[END_REF], scalar function minimization in [START_REF] Galicki | Real-time constrained trajectory generation of mobile manipulators[END_REF] and maximum carrying capacity given task path in [START_REF] Korayem | Maximum Allowable Load of Mobile Manipulator in the Presence of Obstacle Using Non-Linear Open and Closed Loop Optimal Control[END_REF]. They usually require inverse Jacobian calculation and can only solve the optimization problems expressed by continuous objective functions. In addition, many reasoning methods, like analytical methods [START_REF] Samer Yahya | Geometrical approach of planar hyper-redundant manipulators: Inverse kinematics, path planning and workspace[END_REF][START_REF] Yan | Analytical inverse kinematics of a class of redundant manipulator based on dual arm-angle parameterization[END_REF][START_REF] Lamperti | A redundancy resolution method for an anthropomorphic dual-arm manipulator based on a musculoskeletal criterion[END_REF] and fuzzy logic methods [START_REF] Son | Intelligent rule-based sequence planning algorithm with fuzzy optimization for robot manipulation tasks in partially dynamic environments[END_REF][START_REF] Nishiguchi | Theatrical approach: Designing human-like behaviour in humanoid robots[END_REF][START_REF] Emamzadeh | Fuzzy-based interaction prediction approach for hierarchical control of large-scale systems[END_REF], have been presented to achieve human-like movements. However, specific consideration and rules for different scenarios are required which are challenging for high DoFs systems.

In order to deal with those shortcomings, many heuristic methods represented by genetic algorithms (GAs) have been proposed [START_REF] Parker | Inverse kinematics of redundant robots using genetic algorithms[END_REF][START_REF] Zhao | Mobile Manipulator Path Planning By A Genetic algorithm[END_REF][START_REF] Da Graça Marcos | A multi-objective approach for the motion planning of redundant manipulators[END_REF][START_REF] Mac | Heuristic approaches in robot path planning: A survey[END_REF][START_REF] Bakdi | Optimal path planning and execution for mobile robots using genetic algorithm and adaptive fuzzy-logic control[END_REF]. GA [START_REF] Goldberg | Genetic Algorithms in Search, Optimization and Machine Learning[END_REF] has no constraints on the cost function's continuity, has no need of inverse Jacobian computation, is capable of optimizing (maximizing and minimizing at the same time) multiple objectives, etc. By defining a combined fitness function, multi-objective GAs (MOGAs) take various constraints into consideration at the same time. For instance, positioning error of EE and joint displacement in [START_REF] Parker | Inverse kinematics of redundant robots using genetic algorithms[END_REF], displacements of mobile platform and joint in [START_REF] Zhao | Mobile Manipulator Path Planning By A Genetic algorithm[END_REF], joint displacement and EE's reaching error in [START_REF] Da Graça Marcos | A multi-objective approach for the motion planning of redundant manipulators[END_REF], navigation length, path-obstacles intersection and accumulated change of mobile platform orientation in [START_REF] Bakdi | Optimal path planning and execution for mobile robots using genetic algorithm and adaptive fuzzy-logic control[END_REF], etc. But, none of them take EE's orientation, or relative motion, or human-like pose (mobile platform's position-orientation and upper manipulator's configuration at the same time) into account for a humanoid mobile manipulator.

In addition, the combined fitness function-based MOGAs search for the solutions only in one certain direction. In order to preserve diversity, Srinivas [START_REF] Srinivas | Muiltiobjective Optimization Using Nondominated Sorting in Genetic Algorithms[END_REF] proposed a Non-dominated Sorting-based GA (NSGA) which searches for the optimal individual in multiple directions. It generates a number of optimal solutions to form a Pareto-optimal front. In order to overcome the limitation of a predefined sharing parameter of the NSGA approach, Deb [START_REF] Deb | A fast and elitist multiobjective genetic algorithm: NSGA-II[END_REF] proposed an improved version NSGA-II by introducing a fast-non-dominated-sort algorithm and a crowding distance assignment method. However, the selected solutions at each generation are not well distributed. Pires [START_REF] Solteiro Pires | Multi-objective MaxiMin Sorting Scheme[END_REF] introduced the MaxiMin sorting scheme into the NSGA-II algorithm to improve the distribution in the Pareto-optimal front to preserve the diversity. However, only the last selected set is sorted according to MaxiMin sorting scheme, while the previous sets are not. Therefore, we propose an improved MaxiMin NSGA-II algorithm. At each generation, not only the last selected set but all the sets in the selected population are sorted using MaxiMin sorting scheme. In this way, the probability of inheriting good genes is improved as far as possible at each generation.

See from the literature, the existing methods usually design the collision-free motion from an initial position to a known target position. Very often, an optimization problem of certain user-defined objective functions, e.g. path length, reaching accuracy, energy consuming, carrying capacity and obstacles avoidance, is formed. In this Chapter, only the EE's goal position of robot MDAMS is needed, the goal pose and the trajectories in task space or joint space are unknown. The objective is to make robot MDAMS be as much as possible "human-like" in both their appearance and movements to make humans feeling comfortable when working with it.

Two problems: human-like optimal mobile platform position-orientation and the upper manipulator system configuration (i.e. pose) design and approaching motion planning with obstacles avoidance in static environments, are solved given the desired positions and orientations of two EEs. Fig. 3.1 is an illustration of the motion planning problem for robot MDAMS. The position and orientation of the object to be manipulated are supposed to be known. The initial pose (black skeleton) of MDAMS represented by the black skeleton is known. The final pose (blue skeleton) to manipulate the red object on the table and the corresponding approaching trajectories T raj R , T raj L and T raj MB are to be designed. Section 3.2 describes the proposed motion planning method. Firstly, an improved MaxiMin NSGA-II Algorithm 2 is designed in Section 3.2.1 for planning the optimal pose of the proposed robot MDAMS given only the goal positions of EEs. Five objective functions are defined to be optimized simultaneously to achieve human-like behaviors. The position-orientation of mobile platform and the configuration of upper manipulator are taken into account at the same time. The reaching accuracy of EE, the displacement of EE in task space and the joint displacement are also taken into account. Apart from the traditional absolute displacement in task space, a new measure -displacement of EE in the robotic body frame -is defined. In addition, an objective function which characterizes the manipulability of EE is defined to avoid configuration singularity and to increase the potential of executing subsequent tasks. A normalized combined-fitness function is defined and a post decision maker is introduced to settle the preferred pose among the candidates in the Pareto-optimal front. Then, an off-line motion planning Algorithm 3 is presented in Subsection 3.2.2. In order to improve the performance of traditional RRT methods, a direct-connect Bidirectional RRT and Gradient descent sampling process is designed. Besides, a geometric optimization method pruning the sampled path via node rejection and adjustment is designed to guarantee always the shortest consistent path for repeated tasks. Compared to [START_REF] Geraerts | Clearance based path optimization for motion planning[END_REF] and [START_REF] Bakdi | Optimal path planning and execution for mobile robots using genetic algorithm and adaptive fuzzy-logic control[END_REF], the proposed geometric method is simpler and more intuitive. And the methods in [START_REF] Wilmarth | MAPRM: a probabilistic roadmap planner with sampling on the medial axis of the free space[END_REF] and [START_REF] Geraerts | Clearance based path optimization for motion planning[END_REF] need to calculate the complicated medial axis which is not practical for high DoFs systems. Moreover, different from [START_REF] Greiff | Optimisation-based motion planning with obstacles and priorities[END_REF] which uses a projection process to locate the collision-free points around obstacles, the proposed method in this Chapter can easily locate them. Besides, the human-like head forward movements are realized by assign a sequence of reasonable orientations which are calculated based on the planned via-points of the mobile platform. Linear polynomials with parabolic blends interpolation is used to generate time-specified trajectory. Numerical simulations are presented in Section 3.3 to validate the effectiveness of the proposed planning method. Conclusions are given in Section 3.4.

Object

MAXIMIN-BASED NSGA-II MOTION PLANNING

In this Chapter, a motion planning method consists of optimal pose design and approaching motion planning for MDAMS is proposed under the following assumption.

Definition 3.1 (Pose and Optimal pose) Throughout this thesis, we note pose as the position-orientation of mobile base and the configuration of upper manipulator (i.e. θ) for the designed MDAMS. θ op denotes the optimal pose which reaches EEs' desired positions-orientations under multiple constraints.

Assumption 3.1 The initial pose of robot MDAMS is known, and the desired positions and orientations of the two EEs are known or can be obtained according to the object to be manipulated.

Improved MaxiMin NSGA-II Algorithm for Pose Design

GAs solves the optimization problems based on the natural genetics and selection mechanics [START_REF] Goldberg | Genetic Algorithms in Search, Optimization and Machine Learning[END_REF][START_REF] Holland | Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence[END_REF]. A GA allows a population composed of many individuals (a set of parameters are used to define each individual which is called the chromosome) to evolve under specified selection rules to a state that maximizes the fitness function. The GA modifies repeatedly the population of individuals (possible solutions). At each generation, a set of individuals are selected, then, the crossover and mutation operators are used to reproduce new individuals from existing ones. The crossover operator combines two individuals (parents) to generate new individuals (offspring) for the next generation. The mutation operator introduces random changes and reintroduces genetic diversity to the population. Over successive generations, the population evolves towards an optimal solution.

Objective Functions Definitions

In order to reach the desired positions and orientations of two EEs, there exist numerous joints combinations. According to the task requirements, there is always a preference among those joints combinations. In our work, EE's tracking accuracy in task space, manipulability ability and displacements in task and joint spaces are considered. Therefore, five corresponding objective functions are defined in the following.

EE's Position Tracking Accuracy

The objective function characterizing EE's position tracking accuracy is firstly defined as follows:

f 1 = x R -x Rd + x L -x Ld (3.1)
where x Rd , x Ld and x R , x L are respectively the desired and real positions of the right and left EEs.

EE's Orientation Tracking Accuracy

Recall the orientation tracking error e q ∈ R 4 (see Eq. (1.5)), the second objective function is defined as:

f 2 = e q R + e q L (3.2)
where e q R and e q L are respectively the orientation tracking errors of right and left EEs.

EE's Manipulability

Apart from the reaching accuracy in task space, additional criteria are required to obtain satisfactory behavior of MDAMS. The manipulability ability describes the distance away from the singular configuration of mechanical systems. Hence, it can be used to optimize the potential ability of robot for subsequent tasks.

The often used manipulability criterion is defined as

Ω = det(JJ T ) or Ω = σ max (J)
σ min (J) , where J is the Jacobian of EE and σ is the singular value of J. Besides, if there is a preference in one certain direction d, the directional manipulability [START_REF] Nait-Chabane | Exploitation de la redondance pour la commande coordonnée d'un manipulateur mobile d'assistance aux personnes handicapées[END_REF] (e.g. Eq. 4.8) can be used. Then, the third objective function is given as

f 3 = -(Ω R + Ω L ) (3.3)
where Ω R and Ω L are respectively the manipulability measure of the right and left EEs.

Joint Displacement In order to save energy, the least joint displacement is required. Therefore, a mass-based joint displacement objective function is proposed

f 4 = 1 n κ n κ i=1 (W i θ i -θ imin θ imax -θ imin ) (3.4)
which means that the most heavy part has the most difficulty to move. n κ is the number of DoFs of the upper manipulator system, θ i is joint position, and θ imax and θ imin are joint boundaries.

W i = M i n κ j=1 M j
is mass-based weight, where

M i = n e
k=i m k , m k is the mass of the k-th link, and n e is the end joint index.

EE's Displacement

The optimization of the above-defined objective functions is not enough for the proposed humanoid robot MDAMS. Thus, the fifth objective function related to EE's displacement is designed as follows.

EE's displacement in world frame Σ 0 is defined as

f 5a = x aRf -x aRi + x aLf -x aLi (3.5)
where x aRi and x aRf (x aLi and x aLf ) are respectively the initial and final positions of right (left) EE in frame Σ 0 .

EE's displacement in robotic body frame Σ 3 is defined as

f 5b = x bRf -x bRi + x bL -x bLi (3.6)
where x bRi and x bRf (x bLi and x bLf ) are respectively the initial and final positions of right (left) EE in frame Σ 3 .

Therefore, the fifth objective function is given as

f 5 = f 5a + f 5b . (3.7)
For now, all the objective functions (f 1 , ..., f n obj , n obj = 5) for robot MDAMS have been defined. In order to fix the solution in the Pareto-optimal front, the following fitness function is defined.

min p i ∈P ι+1 z i = n obj j=1 w ij z ij , i = 1, ..., N pop (3.8)
where z i is the fitness function of each individual p i ∈ P ι+1 , w ij is the weighting coefficient satisfying n obj j=1 w ij = 1 and z ij is the normalized jth objective function of individual p i .

Improved MaxiMin NSGA-II Algorithm

Based on Assumption 3.1, the objective here is to plan the optimal pose for robot MDAMS given only the desired positions of EEs. The searching intervals for the upper manipulator system are listed in Table 5.2. The chromosome is chosen as G = (x, y, φ, θ ω , θ R , θ L ) and its searching interval locates in the collision-free configuration space C f ree .

The whole process is illustrated in Fig. 3.2 and Algorithm 2. At the beginning, a parent population P 0 of size N pop is randomly created (line 1). Sort all the individuals {G i , i = 1, ..., N pop } in P 0 according to their fitness values (line 2, see Eq. (3.8)). The technique BasicGA, which employs the usual binary tournament selection, recombination and mutation operators, is used to create the first offspring population Q 0 of size N pop (line 3). The generation numeration is initialized ι = 0.

Then, a while loop is activated to evolve the Pareto-optimal solutions (lines 4 through 30). At the beginning of each generation ι, a combined population R ι are sorted using the fast non-dominated sorting scheme according to their non-domination 24,28 .

R ι = P ι ∪ Q ι of size
Afterwards, select the best non-dominated individuals set by set, and sort each set using the MaxiMin sorting scheme. In particular, if the number of individuals in the selected population P ι+1 and in the following set F i is smaller than N pop (#P ι+1 + #F i ≤ N pop ), continue the selection (lines 13 through 17); if not (#P ι+1 + #F i > N pop ), select the individuals one by one using the MaxiMin sorting scheme until obtaining N pop selected individuals (loops for and while, lines 18 through 20 and lines 21 through 27). Finally, the next offspring population is produced while keeping the order of the selected population P ι+1 and go to the next generation (ι = ι + 1, line 29).

The MaxiMin sorting scheme is described here. 29 Firstly, the distance between each non-dominated individual p j ∈ F i (j = 1, ..., #F i ) and the individuals already selected p k ∈ P ι+1 (k = 1, ..., #P ι+1 ) is evaluated and save the minimum distance c p j for each individual p j ∈ F i (loop for, lines 18 through 20). Then, move the individual p j ∈ F i whose minimum fitness distance c p j in F i is maximum to P ι+1 (lines 22 through 23). Every time an individual p in F i enters in P ι+1 , the values {c p j , j = 1, ..., #F i } in F i are reevaluated (lines 24 through 26).

The main improvement of Algorithm 2 is that the individuals in each nondominated set F i are sorted using the MaxiMin sorting scheme (line 14) com-Algorithm 2 Improved MaxiMin NSGA-II 1: Initialization : rand(P 0 ) {initialize the population randomly} 2: sort(P 0 ) {sort P 0 according to Eq. while #P ι+1 + #F i ≤ N pop do 14: Q ι+1 = make-new-pop(P ι+1 ) {keep the individuals' orders in the selected population P ι+1 and use crossover and mutation operators to produce the next offspring population} 29: ι = ι + 1 {increment of the generation counter} 30: end while pared with the MaxiMin NSGA-II algorithm in Pires 05. Therefore, good genes are inherited as much as possible by increasing the crossover possibility of good individuals. As a result, the converging speed of optimal solution is largely increased.

F i = MaxiMin-sort(F i ) {sort
What is more, Algorithm 2 generates a group of solutions hence forming a Pareto-optimal front [START_REF] Da Graça Marcos | A multi-objective approach for the motion planning of redundant manipulators[END_REF] at each generation. The individuals in the Pareto-optimal front conflict with each other. This thesis uses a posterior method to select the optimal solution in the Pareto-optimal front, in other words, a decision maker based on Eq. (3.8).

Motion Planning in Static Environments

In this Subsection, the off-line point-to-point collision-free motion planning Algorithm 3 is proposed to lead robot MDAMS from the initial pose to the designed optimal pose in static environments.

Overview

Throughout the proposed Algorithm 3, the path planner maintains two trees T r s and T r e which root respectively at the initial node q init and final node q goal (see Fig. 3

.3).

A while loop is activated up till tree T r s and tree T r e meet each other, i.e.

DisT ree ≤ DisMax (DisT ree is the minimum distance between T r s and T r e , DisMax is a predefined value) or there is a direct collision-free connection between T r s and T r e .

During each while loop, the bidirectional RRT (BiRRT) or Gradient descent extending process in C f ree is selected (lines 3 through 10) based on the comparison between a randomly generated value p rb (line 4) and a predefined value p rbM (0 ≤ p rbM ≤ 1) which is proportional to the clutter of the environment. BiRRT -Extend (line 6) is the BiRRT extending process, and GradDecExtend (line 8) is the gradient descent extending process. The orange dash line and nodes {q init , q rand , q new } in Fig. 3.3 illustrate the conventional RRT extending process [START_REF] Steven | Rapidly-Exploring Random Trees: A New Tool for Path Planning[END_REF].

GradDecExtend extends two trees directly along the linking line between two trees. A direct-connect method is proposed to stop the sampling phase even if T r e directly (segment 5-4 ) once there is a collision-free connection between two arbitrary nodes in T r s and T r e respectively, thus improving the path planning process by greatly reducing the sampled nodes. Process P athRRT Grad (line 11) finds the path in T r s and T r e from q init to q goal by linking two trees as one single tree which roots at q init . Then, process GeomOptim (line 12) realizes the geometric optimization of the designed path by applying the node rejection and node adjustment techniques which will be presented in Subsection 3.2.2.2.

Finally, the process InterP olyBlend (line 13) which will be introduced in Subsection 3.2.2.3 designs a time law for the optimal path obtained by GeomOptim within a defined time interval [t start , t end ].

Remark 3.1 As shown in Fig. 3.3, tree T r s and tree T r e are connected directly even though the distance between them is still very large (segment 5-4 ), thus accelerating the sampling phase greatly especially in large scale environments compared with conventional sampling methods. In addition, the direct-connect BiRRT and Gradient descent extending processes guarantee the fast path planning in non-crowded Algorithm 3 Direct-connect BiRRT and Gradient Descent Motion Planning 1: Initialization : 2: T r s ← start-node, T r e ← end-node Loop Process: 3: while DisT ree > DisMax, or there is no direct collision-free connection do end if 10: end while 11: P ath ← P athRRT Grad(T r s , T r e ) {non-optimal path} 12: OptimP ath ← GeomOptim(P ath) {geometric optimization} 13: Motion ← InterP olyBlend(OptimP ath, t start , t end ) 14: end environments, and at the same time avoids obstacles and local optimums in crowded environments.

Geometric Path Optimization: GeomOptim

An example of the direct-connect BiRRT and Gradient descent-based path planning result is shown in Fig. 3.3 (the black line linking nodes {1(q init ), ..., 5, 4 , ..., 1 (q goal )}). However, the designed path is usually non-optimal due to the random node sampling process, thus a geometric path optimization method is proposed. It consists of the node rejection and node adjustment processes which are detailed in the following. Note that the path obtained after node rejection is the pre-optimal path, and the path after node adjustment is the optimal path. The blue, red and green dash lines in Fig. 3.3 illustrate the method.

Node Rejection

The node rejection process consists of the following steps: i) Initialize the pre-optimal path with q init ; ii) Test all the nodes along the designed non-optimal path i.e., black line in sequence, and select the last node 5 which path does not collide with obstacles into the pre-optimal path;

iii) Repeat step ii) until reaching q goal . The blue dash line which consists of nodes {q init , 5, 4 , q goal } in Fig. 3.3 represents the node rejection result, i.e. the pre-optimal path.

Node Adjustment The obtained pre-optimal path after node rejection is usually non-optimal. In order to further optimize the path, a forward-backward node adjustment process on the pre-optimal path is proposed. In detail, the node adjustment process contains the following steps: i) Introduce an auxiliary path, and initialize the auxiliary path with q init ; ii) Test in sequence all the segments which link node q init and one of the points on the second segment {5-4 } (i.e. the point moves from 5 to 4 with a fixed step on the segment {5-4 }), and reserve the last node A on segment 5-4 which does not collide with obstacles into the auxiliary path instead of the second node 5;

iii) Repeat step ii) until reaching q goal , then a path which consists of nodes {q init , A, B, q goal } is obtained; iv) Flip the obtained path and repeat steps i)-iii); v) Flip the obtained path again and obtain the optimal path containing nodes {q init , D, C, q goal }.

The red dash line in Fig. 3.3 is the forward node adjustment result. The green dash line is the backward node adjustment result which is also the geometrically optimized path containing a sequence of via-points {q init , D, C, q goal }.

Remark 3.2 Geraerts [56] pointed out that many motion planning techniques generate low quality paths, the author presented a number of techniques to improve the quality of paths. A redundant nodes-remove technique is designed with a retraction

process to the medial axis and a branches-remove method. However, it needs complicated geometric calculation of medial axis and the implementation to the articulated robots remains to be studied, and the similar problem with [START_REF] Wilmarth | MAPRM: a probabilistic roadmap planner with sampling on the medial axis of the free space[END_REF]. Based on the proposed motion planning method, the planned via-points can be adjusted within their neighborhoods to increase the clearance avoiding calculating the complicated medial axis.

Interpolating Linear Polynomials With Parabolic Blends

In fact, the OptmP ath obtained by running lines 1 through 12 in Algorithm 3 is a geometric path, so a time law remains to be applied. Besides, the nonholonomic robot MDAMS is expected behave like a human being. In other words, robot MDAMS should always head forward along each segment. Therefore, process InterP olyBlend which employs the technique of linear polynomials with parabolic blends interpolation [START_REF] Sciavicco | Modelling and control of robot manipulators[END_REF] is used (line 13) to design the trajectory within time interval [t start , t end ] which is described in the following.

Consider the case when it is required to interpolate n p via-points {q 1 , ..., q n p } at time instants t k (k = 1, ..., n p , t 1 = t start , t n p = t end ), respectively. To avoid discontinuity problems on the first derivative at the time instants t k , the function q(t) shall have a parabolic profile (blend) around t k . As a consequence, the entire trajectory is composed by a sequence of linear and quadratic polynomials, which in turn implies that a discontinuity on q(t) is tolerated. The time scope between two adjacent via-points is ∆t k ∝ dis(q k , q k+1 )

∆t k = t end -t start n p -1 k=1 dis(q k , q k+1 ) dis(q k , q k+1 ) (3.9)
where k = 1, ..., n p -1. The velocity v k,k+1 along each line polynomial segment and the acceleration a k along each parabolic blend are

V k,k+1 = q k+1 -q k ∆t k , ( 3.10)
and

a k = V k,k+1 -V k-1,k ∆t k (3.11)
respectively, where ∆t k is the k-th parabolic blend duration. The first and last segments deserve special care with the parabolic blend duration being ∆t 1 /2 and ∆t n p /2 respectively.

Trajectory Planning for Mobile Platform Suppose that the obtained path by Algorithm 3 for the mobile platform contains n p via-points (x j , y j , φ i ) (j = 1, 2, ... , n p ) of which (x 1 , y 1 , φ 1 ) = (x i , y i , φ i ) and (x n p , y n p , φ n p ) = (x f , y f , φ f ) are respectively the initial and final states and others are the intermediate ones. The mobile platform's initial orientation is φ i and designed final orientation is φ f . The heading orientation φ k along each path segment is expressed as

φ k = (x k , y k ), (x k+1 , y k+1 ) , k = 1, ..., n p -1 (3.12)
to always lead the robot MDAMS head forward. •, • is the orientation angle. As a result, the orientation list (φ i , φ 1 , ..., φ n p -1 , φ f ) is obtained.

The objective is to design the trajectory which connects the position (x j , y j ) using the linear polynomials with parabolic blends interpolation. At each path point (x j , y j ), j = 1, 2, ... , (n p -1), firstly it rotates to the heading orientation φ k , k = 2, ..., n p -1 while translating along the kth parabolic blend in ∆t k , then moves to the next point (x k+1 , y k+1 ). The mobile platform will rotate to the final desired orientation φ f after reaching the desired position.

Upper Manipulator Trajectory Planning

In this Subsection, the trajectory planning for the upper manipulator system is investigated. Suppose that the initial and optimal joint positions are respectively θ ji and θ jf , j = (3, 4, ..., n κ ), the total navigation and manipulation execution time T . By employing the fifth-order polynomials interpolation technique, the joint trajectory can be expressed as where S(τ) (0 ≤ S(τ) ≤ 1)) is the interpolation function. Choose S(τ) as a fifthorder polynomial S(τ) = 6τ 5 -15τ 4 + 10τ 3 , and define

θ j =          θ ji , t ∈ [0, t θ ] θ jf + (θ jf -θ ji )S(τ), t ∈ [t θ , T ] (3.
τ = t -t θ T θ (3.14)
where T θ = Tt θ , t is the actual time and t θ is the moment when the upper manipulator begins to execute.

The whole strategy can be summarized in Fig. 3.4. It contains four processes: i) object detection and subtask design, ii) optimal pose design for each sub-task, iii) path and trajectory planning for each sub-task, and (iv) trajectory tracking.

SIMULATION RESULTS

Let us consider a virtual domestic environment with one table being surrounded by four chairs (A, B, C and D) in Fig. 3.5. The robot locates initially near to chair C with the initial pose. Suppose that the desired positions of two EEs are known, the desired position-orientation of the mobile platform and the desired configuration of the upper manipulator are unknown. The objective is to design the optimal pose to manipulate one of the chairs using Algorithm 2, to plan the collision-free motion to reach the optimal pose using Algorithm 3 and to track the designed motion following the flow chart in Fig. 3.4.

In the following, two motion planning tasks 1 and 2 are realized for the proposed robot MDAMS to manipulate respectively chairs A and D using MATLAB R2016b in a PC (Intel(R) Core(TM) i5-3317U CPU @ 1.70GHz 1.70 GHz, 4,00Go, x64). In addition, one tracking task is realized via MATLAB/SIMULINK and ADAMS co-simulation on the prototype in ADAMS using the adaptive robust RBFNN controller proposed in Chapter 2.

Task 1: Chair A

In order to validate the effectiveness of the proposed Algorithms 2 and 3, the first task is the motion planning for MDAMS to manipulate chair A.

Optimal Pose Design

The proposed robot MDAMS locates initially at x M = [-0.2, 0.4] and the initial positions of two EEs are respectively x R = [-0.2, 0.25, -0.219] and x L = [-0.2, 0.55, -0.219]. Suppose that the desired positions of two EEs' are respectively x Rd = [2.7, 0.3, 0] and x Ld = [2.7, -0.3, 0] around chair A. Based on the robot's dimension, the expected position and orientation of mobile base are calculated as (x me , y me ) = (3, 0) and φ de = 180 • , respectively. Set the initial pose of MDAMS as θ init = (-0.2, 0.4, 0, 0 16 ). The objective is to design the optimal pose for robot MDAMS while reaching the desired positions x Rd and x Ld of two EEs. The table and chairs are treated as cuboid obstacles.

Set the genetic crossover and mutation probabilities as p c = 0.7 and p m = 0.3, respectively. The population size is chosen as N pop = 100, the generation number is N G = 120, and the decision maker coefficients in Eq. (3.8) are set as w = (0.54, 0.02, 0.02, 0.02, 0.4). After N G generations, the designed optimal pose is shown in Table 3.1 and Fig. 3.6 (a). It can be seen that the designed optimal position of mobile platform is (x md , y md ) = [2.9512, 0.0269] which is around the expected position (x me , y me ). The designed optimal orientation of mobile platform is φ d = 166.77 • which is around the expected orientation φ de . Fig. 3.6 shows the motion planning results. The green rectangle represents the table, the red and blue rectangles represent four chairs. The green plus, star and triangle points represent the initial positions of the mobile platform, the right and left EEs, respectively. The cyan plus, star and triangle points represent the designed optimal positions of the mobile platform, the right and left EEs, respectively. The black skeletons represent the initial and optimal poses of robot MDAMS. It can be seen that the designed optimal pose is reasonable and with good reaching accuracy. In addition, the motion planning results using the combined fitness functionbased MOGA are shown in Fig. 3.7 as a comparison with the fitness function being chosen as in Eq. (3.8). It can be seen that even though the reaching accuracy is better than the improved MaxiMin NSGA-II algorithm, the position-orientation of the mobile platform and the configuration of the upper manipulator are far away from expectations. The reason is that different from the combined fitness function-based MOGA which searches for the optimal solution in only one direction, the improved MaxiMin NSGA-II algorithm optimizes multiple objective functions at the same time to preserve the diversity.

In order to validate the effectiveness of the proposed improved MaxiMin NSGA-II algorithm. Two simulations are realized for optimal pose design using respectively the MaxiMin NSGA-II and improved MaxiMin NSGA-II algorithms. It can be seen in Fig. 3.8 that the optimal solution converges more quickly and continuously with better performance using the Algorithm 2.

Path Planning for Mobile Platform

In order to validate the efficiency of the proposed path planning method in Algorithm 3, path design for the mobile platform is realized in the following. Denote the mobile platform has a circle geometry. To guarantee the collisionfree navigation for the mobile platform from the initial position to the designed optimal position, we enlarge the obstacles by a security hull δ sm = 0.3m including the dimension of mobile platform. Fig. 3.9 shows the designed path without geometric optimization. The green cuboid represents the table, the red and blue cuboids represent four chairs. The blue star points represent the sampling nodes of the start exploring tree, the blue plus points represent the sampling nodes of the end exploring tree, and the blue line is the designed path. It can be seen that two exploring trees are connected directly once there is a collision-free connection between them, even if they are still very far away from each other. It can be seen that a collision-free path is designed from the initial position to the designed optimal position for the mobile platform. But, it is obvious not the optimal path. Fig. 3.10 shows the designed path using geometric optimization method. The black circles representing the mobile platform, the green rectangle represents the table, the red and blue rectangles represent four chairs. The blue line which links the blue star points represents the designed path before geometric optimization. Apply the proposed geometric optimization method, the red line represents the pre-optimal path after node rejection and the green line represents the optimal path after node adjustment which is also the designed optimal path. There are in total n p = 5 nodes which characterize the designed optimal path, including the initial and designed optimal nodes. There found two via-points around chair D and one via-point around chair A to avoid collisions. The results validate the effectiveness of the proposed direct connect BiRRT and Gradient decent and geometric optimization methods.

Trajectory Planning for MDAMS

In the following, the time-specified trajectory which bypasses the planned viapoints and links the initial pose to the designed optimal posed is designed.

Recall again the task to approach and hold chair A. The desired optimal pose is designed using Algorithm 2 and the via-points are generated using Algorithm 3. Suppose that the simulation time is T = 20s, the navigation time scope and the start time of manipulation is t θ = 3/4T , then the time scope of manipulation is T θ = T /4. The navigation time scope along each segment for the mobile platform is calculated using Eq. (3.9), set the parabolic blend duration at each via-point as ∆t k = 1/20T .

The designed trajectory for robot MDAMS is shown in Fig. 3.11. In detail, Figs. 3.11 (a) and (b) show the designed motion to approach and hold chair A using the improved MaxiMin NSGA-II algorithm. The black skeletons represent respectively the initial and final poses of the designed robot MDAMS. The magenta lines represent the designed trajectories of the mobile platform and two EEs, respectively. There are six orientations which leads the robot to head forward along each segment. The mobile platform changes to an orientation at each via-point, and the orientation will be kept still along each segment between two adjacent via-points. In addition, from t θ = 16s, the mobile platform stops at the designed optimal position with the optimal orientation and the upper manipulator moves to reach the optimal configuration. As a comparison, the motion planning results using the combined fitness function-based MOGA are shown in Figs. 3.11 (c) and (d). It can be seen that the trajectories are perfectly designed to lead the robot from its initial pose to the optimal pose in two cases, while the later has self-collision because of the designed unreasonable pose.

Task 2: Chair D

In order to enforce the effectiveness of the proposed Algorithms 2 and 3, a similar motion planning task is realized in the following for robot MDAMS to manipulate chair D.

Optimal Pose Design

The MDAMS locates initially at x M = [-0.2, 0.4] and the initial positions of two EEs are respectively x R = [-0.2, 0.25, -0.219] and x L = [-0.2, 0.55, -0.219]. Suppose that the target positions of two EEs' are respectively x Rd = [1.2, 1.12, 0.2] and x Ld = [1.8, 1.12, 0.2] around chair D. Based on the robot's dimension, the expected position and orientation of mobile base are calculated as (x me , y me ) = (1.6, 1.35) and φ de = -90 • , respectively. The designed optimal pose is shown in Table 3.2 and Fig. 3.12 (a). It can be seen that the designed optimal position of the mobile platform is (x md , y md ) = [1.5689, 1.33] which is around the expected position (x me , y me ). The designed optimal orientation of mobile platform is φ d = -102.62 • which is around the expected orientation φ de . Fig. 3.12 shows the motion planning results. It can be seen that the designed optimal pose is reasonable and with good reaching accuracy. In addition, the motion planning results using the combined fitness function-based MOGA are shown in Fig. 3.13 as a comparison. It can be seen that even though the reaching accuracy is better than the improved MaxiMin NSGA-II algorithm, the position-orientation of the mobile platform and the configuration of the upper manipulator system are far away from expectations. The results enforce the conclusion in Task 1 that optimal pose can be perfectly designed with good reaching accuracy using Algorithm 2.

Trajectory Planning for MDAMS

In the following, the time-specified trajectory which bypasses the planned viapoints and links the initial pose to the designed optimal posed is designed.

Motion Planning and Dynamic Tracking for MDAMS

The main result of this Chapter and the adaptive RBFNN controller proposed in Eq. ( 2.52) are used to achieve motion planning and tracking for robot MDAMS to approach chair D.

The proposed robot MDAMS locates initially at x M = [-0.2, 0.4]. Suppose that the desired positions of two EEs are known to manipulate chair D. The simulation time is T = 20s. The simulation results are shown in Fig. 3. [START_REF] Miyoshi | Natural behavior based teleoperation for dual robot manipulators mounted on a wheelchair[END_REF], where the circle trajectories represent the real trajectories of the mobile platform and two EEs. The yellow cross trajectory represents the desired trajectory of the mobile platform. It can be seen that the mobile platform's and EEs trajectories are well-designed and the robot tracks well the designed motion.

CONCLUSIONS

In this Chapter, an improved MaxiMin NSGA-II algorithm is proposed for optimal pose design, and an off-line motion planning algorithm is designed to plan motion for robot MDAMS. The mobile platform and the manipulator are treated as a whole system. It offers an efficient method for designing the optimal pose with only the desired positions of EEs being required and does not require the IK solving. Five objective functions are defined to meet multiple constraints at the same time. Other objective functions can be introduced into the proposed algorithm, e.g. to achieve maximum carrying capacity or self-collision free movements. Besides, a direct-connect bidirectional sampling technique which speeds up greatly the path sampling phase is proposed. And a geometric optimization method which always guarantees the shortest navigation path is designed. In addition, the designed path remains the same for repeated tasks. What's more, robot MDAMS always heads forward due to the calculated orientations based on the planned via-points of the mobile platform which is very important to increase the quality of human-robot interaction.

However, the method proposed in this Chapter considers only the collision avoidance via mobile platform's navigation, the collision of the upper manipulator system has not been studied. Besides, in standard domestic environments with unknown obstacles including human beings, the proposed off-line motion planning algorithm will lose its effectiveness and may cause collision catastrophe.

In the next Chapter, motion planning problem in dynamic environments will be studied.

Chapter 4

MOTION PLANNING IN DYNAMIC ENVIRONMENTS

INTRODUCTION

In Chapter 3, the motion planning problem for robot MDAMS in static environments has been studied. The human-like optimal pose is designed by considering the mobile platform and upper manipulator as a whole system. And a point-to-point motion planning method is proposed. However, the designed motion may fail by colliding with unforeseen obstacles including human beings in dynamic environments. Therefore, on-line human-like motion planning for robot MDAMS is studied in this Chapter.

Mobile vehicles As reviewed in Chapter 1, many on-line motion planning methods have been introduced, especially the RRTs-based algorithms. However, they are usually random, non-optimal and inconsistent. Although the Informed-RRT* algorithm in [100] is asymptotic optimal, it needs to evaluate the validity of the entire current path and partially repairs it, while it is not necessary to always evaluate the entire path. The RRT* method in [START_REF] Adiyatov | A novel RRT*-based algorithm for motion planning in Dynamic environments[END_REF] consists of reconnect and regrow processes and can only guarantee local-optimal path. Besides, they mainly focus on motion planning for mobile or free-flying robots and consider not the non-holonomic constraints. Even thought there exist studies on the non-holonomic mobile vehicles [START_REF] Mercy | Spline-Based Motion Planning for Autonomous Guided Vehicles in a Dynamic Environment[END_REF], they do not look through the heading angle planning which is very important for the non-holonomic humanoid mobile robots.

Mobile Manipulators Although the above-mentioned methods can be applied to high DoFs robots, their efficiency will diminish as the manipulator's DoFs increase and with the combination of the mobile vehicle and upper manipulator system.

Therefore, many researchers studied the on-line motion planning problem for many DoFs manipulator systems. Lee [START_REF] Lee | A real-time dual-arm collision avoidance algorithm for assembly[END_REF] proposed a virtual roadmap-based on-line motion planning method for a dual-arm robot. Singularity avoidance of a mobile surgery assistant is studied in [START_REF] Pajak | Motion planning for mobile surgery assistant[END_REF] based on penalty function and EE's path is needed. Yang [START_REF] Yang | Real-time motion adaptation using relative distance space representation[END_REF] introduced a configuration re-planning method for a fixed manipulator in a dynamic environment. However, it requires calculating inverse Jacobian and the desired configuration must be known. Chen [START_REF] Chen | A novel autonomous obstacle avoidance path planning method for manipulator in joint space[END_REF] designed a joint velocity correction term to manipulator's joint trajectory to avoid obstacles. Xin [START_REF] Xin | Real-time dynamic system to path tracking and collision avoidance for redundant robotic arms[END_REF] introduced an escape velocity and projecting it onto Jacobian null space for redundant robot arms. Han [START_REF] Han | Dynamic obstacle avoidance for manipulators using distance calculation and discrete detection[END_REF] used distance calculation and discrete detection for robot arms. Vannoy [START_REF] Vannoy | Real-Time Adaptive Motion Planning (RAMP) of Mobile Manipulators in Dynamic Environments With Unforeseen Changes[END_REF] generated a population of trajectories based on the fitness evaluation for the mobile manipulators in dynamic environments with moving obstacles of unknown trajectories. Nguyen [START_REF] Nguyen | A fast heuristic Cartesian space motion planning algorithm for many-DoF robotic manipulators in dynamic environments[END_REF] presented a heuristic method for a multi-DoFs humanoid robot arm using RRT* algorithm directly in operational space. But, it considers the EE and elbow as two hierarchical control points. In fact, as the number of control points increases, the hierarchical motion planning method will become complicated. Vannoy [START_REF] Vannoy | Real-Time Adaptive Motion Planning (RAMP) of Mobile Manipulators in Dynamic Environments With Unforeseen Changes[END_REF] introduced an on-line adaptive motion planning algorithm by generating a population of trajectories based on the fitness evaluation for the mobile manipulators in dynamic environments with moving obstacles of unknown trajectories. However, they do not study multiple constraints problems or whether the resulting poses are reasonable. The heuristic planning method proposed by Nguyen in [START_REF] Nguyen | A fast heuristic Cartesian space motion planning algorithm for many-DoF robotic manipulators in dynamic environments[END_REF] solves the human-like motion planning through a hierarchical manner. However, it needs to generate the motion of the elbow according to the end-effector (EE) which is not applicable to a humanoid mobile manipulator with elbows, shoulders, waist and mobile platform. In addition, many reasoning methods can also be found in [86-89, 126, 130, 131] for mobile manipulator systems. However, they require specific considerations of different scenarios.

In this Chapter, the off-line motion planning Algorithm 3 is extended to an on-line motion planning Algorithm 4 in Section 4.2. Subsection 4.2.1 outlines the proposed on-line motion planning algorithm. On-line sensing, collision-test and control cycles are defined. Instead of checking the entire path, Algorithm 4 only needs to evaluate the obstacle collision in a short time ∆t col . The static obstacles and dynamic obstacles are treated differently to save time. A completely new motion will be designed if there are predicted collisions. In order to take the via-poses into consideration, a via-points and MOGA-based motion planning method is introduced in Subsection 4.2.2. A sequence of via-poses are designed to link the planned via-points of EEs. In particular, four via-poses-based objective functions are defined to evaluate the candidate via-poses. Instead of using the traditional manipulability criteria, directional manipulability [START_REF] Nait-Chabane | Exploitation de la redondance pour la commande coordonnée d'un manipulateur mobile d'assistance aux personnes handicapées[END_REF] is employed to optimize the motion between adjacent via-points of EEs. The displacements in world and robotic body frames are considered at the same time. A criterion is defined to evaluate the robot's intersection with the environment. Section 4.3 presents three numerical motion planning tasks for robot MDAMS to validate the proposed method. Conclusions are given in Section 4.4.

MOTION PLANNING AMONG DYNAMIC OB-STACLES

An on-line motion planning Algorithm 4 is presented in this Section for robot MDAMS in dynamic environments under the following assumptions. Inspired by [START_REF] Mcleod | Real-time adaptive non-holonomic motion planning in unforeseen dynamic environments[END_REF], three cycles -on-line sensing, collision-test and control cycles -are introduced to achieve on-line motion planning for the proposed robot MDAMS. It conducts the motion planning and tracking simultaneously in real time. In each sensing cycle, changes in the environment are captured and updated. The planning process re-plans the desired motion according to the collision test outputs. In each control cycle, the robot will switch to the newly designed motion if there are predicted collisions.

The proposed on-line motion planning method is summarized in Algorithm 4. It starts by the initialization: environmental information including positions of all obstacles is captured (EnvInit), an off-line motion is firstly designed using Algorithm 3, the sensing, control and collision-test cycles (∆t s , ∆t c and ∆t col , ∆t s ≤ ∆t c ≤ ∆t col ) and the corresponding cycle numerations (iS and iC) are initialized. Then, the robot starts to track the designed motion and the on-line motion planning is activated (while loop, lines 3 through 27).

In each sensing cycle [t iS , t iS+1 ], the environment information -positions of all dynamic obstacles -is updated (line 6, EnvU pdate) while conserving their historical positions.

At the start of each control cycle t iC , dynamic obstacles' future positions are predicted (ObsEstim, line 11, which will be presented in Eqs. (4.1) and (4.2)) and the obstacle-collision check is conducted for the current motion (line 12, CollisionCheck). If there are obstacle-collisions predicted in the collision-test cycle [t iC+1 , t iC+1 + ∆t col ], the on-line motion re-planning process On-lineP lanning will be called (line 14).

It is worth mentioning that the start-node of on-line re-planning process is the start state X(t iC+1 ) of the next control cycle [t iC+1 , t iC+2 ] and the end-node always remains the goal state. The start time t start of the on-line re-planning Algorithm 4 On-line Motion Planning MoveOn(motion) {motion tracking} 27: end while process will be the start time t iC+1 of the next control cycle [t iC+1 , t iC+2 ]. For the record, the robot will stop (line 16) immediately and update the designed motion (line 17) if a sudden collision appears (line 15). Then, the start-node of the online re-planning process will be the current state X(t), and the re-planning start time t start will be the current time t.

At the end of each control cycle t iC+1 , the desired motion will be updated (line 23) if collisions are predicted (line 12). As time goes on, the designed motion is tracked continuously (line 26, MoveOn).

Obstacle Obstacle

Obstacle's Motion Prediction

In Assumption 4.3, we suppose that the positions of the dynamic obstacles are known in real time. Then, the future positions of the obstacles are estimated using their historical positions (line 11, ObsEstim in Algorithm 4) as follows. The velocity of obstacle i is estimated as

V oi = max{ X oi (t k ) -X oi (t k-1 ) ∆t s , k = iS -m o , ..., iS} (4.1)
where m o is the numeration of historical positions of obstacle i, ∆t s is the sensing cycle and iS is the sensing cycle numeration. Then, the position of obstacle i at time t = t iC + δt can be estimated to guarantee the collision-free motion (line 12,

CollisionCheck) as X oi (t iC + δt) = X oi (t iC ) + δtV oi (4.2)
where iC is the control cycle numeration, δt ∈ (0, ∆t col ], and ∆t col is the collisiontest cycle. Fig. 4.1 shows two types of obstacles and the orange blocks represent the possible collision spaces.

Remark 4.1 The motion of the mobile platform and two EEs can be designed in task space using the proposed Algorithm 4. Theoretically, this algorithm can be applied to the motion planning of any DoF system in dynamic environments consisting of obstacles including human beings.

Local environment information sensing discussion In Assumption 4.3, the global environment information is assumed to be known in real time. However, the global environment information is sometimes difficult to obtain, then our proposed on-line motion planning Algorithm 4 will lose its efficiency. In order to cope with this problem, the following released assumption is presented.

Assumption 4.4 Only the local environment information is known, i.e. the environment information out of sensing ranges is unknown.

Then, Algorithm 4 is modified as follows. We treat the environment out of the sensing range as a collision-free space, then a sequence of via-points {X i , i = 1, ..., n p } which bypass the sensed obstacles can be found by running lines 1 through 12 in Algorithm 3 (e.g., four via-points {q init , D, C, q goal } on the green dash line in Fig. 3.3). At the beginning, the robot tries to move along the first segment X 1 -X 2 . Then, the environment will be updated as time goes on. This process will be repeated until reaching the target.

Via-points and MOGA-based Motion Planning

Though the proposed Algorithm 4 can be employed to design the motion for any DoFs mechanical systems in real time, the collision-free test in joint space for a high DoFs robot will be time-consuming and complex. What is worse, since the EEs' paths are not specified, the direct motion planning in joint space will lead to unforeseen motions of EEs. Therefore, a via-points and MOGA-based motion planning method is proposed. It avoids redundant IK solving and four objective functions characterizing the candidate via-poses are defined to be optimized at the same time (see Subsection 4.2.2.2). Here, the following assumption is proposed to release Assumption 4.2.

Assumption 4.5 The desired pose of robot MDAMS is unknown, but the approaching motion is not specified.

Via-points and MOGA-based Motion Planning Algorithm

The motion of robot MDAMS can be represented by the trajectory of mobile platform (x, y, φ) and the joint trajectory of the upper manipulator (θ ω , θ R , θ L ) which have been defined in Eq. (2.4). By using Algorithm 4, a sequence of collision-free via-points {X i = (X T Ri , X T Li ) T , i = 1, ..., n p } of the right and left EEs can be planned on-line, where n p is the number of via-points. The objective is to design a sequence of via-poses which expressed by

Θ i = (x i , y i , φ i , θ ω i , θ R i , θ L i ), i = 1, ..., n p . ( 4.3)
The chromosome of via-points and MOGA-based motion planning algorithm can be chosen as {Θ 1 , ... , Θ n p }. The searching interval for via-pose Θ i is {Θ ij ∈ [θ jmin , θ jmax ], j = 1, ..., n}, where n is the number of MDAMS's generalized variables, and θ j max and θ j min are respectively the upper and lower boundaries of j-th variable of θ which is defined in Eq. (2.4). Specifically, the via-position (x i , y i ) of mobile platform is searched within the reaching region of the corresponding via-point {X i }.

At the beginning, a parent population is randomly created. Then, the population is reproduced and the optimal solution is derived by applying multiple objective GAs (MOGAs). For instance, combined fitness function-based MOGAs and the proposed improved MaxiMin NSGA-II algorithm (in Chapter 3) are two possible choices. The fitness function is defined as

f = c 1 f a + c 2 f b + c 3 f c + c 4 f d (4.4)
where c i (i = 1, ..., 4, c i = 1, 0 < c i < 1) is the weight gain, and f k (k = a, ..., d) is the objective function which will be defined in the following Subsection.

Via-poses-based Objective Functions

Four objective functions are defined to evaluate the via-poses, i.e. EEs' approaching accuracy, joint displacement, Robot-obstacle intersection and directional manipulability.

EEs' reaching accuracy The designed via-poses {Θ i } are required to bypass all the planned via-points {X 1 , ..., X n p }. Hence, an objective function corresponding to the EEs' reaching accuracy is firstly defined as

f a = n p i=1 X i -X i (Θ i ) n p (4.5)
where n p is the number of planned via-points and X i (Θ i ) is the EEs' state which corresponds to the MOGA-reproduced via-pose Θ i using the forward kinematics expressed in Eqs. (

Joint displacement In order to minimize energy consumption, the least joint displacement is required. Then, the second objective function is defined as

f b = n p i=1 n j=1 Θ ij -Θ (i-1)j θ j max -θ j min (4.6)
where n is the number of MDAMS's generalized variables. Θ ij is the j-th variable of via-pose Θ i . The searching intervals for mobile platform depend on the planned via-points of EEs, i.e. the candidate (x i , y i ) must stay in the reaching region of the corresponding via-point {X i }.

Robot-obstacle intersection Robot-obstacle intersection is taken into consideration. As described in Section 2.2, robot MDAMS has one mobile platform, one moving waist, two 7-DoFs arms and two hands. Simplify robot MDAMS as a skeleton in Fig. 4.2, then eight control points (1, ..., 8) and eight links (a, ..., h) are defined for collision-test of the via-pose candidate {Θ i }, i.e. the CoMs of the mobile platform, the waist, two shoulders, two elbows and two wrists, and the Then, the third objective function characterizing the rate of MDAMS-obstacles intersection is introduced

f c = n p i=1 n c i=1 L i col L col (4.7)
where n c is the number of links on robot MDAMS, L i col is the robot-obstacle intersection length of link i, and L col is the maximum robot-obstacle intersection on robot MDAMS. Take the situation in Fig. 4.2 as an example. The left forearm of MDAMS intersects an obstacle, then the third objective function f c can be expressed as

f c = h a+b+•••+h .
Directional manipulability To facilitate the motion bypassing all planned via-points {X 1 , ..., X n p }, there is a manipulability preference along the direction d i which links two adjacent via-points X i and X i+1 in task space. Then, the directional manipulability Ω Bdir (d i ) is expressed as follows:

Ω Bdir (d i ) = m k=1 (d T i • u k )σ k (4.8)
where (•) is the dot product, and

d i = X i+1 -X i X i+1 -X i ∈ R m×1 (i = 1, ..., n p -1)
is the unit vector along each via-segment. In order to obtain u k and σ k , decompose the Jacobian J ∈ R m×n using the SVD (Singular Value Decomposition) technique J = U ΣV . Then, u k is the k-th column vector of matrix U ∈ R m×m , σ k is the k-th singular value of matrix Σ ∈ R m×n , and matrix V ∈ R n×n . Then, the fourth objective function is defined as follows:

f d = - n p -1 i=1 Ω Bdir (d i ) (4.9)
which represents the sum of directional manipulability value via each via-points. Recall that n p is the number of designed via-points.

SIMULATION RESULTS

Two 10m×10m virtual domestic environments (A and B) with static and dynamic obstacles are constructed for numerical simulation. Suppose that each dynamic obstacle moves in the environment with a random bounded velocity. Denote the mobile platform has a circle geometry. To guarantee the collision-free navigation for mobile platform, set the security hull for mobile platform as δ sm = 0.2m (including mobile platform's dimension and the security distance) and for EEs as δ se = 0.05m on the xy plane. Set the security distance along the z-axis as δ sz = 0.02m. The sensing, control and collision-test cycles are initialized respectively as ∆t s = 0.5s, ∆t c = 1s and ∆t col = 2s. In the following, three numerical motion planning tasks are realized in real time using Matlab R2016b in a PC (Intel(R) Core(TM) i5-3317U CPU @ 1.70GHz 1.70 GHz, 4,00Go, x64).

On-line Motion Planning for Mobile Platform

Let us consider the first 10m × 10m virtual environment A (see Fig. 4.3). A 0.2m tall round table locates at (9, 3) (black cylinder) with a radius of 1m. There are four static obstacles (blue cuboids) which represent walls, two dynamic obstacles (black cuboid and cyan cylinder) which move randomly on the floor and one dynamic obstacle (cyan cuboid) which locates on the table and moves at a very small random velocity.

The first task is to design the navigation motion for the mobile platform to reach one target position among the obstacles in real time. The mobile platform locates initially at (4.5, 1) (green circle in Fig. 4.3) and its target position is (1, 6) (red cross in Fig. 4.3).

At the beginning, the off-line motion is designed. Fig. 4.4 (a) shows the direct-connect BiRRT-gradient sampled path, where the star and plus points represent respectively the start and end trees. Fig. 4.4 (b) shows the geometrically optimized path and the designed trajectories. Where the red line represents the pre-optimal path after node rejection and the green line represents the optimal Then, the on-line motion planning is realized running the while loop of ahead the robot represents the designed motion in real time. It can be seen that each time there are collisions predicted, the planner redesigns the motion for the mobile platform. Throughout the simulation, there are in total 8 re-planning calls to update the motion in order to avoid the cyan cuboid dynamic obstacle on the way to the target position. Then, the motion remains the same after bypassing the cyan cuboid (phase 9). In particular, the black dot line in Fig.

On-line Motion Planning for EE

Consider again the environment A. The second task is the motion design for one EE to reach one target position over the round table among obstacles in real time. The initial position is (1, 1, 0.3) (green circle) and the target position is (9.5, 3, 0.3) (red cross) over the table in Fig. 4.10.

Firstly, the off-line motion is designed. Fig. 4.11 (a) shows the direct-connect BiRRT-gradient sampled path, where the star and plus points represent respectively the start and end trees. The red line represents the geometrically optimal path. Fig. 4.11 (b) shows the geometric optimization result in detail and the off-line designed collision-free motion. Where the red line represents the preoptimal path after node rejection and the green line represents the optimal path after node adjustment. The black dot line represents the mobile platform's trajectory using the linear polynomials with parabolic blends interpolation technique and the magenta line represents the planned trajectory using B-spline.

Then, the on-line motion planning is realized running the while loop of positions in real time. The black line behind the robot represents robot's historical trajectory and the black line ahead the robot represents the designed motion in real time. It can be seen that each time there is a predicted collision, the planner updates the designed motion for mobile platform. During this on-line numerical simulation, there are in total 4 re-planning calls updating the designed motion to avoid the dynamic cyan cylinder obstacle on the floor, and 5 re-planning calls updating the designed motion to avoid the dynamic cyan cuboid obstacle on the round table. Each time, the designed motion remains the same after bypassing each dynamic obstacles on the way to the target position (phase 5 and phase 10). In particular, the black line in Fig. 4.16 represents the EE's real trajectory. The historical positions of static and dynamic obstacles are also shown in Figs. 4.12 -4.16 which are all avoided with success.

Motion Planning Time-consuming Statistics

In order to validate the efficiency of the proposed on-line motion planning method. Up to 100 numerical simulations have been run for the same motion planning task in real time from an initial position (9, 1, 0) to a target position (1, 6, 0) in environment A. The off-line motion planning, on-line collision-test and on-line motion re-planning time-consuming statistics are shown in Fig. 4.17.

The results show that the average off-line motion planning time is ∼ 1 ± 1s, the average on-line collision test time is ∼ 10 -4 s, and the average on-line motion re-planning time is ∼ 0.7s.

On-line Motion Planning for MDAMS

Let us consider the second environment B (see Fig. 4.18). There are 5 static obstacles which represent walls and furniture (blue cuboids) and a 1m×2m×0.6m square table (big cyan cuboid) which locates at (8, 0, 0). And 3 dynamic obstacles move randomly on the floor (black cylinder and small cyan cuboid). The third task is the motion design for robot MDAMS to reach respectively two target positions over the table among the obstacles in real time. Suppose the initial pose of robot MDAMS is (7, 1, 0, 0 16 ) which is defined in Eq. (4.3). The right EE locates initially at (7, 0.85, 0.612) (blue star) and its target position is (8.1, 0.7, 0.66) over the table (red plus). The left EE locates initially at (7, 1.15, 0.612) (green circle) and its target position is (8.1, 1.3, 0.66) over the table (red cross, see Fig. 4.19 (a)).

The motion planning results are shown in Fig. 4.20 where the black skeleton represents robot MDAMS. Firstly, the via-points for the two EEs are designed. Fig. 4. 19 (a) shows the path planning results for the two EEs. Fig. 4.19 (b) zooms in the path planning results for two EEs. There are in total three pairs of via-points, i.e. initial points (blue and green circles), target points (red cross and red plus) and intermediate points (blue and green plus points). The black dot line and the magenta dot line in Fig. 4.20 (a) denote the designed time-specified trajectories for the two EEs in task space.

Then, the via-points and MOGA-based motion planning method is used to design the corresponding via-poses for robot MDAMS. It can be seen that the planned via-poses avoid obstacles and bypass the via-points with reasonable poses, i.e. human-like collision-free mobile platform's positions-orientations and upper manipulator configurations.

including human beings. The environmental information is updated in real time and obstacles' future positions are predicted with success according to their historical positions. Besides, a via-points and MOGA-based motion planning method is proposed with mobile platform's motion being designed with respect to EEs' via-positions and the corresponding via-poses being planned. Four objective functions, (i) minimum joint length, (ii) maximum manipulability via each via-point, (iii) minimum reaching error, and (iv) collision avoidance, are optimized simultaneously to lead robot MDAMS to bypass all the designed via-points of two EEs. Two virtual domestic environments are constructed to validate the proposed algorithm and method. Though they are not very realistic environments, the simulation results show the capabilities of our methods. Other objectives exist in the literature can be applied to the proposed method. For now, the off-line and on-line motion planning problems for robot MDAMS in static and dynamic environments have been investigated. The following Chapter will study the motion tracking problem of the proposed robot MDAMS.

Chapter 5

MOTION TRACKING FOR MDAMS

INTRODUCTION

In the previous Chapters, motion planning problem for robot MDAMS has been studied. In this Chapter, we assume that motion of MDAMS in task space is known and the objective is to track the desired motion. The difficulty is to solve the IK problem and to control the motion of two EEs and the mobile platform at the same time.

Apart from tracking methods for absolute motion [START_REF] Tsai | Trajectory planning and control of a 7-DOF robotic manipulator[END_REF][START_REF] Korayem | Maximum payload path planning for redundant manipulator using indirect solution of optimal control problem[END_REF], good results (like MS [START_REF] Samad | Position and force control of coordinated multiple arms[END_REF] and LF [START_REF] Hirata | Leader-follower type motion control algorithm of multiple mobile robots with dual manipulators for handling a single object in coordination[END_REF] techniques) have been done to track relative motion for multiple manipulators and object manipulation. Lewis [START_REF] Lewis | Trajectory generation for cooperating robots[END_REF] treated two fixed manipulator systems as a single redundant robot. Choi [START_REF] Choi | Two-arm cooperative assembly using force-guided control with adaptive accommodation[END_REF] defined a relative motion between two fixed tool and object manipulators using conventional propagation procedure. Jamisola [START_REF] Jamisola | A more compact expression of relative Jacobian based on individual manipulator Jacobians[END_REF][START_REF] Jamisola | Modular relative Jacobian for dual-arms and the wrench transformation matrix[END_REF] studied the relative motion between multi-manipulators. However, they mainly focus on fixed manipulators. Many works have been done to control mobile manipulatorys by adjusting the mobile platform given EE's path [START_REF] Korayem | Maximum payload path planning for redundant manipulator using indirect solution of optimal control problem[END_REF]. Mashali [START_REF] Mashali | Mobile manipulator dual-trajectory tracking using control variables introduced to end-effector task vector[END_REF] defined two new joint-dependent control variables D and α to take the mobile platform and the EE into account at the same time. An augmented task vector is defined for a robotic system consisting of one mobile platform and a mounted manipulator arm. But, the formulations of D and α are very complex. Fuzzy logic theory [START_REF] Raja | Motion planning of a mobile manipulator using fuzzy controller to dexterity measures[END_REF] is used to control the mobile platform and the EEs at the same time. However, many sources of uncertainties [START_REF] Hagras | Type-2 FLCs: A New Generation of Fuzzy Controllers[END_REF] occur when applying the fuzzy logic controller (FLC). For example uncertainties in inputs (antecedents) to the FLC; uncertainties in control outputs (consequents) of the FLC; linguistic uncertainties (rules) of the FLC; uncertainties associated with the change in the operation conditions of the controller; uncertainties associated with the use of noisy training data that could be used to learn, tune or optimize the FLC. All of those uncertainties are translated into uncertainties of the fuzzy set membership functions. Type-2 FLC [START_REF] Mendel | Interval Type-2 Fuzzy Logic Systems Made Simple[END_REF][START_REF] Kumar | Evolving an interval type-2 fuzzy PID controller for the redundant robotic manipulator[END_REF][START_REF] Sanchez | Generalized Type-2 Fuzzy Systems for controlling a mobile robot and a performance comparison with Interval Type-2 and Type-1 Fuzzy Systems[END_REF][START_REF] Hagras | A hierarchical type-2 fuzzy logic control architecture for autonomous mobile robots[END_REF] offers a powerful method to solve the uncertainties by introducing an extra dimension based on the type-1 FLC. However, when the number of DoFs increases, the fuzzy rules explodes exponentially.

In addition, most of the above-mentioned controllers are centralized for the whole mobile manipulator system. Fierro [START_REF] Fierro | Control of a nonholonomic mobile robot: backstepping kinematics into dynamics[END_REF] constructed a kinematic controller for the nonholonomic mobile platform and a torque controller for the nonholonomic mobile robots given the linear velocity of the mobile platform. It controls the nonholonomic mobile platform with high accuracy. Qian [START_REF] Qian | Design and Control of a Personal Assistant Robot[END_REF] has studied the motion and force control of robot MDAMS. An adaptive robust RBFNN controller is proposed to deal with the uncertainties. However, the redundancy solving, the cooperation between two EEs and the coordination between the mobile platform and the EEs are not studied.

Dual-arm manipulation is especially essential for tasks involving objects which are harder to grasp and manipulate with a single arm. This Chapter defines two relative movements for managing the motion among the mobile platform and two EEs, and uses the task-priority notion and kinematic controller in [START_REF] Fierro | Control of a nonholonomic mobile robot: backstepping kinematics into dynamics[END_REF] to track the trajectories. Only the movement of the right EE and two relative movements are controlled. As a result, a task priority-based trajectory tracking strategy is presented in this paper for the proposed robot MDAMS to realize the dual-arm cooperation and the non-holonomic mobile platform navigation at the same time.

In Section 5.2, the IK solving and modulated weighted least-norm (mWLN) joint limit avoidance methods are firstly presented. Then, a compact relative Jacobian is formulated relating the joint space with the task space in Section 5.3. A task priority-based redundancy solving method is proposed by defining three ordered variables, i.e. the relative position of the left EE with respect to the right EE, the absolute position of the right EE and the absolute orientations of two EEs. A semi-decentralized dual-trajectory tracking controller is proposed with a kinematic control law for the non-holonomic mobile platform. In order to coordinate the motion among the mobile platform and two EEs, a new relative movement -motion of the right EE in robotic body frame -is defined in Section 5.4. Then, a semi-decentralized triple-trajectory tracking controller is presented with a kinematic control law for the non-holonomic mobile platform. The mathematical model constructed in Chapter 2 and several trajectory tracking and object transporting tasks are realized in Subsections 5.3.3 and 5.4.3 to validate the proposed methods.

IK SOLVING AND JOINT LIMIT AVOIDANCE

IK Solving

The movements of EEs can be easily calculated based on the forward kinematic model constructed in Chapter 2 if the trajectories in joint space are known. However, in real application, normally only the desired motion of EE in task space is specified. The joint position and velocity remain to be determined based on the forward kinematics which is known as IK solving.

Recall that the forward kinematics give ẋ = J(θ)u (5.1) where x ∈ R m and ẋ ∈ R m are respectively EE's position and velocity, θ ∈ R n and u ∈ R n are respectively joint position and velocity (Eqs. (2.4) and (2.5)), and J(θ) ∈ R m×n is the Jacobian. Then, the IK solution can be expressed as

u = J + (θ) ẋ (5.2)
where J + (θ) is the pseudo-inverse of J(θ). However, normally the exact solution does not exist. Apply the least-squares solution to minimize ẋ -J(θ)u . Then, the IK solution is expressed as u = J(θ) + ẋ + (I -J(θ) + J(θ))z 0 (5.3) where z 0 ∈ R n is an arbitrary vector in a homogeneous part of the solution which can be used to solve the redundancy problem by optimizing user-defined objectives. In other words, z 0 can be chosen as z 0 = α 0 ∇H(θ), where H is a scalar objective function. α 0 is taken to be positive if H is to be maximized, and negative if H is to be minimized.

Joint Limit Avoidance -mWLN

In order to dampen the motion of some joints over the others, the modulated Weighted Least-Norm (mWLN) technique is presented. Introduce a weighted norm W as follows:

J W = JW -1 , ( 5.4
)

u W = W 1 u (5.5)
where W ∈ R n×n is a symmetric and positive definite weighting matrix. Apply the transformations to Eq. (2.7) and Eq. (2.10), the following formulations are obtained. ẋR = J R W u W , (5.6)

ω rl = J ω W u W (5.7)
where J R W = J R W -1 and J ω W = J ω W -1 . The weighting matrix W can be chosen as a diagonal matrix diag(w i ), with w i being defined as

w i =          (1 + ∂H(θ) ∂θ i ) 1/2 α , if ∆ ∂H(θ) ∂θ i ≥ 0 1, if ∆ ∂H(θ) ∂θ i < 0 (5.8)
where H is a scalar function and α is a positive integer which modulates the weight of the joint dampen in case the weighting matrix is too big. The definition of w i has a valuable meaning. In other words, when the joint angle changes away from the boundary, i.e. ∆ ∂H(θ) ∂θ i < 0, we set w i = 1 to not dampen the joint.

When the joint angle changes towards the boundary, i.e. ∆ ∂H(θ) ∂θ i > 0, we set

w i = 1 + ∂H(θ) ∂θ i
to dampen the joint. The scalar function H is given as

H(θ) = n i=1 1 4 (θ i,max -θ i,min ) 2 (θ i,max -θ i )(θ i -θ i,min ) (5.9)
where θ i,max and θ i,min are respectively the upper and lower boundaries of joint θ i . The corresponding partial derivative ∇H i can be derived as

∇H i = ∂H(θ) ∂θ i = (θ i,max -θ i,min ) 2 (2θ i -θ i,max -θ i,min ) 4(θ i,max -θ i ) 2 (θ i -θ i,min ) 2 .
(5.10)

DUAL-TRAJECTORY TRACKING

This section studies the dual-trajectory tracking problem of two EEs using taskpriority technique and relative Jacobian. Three ordered variables are defined. Object manipulation with two EEs is considered by introducing the contact matrix and the object's dynamics.

Task Priority and Relative Motion-based IK Solving

Instead of controlling two EEs respectively, a relative motion is introduced to characterize the motion of the left EE with respect to the right EE: x r ∆ = x Rx L . Recall Eqs. (2.7) and (2.9), the following formulation can be formulated. ẋr ∆ = ẋR -ẋL = J r u (5.11) where J r ∆ = J R -J L is the relative Jacobian in terms of two individual Jacobians of two EEs.

IK Redundancy Solving

We find that if the relative motion x r is chosen as the only control variable, the right EE will not move. And if the relative motion x r is chosen as the first variable and the right EE's motion x R as the second variable, two EEs' motions can be perfectly tracked. EEs' orientations are also taken into account. In total, three ordered variables ẋr , ẋR and ω rl (Eqs. (2.7), (2.10) and (5.11)) are defined to solve the IK redundancy.

The general solution of Eq. (5.11) is obtained as follows using the method introduced in Subsection 5.2.1 (see Eq. (5.3)):

u = J + r ẋr + (I -J + r J r )z (5.12)
by minimizing ẋr -J r u , where J + r is the pseudo-inverse of J r , and z is an ndimensional arbitrary joint velocity vector. Now, substitute Eq. (5.12) into Eq. (2.7), we get the following equation:

ẋR = J R [J + r ẋr + (I -J + r J r )z]. (5.13)
Rewrite Eq. (5.13) as:

J R (I -J + r J r )z = ẋR -J R J + r ẋr . ( 5.14)
Similarly, by minimizing J R (I -J + r J r )z -( ẋR -J R J + r ẋr ) , we get

z = J+ R ( ẋR -J R J + r ẋr ) + (I -J+ R JR )z * (5.15)
where JR ∆ = J R (I -J + r J r ), J+ R is the pseudo-inverse of JR , and z * is also an ndimensional arbitrary joint velocity vector. Then, the solution of u obtained from Eqs. (5.12) and (5.15) is

u = J + r ẋr + (I -J + r J r ) J+ R ( ẋR -J R J + r ẋr ) + (I -J + r J r )(I -J+ R JR )z * .
(5.16) Substitute Eq. (5.16) into Eq. (2.10)

ω rl = J ω [J + r ẋr + (I -J + r J r ) J+ R ( ẋR -J R J + r ẋr ) + (I -J + r J r )(I -J+ R JR )z * ].
(5.17)

We get z * = J+ ω {ω rl -J ω [J + r ẋr + (I -J + r J r ) J+ R ( ẋR -J R J + r ẋr )]}, where Jω ∆ = J ω (I -J + r J r )(I -J+ R JR ), and J+ ω is the pseudo-inverse of Jω . Then, the joint velocity can be formu-lated

u =J + r ẋr + (I -J + r J r ) J+ R ( ẋR -J R J + r ẋr ) + (I -J + r J r )(I -J+ R JR ) J+ ω {ω rl -J ω [J + r ẋr + (I -J + r J r ) J+ R ( ẋR -J R J + r ẋr )]} + (I -J + r J r )(I -J+ R JR )(I -J+ ω Jω )z * * (5.18)
where z * * ∈ R n is also an n-dimensional arbitrary joint velocity vector. It can be used to avoid obstacles or to achieve other objectives. For example, the following joint velocity correction term [START_REF] Chen | A novel autonomous obstacle avoidance path planning method for manipulator in joint space[END_REF] z

* * =         
θa sin(2πt/T a ), t a < t < t a + T a 0, else (5.19) can be employed to avoid obstacles during manipulation. Where t a is the moment when the obstacle avoidance begins, T a is the total time of the obstacle avoidance, θa is the avoiding speed, T a and θa are both determined by path planning information and the position and size of the obstacle.

Joint Limit Avoidance

The mWLN method introduced in Subsection 5.2.2 is used to avoid joint limit. Apply the transformations (see Eqs. (5.4) and (5.5)) to Eq. (5.11) ẋr = J r W u W (5.20) where J r W = J r W -1 and u W = W 1 u. Using Eqs. (5.6) and (5.7), Eq. (5.18) can be rewritten as follows:

u = W -1 {J + r W ẋr + (I -J + r W J r W ) J+ R W ( ẋR -J R W J + r W ẋr ) + (I -J + r W J r W )(I -J+ R W JR W ) J+ ω W [ω rl -J ω W J + r W ẋr -J ω W (I -J + r W J r W ) J+ R W ( ẋR -J R W J + r W ẋr )] + (I -J + r W J r W )(I -J+ R W JR W )(I -J+ ω W Jω W )z * * } . (5.21)

Semi-decentralized Dual-trajectory Tracking

Based on the constructed dynamic model in Eq. (2.50), the task-oriented PD control law in task space can be formulated as τ = M(θ)U + C(θ, u) + Ḡ(θ) + τd (5.22) where M(θ), C(θ, u) and Ḡ(θ) are the dynamic matrices, τd is the disturbance vector, and U = ure + K v (u reu) + K p (θ reθ) is the reference acceleration vector.

K v and K p are the definite positive gains. Based on Eq. (5.18), the reference joint velocity u re is proposed as

u re = J + r ẋr re + (I -J + r J r ) J+ R ( ẋR re -J R J + r ẋr re ) + (I -J + r J r )(I -J+ R JR ) J+ ω {ω rl re -J ω [J + r ẋr re + (I -J + r J r ) J+ R ( ẋR re -J R J + r ẋr re )]} + (I -J + r J r )(I -J+ R JR )(I -J+ ω Jω )z * * . (5.23)
In addition, the reference joint velocity u re can be also given as follows to avoid joint limit based on Eq. (5.21)

u re = W -1 {J + r W ẋr re + (I -J + r W J r W ) J+ R W ( ẋR re -J R W J + r W ẋr re ) + (I -J + r W J r W )(I -J+ R W JR W ) J+ ω W [ω rl re -J ω W J + r W ẋr re -J ω W (I -J + r W J r W ) J+ R W ( ẋR re -J R W J + r W ẋr re )] + (I -J + r W J r W )(I -J+ R W JR W )(I -J+ ω W Jω W )z * * } (5.24)
where ẋR re and ẋr re are respectively the reference trajectories of the right EE and the relative motion which are chosen as where K 4 is the positive gain matrix, e 0 =

ẋR re = ẋRd + K 1 (x Rd -x R ) ( 5
      e 0R e 0L       , e 0i = 2δη i δ i (i = R, L).
The orientation control objective is lim t→∞ e 0 = 0. Fig. 5.1 illustrates the framework of the proposed semi-decentralized taskoriented PD controller. The position of the object to be grasped is known. Firstly, the proposed motion planning methods in the previous chapters are used to design the desired motion. Then, the proposed controller in this chapter is used to track the desired motion. In total, it consists of four parts, i.e.:

1. Kinematic control for the non-holonomic mobile platform which is represented by the blue blocks;

3. Motion control for the right EE and x r which is represented by the black blocks;

4. Object control which is represented by the red blocks.

Non-holonomic Mobile Platform Control

The robot MDAMS consists of one non-holonomic mobile platform and one upper manipulator system. To achieve the asymptotic position tracking of the non-holonomic mobile platform, recall the control law for the mobile platform

τ v = Mv U v + Cv (θ v , θv ) + Ḡv (θ) + Qv + τdv . (5. 28
)
where Mv is the symmetric and positive definite inertia matrix, Cv (θ, θ) is the centripetal and Coriolis matrix, Ḡv is the friction vector, Qv is the coupling vector from the upper manipulator, τdv is the unknown bounded disturbances including unstructured dynamics and τ v is the input vector. One can convert the dynamic control problem into a kinematic control problem [START_REF] Fierro | Control of a nonholonomic mobile robot: backstepping kinematics into dynamics[END_REF], with the nonlinear feedback acceleration control input for the mobile platform being expressed as in Eq. (1.20). The reference nonlinear feedback acceleration input U v for the mobile platform in joint space can be obtained according to Eqs. (1.15) and (1.19).

Object PD Control

Based on the system dynamics in Eq. (2.50) and the object dynamics in Subsection 2.2.3.3, the control law for object manipulation is proposed as follows:

τ = M(θ)U + C(θ, u) + Ḡ(θ) + τ o + τd (5.29)
where M(θ) is the symmetric and positive definite inertia matrix, C(θ, u) is the centripetal and Coriolis matrix, Ḡ(θ) is the friction vector, τd is the unknown bounded disturbances including unstructured dynamics, τ is the input vector, and τ o = τ T oR τ T oL T is chosen as:

τ oi = J T i (-J T oi ) -1 W i (M o Ẍo re + C o + G o ) (5.30)
where M o , C o and G o are the object dynamic matrices defined in Eq. (2.76). W i is the weighted matrix to distribute the action of two EEs on object, i = (R, L),

Ẍo re = Ẍod + k v ( Ẋod -Ẋo ) + k p (X od -X o
). X od is the object's desired motion, X o is the object's motion in real time, k v and k p are the definite positive control gains.

Simulation Results

Six trajectory tracking simulations are realized, including linear-sinusoidal and symmetric-asymmetric trajectories tracking, object approaching and manipulation, joint limit avoidance, centralized and semi-decentralized tracking comparison.

Linear Trajectory Tracking

We start by tracking the linear trajectories of two EEs. Suppose that the initial pose of the proposed robot MDAMS is known, i.e.

K p K v K 1 K 2 K 3 K 0 10I 3 25I 3 2.25I 3 2.25I 3 0.1I 3 I 6 k 1 k 2 k 3 k 4 K 4 α

Sinusoidal Trajectory Tracking

The sinusoidal trajectory tracking of two EEs is realized in this Subsection. Suppose that the initial pose of robot MDAMS is known, i.e. the initial positions of two EEs (x R 0 and x L 0 ) are known. The simulation time is t = 20s. When t < 10s,

x Rd = x R 0 +[0.2sin(π/10t); 0.2sin(π/10t); 0.05], x Ld = x L 0 +[0.1sin(π/10t); 0.1sin(π/10t); 0] and the desired relative motion is x rd = x Rdx Ld , otherwise the velocities are zero. Choose the control gains as in Table 5.

Centralized and Semi-decentralized Tracking Comparison

In order to validate the effectiveness of the semi-decentralized control law, the centralized control law is applied for trajectory tracking as a comparison. Fig. 5.7 (a) and (b) show respectively the trajectory tracking results of the centralized and semi-decentralized control laws. The blue, magenta and black circle lines represent respectively the tracking result of the right EE, the left EE and the mobile platform, the lines represent the corresponding reference trajectories. It proves that the mobile platform's reference motion can be tracked much more precisely using the semi-decentralized control law.

Object Approaching and Transport

Suppose that the task is to approach a solid object, solidly grasp it and transport it along a desired trajectory. The simulation time is 20s. When t < 10s, x oi = [0.

TRIPLE-TRAJECTORY TRACKING

By analyzing the simulation results in Section 5.3, it can be concluded that the trajectories of two EEs are well-tracked. Though the mobile platform tracks well the generated reference trajectory, it can not coordinate its motion cooperatively with respect to EEs. Together with the three subtasks studied in Section 5.3, a new subtask x R b is introduced in this section to solve the motion coordination between the mobile platform and the upper manipulator system.

Task Priority and Motion Distribution-based IK Solving

Given one target, human beings can quickly figure out the optimal movement strategy in the world frame and with in the body frame simultaneously. Inspired by this phenomenon, a new movement is defined, i.e. the motion of the right EE with respect to the mobile platform (see Fig. 3.1).

Similar to Eq. (2.7), the right EE's motion expressed in robotic body frame {3} can be expressed as T x R b = T 5 3 T e 5 (θ w , θ R ) and the corresponding velocity (4-th variable) is obtained as follows:

ẋR b = J R b       θw θR       = 0 n v J R b 0 n L            θo θR θL            = J R 0 u (5.31)
where J R b is the Jacobian of the right EE in frame {3}. Rewrite Eq. (5.18) as

u = ũ + Ĩz * * , where Ĩ ∆ = (I -J + r J r )(I -J+ R JR )(I -J+ ω Jω ). Define J rRω ∆ = J R 0 Ĩ
and project the fourth variable ẋR b into the null space in Eq. (5.18) using the task-priority method, the joint velocity is given as .32) where J + rRω is the pseudo-inverse of J rRω , again z * * * is an n-dimensional arbitrary joint velocity vector. Transform Eq. (5.31) as ẋR b = J R 0W u W (5.33) where J R 0W = J R 0 W -1 . Then, Eq. (5.32) becomes with

u = ũ + ĨJ + rRω ( ẋR b -J R 0 ũ) + (I -J + rRω J rRω )z * * * . ( 5
u = W -1 u W = W -1 [J + r W ẋr + (I -J + r W J r W ) J+ R W ( ẋR -J R W J + r W ẋr ) + (I -J + r W J r W )(I -J+ R W JR W ) J+ ω W (ω rl -J ω rl W J + r W ẋr -J ω rl W (I -J + r W J r W ) J+ R W ( ẋR -J R W J + r W ẋr ))] + ĨW J + rRω W ( ẋR b -J R 0W ũW ) + (I -J + rRω W J rRω W )z * * * (5.34) where ũW =J + r W ẋr + (I -J + r W J r W ) J+ R W ( ẋR -J R W J + r W ẋr ) + (I -J + r W J r W )(I -J+ R W JR W ) J+ ω W {ω rl -J ω W [J + r W ẋr + (I -J + r W J r W ) J+ R W ( ẋR -J R W J + r W ẋr )]}. ( 5
U t = ure + K v (u re -u) + K p (θ re -θ) (5.37)
where ure is the reference joint acceleration which can be obtained by numerical differentiation of the reference joint velocity u re

u re = W -1 {J + r W ẋr re + (I -J + r W J r W ) J+ R W ( ẋR re -J R W J + r W ẋr re ) + (I -J + r W J r W )(I -J+ R W JR W ) J+ ω W [ω rl re -J ω rl W J + r W ẋr re -J ω rl W (I -J + r W J r W ) J+ R W ( ẋR re -J R W J + r W ẋr re )]} + ĨW J + rR W ω ( ẋR b re -J R 0W ũre W ) + (I -J + rRω W J rRω W )z * * * (5.38)
where ũre W is the corresponding weighed reference velocity vector, ẋR re , ẋr re and ω rl re are defined the same as in Eqs. (5.25), (5.26) and (5.27).

ẋR b re = ẋR bd + K 3 (x R bd -x R b ) (5.39)
where ẋR bd is the corresponding desired trajectory of the subtask. K 3 is a positive definitive gain matrix.

Simulation Results

A triple-trajectory tracking task is realized. Suppose that the initial position of the right EE is x Ri = (0, -0.3, 0.462), the object to be manipulated locates initially at (1, 0, 0.602). The final position of the right EE is x Rf = (1, -0.2, 0.602), the initial and final relative positions of the left EE with respect to the right EE It can be seen that the tracking errors of the right and left EEs converge to zero stable. The mobile platform tracks the generated reference trajectory with good accuracy. Since the positions of the right EE in robotic body frame and world frame are determined respectively by (θ w , θ R ) and (θ v , θ w , θ R ), there is an unavoidable trade-off between them. Therefore, the tracking accuracy of the the triple-trajectory tracking achieves motion distribution among the mobile platform and two EEs in such a way that preventing catastrophes.

CONCLUSIONS

A task-priority and relative motion-based trajectory tracking method is proposed in this Chapter for robot MDAMS. A relative motion is introduced to characterize the motion of the left EE with respect to the right EE in the world frame. Another relative motion which characterizes the motion of the right EE in robotic body frame is also introduced. In total, two relative variables are defined and two relative Jacobians are formulated to characterize the coordination and cooperation movements among two arms and the mobile platform. Therefore, the EEs of two arms can maintain a relative configuration with respect to each other and with respect to the robotic body frame. It can be seen that the relative Jacobian can be obtained more conveniently based on the Jacobian of each arm using the MDH method. A semi-decentralized triple-trajectory tracking strategy is proposed with a kinematic controller for the non-holonomic mobile platform. Compared to the dual-trajectory tracking strategy, the triple-trajectory tracking method solves effectively the coordination between the mobile platform and upper manipulator system. Joint limit avoidance is achieved using the mWLN technique. Moreover, object manipulation is realized using relative motion tracking strategy.

This Chapter proves that if only considers the relative motion, the right EE will not move. Besides, under semi-decentralized control strategy, the performance of the mobile platform is much better than the centralized control strategy. Traditional PD controller is used to validate the effectiveness of the proposed redundancy solving strategy. We have proved the effectiveness of the adaptive robust RBFNN controller in Chapter 2. Therefore, it is straightforward to implement the results in this Chapter into RBFNN for intelligently controlling the proposed robot MDAMS. On the other hand, movements of the waist and shoulder have not been considered. Introduction of relative motion in terms of the waist and shoulder's motions might be a choice. In addition, the hierarchical Fuzzy Logic-based control [START_REF] Emamzadeh | Fuzzy-based interaction prediction approach for hierarchical control of large-scale systems[END_REF][START_REF] Furlán | Humanoid robot hierarchical navigation using Petri nets and fuzzy logic[END_REF] retrieves the inference structure by introducing an extra reasoning level to reduce the fuzzy base greatly. Therefore, hierarchical type-2 FLC will be another choice for further studies to control robot MDAMS.

CONCLUSIONS, CONTRIBUTIONS AND FUTURE WORK

CONCLUSIONS

This thesis studies the kinematic and dynamic modeling, on-line and off-line human-like motion planning and trajectory tracking problems for humanoid robot MDAMS which is designed for personal assistance.

In this thesis, the kinematic model is firstly established using the MDH method with only four parameters. The compact Jacobians are formulated in terms of individual Jacobians. Then, the dynamic model using Lagrangian formulations and the adaptive RBFNN controller are recalled. And the virtual prototype validation via MATLAB/SIMULINK and ADAMS co-simulation is realized to validate the effectiveness of the proposed RBF neural network control law. In order to overcome the shortcomings of Lagrangian formulations requiring the calculation of energy and partial derivatives, Kane's method is used. Physical stability is analyzed based on Kane's model and a control law is proposed using the back-stepping technique. It can be seen that if new end-effectors (like dexterous multi-fingered hands) are installed at the end of two arms it is easier to extend the dynamic model using Kane's method. And it facilitates the investigation of human-robot interaction compared to Lagrange's method. The simulation results validate the equivalence between the two dynamic models.

We have proposed an improved MaxiMin non-dominated sorting genetic algorithm (NSGA-II) to design the human-like optimal pose of MDAMS with only the desired positions of end-effectors being known. Five objective functions 167 are defined to solve the coupling, joint limit constraint, redundancy and singularity problems at the same time. Compared to the existing MaxiMin NSGA-II algorithm, the proposed algorithm speeds up the evolutionary process by introducing a MaxiMin sorting process for each selected set at each generation. As a result, a Pareto-optimal set is formed consisting of a number of solutions. A normalized combined fitness-based function is defined and a post decision maker is used to select the preferred solution in the Pareto-optimal set. Different from the combined fitness function-based MOGAs which search for the optimal solution in one direction, the proposed algorithm searches for the optimal pose in multiple directions. The mobile platform and the upper manipulator system are treated as a whole system and five objective functions are optimized at the same time. The ability to execute the subsequent tasks is optimized by maximizing the end-effector's manipulability, which is very significant for real applications. Several simulation results are presented to validate the proposed method.

An off-line collision-free motion planning strategy is designed for robot MDAMS to link the initial and designed optimal poses. A direct-connect bidirectional RRT and gradient-descent sampling process is designed. It speeds up the sampling phase by greatly reducing the number of sampled nodes. And a geometric optimization method is proposed which always guarantees the shortest and consistent path. The planned via-poses can be adjusted within their neighborhoods to increase the clearance. Besides, a sequence of orientations are calculated based on the planned via-positions of mobile platform. The linear polynomials with parabolic blends interpolation is used to drive robot MDAMS to head forward between each adjacent via-poses. The effectiveness is validated through numerical simulations.

In addition, an on-line motion planning method is proposed for robot MDAMS. The on-line sensing, collision test and control cycles are defined to achieve collision-free movements in dynamic environments among unforeseen obstacles including human beings. The environmental information is updated and the movements of dynamic obstacles are predicted based on their historical positions in real time. If there are collisions predicted, the on-line re-planning process will be called and the trajectory will be updated immediately. On the other hand, in order to take the via-poses into consideration, a via-points and MOGA-based motion planning method is proposed. Four objective functions are defined to characterize the candidate via-poses, i.e. (i) joint displacement, (ii) directional manipulability bypassing each via-point, (iii) reaching accuracy to each via-point, and (iv) robot-obstacle intersection. Firstly, the proposed an improved MaxiMin NSGA-II and off-line motion planning methods are used to design the via-points of end-effectors. Secondly, the via-points and MOGA-based method is used to design the corresponding via-poses to the designed via-points. Then, the designed via-poses are linked using the point-to-point motion planning method. Two dynamic virtual environments are established and three motion planning tasks are realized to prove the effectiveness and efficiency of the proposed method.

We have also proposed two task-priority-based semi-decentralized trajectory tracking control laws with a kinematic controller for the non-holonomic mobile platform. Firstly, a dual-trajectory tracking law is presented to track the trajectories of two end-effectors successfully and transport the object with high accuracy. Three ordered variables are introduced. Instead of controlling the absolute motions of end-effectors in task space, a relative motion between two end-effectors is defined. However, in some cases the robot will act strange since the motion distribution among the mobile platform and the upper manipulator is not considered. Therefore, a second relative motion, i.e. the right end-effector's motion with respect to the mobile platform, is defined. As a result, two relative variables are defined to control the coordination and cooperation motions among the mobile platform and two end-effectors, thus forming a triple-trajectory tracking problem. The relative Jacobians are constructed much more conveniently in terms of the known Jacobian of each arm using the MDH method. It is found that if only the relative motion is controlled, the right end-effector will not move, and that the most priori variable has the best tracking accuracy. The proposed semi-decentralized control strategy achieves better performance of the mobile platform than the centralized controller. Besides, coordination of the arms with respect to the mobile platform is realized by tracking the trajectory in robotic body frame.

Four objective functions are defined to characterize the corresponding via-poses including the directional manipulability criterion (Chapter 4).

• A task-priority and relative motion-based semi-decentralized trajectory tracking and object manipulation strategy is designed (Chapter 5).

• A motion distribution-based semi-decentralized triple-trajectory tracking strategy is proposed by defining two relative motions including the motion in the robotic body frame (Chapter 5).

• The work in this thesis allows human beings to be more comfortable with the movements of robot MDAMS.

Validated Tasks The designed robot MDAMS for personal assistance now can accomplish the following tasks.

• Mobile platform navigation, e.g., path planning and tracking on the ground in static environments;

• Guidance in dynamic environments with unknown moving obstacles including human beings;

• Determination of the optimal position-orientation of mobile platform and the optimal configuration of upper manipulator given a task;

• Dual-arm cooperation with automatic coordination of the mobile platform, e.g., arbitrary motion tracking of two end-effectors, arbitrary relative motion realization between two end-effectors with reasonable mobile platform's coordination;

• Object manipulation, e.g., a solid object reaching, grasping rotation and transport.

FUTURE WORK

In order to implement the designed redundant non-holonomic robot MDAMS in real construction and applications, there is still a lot of work to do.

Current and short term work The motion planning and trajectory tracking methods proposed in this thesis have been validated through numerical simulations. The effectiveness remains to be validated on real robot. However, it takes time to construct a real robot. People can make use of this period to validate the effectiveness of the proposed methods with the aide of simulator. Different environments can be constructed in the simulator. Besides, more finance support will be obtained if visible tasks can be realized. Therefore, virtual prototype validation via MATLAB/SIMULINK and ADAMS co-simulation is under consideration to save time and money.

We are now working on the interval type-2 fuzzy logic (IT2FL) theory to deal with the complexities of system modeling, motion planning and control, and the uncertainties caused by disturbances, sensor-based inputs and actuators. A hierarchical interval type-2 fuzzy logic control law is under consideration to control the mobile platform's navigation, the waist rotation and bend-over movements, end-effectors manipulation and obstacle avoidance at the same time. Different from the proposed open loop motion planning methods in this thesis, the fuzzy theory-based controller will achieve human-like behaviors for MDAMS such as bend-down, turn-back, and other zero-shock movements in a close loop manner. A sequence of human-like behavior rules have been formulated using expert experiences. Besides, intelligent controller combining the fuzzy logic and universal approximation theories will be studied. It is expected to solve the system modeling and human-like motion tracking problems at the same time.

In addition, the adaptive robust RBFNN controller deals with the uncertainties based on Lagrangian formulations, which is somehow model-based. However, the model-based controller may fail in presence of the uncertainties in robot dynamics. Benzaoui [START_REF] Benzaoui | Trajectory tracking with obstacle avoidance of redundant manipulator based on fuzzy inference systems[END_REF] proposed an adaptive model-free controller to solve the uncertainties of robotic system using fuzzy logic and universal approximation theories, which could be one of the research topics in the future. To summarize, the following problems are under study or will be studied in the short term.

• Validation of the proposed methods on the virtual prototype constructed in ADAMS via MATLAB/SIMULINK and ADAMS co-simulation.

• Human-like motion planning and tracking in a close loop manner to avoid cognitive shock using the hierarchical type-2 fuzzy logic theory.

• Robot control and uncertainties management by combining the hierarchical type-2 fuzzy logic theory and the universal approximation technique.

• Probabilistic completeness study and complete task policies design, motion planning and accomplishment of complex daily life helping tasks;

• Study of concrete problems such as time delay, state's inaccessibility (observers), joint failure, in real applications;

• Rapid response study to the interference, i.e. fast reconfiguration when there is an interaction;

• More complex and intelligent controller design for robot MDAMS, like extended RBF NN control law, type-2 fuzzy control law, etc.;

• Lie group based system modeling, motion planning and control of robot MDAMS.

In the long term

• Dexterous multi-fingered hands and complex grasping investigation, e.g. study of soft contact at the finger tip;

• Investigation of human-robot interaction, e.g. covering the whole robot with soft skin;

• Real robot construction and validation of the proposed methods in this thesis;

• Long-term service is another topics in personal robots [START_REF] Pinillos | Long-term assessment of a service robot in a hotel environment[END_REF], the realization of long-term assistance will be studied.

Generalized speeds (u r )

r v 1 r ω 1 r v 2 r ω 2 r v 3 r ω 3 r v 4 r ω 4 r v 5 r ω 5 r=1

Z 1 Z 3 + z 1 Z 2 Z 3 z 0 Z 4 Z 3 Z 4 1 ω 3 Z 5 1 ω 3 r=2 Z 2 -Z 3 z 0 Z 1 -Z 3 + z 2 Z 4 -Z 3 Z 4 2 ω 3 Z 6 2 ω 3 r=3
0 0 0 0 0 0 0 z 4 Z 7 3 ω 4 r=4 0 0 0 0 0 0 0 0 Z 8 z 5 r=5-18 0 0 0 0 0 0 0 0 0 0 where

Q k =                                     

Résumé Etendu

Cette thèse est une continuation de [START_REF] Qian | Design and Control of a Personal Assistant Robot[END_REF]. [START_REF] Qian | Design and Control of a Personal Assistant Robot[END_REF] Chapitre 3 s'intéresse à la planification de mouvement pour le robot conçu dans des environnements statiques. Tout d'abord, un algorithme génétique de tri non dominé (NSGA-II) basé sur MaxiMin est proposé pour concevoir simultanément la position-orientation optimale de la plate-forme mobile et la configuration optimale du manipulateur supérieur (pose optimale). Il accélère l'algorithme évolutif MaxiMin NSGA-II en ajoutant un processus de tri MaxiMin. Cinq fonctions objectives, i.e. deux critères de précision d'atteinte des OTs, la capacité de manipulabilité, le déplacement des articulations et les déplacements des OTs dans l'espace de tâche et des joints, sont définies et optimisées en même temps. En particulier, une fonction de fitness combinée normalisée est définie et un décideur a postériori est introduit pour régler la solution préférée parmi les candidats dans l'ensemble Pareto-optimal. Ensuite, afin de réaliser la transition sans collision de la pose initiale à la pose optimale, un algorithme hors ligne de planification de mouvement à connexion directe est conçu en combinant BiRRT et la gradient-descente, ce qui accélère considérablement la phase d'échantillonnage. Et une méthode d'optimisation géométrique est proposée qui garantit toujours le chemin le plus court et le plus cohérent entre les poses initiale et optimale. En outre, les polynômes linéaires avec des polynômes et les polynômes de cinquième ordre sont utilisés pour générer la trajectoire. De plus, les mouvements en avant sont réalisés en assignant des orientations raisonnables à la plate-forme mobile en fonction de ses positions planifiées, indiquant ainsi l'intention du robot pour augmenter la qualité de l'interaction homme-robot. Enfin, plusieurs tâches de planification de mouvement sont réalisées pour valider les algorithmes proposés.

Pour résoudre le problème d'échec de l'algorithme hors ligne, chapitre 4 présente un algorithme de planification de mouvement en ligne dans des environnements dynamiques en étendant l'algorithme hors ligne proposé au chapitre 3. Tout d'abord, le mouvement souhaité est conçu hors ligne. Ensuite, les processus de détection environnementale en ligne, de test de collision, et de planification et de suivi de mouvement en ligne sont activés. L'information environnementale est détectée et les futurs mouvements d'obstacles inconnus sont prédits en temps réel en fonction de leurs positionnements historiques. Si une collision possible est prévue, la planification en ligne sera activé et le mouvement souhaité sera mis à jour immédiatement. Afin de prendre en compte les via-poses, un algorithme de planification de mouvement basée sur les via-points des OTs et d'algorithme génétique multi-objectif (MOGA) est introduit. Quatre fonctions objectives basées sur des via-poses sont définies pour optimiser les via-poses, i.e. (i) le déplacement des joints, (ii) la manipulabilité directionnelle contournant les via-points, (iii) la précision de positionnement des via-points, et (iv) l'évaluation de collision robot-obstacle. En d'autres termes, premièrement, les via-points des OTs sont conçus; deuxièmement, l'algorithme basé sur les via-points des OTs et MOGA est utilisé pour optimiser les via-poses correspondantes. Ensuite, la méthode de planification de mouvement est utilisée pour lier les via-poses optimales. Finalement, deux environnements domestiques virtuels sont construits et des simulations de planification de mouvement sont réalisées pour valider l'efficacité des algorithmes proposées.

Chapitre 5 étudie le suivi de trajectoire du robot sous l'hypothèse que la trajectoire d'OT dans l'espace de tâche est connue. Dans un premier temps, la méthode de résolution de cinématique inverse basée sur la priorité de tâche, la solution de moindre norme est introduite brièvement, et la méthode de WLN modulé est conçue pour évider la limite de joint. Deuxièmement, au lieu de suivre directement le mouvement absolu des OTs, le mouvement relatif entre deux OTs est introduit afin de suivre la trajectoire d'OT en utilisant l'art de leader-suiveur. En particulier, la cinématique du mouvement relatif est obtenue en utilisant les cinématiques des OTs, et l'erreur d'attitude de l'OT est résolue en utilisant la matrice d'erreur de suivi représentée par l'unité quaternion. De plus, une méthode de suivi semi-décentralisée à double trajectoire est proposée basée sur le contrôle cinématique de la plate-forme mobile non-holonome. Troisièmement, afin de réaliser le contrôle du robot pour saisir l'objet, la matrice de contact entre l'OT et l'objet est définie, et la dynamique de l'objet est introduite dans le modèle dynamique du robot. De plus, inspirés par le comportement humain, un nouveau mouvement relatif a été introduit, i.e. le mouvement de l'OT par rapport à la plate-forme mobile du robot, afin de réaliser le contrôle coordonné entre la plate-forme et le manipulateur supérieur. Jusqu'à présent, deux mouvements relatifs ont été définis, et puis la méthode de suivi semi-décentralisée à triple trajectoire basée sur le contrôle cinématique de la plate-forme mobile est proposée. Enfin, afin de vérifier l'efficacité des méthodes proposées, des simulations de suivi des mouvements sont présentées.

Enfin, les conclusions, le travail à l'étude et les perspectives sont listés à la fin de la thèse.

Motion Planning and Tracking of a Non-holonomic Mobile Dual-arm Manipulator

Abstract: This thesis focuses on the motion planning and tracking of a dual-arm mobile manipulator. First, MDH is used for kinematic modeling and the cosimulation on prototype is realized to validate RBFNN controller's effectiveness. In order to avoid calculating energy and its derivatives, Kane's method is used for dynamic modeling with physical stability's analysis/ Secondly, an improved MaxiMin NSGA-II is proposed to design the optimal pose. A direct connect algorithm combining BiRRT and gradient-descent is designed to transform from the initial pose to optimal pose with a geometric path optimization method being proposed. In order to solve the failure problem of off-line algorithm, an on-line algorithm is proposed.In addition, an algorithm based on EEs' via-points and MOGA is proposed to optimize via-poses. Finally, the motion tracking problem is studied given EEs' motions. Instead of controlling the absolute motion, two relative motions are introduced to realize the coordination and cooperation between the mobile base and upper manipulator with joint limit avoidance. Keywords: Mobile manipulator, Kane's Method, MaxiMin NSGA-II, redundancy solving, motion planning, trajectory tracking.

2 . 11

 211 Comparison of input torques between cases A and B. . . . . . . . 2.12 Co-simulation shortcuts of virtual prototype in ADAMS. . . . . . 2.13 Joint trajectory tracking results. . . . . . . . . . . . . . . . . . . . 2.14 Input torques errors between Kane's and E-L methods. . . . . . . 3.1 An example of motion planning problem for MDAMS. . . . . . . 3.2 Flowchart of the improved MaxiMin NSGA-II algorithm. . . . . . 3.3 An example of off-line path planning. . . . . . . . . . . . . . . . . 3.4 MDAMS motion planning flow chart. . . . . . . . . . . . . . . . . 3.5 Domestic environment with one table and four chairs. . . . . . . 3.6 Motion planning results to manipulate chair A: Improved Max-iMin NSGA-II. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.7 Motion planning results to manipulate chair A: combined fitness function-based MOGA. . . . . . . . . . . . . . . . . . . . . . . . . 3.8 Comparison between the improved MaxiMin NSGA-II and Max-iMin NSGA-II algorithms. . . . . . . . . . . . . . . . . . . . . . . 3.9 Path planning results without geometric optimization for mobile platform to approach chair A. . . . . . . . . . . . . . . . . . . . . xvii xviii List of Figures 3.10 Path planning results with geometric optimization for mobile platform to approach chair A. . . . . . . . . . . . . . . . . . . . . 98 3.11 Motion planning results to manipulate chair A. Up: improved MaxiMin NSGA-II. Down: combined fitness function-based MOGA.100 3.12 Motion planning results to manipulate chair D: Improved Max-iMin NSGA-II. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.13 Motion planning results to manipulate chair D: combined fitness function-based MOGA. . . . . . . . . . . . . . . . . . . . . . . . . 3.14 Path planning results for mobile platform to approach chair D. .

  (a) Amazon logistics. (b) SANY excavator. (c) Agriculture harvest. (d) HRP-2. (e) Da Vinci Surgical Robot. (f) Entertainment. (g) OceanOne. (h) Military robot Talon. (i) Space robot Robonaut.

Figure 1 . 1 -

 11 Figure 1.1 -Service robots in various fields.

Figure 1 . 2 -

 12 Figure 1.2 -Various types of humanoid robots.

Fig. 1 .

 1 2 (l) designed by Readybot Robot Challenge is a research toy which would be for cleaning in the kitchen. It can move slowly and can adjust its height according to the task. It can currently perform 30-40% of daily chores.

15 :Q

 15 = ∅ {initialize Q to store the next front} 16:for each p ∈ F i do 17:

Σ 3 Figure 2 . 2 -

 322 Figure 2.2 -Modeling of the non-holonomic mobile platform.

Figure 2 . 4 -Figure 2 . 5 -

 2425 Figure 2.4 -MATLAB/SIMULINK and ADAMS co-simulation procedure.

  [v d ω d ] T = [0.1πcos(0.1πt) 0.1πcos(0.1πt)] T , lDisplacement of mobile platform /m (a) Mobile platform's displacement.

  Orientatioin of mobile platform /rad (b) Mobile platform's orientation.

  Waist rotational angle.

  Waist bend-over angle.

Figure 2 . 6 -

 26 Figure 2.6 -Case A: position tracking results.

  orientation of the platform /rad/s desired velocity real velocity (b) Mobile platform's angular velocity.

  waist q1 /rad/s desired velocity real velocity (c) Waist rotational velocity.

  waist q2 /rad/s desired velocity real velocity (d) Waist bend-over velocity.

Figure 2 . 7 -

 27 Figure 2.7 -Case A: velocity tracking results.

  lDisplacement of mobile platform /m (a) Position of the mobile platform.

  Orientatioin of mobile platform /rad (b) Orientation of the mobile platform.

  First angle of the waist.

  Second angle of the waist.

Figure 2 . 8 -

 28 Figure 2.8 -Case B: position tracking results.

  velocity of the platform /m/s angle/rad/s desired velocity real velocity (a) Mobile platform's linear velocity.

  orientation of the platform /rad/s desired velocity real velocity (b) Mobile platform's angular velocity.

  Waist rotational velocity.

  Waist bend-over velocity.

Figure 2 . 9 -

 29 Figure 2.9 -Case B: velocity tracking results.

Figure 2 . 10 -

 210 Figure 2.10 -Comparison of position tracking errors between cases A and B.

  Case A: mobile platform and waist rotational joint.

  Case B: mobile platform and waist rotational joint.

  Case B: waist bend-over.

Figure 2 .

 2 Figure 2.11 -Comparison of input torques between cases A and B.

Fig. 2 .

 2 Fig. 2.11 (c) shows the input torques for the mobile platform and the waist rotational joint, and Fig. 2.11 (d) shows the waist bend-over input torque under disturbances. We can see that the input torques in case B are the same as that in case A, except for a fault with an amplitude responding to the disturbances at

  Joint velocity tracking error.

Figure 2 . 13 -

 213 Figure 2.13 -Joint trajectory tracking results.

Figure 2 . 14 -

 214 Figure 2.14 -Input torques errors between Kane's and E-L methods.

Figure 3 . 1 -

 31 Figure 3.1 -An example of motion planning problem for MDAMS.

Figure 3 . 2 -

 32 Figure 3.2 -Flowchart of the improved MaxiMin NSGA-II algorithm.

7 :

 7 (3.8)} 3: Q 0 = BasicGA(P 0 ) {usual GA reproduction} ι = 0 {initialize the generation numeration} 4: while ι ≤ N G do 5: R ι = P ι ∪ Q ι {merge population to size 2N pop } 6:F 0 = φ {initialize selected set F 0 } for i = 1 to N obj do 8: F 0 = F 0 ∪ GetMin(R ι , i){move the individual with the minimum objective function f i from R ι to F 0 } 9: end for 10: P ι+1 = F 0 {initialize the parent population P ι+1 for the next generation} 11: f ast-non-dominated-sort(R ι ) {non-dominated sorting} 12: i = 1 {get the first non-dominated set F i in the sorted population R ι } 13:

: end while 18 :: end for 27 :

 1827 F i using the MaxiMin sorting scheme} 15: P ι+1 = P ι+1 ∪ F i {add F i to the population P ι+1 } 16: i = i + 1 {increment of the non-dominated set counter} 17for j = 1 to #F i do 19: c p j =min ∀p k ∈P ι+1 {||f p jf p k ||} {calculate the minimum fitness distance c p j and assign it to each individual in F i } 20: end for 21: while #P ι+1 < N pop do 22: p = getMaxCi(F i ) {get the individual with the largest minimum fitness distance in F i } 23: P ι+1 = P ι+1 p {add p to the selected population P ι+1 } 24: for l = 1 to #F i do 25: c p l = min ∀p k ∈P ι+1 {||f p lf p k ||, c p l } {update the minimum fitness distance of each individual in F i } 26end while{Complete P ι+1 selection using the MaxiMin sorting scheme} 28:

Figure 3 . 3 -

 33 Figure 3.3 -An example of off-line path planning.

  s , T r e ] = BiRRT -Extend(T r s , T r e ) {bidirectional RRT extending in C s , T r e ] = GradDecExtend(T r s , T r e ) {gradient descent extending in C f ree } 9:

Figure 3 . 4 -

 34 Figure 3.4 -MDAMS motion planning flow chart.

Figure 3 . 5 -

 35 Figure 3.5 -Domestic environment with one table and four chairs.

Figure 3 . 6 -

 36 Figure 3.6 -Motion planning results to manipulate chair A: Improved MaxiMin NSGA-II.

Figure 3 . 7 -

 37 Figure 3.7 -Motion planning results to manipulate chair A: combined fitness function-based MOGA.

Figure 3 . 8 -

 38 Figure 3.8 -Comparison between the improved MaxiMin NSGA-II and MaxiMin NSGA-II algorithms.

Figure 3 . 9 -

 39 Figure 3.9 -Path planning results without geometric optimization for mobile platform to approach chair A.

Figure 3 . 10 -

 310 Figure 3.10 -Path planning results with geometric optimization for mobile platform to approach chair A.

Figure 3 . 11 -

 311 Figure 3.11 -Motion planning results to manipulate chair A. Up: improved MaxiMin NSGA-II. Down: combined fitness function-based MOGA.

Fig. 3 .

 3 14 shows the path planning results for the mobile platform. The designed trajectory for robot MDAMS is shown in Fig. 3.15. In detail, Figs. 3.15 (a) and (b) show the planned motion using the proposed improved MaxiMin NSGA-II algorithm. There are four orientations, in detail, the orientation changes to a value which leads the robot to head forward along each segment at each viapoint. The motion planning results using the combined fitness function-based MOGA are shown in Figs. 3.15 (c) and (d) as a comparison. It can be seen that the trajectories are perfectly designed in two cases, while the later has self-collision because of the designed unreasonable pose.

Figure 3 . 12 -

 312 Figure 3.12 -Motion planning results to manipulate chair D: Improved MaxiMin NSGA-II.

Figure 3 . 13 -

 313 Figure 3.13 -Motion planning results to manipulate chair D: combined fitness function-based MOGA.

Figure 3 . 14 -

 314 Figure 3.14 -Path planning results for mobile platform to approach chair D.

Figure 3 . 15 -

 315 Figure 3.15 -Motion planning results to manipulate chair D. Up: improved MaxiMin NSGA-II. Down: combined fitness function-based MOGA.

Figure 3 . 16 -

 316 Figure 3.16 -Dynamic simulation results: motion planning and tracking.

Assumption 4 . 1 Assumption 4 . 2

 4142 The initial position-orientation of mobile platform and the initial positions of two EEs are known. The desired pose of robot MDAMS is known, but the approaching motion is not specified.Assumption 4.3The global information about the dynamic environment is known in real time, i.e. the instantaneous positions and geometry characteristics of all obstacles are known, but the obstacles' future movements stay unknown.

4. 2 . 1

 21 On-line Motion Planning Algorithm 4.2.1.1 Overview

Figure 4 . 1 -

 41 Figure 4.1 -Dynamic obstacle collision space estimation.

4 Figure 4 . 2 -

 442 Figure 4.2 -Simplified structure of MDAMS for robot-obstacle collision test.

Figure 4 . 3 -

 43 Figure 4.3 -First task in virtual dynamic domestic environment A.

Figure 4 . 4 -

 44 Figure 4.4 -Off-line motion planning results for mobile base.

Figure 4 . 5 -

 45 Figure 4.5 -On-line motion planning results for mobile platform (a).

Algorithm 4 .

 4 Figs. 4.5 -4.9 show the on-line motion planning results. The star magenta points represent the mobile platform's positions in real time. The black line behind the robot represents robot's historical trajectory and the black line

Figure 4 . 6 -

 46 Figure 4.6 -On-line motion planning results for mobile platform (b).

Figure 4 . 7 -

 47 Figure 4.7 -On-line motion planning results for mobile platform (c).

4 . 9

 49 represents the mobile platform's real tracking trajectory. The historical positions of static and dynamic obstacles are also shown in Figs. 4.5 -4.9 which are all

Figure 4 . 8 - 8 Figure 4 . 9 -

 48849 Figure 4.8 -On-line motion planning results for mobile platform (d).

Algorithm 4 .Figure 4 . 10 -

 4410 Figure 4.10 -Second task in environment A.

Figure 4 .

 4 Figure 4.11 -Off-line motion planning results for EE.

Figure 4 .

 4 Figure 4.12 -On-line motion planning results for EE (a).

Figure 4 .

 4 Figure 4.13 -On-line motion planning results for EE (b).

Figure 4 .

 4 Figure 4.14 -On-line motion planning results for EE (c).

Figure 4 .

 4 Figure 4.15 -On-line motion planning results for EE (d).

Figure 4 . 16 -

 416 Figure 4.16 -On-line motion planning results for EE (e).

  On-line planning time.

Figure 4 . 17 -

 417 Figure 4.17 -The time-consuming statistics of motion planning Algorithm 4.

Figure 4 . 18 -

 418 Figure 4.18 -Virtual dynamic domestic environment B.

Fig. 4 .

 4 20 (b) shows the designed via-poses corresponding to the planned via-points (the 3 pairs via-Path planning (global view) for two EEs.

  Via-points (local view) for two EEs.

Figure 4 . 19 -

 419 Figure 4.19 -Via-points design for two EEs.

. 25 )Figure 5 . 1 -

 2551 Figure 5.1 -Semi-Decentralized dual-trajectory tracking framework.

  x R 0 = [0.25; 0.24; 0.70] and x L 0 = [0.25; -0.36; 0.70]. The simulation time is t = 20s. When t < 10s, the desired trajectories of the right and left EEs are respectively x Rd = x R 0 + [0.01t; 0.01t; 0.05t] and x Ld = x L 0 + [-0.01t; -0.01t; 0.03t]. When t > 10s, x Rd = x R 0 + [0.1; 0.1; 0.5] and x Ld = x L 0 + [-0.1; -0.1; 0.3]. When 10s < t < 15s, the desired angular velocity of the right and left EEs is [ω T R ω T L ] T = π 10 ones(6, 1), otherwise [ω T R ω T L ] T = zeros(6, 1). The control gains are chosen as in Table 5.1. The tracking results are shown in Fig. 5.2. In detail, Fig. 5.2 (a) shows the desired trajectories and tracking results of the right EE. Fig. 5.2 (b) shows the

  and tracking results of the mobile platform. Fig.5.2 (c) shows the tracking errors of the right EE and the relative motion x r . It can be seen that the right EE tracks well its desired trajectory with small tracking errors (10 -4 m) which converge to zero stable. Fig.5.2 (d) shows the tracking errors of the mobile platform. Though the motion of the mobile platform is not coordinately generated with respect to the EEs, it is well-tracked with the tracking errors converging to zero stable. Fig.5.2 (e) and Fig.5.2 (f) show respectively the trajectory tracking results of the mobile platform and two EEs and their projections on the plane x-y. The attitude tracking results of two EEs are shown in Fig.5.3, where the green lines represent the desired trajectories. It can be seen that the orientations of EEs are also well tracked.

1 .

 1 The trajectories tracking results are shown in Fig. 5.4. In detail, Fig. 5.4 (a) shows the desired trajectories and tracking results of the right EE. Fig. 5.4 (b) shows the generated reference trajectories and tracking results of the mobile platform. Fig. 5.4 (c) shows that the tracking errors of the right EE and the relative motion x r converge to zero stable. Fig. 5.4 (d) shows that the tracking errors of the mobile platform converge to zero stable.Another four trajectory tracking tasks are realized to validate the effectiveness of the proposed method. In Fig.5.5 (a), the desired trajectories of two EEs are linear symmetric. The start positions of the desired trajectories are different from the initial positions of the EEs. In Fig.5.5 (b) and Fig.5.6 (a), the desired trajectories of two EEs are respectively linear and sinusoidal. In Fig.5.6 (b), the left EE does not move and the right EE moves along a straight line. The results prove that various tasks can be accomplished with good tracking accuracy.

  Mobile platform tracking.

  EEs motion tracking errors.

Figure 5 . 2 -

 52 Figure 5.2 -Linear trajectory tracking results.

Figure 5 . 3 -

 53 Figure 5.3 -EEs' Attitude tracking results.

Figure 5 . 4 -

 54 Figure 5.4 -Sinusoidal trajectory tracking results.

Figure 5 . 5 -

 55 Figure 5.5 -Various tasks execution: trajectory tracking results (a).

  Asymmetric trajectories.

Figure 5 . 6 -

 56 Figure 5.6 -Various tasks execution: trajectory tracking results (b).

  35; 0.50; 1.312], when t ≥ 10s, x o = x oi + [0.02(t -10); 0.02(t -10); 0]. When t < 10s, ω o = [0; 0; 0], when 10s ≤ t ≤ 15s, ω o = [0; 0; π 60 sin( π 5 (t -10))], when t > 15s, ω o = zeros(3, 1). Choose the control gains as in Table 5.1. The simulation results are shown in Fig. 5.8. The trajectory tracking results are shown in Fig. 5.8 (a). The blue dash line represents the desired trajectory of the left EE. The light blue, dark blue and dark purple lines represent the desired trajectories of the right EE, the mobile platform and the object, respectively. The wine red line represents the real trajectory of the left EE. The green, wine red and orange circles represent the real trajectories of the right EE, the mobile platform and the object, respectively. The results show that the mobile platform and two EEs track well the desired trajectories. The tracking errors of the object are shown in Fig. 5.8 (b) which converge to zero stable (10 -3 ).

  Tracking results with decentralized law.

Figure 5 . 7 -

 57 Figure 5.7 -Tracking results of EEs and mobile platform.

Figure 5 . 8 -

 58 Figure 5.8 -Object manipulation results.

  Left arm's joint rotation.

Figure 5 . 9 -

 59 Figure 5.9 -Linear trajectory tracking under joint limit.

Figure 5 . 10 -

 510 Figure 5.10 -Comparison between PD and Back-stepping controllers.

  Right EE in robotic body frame.

Figure 5 . 11 -

 511 Figure 5.11 -Triple-trajectory tracking results.

  Right EE in robotic body frame.

Figure 5 . 12 -Figure 5 . 13 -

 512513 Figure 5.12 -Triple-trajectory tracking errors.

Figure 5 . 14 -

 514 Figure 5.14 -Dual-trajectory tracking: linear trajectory to approach the object.

Figure 5 . 15 -

 515 Figure 5.15 -Triple-trajectory tracking results: 2D view.

Z 1 =r v b v z 3 , Z 4 = r v 2 x 3 , 5 ,Z 6 = Z 4 -

 133564 r x 3 , Z 2 = 0, Z 3 = Z 5 = Z 4 + Z 3 × r * Z 3 × r * 5 , Z k = z k-3 × r * 5 (k = 7, 8), Z 9 = Z 4 + Z 3 × P 1 , Z 10 = Z 4 -Z 3 × P 1 , Z k = z k-7 × P 1 (k = 11, 12), Z 13 = z 6 × r * 6 , Z 14 = Z 4 + Z 3 × P 2 , Z 15 = Z 4 -Z 3 × P 2 , Z 16 = z 4 × P 2 , Z k = z k-12 × P 2 (k = 17, 18), Z 19 = z 7 × r * 7 , Z 20 = Z 4 + Z 3 × P 4 , Z 21 = Z 4 -Z 3 × P 4 , Z 22 = z 4 × P 4 , Z k = z k-18 × P k-19 (k =[START_REF] Graf | Robotic home assistant Care-O-bot {\textregistered} 3 -product vision and innovation platform[END_REF][START_REF] Cohen | Search-based planning for dualarm manipulation with upright orientation constraints[END_REF][START_REF] Scholz | Cart pushing with a mobile manipulation system: Towards navigation with moveable objects[END_REF],Z 26 = z 8 × r * 8 , Z 27 = Z 4 + Z 3 × P 7 , Z 28 = Z 4 -Z 3 × P 7 , Z 29 = z 4 × P 7 , Z k = z k-25 × P k-23 (k = 30, ...,[START_REF] Ott | A humanoid two-arm system for dexterous manipulation[END_REF],Z 34 = z 9 × r * 9 , Z 35 = Z 4 + Z 3 × P 11 , Z 36 = Z 4 -Z 3 × P 11 , Z 37 = z 4 × P 11 , Z k = z k-33 × P k-27 (k = 38, ...,[START_REF] Kane | Spacecraft dynamics[END_REF],Z 43 = z 10 × r * 10 , Z 44 = Z 4 + Z 3 × P 16 , Z 45 = Z 4 -Z 3 × P 16 , Z 46 = z 4 × P 16 , Z k = z k-42 × P k-31 (k = 47, ..., 52), Z 53 = z 11 × r * 11 , Z 54 = Z 4 + Z 3 × P 22 , Z 55 = Z 4 -Z 3 × P 22 , Z 56 = z 4 × P 22 , Z k = z k-52 × P k-35 (k = 57, ..., 63), Z 64 = z 12 × r * 12 , Z 65 = Z 4 + Z 3 × P 29 , Z 66 = Z 4 -Z 3 × P 29 , Z 67 = z 4 × P 29 ,

A. 2

 2 Matrix D ∈ R n×n D 11 = z 1 (Z 3 + z 1 ), D 12 = z 2 Z 3 , D 1k = z (k+1) Z 3 (k = 3, ...,[START_REF] Kuindersma | Optimization-based locomotion planning, estimation, and control design for the atlas humanoid robot[END_REF],D 21 = z 1 (-Z 3 ), D 22 = z 2 (-Z 3 + z 2 ), D 2k = z (k+1) (-Z 3 ) (k = 3, ...,[START_REF] Kuindersma | Optimization-based locomotion planning, estimation, and control design for the atlas humanoid robot[END_REF],D kk = 1 (k = 3, ...,[START_REF] Kuindersma | Optimization-based locomotion planning, estimation, and control design for the atlas humanoid robot[END_REF],D 34 = z 5 z 4 , D 3k = z (k+1) z 4 (k = 13, ...,[START_REF] Kuindersma | Optimization-based locomotion planning, estimation, and control design for the atlas humanoid robot[END_REF],D 4k = z (k+1)z 5 (k = 13, ..., 18), D 5k = z (k+1) z 6 (k = 6, ..., 11), D 6k = z (k+1) z 7 (k = 7, ..., 11), D 7k = z (k+1) z 8 (k = 8, ..., 11), D 8k = z (k+1) z 9 (k = 9, ..., 11), D 9k = z (k+1) z 10 (k = 10, 11), D 10k = z (k+1) z 11 (k = 11), D 12k = z (k+1) z 13 (k = 13, ..., 18), D 13k = z (k+1) z 14 (k = 14, ..., 18), D 14k = z (k+1) z 15 (k = 15, ..., 18), D 15k = z (k+1) z 16 (k = 16, ..., 18), D 16k = z (k+1) z 17 (k = 17, 18), D 17k = z (k+1) z 18 (k = 18), D jk = 0, otherwise. z 0 ( 17 v i ), B j = 0, otherwise.

  STATE OF THE ART ON SERVICE ROBOTS . . . . . . . . . . . . 11 1.1.1 Developments and Applications of Service Robots . . . . 12 1.1.2 Humanoid Robots For Personal Assistance . . . . . . . . . 14 1.2 LITERATURE SURVEY . . . . . . . . . . . . . . . . . . . . . . . . 19 1.2.1 Robotic System Modeling . . . . . . . . . . . . . . . . . . 20 1.2.2 Motion Planning Methods . . . . . . . . . . . . . . . . . . 21 1.2.3 Motion Tracking and Controllers . . . . . . . . . . . . . . 31 1.3 PRELIMINARIES . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 1.3.1 Forward Kinematics Background . . . . . . . . . . . . . . 38 1.3.2 Kane's Method for Dynamic Modeling . . . . . . . . . . . 39 1.3.3 Kinematic Control of Non-holonomic Mobile Platform . . 41 1.3.4 Non-dominated Sorting Scheme . . . . . . . . . . . . . . . 43 1.4 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 2 SYSTEM DESCRIPTION AND MODELING 45 2.1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 2.2 SYSTEM MODELING FOR MDAMS . . . . . . . . . . . . . . . . 46 xi List of Figures 1.1 Service robots in various fields. . . . . . . . . . . . . . . . . . . . 1.2 Various types of humanoid robots. . . . . . . . . . . . . . . . . . 2.1 The structure of the proposed robot MDAMS. . . . . . . . . . . . 2.2 Modeling of the non-holonomic mobile platform. . . . . . . . . . 2.3 Left: virtual prototype in ADAMS. Right: real robot construction. 2.4 MATLAB/SIMULINK and ADAMS co-simulation procedure. . . 2.5 Simplified model of robot MDAMS. . . . . . . . . . . . . . . . . . 2.6 Case A: position tracking results. . . . . . . . . . . . . . . . . . . 2.7 Case A: velocity tracking results. . . . . . . . . . . . . . . . . . . 2.8 Case B: position tracking results. . . . . . . . . . . . . . . . . . . 2.9 Case B: velocity tracking results. . . . . . . . . . . . . . . . . . . . 2.10 Comparison of position tracking errors between cases A and B. .

	viii	Abstract
	INTRODUCTION	3
	1 STATE OF THE ART AND PRELIMINARIES	11
	1.1

  {q belongs to the next front}

	21:	end if
	22:	end for
	23:	end for
	24:

Table 2 .

 2 .3. The main inertial properties of robot MDAMS are listed in Table 2.2. 2 -Main inertial properties of MDAMS.

	Part	Mass [kg]	Rotation inertia around CoM I ij [kg.mm 2 ], i = j, i, j ∈ {x, y, z}	Products of inertia [kg.mm 2 ]
			I xx	I yy	I zz	I ij i j
	Head	2	1.452 × 10 4 1.196 × 10 4 1.177 × 10 4 0
	Neck	2	3180.97	3020.63	2687.458	0
	L Body 50	1.796 × 10 7 1.961 × 10 7 2.83 × 10 7	0
	Waist	6	2.112 × 10 4 2.118 × 10 4 1.87 × 10 4	0
	U Body 10	1.608 × 10 5 2.419 × 10 5 2.096 × 10 5 0
	Arm1	2.477	9152.28	6142.9	6363.91	0
	Arm2	1.192	4041.89	1086.44	4465.585	0
	Arm4	0.898	607.69	3698.59	3851.59	0
	Arm3	0.57	1436.32	1133.86	939.69	0
	Arm5	0.273	103.248	163.444	218.373	0
	Arm6	0.096	26.087	11.966	30.698	0
	Arm7	0.3	657.051	792.638	1326.87	0

Figure 2.3 -Left: virtual prototype in ADAMS. Right: real robot construction.

Table 2 .

 2 .1 and Table2.3. In addition, r * 3 -Link length and CoM position.

			1 = 0cm, r * 2 = 0cm, r * 3 = 0cm, r * 6 = r * 13 , r * 7 = r * 14 , r * 8 = r * 15 , r * 9 = r * 16 ,
	Length l 0	l 1	l 2	l 3	l 4	l 5	l 6	l 7	l 8
	[cm]	26.2 45	15	30	15	20	5	20 5
	l 9	l 10	r * 4	r * 5	r * 6	r * 7	r * 8	r * 9	r * 10	r * 11
	5	5	12.125 11.554 13.41 2.975 6.04 4.3 3.2 0.775
	r * 10 = r * 17 , r * 11 = r * 18 , r * 12 = r * 19 .
	The simulation time is t = 10s, the trajectory of the mobile platform is
	designed as

Table 3 .

 3 1 -The designed optimal pose θ op [m, deg].

	θ m & θ w 2.95 0.027 166.77	5.90	0.24	-	-
	θ R	1.11 13.73	33.19 74.63	3.85 49.38	4.81
	θ L	2.77 22.07	8.19 64.46 67.65 67.63 23.91

Table 3 .

 3 2 -The designed optimal pose θ op [m, deg].

	θ m & θ w 1.57 1.33 -102.62	0.12 -0.19	-	-
	θ R	-9.94 2.73	4.58 69.94 -3.31 1.36 -2.32
	θ L	-2.32 2.46	8.60 72.28 -1.66 -0.48 16.93

1 :

 1 Initialization : P osObsInit = EnvInit() {initialize the envitonment} motion ← Algorithm 3 {off-line motion planning} sensing cycle ∆t s control cycle ∆t c collision-test cycle ∆t col 2: iS ← 1, iC ← 1 3: while Goal not reached do

	4:	on-line sensing, re-planning, tracking
		sensing:
	5:	if start of the iS sensing cycle then
	6:	P osObsN ew = EnvU pdate() {update the environment}
	7:	else if end of the iS sensing cycle then
	8:	iS ← iS+1
	9:	end if
		planning:
	10:	if start of the iC control cycle then
	11:	V elObsN ew = ObsEstim(P osObsN ew) {evaluate obstacle's movement}
	12:	CollisionCheck(P osObsN ew, V elObsN ew) {collision prediction}
	13:	if collision is predicted then
	14:	motion ← On-lineP lanning(Algorithm 3) {on-line motion planning}
	15:	if a sudden collision appears then
	16:	Immediate Stop
	17:	motion ← U pdateMotion() {update the desired motion}
	18:	end if
	19:	end if
	20:	else if end of the iC control cycle then
	21:	iC ← iC+1
	22:	if collision is predicted then
	23:	motion ← U pdateMotion() {update the desired motion}
	24:	end if
	25:	end if
		tracking:
	26:

Table 5 .

 5 1 -Control gains.

Table A .

 A 1 lists the origin position vector r p i of each frame Σ i . Construct the Table A.1 -CoM vectors of MDAMS. * 13 z 13 r * 14 y 14 r * 15 z 15 r * 16 x 16 -r * 17 x 17 r * 18 y 18 r * 19 z 19 partial velocity tables in Tables A.2 and A.3, where vectors Z i (i = 1, ..., 75) and A i (i = 9, ..., 75) are defined vectors in Appendix A.1.2. Table A.2 -Partial velocities of bodies 1-5.

	Body i 4	6	7	8	9	10	11	12
	r * i	r * 4 z 4 -r * 6 z 6	r * 7 y 7	r * 8 z 8	r * 9 x 9	-r * 10 x 10 r * 11 y 11 r * 12 z 12
	Body i 5	13	14	15	16	17	18	19
	r * i	r * 5 x 5 r

Table A .

 A 4 lists the position vector r * i of link i's CoM. Table A.4 -Frame's origin vectors. -b v y 3l 0 z 3 l 2 z 4 l 3 x 5l 3 z 5 -l 4 z 6 l 5 y 7 15 l 7 x 16 -l 8 x 17 l 9 y 18 l 10 z 19 A.1.2 Vectors Z i (i = 1, ..., 75) and A i (i = 9, ..., 75)

	Frame i	1	5	6	7	8
	r p i
	Frame i	2	-	13	14	15
	r p i	b v y 3 -l 0 z 3	-	l 3 x 5 + l 3 z 5	l 4 z 13 l 5 y 14
	Frame i	9	10	11	12	e
	r p i	l 6 z 8	l 7 x 9	-l 8 x 10	l 9 y 11 l 10 z 12
	Frame i	16	17	18	19	e'
	r p i	l 6 z

A.1.2.1 Z i (i = 1, ...,

[START_REF] Flacco | A reverse priority approach to multi-task control of redundant robots[END_REF]

  (k = 16, ..., 21), r * 19 + 19 i=k-9 r p i (k = 22, ..., 27), r * e + 19 i=k-16 r p i (k = 29, ..., 35).

	r * 13 + r p 13 (k = 1),
	r * 14 + 14 i=k+12 r p i (k = 2, 3), r * 15 + 15 i=k+9 r p i (k = 4, ..., 6), r * 16 + 16 i=k+6 r p i (k = 7, ..., 10), r * 17 + 17 i=k+1 r p i (k = 11, ..., 15), r * 18 + 18 i=k-3 r p i

  a fini les conceptions d'applications et de fonctionnalités du robot d'assistance à la personne et a complété la modélisation dynamique d'un manipulateur mobile à deux bras (MDAMS) en utilisant la méthode lagrangienne. Cependant, à mesure que les degrés de liberté du robot augmentent, les calculs de l'énergie et de ses dérivées partielles seront complexe et prendra du temps. En outre, l'auteur a proposé un algorithme de résolution de cinématique inverse basé sur RRT-connect pour concevoir le mouvement de l'espace en supposant que le mouvement du robot dans l'espace de tâche est connu, sans traitant des problèmes comme l'optimisation du chemin, la redondance et la singularité. En fait, il n'y a pas seulement des obstacles statiques tels que des murs et des meubles, mais aussi des obstacles dynamiques tels que des robots et des humains, et des obstacles mobiles tels que des portes et des chaises dans des environnements domestiques standard. Par conséquent, il est très difficile de concevoir le mouvement du robot dans l'espace de tâche pour l'humanoïde étudié dans cette thèse. Pire encore, en raison de la non-linéarité élevée entre les espaces de tâche et des joints, même si le mouvement dans l'espace de tâche est connu, il est encore difficile de déterminer le mouvement dans l'espace des joints sur lequel la commande robotique dépend directement ou indirectement. En outre,[START_REF] Qian | Design and Control of a Personal Assistant Robot[END_REF] a également conçu un contrôleur adaptatif des réseaux neuronaux RBF (RBFNN) pour résoudre les problèmes d'incertitude et d'interférence, et a réalisé la manipulation des objets en contrôlant la force d'interaction. Cependant, le contrôle collaboratif entre les bras et le couplage entre la plate-forme mobile et le manipulateur supérieur n'ont pas été étudiés. De plus, l'efficacité du contrôleur RBFNN reste à vérifier.En résumé, il existe de nombreux problèmes à être résolus pour réaliser un robot d'assistance à la personne intelligente pour des applications pratiques. Cette thèse est organisée en cinq chapitres. L'état de l'art des manipulateurs robotiques et des robots de service, en particulier des robotiques humanoïdes, et une brève introduction au contexte technique sont donnés au chapitre 1.Au chapitre 2, le modèle cinématique du robot conçu est d'abord établi. La méthode modifiée de Denavit Hartenberg est utilisée à construire le modèle 201 cinématique avec seulement quatre paramètres. Les expressions compactes des mouvements de la plate-forme mobile et des outils terminaux (OTs) sont formulées en utilisant l'unité quaternion à représenter les orientations des OTs. Ensuite, le modèle lagrangien et le contrôleur adaptatif RBFNN sont rappelés. La validation virtuelle via la co-simulation MATLAB/SIMULINK et Adams est réalisée pour valider l'efficacité du contrôleur RBFNN. Afin d'éviter le calcul d'énergie et de dérivées partielles, les équations dynamiques sont formulées en utilisant la méthode de Kane. La stabilité du renversement physique est étudiée en utilisant le modèle de Kane construit. Finalement, un contrôleur est proposé et la stabilité du contrôleur est analysée à l'aide de la technique de back-stepping.

  Planification et Suivi de Mouvement d'un Manipulateur Mobile Non-holonome à deux Bras Résumé: Cette thèse se concentre sur la planification et le suivi de mouvement d'un manipulateur mobile non-holonome à deux bras. D'abord, la méthode MDH est utilisée pour la modélisation cinématique et la co-simulation sur le prototype est réalisée pour valider l'efficacité du contrôleur RBFNN. Afin d'évider de calculer l'énergie et ses dérivées partielles, la méthode de Kane est utilisée. Puis, un algorithme avancé MaxiMin NSGA-II est proposé à concevoir la pose optimale étant données la pose initiale et les positions-orientations souhaitées des outils terminaux (OTs). Un algorithme à connexion directe combinant BiRRT et la gradient-descente est conçus pour la transition de la pose initiale à la pose optimale, et une optimisation géométrique est conçue pour optimiser et cohérer le chemin. Afin de résoudre le problème d'échec de l'algorithme hors ligne, un algorithme en ligne est proposé. De plus, un algorithme basé sur les via-points des OTs et MOGA est proposé à optimiser les via-poses. Enfin, le problème de suivi de mouvement est étudié étant données les mouvements des OTs. Au lieu de contrôler le mouvement absolu, deux mouvements relatifs sont introduits pour réaliser la coordination et la coopération entre la plate-forme et le manipulateur supérieur en évitant les limites des joints. Mots-cléfs: Manipulateur mobile, Méthode de Kane, MaxiMin NSGA-II, résolution de redondance, Planification de mouvement, suivi de trajectoire.

https://www.softbankrobotics.com/emea/en/robots.

http://www.fujitsu.com/global/about/resources/news/press-releases/.

https://www.care-o-bot.de/en/care-o-bot-3.html.

Orientation control for two EEs which is represented by the orange blocks;

Acknowledgments

Finally, I would like to thank China Scholarship Council (CSC) for giving me

CONCLUSIONS

Jv, Jω, Jvr

Trajectory Tracking With Joint Limit Avoidance

In order to dampen the joint positions, we simulate the system by applying the control law Eq. (5.24). Suppose that the desired trajectories of two EEs are known. Table 5.2 lists the joint limits of robot MDAMS. The simulation time is t = 20s. Choose the control gains as in Table 5.1.

The simulation results are shown in Fig. 5.9, where the horizontal lines represent respectively the upper and lower boundaries of the corresponding joint, the range of two mobile platform wheels is [-5π, 5π]. It can be seen that all joint angles are perfectly dampened within their boundaries. However, when the desired EEs position are out of reach, the robot will break. In that case, the range of the mobile platform should be expanded.

Comparison of Back-stepping and PD Tracking Methods

The back-stepping-based controller proposed in Eq. (2.75) is implemented as a comparison. The trajectory tracking of two EEs is realized using controllers Eq. (2.75) and Eq. (5.22) with Eq. (5.24). The tracking results in Fig. 5.10 show that controller Eq. (2.75) responds more quickly. Besides, it is more stable and the tracking errors are smaller than the PD controller Eq. (5.22).

CONTRIBUTIONS

In summary, this thesis has the following contributions:

• Kinematic modeling of the designed hyper redundant non-holonomic mobile dual-arm manipulator system (MDAMS) using the Modified Denavit Hartenberg method (Chapter 2).

• Validation of the adaptive RBF neural network controller on the virtual prototype in ADAMS via MATLAB/SIMULINK and ADAMS co-simulation (Chapter 2).

• Simplification of the dynamic modeling process for the designed MDAMS using Kane's method. A Lyapunov stable controller is designed using backstepping technique and physical stability analysis is presented based on constructed Kane's model (Chapter 2).

• The introduction of an improved MaxiMin NSGA-II algorithm for solving the multi-objective optimization problem. The design of the optimal position-orientation of the mobile platform and the optimal configuration of the upper manipulator by treating them as a whole system. Five objective functions are defined to be optimized at the same time (Chapter 3).

• A direct-connect bidirectional sampling method and a geometric optimization technique are designed. And a sequence of mobile platform's orientations are calculated and the linear polynomials with parabolic blends interpolation is used to lead robot MDAMS always head forward (Chapter 3).

• An on-line motion planning method is presented for the designed robot MDAMS in dynamic environments. On-line sensing, collision test and control cycles are defined to realize on-line motion planning with motion prediction of unknown obstacles in real time (Chapter 4).

• A via-points and MOGA-based motion planning method is proposed for robot MDAMS based on a sequence of planned via-points of end-effectors. where