<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article  PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "http://dtd.nlm.nih.gov/publishing/3.0/journalpublishing3.dtd"><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="3.0" xml:lang="en" article-type="research article"><front><journal-meta><journal-id journal-id-type="publisher-id">MME</journal-id><journal-title-group><journal-title>Modern Mechanical Engineering</journal-title></journal-title-group><issn pub-type="epub">2164-0165</issn><publisher><publisher-name>Scientific Research Publishing</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.4236/mme.2015.53009</article-id><article-id pub-id-type="publisher-id">MME-59112</article-id><article-categories><subj-group subj-group-type="heading"><subject>Articles</subject></subj-group><subj-group subj-group-type="Discipline-v2"><subject>Engineering</subject></subj-group></article-categories><title-group><article-title>
 
 
  Application of Null Space Based Behavior Control to the Swarm Robot’s Control
 
</article-title></title-group><contrib-group><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>e</surname><given-names>Thi Thuy Nga</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref><xref ref-type="corresp" rid="cor1"><sup>*</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Le</surname><given-names>Hung Lan</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref></contrib></contrib-group><aff id="aff1"><addr-line>Department of Cybernetics, University of Transport and Communications Hanoi, Hanoi, Vietnam</addr-line></aff><author-notes><corresp id="cor1">* E-mail:<email>lethuynga77@gmail.com(ETTN)</email>;</corresp></author-notes><pub-date pub-type="epub"><day>10</day><month>07</month><year>2015</year></pub-date><volume>05</volume><issue>03</issue><fpage>97</fpage><lpage>104</lpage><history><date date-type="received"><day>25</day>	<month>April</month>	<year>2015</year></date><date date-type="rev-recd"><day>accepted</day>	<month>23</month>	<year>August</year>	</date><date date-type="accepted"><day>26</day>	<month>August</month>	<year>2015</year></date></history><permissions><copyright-statement>&#169; Copyright  2014 by authors and Scientific Research Publishing Inc. </copyright-statement><copyright-year>2014</copyright-year><license><license-p>This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/</license-p></license></permissions><abstract><p>
 
 
  This paper proposes a solution to controls warm robots in an effort to avoid obstacles, moving to the goal by the method of Null Space based Behavior (NSB) control of an individual in the swarm. This paper also provides the stability analysis of the converging process by investigating the relationship between single agents, and the analysis result is proved by using the Lyapunov theory. Finally, the simulation results in two-dimensional space have confirmed the obtained theoretical results.
 
</p></abstract><kwd-group><kwd>Swarm Robots</kwd><kwd> Avoid Obstacles</kwd><kwd> Null Space Based Behavior</kwd></kwd-group></article-meta></front><body><sec id="s1"><title>1. Introduction</title><p>The swarm robots, a new research trend with many promising technologies in the field of robotics, particularly have high intellect, but do not require the complex manufacturing technology. The swarms are increasingly interested in the study, although each study has given specific research goals. The research of the converging process plays an important role in swarm robots. V. Gazi, Kevin M. Passino [<xref ref-type="bibr" rid="scirp.59112-ref1">1</xref>] considered the number of individuals-M in n-dimensional Euclidean space, the assumption of uniformity and visibility between individuals is not limited. The move of the individuals depends on the attraction/repulsion forces which are explicit mathematical functions. The authors have demonstrated the stability of the swarm: all the individuals will be located in a certain area after the period of time of moving. [<xref ref-type="bibr" rid="scirp.59112-ref2">2</xref>] and [<xref ref-type="bibr" rid="scirp.59112-ref3">3</xref>] also provided attraction/repulsion functions which are explicit functions similar to [<xref ref-type="bibr" rid="scirp.59112-ref1">1</xref>] , but [<xref ref-type="bibr" rid="scirp.59112-ref2">2</xref>] developed the model based on the interaction from the individual to another, or between the individual and the environment. The model designed [<xref ref-type="bibr" rid="scirp.59112-ref2">2</xref>] stands for seeking food, and the results are simulated in 3D space. [<xref ref-type="bibr" rid="scirp.59112-ref3">3</xref>] analyzed the stability of the swarm, attraction/repulsion forces between individuals will be 0 if they do not see each other (apart from the impact of the sensor) and the forces are only equal to g (.) when the individuals are neighboring. Second difference [<xref ref-type="bibr" rid="scirp.59112-ref3">3</xref>] is the limit move of each individual and the move and has an effect on the convergence of swarm. Therefore, the model [<xref ref-type="bibr" rid="scirp.59112-ref3">3</xref>] stands for a model of actual biological swarm. When the swarm robots move in an environment with obstacles, they have to avoid ecollising obstacles. Avoid y obstacles has been studying extensively and many control algorithms solving this problem have been proposed. However, most of these algorithms are constituted on the basis of a single robot, the size and mass areas large as [<xref ref-type="bibr" rid="scirp.59112-ref4">4</xref>] [<xref ref-type="bibr" rid="scirp.59112-ref5">5</xref>] .</p><p>In content of this paper, firstly we proposed a solution to control swarm robots to avoid obstacles and moving to the goal, then analyzed the stability of the swarm and finally, we conducted the algorithm on Matlab software.</p></sec><sec id="s2"><title>2. Model Swarm Robot by the Method of Null Space Based Behavior Control</title><sec id="s2_1"><title>2.1. The Swarm Robots Perform a Task</title><p>Consider the swarm robots of N individuals move in two dimensions, given<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x5.png" xlink:type="simple"/></inline-formula>: is the position and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x6.png" xlink:type="simple"/></inline-formula>: is velocity vector of movement of the i―individual (i = 1 &#247; N), then the mathematical model of the i-individual is described as follows:</p><disp-formula id="scirp.59112-formula117"><label>(1)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x7.png"  xlink:type="simple"/></disp-formula><p>Given s is the variables are controlled to complete objectives</p><disp-formula id="scirp.59112-formula118"><label>(2)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x8.png"  xlink:type="simple"/></disp-formula><p>The derivative (2) in time:</p><disp-formula id="scirp.59112-formula119"><label>(3)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x9.png"  xlink:type="simple"/></disp-formula><p>To combine (1) v&#224; (3): <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x10.png" xlink:type="simple"/></inline-formula></p><p>where: J(p) is Jacobian matrix, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x11.png" xlink:type="simple"/></inline-formula></p><p>Inferring:</p><disp-formula id="scirp.59112-formula120"><label>(4)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x12.png"  xlink:type="simple"/></disp-formula><p>where: J<sup>+</sup> known as pseudo inverse matrix, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x13.png" xlink:type="simple"/></inline-formula></p><p>Call the disachieveable desired distance, then (4) is rewritten as follows:</p><disp-formula id="scirp.59112-formula121"><label>(5)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x14.png"  xlink:type="simple"/></disp-formula><p>where: l factor is positive,<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x15.png" xlink:type="simple"/></inline-formula>.</p><p>The null projector matrix N<sub>n</sub> is a projector onto the null space of J: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x16.png" xlink:type="simple"/></inline-formula></p></sec><sec id="s2_2"><title>2.2. The Swarm Robots Perform Multiple Tasks</title><p>Consider the case swarm robots perform tasks move to the goal, on moving them to avoid obstacles lie in the way to avoid being damaged. Now each individual robot must perform three tasks:</p><p>-The first task: to avoid obstacles.</p><p>-The second task: to move to the goal.</p><p>-The third task: to maintain swarm.</p><p>To control the robot performs the above tasks, the supervisor can choose the priority level of the task. In this article, we chose the priority level order: avoid obstacles, moving to goal and maintain swarm. NSB control [<xref ref-type="bibr" rid="scirp.59112-ref6">6</xref>] , which the is technique control was designed to be based on hierarchical priority of the task: by projecting the lower priority task on the null space of higher priority tasks, a diagram of velocity synthetic of the robot is shown in <xref ref-type="fig" rid="fig1">Figure 1</xref>.</p><p> Determine the speed to avoid obstacles:</p><fig id="fig1"  position="float"><label><xref ref-type="fig" rid="fig1">Figure 1</xref></label><caption><title> Diagram of velocity synthetic of the i-robot</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/5-1860247x17.png"/></fig><p>Given<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x18.png" xlink:type="simple"/></inline-formula>: the position of static obstacles,<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x19.png" xlink:type="simple"/></inline-formula>: the distance between the i-robot and obstacle is determined by the formula:<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x20.png" xlink:type="simple"/></inline-formula>.</p><p>The desire of the robot control is to avoid obstacles: if obstacles are on the robot moves to the goal, the robot must will be far from obstacles a safe distance<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x21.png" xlink:type="simple"/></inline-formula>; if an obstacle is out of robot’s movement then the obstacle does not affect the speed of movement of the robot. It means that the moving speed of the robot individual depends on the distance between the robot and obstacle.</p><p>Jacobian matrix<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x22.png" xlink:type="simple"/></inline-formula>: performance the moves of robot’s velocity vector avoides obstacles</p><disp-formula id="scirp.59112-formula122"><label>(6)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x23.png"  xlink:type="simple"/></disp-formula><p>Pseudo inverse of matrix J<sub>o</sub>:<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x24.png" xlink:type="simple"/></inline-formula>,<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x24.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x25.png" xlink:type="simple"/></inline-formula>.</p><p>The null projector matrix of J<sub>o</sub>:</p><disp-formula id="scirp.59112-formula123"><label>, (7)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x26.png"  xlink:type="simple"/></disp-formula><p>From (5) inferred the velocity vector of the robot to avoid obstacles are identified as follows:</p><disp-formula id="scirp.59112-formula124"><label>(8)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x28.png"  xlink:type="simple"/></disp-formula><p>where: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x29.png" xlink:type="simple"/></inline-formula>the error between the actual distance and the desired distance.</p><p> Determine the velocity of moves to the goal:</p><p>Similar to calculate velocity avoid moving to the goal: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x30.png" xlink:type="simple"/></inline-formula>is the position of the goal to be reached, s<sub>g</sub> &#206; R the distance between the ith robot and the goal is determined by the formula:</p><disp-formula id="scirp.59112-formula125"><graphic  xlink:href="http://html.scirp.org/file/5-1860247x31.png"  xlink:type="simple"/></disp-formula><p>The desire control the robot’s move toward the goal is the distance from the robot to the goal<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x32.png" xlink:type="simple"/></inline-formula>.</p><p>Matrix Jacobian<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x33.png" xlink:type="simple"/></inline-formula>:</p><disp-formula id="scirp.59112-formula126"><label>(9)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x34.png"  xlink:type="simple"/></disp-formula><p>Pseudo inverse of matrix J<sub>g</sub>: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x35.png" xlink:type="simple"/></inline-formula></p><p>The null projector matrix of J<sub>g</sub>:</p><disp-formula id="scirp.59112-formula127"><label>, (10)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x36.png"  xlink:type="simple"/></disp-formula><p>From (5) inferred the velocity vector of the robot movement to the goal are defined as follows</p><disp-formula id="scirp.59112-formula128"><label>(11)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x38.png"  xlink:type="simple"/></disp-formula><p>where: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x39.png" xlink:type="simple"/></inline-formula>the error between the actual distance and the desired distance.</p><p> Determine the velocity of move maintain swarm:</p><p>In swarm robots, maintain the swarm is a very important task, many of the scientific research on this problem, but in the [<xref ref-type="bibr" rid="scirp.59112-ref7">7</xref>] , we have analyzed the convergence behavior of the swarm based on laws attraction/repulsion fuzzy. The physical significance of our model is clear. If an individual is close to the others in the swarm, the repulsion dominates, which ensures the individual far away from them enough to be “safe”. The repulsion increases as any two individuals get closer because in the real nature the individuals are inclined to be more apart away from others if they are nearer. If an individual is far away from others in the swarm, the attraction dominates, which makes the individual get closer to the other members of the swarm. However, as the distance between the individual and the others gets bigger, this individual will loss more connection to other members of the swarm, and thus, the attraction decreases to zero as the distance increases to infinity. The attraction/repulsion function is built based on fuzzy logic. The distance between the i-robot and the j-robot (j = 1 &#247; N, j ≠ i) is:</p><disp-formula id="scirp.59112-formula129"><graphic  xlink:href="http://html.scirp.org/file/5-1860247x40.png"  xlink:type="simple"/></disp-formula><p>The purpose of the control is maintains distance between individuals in the swarm always equal a constant:</p><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x41.png" xlink:type="simple"/></inline-formula>,</p><p>In [<xref ref-type="bibr" rid="scirp.59112-ref7">7</xref>] , the kinetic model of the i?individual is built as follows:</p><disp-formula id="scirp.59112-formula130"><label>(12)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x43.png"  xlink:type="simple"/></disp-formula><p>where: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x44.png" xlink:type="simple"/></inline-formula>the interaction forces between the robot pair (i, j), this function is built on the basis of fuzzy logic:</p><disp-formula id="scirp.59112-formula131"><label>(13)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x45.png"  xlink:type="simple"/></disp-formula><p>Matrix Jacobian:</p><disp-formula id="scirp.59112-formula132"><label>(14)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x46.png"  xlink:type="simple"/></disp-formula><p>Pseudo inverse of matrix J<sub>s</sub>:</p><disp-formula id="scirp.59112-formula133"><label>(15)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x47.png"  xlink:type="simple"/></disp-formula><p>The null projector matrix of J<sub>s</sub>:</p><disp-formula id="scirp.59112-formula134"><label>, (16)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x48.png"  xlink:type="simple"/></disp-formula><p>From (5) inferred to maintain the velocity vector of the robot swarm is defined as follows:</p><disp-formula id="scirp.59112-formula135"><label>(17)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x50.png"  xlink:type="simple"/></disp-formula><p> Integrated velocity when the robot perform all three tasks:</p><p>The desired control (velocities) are:</p><disp-formula id="scirp.59112-formula136"><label>(18)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x51.png"  xlink:type="simple"/></disp-formula><p>where:<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x52.png" xlink:type="simple"/></inline-formula>;<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x52.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x53.png" xlink:type="simple"/></inline-formula>.</p></sec></sec><sec id="s3"><title>3. Analyzing the Stability of Robot Swarm by the Method of Null Space Based Behavior Control Lemma</title><p>Let <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x54.png" xlink:type="simple"/></inline-formula> be a symmetric matrix and x, y are vectors with appropriate dimension. Denote <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x54.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x55.png" xlink:type="simple"/></inline-formula> the smallest and largest eigenvalue of matrix A. Then: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x54.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x55.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x56.png" xlink:type="simple"/></inline-formula>and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x54.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x55.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x56.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x57.png" xlink:type="simple"/></inline-formula>.</p><p>Proof.</p><p>Let denote <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x58.png" xlink:type="simple"/></inline-formula> are the eigenvalues of matrix A. There is a set of orthonormal base <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x58.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x59.png" xlink:type="simple"/></inline-formula> such<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x58.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x59.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x60.png" xlink:type="simple"/></inline-formula>. The vector <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x58.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x59.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x60.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x61.png" xlink:type="simple"/></inline-formula> can be described as:<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x58.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x59.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x60.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x61.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x62.png" xlink:type="simple"/></inline-formula>.</p><p>Then: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x63.png" xlink:type="simple"/></inline-formula></p><p>So we have:</p><disp-formula id="scirp.59112-formula137"><graphic  xlink:href="http://html.scirp.org/file/5-1860247x64.png"  xlink:type="simple"/></disp-formula><p>Therefore: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x65.png" xlink:type="simple"/></inline-formula>or:<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x65.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x66.png" xlink:type="simple"/></inline-formula>.</p><p>On the other side, we have:</p><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x67.png" xlink:type="simple"/></inline-formula>or:</p><p>Then:</p><disp-formula id="scirp.59112-formula138"><graphic  xlink:href="http://html.scirp.org/file/5-1860247x69.png"  xlink:type="simple"/></disp-formula><p>Theorem:</p><p>The necessary and sufficient condition of asymptotically stable task error vector <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x70.png" xlink:type="simple"/></inline-formula> is the Jacobians associated with obstacle avoidance o and reach goal g tasks and the Jacobians associated with separation task and the augmented task og satisfy the independence condition:</p><disp-formula id="scirp.59112-formula139"><label>(19)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x71.png"  xlink:type="simple"/></disp-formula><p>where <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x72.png" xlink:type="simple"/></inline-formula> denotes the rank of the matrix.</p><p>Proof.</p><p>A possible Lyapunov function candidate <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x73.png" xlink:type="simple"/></inline-formula> continuously differentiable is given by<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x73.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x74.png" xlink:type="simple"/></inline-formula>, whose time derivative is:</p><disp-formula id="scirp.59112-formula140"><graphic  xlink:href="http://html.scirp.org/file/5-1860247x75.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.59112-formula141"><graphic  xlink:href="http://html.scirp.org/file/5-1860247x76.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.59112-formula142"><label>(20)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x77.png"  xlink:type="simple"/></disp-formula><p>due to the fact that:<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x78.png" xlink:type="simple"/></inline-formula>.</p><p>We have to prove that the function: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x79.png" xlink:type="simple"/></inline-formula>is positive definite.</p><p>Firstly, it is not difficult to claim that a necessary condition of the positive definiteness of V<sub>1</sub> is that two first elements on the main diagonal <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x80.png" xlink:type="simple"/></inline-formula> and the function <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x80.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x81.png" xlink:type="simple"/></inline-formula> is positive definite. The element <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x80.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x81.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x82.png" xlink:type="simple"/></inline-formula> is obviously positive as along as the gain<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x80.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x81.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x82.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x83.png" xlink:type="simple"/></inline-formula>. The element <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x80.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x81.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x82.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x83.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x84.png" xlink:type="simple"/></inline-formula> is positive if the obstacle avoidance and reach goal tasks are independent, i.e., if condition (19) hold and the gain<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x80.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x81.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x82.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x83.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x84.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x85.png" xlink:type="simple"/></inline-formula>. The function <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x80.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x81.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x82.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x83.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x84.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x85.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x86.png" xlink:type="simple"/></inline-formula> is positive definite if the matrix <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x80.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x81.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x82.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x83.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x84.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x85.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x86.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x87.png" xlink:type="simple"/></inline-formula> is positive definite. To prove it let define the eigenvalues of the symmetric positive definite matrix <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x80.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x81.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x82.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x83.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x84.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x85.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x86.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x87.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x88.png" xlink:type="simple"/></inline-formula> as<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x80.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x81.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x82.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x83.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x84.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x85.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x86.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x87.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x88.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x89.png" xlink:type="simple"/></inline-formula>. Then we can rewrite:</p><disp-formula id="scirp.59112-formula143"><graphic  xlink:href="http://html.scirp.org/file/5-1860247x90.png"  xlink:type="simple"/></disp-formula><p>Note that due to the fact that:</p><disp-formula id="scirp.59112-formula144"><graphic  xlink:href="http://html.scirp.org/file/5-1860247x91.png"  xlink:type="simple"/></disp-formula><p>so we have: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x92.png" xlink:type="simple"/></inline-formula></p><p>Therefore <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x93.png" xlink:type="simple"/></inline-formula> is positive definite.</p><p>The <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x94.png" xlink:type="simple"/></inline-formula> submatrix M<sub>33</sub> is positive definite if the separation task is independent to the augmented Jacobian obtained by stacking obstacle avoidance and reach goal tasks.</p><p>The sufficient conditions of the theorem follow from the following fact.</p><p>In the formula:</p><disp-formula id="scirp.59112-formula145"><label>(21)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x95.png"  xlink:type="simple"/></disp-formula><p>directly we have:<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x96.png" xlink:type="simple"/></inline-formula>;</p><disp-formula id="scirp.59112-formula146"><graphic  xlink:href="http://html.scirp.org/file/5-1860247x97.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.59112-formula147"><graphic  xlink:href="http://html.scirp.org/file/5-1860247x98.png"  xlink:type="simple"/></disp-formula><p>and (see Lemma): <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x99.png" xlink:type="simple"/></inline-formula></p><disp-formula id="scirp.59112-formula148"><graphic  xlink:href="http://html.scirp.org/file/5-1860247x100.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.59112-formula149"><graphic  xlink:href="http://html.scirp.org/file/5-1860247x101.png"  xlink:type="simple"/></disp-formula><p>where: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x102.png" xlink:type="simple"/></inline-formula>-the largest singular value of the matrix<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x102.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x103.png" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x102.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x103.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x104.png" xlink:type="simple"/></inline-formula>-the largest singular value of the matrix<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x102.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x103.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x104.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x105.png" xlink:type="simple"/></inline-formula>.</p><p>So V<sub>1</sub> can be underestimated as:</p><disp-formula id="scirp.59112-formula150"><graphic  xlink:href="http://html.scirp.org/file/5-1860247x106.png"  xlink:type="simple"/></disp-formula><p>It is convenient to rewrite the relation above to the matrix formalism:</p><disp-formula id="scirp.59112-formula151"><graphic  xlink:href="http://html.scirp.org/file/5-1860247x107.png"  xlink:type="simple"/></disp-formula><p>where the matrix <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x108.png" xlink:type="simple"/></inline-formula> is defined as:</p><disp-formula id="scirp.59112-formula152"><label>(22)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x109.png"  xlink:type="simple"/></disp-formula><p>Order to <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x110.png" xlink:type="simple"/></inline-formula> is positive definite then <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x110.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x111.png" xlink:type="simple"/></inline-formula> is positive definite, which means that that, having the scalar diagonal elements positive, is always positive definite according to Sylvester theorem:</p><disp-formula id="scirp.59112-formula153"><label>(23)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x112.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.59112-formula154"><label>(24)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x113.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.59112-formula155"><label>(25)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1860247x114.png"  xlink:type="simple"/></disp-formula><p>From (7): <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x115.png" xlink:type="simple"/></inline-formula>according to Cauchy- Schwarz theorem:<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x115.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x116.png" xlink:type="simple"/></inline-formula> therefore<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x115.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x116.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x117.png" xlink:type="simple"/></inline-formula>, equal sign occurs if and only if J<sub>o</sub> and J<sub>g</sub> are</p><p>two vectors to linear dependence, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x118.png" xlink:type="simple"/></inline-formula>if and only if J<sub>o</sub> and J<sub>g</sub> are two linearly independent vectors. In other words, (24) correct then the first equation of (19) is also true. Similarly, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x118.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1860247x119.png" xlink:type="simple"/></inline-formula>if and only if J<sub>og</sub> and J<sub>s</sub> are two linearly independent vectors, it is means (25) correct then the second equation of (19) is also true.</p><p>The theorem has been proved.</p></sec><sec id="s4"><title>4. Simulation</title><p>In this section, we will give some simulation results for illustrating the analytical results. For each simulation, the search space is set [500, 500]. The initial positions for the robots, obstacles, goal are randomly generated. For the NSB search in this paper, N robots are used to search a single goal.</p><p><xref ref-type="fig" rid="fig2">Figure 2</xref>(a) and <xref ref-type="fig" rid="fig2">Figure 2</xref>(b) shows the paths taken by the individual robots to converge at the goal using method of Null Space based Behavior control when the gains l<sub>o</sub> is always negative definite and l<sub>g</sub> is always positive definite. It’s sure that the control algorithm following three goal tacks is:</p><p>1) Firtly: to avoid obstacles,</p><p>2) Secondly: to move to the goal,</p><p>3) Thirdly: to maintain swarm.</p><p>When l<sub>o</sub> is positive definite or l<sub>g</sub> are negative definite, apparently through <xref ref-type="fig" rid="fig2">Figure 2</xref>(c)) we can observer that a few robots unavoidable obstacle or swarm not converged at the goal (<xref ref-type="fig" rid="fig2">Figure 2</xref>(d)).</p><fig-group id="fig2"><label><xref ref-type="fig" rid="fig2">Figure 2</xref></label><caption><title> Simulation results the process of moving of the swarm robots to the goal. (a) N = 21, l<sub>o</sub> = −1.5, l<sub>g</sub> = 0.05; (b) N = 41, l<sub>o</sub> = −0.5, l<sub>g</sub> = 0.05; (c) N = 21, l<sub>o</sub> = 0.5, l<sub>g</sub> = 0.05; (d) N = 13, l<sub>o</sub> = −1.5, l<sub>g</sub> = −0.05.</title></caption><fig id ="fig2_1"><label> (b)</label><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/5-1860247x120.png"/></fig></fig-group><p>Simulation results have confirmed the correctness of the algorithm and stable conditions of the implementation process of the mission objectives.</p></sec><sec id="s5"><title>5. Conclusion</title><p>This paper proposed a control solution to the swarm robot by constituting the method of NSB control and built the control law, simultaneously proved the convergence of algorithm based on Lyapunov theory. Simulation results show that: the swarm robots avoided obstacles and found the goal after moving in a determined time. The results of this paper show that applying of NSB to solve collective search problem in the obstacle environment is very practical and efficient. In the future, we are going to consider the swarm robots operate in an environment with more rugged terrain, can be utilized for hazardous tasks such as landmine detection, fire fighting, military surveillance.</p></sec><sec id="s6"><title>Cite this paper</title><p>Le Thi ThuyNga,Le HungLan, (2015) Application of Null Space Based Behavior Control to the Swarm Robot’s Control. Modern Mechanical Engineering,05,97-104. doi: 10.4236/mme.2015.53009</p></sec></body><back><ref-list><title>References</title><ref id="scirp.59112-ref1"><label>1</label><mixed-citation publication-type="other" xlink:type="simple">Gazi, V. and Passino, K.M. (2002) Stability Analysis of Swarms. Proceedings of the American Control Conference Anchorage, 8-10 May 2002, 1813-1818. http://dx.doi.org/10.1109/acc.2002.1023830</mixed-citation></ref><ref id="scirp.59112-ref2"><label>2</label><mixed-citation publication-type="other" xlink:type="simple">Chen, X.-B., Pan, F.C., Li, L. and Fang, H. (2006) Practical Stability Analysis for Swarm Systems. IEEE Transactions on Automatic Control, 3904-3909.</mixed-citation></ref><ref id="scirp.59112-ref3"><label>3</label><mixed-citation publication-type="other" xlink:type="simple">Wang, L.S. and Fang, H.J. (2010) Stability Analysis of Practical Anisotropic Swarms. IEEE Transactions on Automatic Control, 768-772.</mixed-citation></ref><ref id="scirp.59112-ref4"><label>4</label><mixed-citation publication-type="other" xlink:type="simple">Smith, L.L., Venayagamoorth, G.K. and Holloway, P.G. (2012) Obstacle Avoidance in Collective Robotic Search Using Particle Swarm Optimization. IEEE Swarm Intelligence Symposium.</mixed-citation></ref><ref id="scirp.59112-ref5"><label>5</label><mixed-citation publication-type="other" xlink:type="simple">Bento, L.C., Pires, G. and Nunes, U. (2002) A Behavior Based Fuzzy Control Architecture for Path Tracking and Obstacle Avoidance. Proceedings of the 5th Portuguese Conference on Automatic Control, Aveiro, 341-346.</mixed-citation></ref><ref id="scirp.59112-ref6"><label>6</label><mixed-citation publication-type="other" xlink:type="simple">Antonelli, G. (2009) Stability Analysis for Prioritized Closed-Loop Inverse Kinematic Algorithms for Redundant Robotic Systems. IEEE Transactions on Robotics, 25, 985-994. http://dx.doi.org/10.1109/TRO.2009.2017135</mixed-citation></ref><ref id="scirp.59112-ref7"><label>7</label><mixed-citation publication-type="other" xlink:type="simple">Lan, L.H., Nga, L.T.T. and Lan, L.H. (2013) Aggregation Stability of Multiple Agents with Fuzzy Attraction and Repulsion Forces. MMAR, 81-85.</mixed-citation></ref></ref-list></back></article>