Next Article in Journal
Coupled Fluid-Thermal Analysis for Induction Motors with Broken Bars Operating under the Rated Load
Previous Article in Journal
Hydrothermal Carbonization of Fruit Wastes: A Promising Technique for Generating Hydrochar
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Energy Consumption Optimization for the Formation of Multiple Robotic Fishes Using Particle Swarm Optimization

1
School of Automation Science and Electrical Engineering, Beihang University, Beijing 100191, China
2
School of Mechanical Engineering and Automation, Beihang University, Beijing 100191, China
3
Department of Computer Science, USC Viterbi School of Engineering, University of Southern California, Los Angeles, CA 90089, USA
4
School of Reliability and Systems Engineering, Beihang University, Beijing 100191, China
*
Author to whom correspondence should be addressed.
Energies 2018, 11(8), 2023; https://doi.org/10.3390/en11082023
Submission received: 16 July 2018 / Revised: 30 July 2018 / Accepted: 31 July 2018 / Published: 3 August 2018

Abstract

:
The traditional leader-follower formation algorithm can realize the formation of multiply robotic fishes, but fails to consider the energy consumption during the formation. In this paper, the energy optimized leader-follower formation algorithm has been investigated to solve this problem. Considering that the acceleration of robotic fish is tightly linked to the motion state and energy consumption, we optimize the corresponding control parameters of the acceleration to reduce energy consumption during the formation via particle swarm algorithm. The whole process has been presented as follows: firstly we realize the formation on the base of the kinematic model with leader-follower formation algorithm; then the energy consumption on the base of dynamical model are derived; finally we seek the optimal control parameters based on the particle swarm optimization (PSO) algorithm. The dynamics simulation of the energy optimization scheme is conducted to verify the functionality of the proposed energy optimized leader-follower formation algorithm via MATLAB. The optimized results demonstrate that the proposed approach, reducing energy consumption during the formation, is superior to the traditional leader-follower formation algorithm and can reduce energy consumption during the formation. The novelty of the work is that we can reduce the energy consumption during the process of formation by considering the energy consumption, which is a gap in the current research field.

1. Introduction

Robotic fish, defined as a fish-like aquatic vehicle, has the highly controllable fins, the large aspect ratio, the undulatory body motions and lunate tail [1]. Robotic fish can be applied in lots of fields, such as underwater exploration, aquatic monitoring, patrol, and mobile sensing [2,3]. Most of the robotic fishes consume energy that are supplied by batteries. But batteries have limited capacity. When robotic fishes conduct different assignments, they need to take on different formation and change the formation frequently. However, during the process of changing the formation, they will consume lots of energy. Therefore, how to reduce the energy consumption in the process of formation and improve the efficiency of formation, have the very high research value.
Migrating flocking, such as traditional leader-follower flocking, can be used to address the formation problems of multiple robotic fishes systems. In terms of formation flocking problems of multiple robotic fishes systems, some researches have come up with lots of methods. If some leaders have global knowledge and they lead other robotic fishes swim in a desired trajectory, the system can track a specific trajectory and realize the formation [4]. But the routine is fixed and not suitable for the real life. Later, for multi-agent dynamical systems, the distributed leader-follower algorithm has been set up [5]. Under the lead of this algorithm, robotic fishes have time-dependent velocities and the routine is not fixed. However, the leader is virtual and few formation articles have contained real leaders. Based on the consensus algorithm [4] and artificial potential field method [6], a model of distributed adaptive formation of multi-agent system has been put forward [7]. The leader is a genuine fish and has bounded unknown input. The leader can lead the followers realize the formation. Considering essential features of formation behavior, such as collision avoidance, and velocity matching [8], a distributed cohesive formation algorithm has been provided to realize the formation [9]. In this algorithm, robotic fishes are divided to two parts: one real leader and several followers. However, those formation algorithms above just realize the formation and fail to consider the energy consumption during the process of formation.
In order to predict, monitor and increase the energy of robotic fish, many researches have been conducted. On the basis of the ionic polymer-metal composite (IPMC) physical properties, in order to save energy, an energy consumption model has been set up to predict single robotic fish energy consumption [10]. A real-time energy monitoring and management system has been designed to monitor the energy consumption of the single robot fish [11]. A reversible energy conversion mechanism has been proposed, which can convert wave energy to electricity for single robotic fish [12]. Besides, an energy-saving cluster head method with fuzzy logic can be utilized to extend the single robotic fish lifetime [13]. Although those methods above can be utilized to predict, monitor and save the energy consumption of robotic fish, they are just devised for single robotic fish, rather than total energy of all the robotic fishes during the process of changing the formation. Although previous methods in literatures have been proposed to realize the formation construction of the group and decline energy consumption of single robotic fish, they involve few information about energy consumption about all the robotic fishes during the process of formation. In the process of swimming, the velocity of each robotic fish is different, and thus the energy consumption of each robotic fish differs from each other. In an attempt to reduce the energy consumption of multi-agent systems, the condition of each robotic fish should be researched in the global point of view.
The paper aims at providing a energy optimized leader-follower formation algorithm to minimize the energy consumption of multi-agent systems during the process of changing formation. Holding that the interconnection between a genuine leader and follower is unidirectional [14], and the leader does not have external control input, thus the formation is stable. Control parameters are utilized to express the acceleration equation of each robotic fish. With the different value of control parameters, the acceleration equation of each robotic fish will be different. As a result, the energy consumption will be different. Compared to the traditional distributed leader-follower formation algorithm, this paper adds new control parameters to the acceleration equation and utilizes particle swarm optimization algorithm to optimize the control parameters. Therefore, the energy consumption will be declined. The main contributions of this paper are as below: to the best of authors’ knowledge, this is the first paper to discuss how to reduce the energy consumption of multi-agent system during the process of formation and propose an energy optimized leader-follower formation algorithm. Firstly, with an accurate kinematic model, we can achieve the formation and the acceleration equation including control parameters. Then, a dynamical model of the robotic fish is built to analyze the energy consumption of total robotic fish. The total energy consumption of the multi-agent systems is regarded as a function to guide the choice of control parameters. Then, under the lead of particle swarm algorithm, the control parameters of the acceleration equation can be optimized to lower total energy consumption during the process of formation. Finally, tests are performed to validate the proposed method in three kinds of formation.
The rest of this paper is organized as follows. Section 2 gives the kinematic model and dynamical model of the robotic fish, and proposes the energy optimized leader-follower formation algorithm to reduce the energy consumption of the multiple robotic fish system. And stability of the algorithm is verified. Simulation results are provided in Section 3. Section 4 provides discussion about the advantages of the algorithm and compares it with the traditional leader-follower algorithm. At the end, Section 5 renders several concluding remarks.

2. Materials and Methods

2.1. Methods of Robotic Fish

2.1.1. The Kinematic Model

When robotic fish makes the formation, we need to record the state of fish. Figure 1 shows the graphical representation of the kinematic model which helps record the process of the formation. As the Figure 1 shows, M k is regarded as the mass center while D k is regarded as the geometrical center. p k ( t ) = [ x k ( t ) , y k ( t ) ] T R 2 is the position vector of robotic fish k at time t, θ k ( t ) [ 0 , 2 π ) is the heading angle and is measured from the x-axis in the anticlockwise rotation, q k ( t ) = [ v k ( t ) , l k ω k ( t ) ] T = [ v k ( t ) , u k ( t ) ] T is the velocity vector, v k ( t ) R is the forward speed, ω k ( t ) R is the rotational speed, u k ( t ) = l k ω k ( t ) is the tangential speed, and l k is the distance between D k and M k . Assume that the size of the robotic fish is the same. Every value of the l k is same and we can describe that l k = l d ( k = 1 , , N ) , where l d is a positive constant. Besides, t k ( t ) and n k ( t ) are two unit vectors orthogonal to each other, and t k ( t ) = cos θ k ( t ) sin θ k ( t ) T , while n k ( t ) = sin θ k ( t ) cos θ k ( t ) T .
Kinematic model is adopted to describe the state of the robotic fish when realizing the formation [9]. Considering the fact that underwater communication is limited and technology for localization is not perfect, it is restricted to realize the coordination algorithms on robotic fishes. Despite that three-dimensional swimming capability about robotic fish has been researched [15], robotic fish is still modeled as unicycles swimming in a two-dimensional Euclidean space [16,17]. Because the robotic fish relies on the latter part of its body to provide force, kinematic model of fish is extended, whose mass center and geometrical center are not the same. To sum up, the kinematic model of the robotic fish k ( k = 1 , , N ) is as follows:
x ˙ k ( t ) = v k ( t ) cos θ k ( t ) ω k ( t ) l k sin θ k ( t ) y ˙ k ( t ) = v k ( t ) sin θ k ( t ) + ω k ( t ) l k cos θ k ( t ) θ ˙ k ( t ) = ω k ( t ) v ˙ k ( t ) = a k ( t ) ω ˙ k ( t ) = b k ( t ) / l k
where: a k ( t ) R and b k ( t ) R are the thrusting and rotational acceleration, respectively. If U k ( t ) = [ a k ( t ) b k ( t ) ] and
H k ( t ) = cos θ k ( t ) sin θ k ( t ) sin θ k ( t ) cos θ k ( t )
the kinematic model can be simplified:
p ˙ k ( t ) = H k ( t ) T q k ( t ) q ˙ k ( t ) = U k ( t )

2.1.2. The Dynamical Model

When robotic fishes swim in the water, they will consume much energy because they need to overcome some force. In order to analyze the resistance force, we need to create the dynamic model of robotic fish. Figure 2 shows the graphical representation of the dynamic model. On the basis of the dynamic model, the resistance force of the robotic fish can be analyzed. Then, the function W about energy consumption can be calculated. Robotic fish is regarded as an integral rigid body, at the same time, the body and tail of robotic fish can be seen as a rigid flat because of the oscillation [18]. Making use of hydrodynamic pressure equation to analyze the hydrodynamic is a good way. The hydrodynamic can be seen as the concentrated force. F 0 and F 1 are the hydrodynamic forces on the head and body of the robotic fish, respectively [19,20].
By neglecting the force of friction, the resistance force to the head of the robotic fish is:
F 0 = 1 2 ρ D 0 V 0 2 A 0
where ρ is the density of the fluid, D 0 is the resistance coefficient of the head, V 0 is the velocity of the robotic fish and A 0 is the maximum sectional area of the head.
By regarding the body as a flat, the hydrodynamic force to the body is:
F 1 = 1 2 ρ D 1 V c 1 2 A 1
where D 1 is the resistance coefficient of the body. X 0 is the x coordinate of the head. A 1 is the sectional area of the body. V c 1 is the velocity perpendicular to the body. The vector of the velocity is V c 1 = ( X ˙ 0 L 1 s i n θ 10 θ ˙ 10 / 2 , L 1 c o s θ 10 θ ˙ 10 / 2 ) . The normal vector of the body is: I 1 = ( s i n θ 10 , c o s θ 10 ) . And the velocity is: V c 1 = V c 1 I 1 .
Because the swing of the joints generate the hydrodynamic force to overcome the resistance of the water, the total energy consumed in one period is:
W t o t a l = 0 T ( F 0 ( t ) V ( t ) ) d t + 0 T ( F 1 ( t ) ω ( t ) l d ) d t
The total energy consumption of all robotic fishes can be expressed and calculated. Let the total energy be a function and the particle swarm algorithms is utilized to optimize the value of the function.

2.1.3. The Energy Consumption of the Formation

Figure 3 gives the graphical representation of energy consumption during the process of changing formation. In the initial stage of the experiment, robotic fishes are in a state of disorder. When the leader-follower formation algorithm performs, each robotic fish swims to the appropriate place and take on expected formation. During this process, all robotic fish will consume the energy. Each follower possesses respective input control parameter in the acceleration equation based on the leader-follower formation algorithm. The change of the control parameter will lead to the change of acceleration equation. So is the profile of each robotic fish. Therefore, the formation process will alter and the energy consumption will undulate. We can get the each proper control parameter and reduce the total energy consumption of the formation process. The solid line represents energy consumption after the optimization, while the dotted line represents energy consumption before optimization. Particle Swarm Optimization algorithm can be used to get the optimal value of control parameter, and the experimental results are verified in the simulation experiment.
In order to illustrate the main work, we can see the Figure 4. A group of chaotic robotic fishes are divided into two parts: one leader and several followers. The leader takes the uniform motion and the followers take the variable motion. In the acceleration equation of followers, we add the control parameters and use the particle swarm optimization algorithm to optimize the control parameters. Finally, we can reduce the energy consumption. The energy optimized leader-followers formation algorithm will be explained in the next text.

2.2. Energy Optimized Leader-Follower Formation Algorithm

2.2.1. The Leader-Follower Formation and Acceleration Equation

The leader has external control input and is set L = 1 while the follower does not have and is set F = 2 , , N . Supposing that for a follower, interconnection with the follower is bidirectional, while interconnection with the leader is unidirectional [14]. N k ( t ) represents the neighbor set of follower k F at time t, and is defined initially as N k ( 0 ) = n = | p k ( 0 ) q n ( 0 ) < D , n = 1 , , N , n k . D > 0 is a constant, and is the Euclidean norm. Consider the leader k ( k = 1 ) swims at a constant speed, the thrusting acceleration a 1 ( t ) and rotational acceleration b 1 ( t ) are equal to zero.
The control input of the follower k ( k = 2 , , N ) can be designed by:
a k ( t ) = n N k ( t ) c k ( v ^ k ( t ) v ^ n ( t ) ) n N k ( t ) c k p ^ ˙ k n ( t ) T t k ( t ) n N k ( t ) p ^ k n ( t ) V ( p ^ k n ( t ) ) T t k ( t )
b k ( t ) = n N k ( t ) c k l d ( θ ^ k ( t ) θ ^ n ( t ) ) n N k ( t ) c k l d ( ω ^ k ( t ) ω ^ n ( t ) ) n N k ( t ) c k p ^ ˙ k n ( t ) T n k ( t ) n N k ( t ) p ^ k n ( t ) V ( p ^ k n ( t ) ) T n k ( t )
where c k is the control parameter. ω ^ k ( t ) = ω k ( t ) a k 1 ( t ) ω 1 ( t ) , v ^ k ( t ) = v k ( t ) a k 1 ( t ) v 1 ( t ) , θ ^ k ( t ) = θ k ( t ) a k 1 ( t ) θ 1 ( t ) , q ^ n ( t ) = q n ( t ) a k 1 q 1 ( t ) , p ^ k n ( t ) = p ^ k ( t ) p ^ n ( t ) , c k is a positive constant varying from follower to follower. Consider p k ( t ) = 0 t ω k 1 ( t ) H k T ( t ) q 1 d τ , p ^ ˙ k ( t ) = p ˙ k ( t ) p ˙ k ( t ) = H k ( t ) T q k ( t ) a k 1 H k ( t ) T q 1 ( t ) = H k ( t ) T q ^ k ( t ) . The acceleration equation is consisted of two parts.
The specific potential function is [7]:
V = k F n N k V ( p ^ k n ) + n N k V ( p ^ 1 n )
Definition 1.
Definition 1: V ( p ^ k n ) is a potential function of the Euclidean norm p ^ k n between agent k and n. This potential function is radially unbounded, nonnegative, differentiable, such that:
1. 
When p ^ k n 0 , V ( p ^ k n ) ;
2. 
When p ^ k n 2D, V ( p ^ k n ) ;
3. 
When p ^ k n is equal to a certain value between 0 and 2D, V ( p ^ k n ) is located in its unique minimum.
When potential V ( p ^ k n ) reaches its unique minimum, the formation can be completed. In order to verify the existence of potential V ( p ^ k n ) . A potential function can be made [9]. Specific potential V ( p ^ k n ) is:
V ( p ^ k n ) = b p ^ k n 2 a ln ( 4 D 2 p ^ k n 2 ) + c
The gradient of the potential function is:
p ^ k n V ( p ^ k n ) = 2 p ^ k n ( b p ^ k n 4 a 4 D 2 p ^ k n 2 )
where a, b and c are positive number. b p ^ k n 4 stands for the magnitude of the repulsion term, and a 4 D 2 p ^ k n 2 stands for the magnitude of the attraction term. When b p ^ k n 4 = a 4 D 2 p ^ k n 2 , there exits a balance between attraction and repulsion term [21]. So, the formation can be finished.

2.2.2. Optimization of Control Parameter

Each acceleration equation of follower has respective control parameter C k , which can alter the movement condition of corresponding robotic fish at time t. When C k has different values, the value of the acceleration will be different. As a result, the velocity and route of the robotic fish will be changed. So, energy consumption of the formation will be changed. In order to reduce the energy consumption, particle swarm optimization can be utilized to optimize the parameter C k .
The Particle Swarm Optimization algorithm was proposed in 1995, which combined with the process of the study of swarm intelligence and human [22]. In an E-dimensional optimization space, the swarm is composed of N particles named N = ( n 1 , , n N ) . Each particle k is an E-dimensional vector, whose position and velocity are respectively expressed with X k = ( X k 1 , , X k E ) T and V k = ( V k 1 , , V k E ) T . The individual optimal position is stored with p i = ( P k 1 , , P k E ) T while the global optimal position is stored with P g = ( P g 1 , , P g E ) T . The position and velocity of each particle k are updated by:
V k d ( t + 1 ) = W V k d ( t ) + H 1 r 1 ( P k d ( t ) X k d ( t ) + H 2 r 2 ( P g d ( t ) X g d ( t ) ) )
X k d ( t + 1 ) = X k d + V k d ( t + 1 )
where 1 d E , 1 I N , Learning factors, H 1 and H 2 are accelerative coefficients, which impact the convergence speed of the PSO algorithm. H 1 and H 2 are determined as rand (0, 2] and rand (0, 2] respectively While r 1 and r 2 are determined as rand (0, 1) and rand (0, 1). W is the inertia weight which determines how much the previous velocity influence the current speed. Thus W can balance the ability of global search and local search. The ability of global search includes the previous and current search, while the ability of local search includes the current search. A linear decrease strategy has been put forward for a better optimization [23,24]:
W = W m a x h h m a x ( W m a x W m i n )
where W m a x is the maximum value of W and W m i n is the minimum value. h and h m a x indicate the current and maximum iterations, respectively.
According to the principle of particle swarm optimization, and the instance of distributed formation flocking algorithm, control parameter C k is regarded as the variable while the total energy consumption in the process of robotic fish formation is regarded as the function. The relation between variable and function is built by formation algorithm and power consumption algorithm.
Figure 5 shows the process of the particle swarm algorithm.
Step one: Initialize the size of the population. Presuppose the size of the population N = 30 . Because there are ten robotic fishes for formation and parameter C k varies from individual to individual, parameter C k is a ten-dimensional vector. considering that parameter C k has scope limitation, we initialize the position X k d and velocity V k d of each particle k in a certain range.
Step two: Calculate the function as follows, according to the relationship between the parameter C k and energy loss. Firstly, calculate the fitness value(f( X k d (t)) of each particle in the population; Then, calculate the individual optimal position p k of each particle in the current moment; Finally, calculate the global optimal position p g of robotic fish system in the current moment.
Step three: Calculate and update the velocity and position of the particle. Because parameter C k is in a range, the velocity and position of the particle should also be in a range. The velocity shouldn’t be greater than maximum velocity V m a x . Otherwise, the velocity will be replaced with maximum velocity V m a x . In the same way, if the position updated of the particle is beyond the range of C k , the position should be replaced with boundary value of C k .
Step four: Compare the current fitness value of each particle with the optimal value of individual fitness. P k should be replaced with the better one.
Step five: Compare the current fitness value of each particle with the optimal value of global fitness. P g should be replaced with the better one.
Step six: If the precision meets the requirement or the number of iteration reaches the maximum, the algorithm will be stopped. Otherwise the circulation should return to the step two.

2.2.3. The Proof of the Stability

It is defined that θ ^ ( t ) = ( θ 2 ^ ( t ) , , θ N ^ ( t ) ) T , q ^ ( t ) = [ q ^ 2 ( t ) T , , q ^ N ( t ) T ] T , as while as p ˜ ( t ) = [ p ˜ 11 ( t ) T , , p ˜ 1 N ( t ) T , , p ˜ N 1 ( t ) T , , p ˜ N N ( t ) T ] T . Make N l = k | a k 1 = 1 , k F denote the set of followers who has one leader neighbor on time interval [ t r , t r + 1 ) . Let the following energy function as the common Lyapunov function [7]. If the value of derivative is less than zero, the energy optimized leader-follower formation algorithm is stable.
E ( θ ^ ( t ) , q ^ ( t ) , p ˜ ( t ) ) = E 1 ( t ) + E 2 ( t ) + E 3 ( t ) + E 4 ( t )
Therein:
E 1 ( t ) = 1 2 V ( t ) = l F n N k ( t ) V ( p ^ k n ) + n N k ( t ) V ( p ^ 1 n ) E 2 ( t ) = 1 2 i F q ^ k ( t ) T q ^ k ( t ) E 3 ( t ) = 1 2 θ ( t ) = l d 2 k F n N k ( t ) C k θ ^ k ( t ) ( θ ^ k ( t ) θ ^ n ( t ) ) E 4 ( t ) = 1 4 k F ( C k m ) 2
where: C k is the control parameter and the constants that are in a range. The derivative of E ( θ ^ ( t ) , q ^ ( t ) , p ˜ ( t ) ) during the time interval [ t r , t r + 1 ) is:
d E d t = d E 1 d t + d E 2 d t + d E 3 d t + d E 4 d t
Consider parameter C k is a constant that is in a range, E 4 ( t ) is a constant, in which case, d E 4 d t is equal to zero. So:
d E d t = d E 1 d t + d E 2 d t + d E 3 d t = k F n N k C k q ^ k ( t ) T ( q ^ k ( t ) q ^ n ( t ) ) k F n N k C k p ^ ˙ k ( t ) T ( p ^ ˙ k ( t ) p ^ ˙ n ( t ) )
Because that d E d t 0 and thus, the distributed formation flocking optimization algorithm asymptotically is stable [9].
When the potential energy reaches a minimum value, the individual distance of the system reaches a stable value. Therefore, if we can ensure the system’s potential energy reaches a minimum value when the individual distance of the system reaches a expected value, we can realize any formation we want. For one geometry formation, it is composed of N vertexes which are built by the regular p k d = [ x k d , y k d ] , k = 1 , , N . In order to realize the expected formation, the acceleration equation of the followers should be changed as follow:
a k ( t ) = n N k ( t ) c k ( v ^ k ( t ) v ^ n ( t ) ) n N k ( t ) c k p ^ ˙ k n ( t ) T t k ( t ) n N k ( t ) p ^ k n ( t ) V ( p ˜ k n ( t ) ) T t k ( t )
b k ( t ) = n N k ( t ) c k l d ( θ ^ k ( t ) θ ^ n ( t ) ) n N k ( t ) c k l d ( ω ^ k ( t ) ω ^ n ( t ) ) n N k ( t ) c k p ^ ˙ k n ( t ) T n k ( t ) n N k ( t ) p ^ k n ( t ) V ( p ˜ k n ( t ) ) T n k ( t )
where p ˜ k n ( t ) = p ^ k n ( t ) p k n d , when the robotic fish system realizes a stable formation, potential function V ( p ˜ k n ( t ) ) = 1 .

3. Results

In order to evaluate to the proposed optimization scheme reducing energy consumption during the formation, dynamic simulations are conducted on MATLAB2018b. Initial conditions of each robotic fish are built. The simulation time is 200 s while the sample step is 0.01 s. we can express the state of the robotic fish at time t with S k ( t ) = ( x k ( t ) , y k ( t ) , θ ( t ) , v k ( t ) , ω k ( t ) ) . The units of components are m, m, rad, m/s, rad/s respectively. Give the initial conditions:
  • S 1 ( 0 ) = ( 12.2 , 13.09 , 0.34 , 0.76 , 0.29 ) ,
  • S 2 ( 0 ) = ( 3.7 , 11.78 , 1.76 , 0.54 , 0.7 ) ,
  • S 3 ( 0 ) = ( 13.8 , 4 , 0.6 , 5.3 , 0.08 ) ,
  • S 4 ( 0 ) = ( 4.82 , 0.1 , 1.1 , 7.8 , 0.38 ) ,
  • S 5 ( 0 ) = ( 5.8 , 4.6 , 0.07 , 9.34 , 0.013 ) ,
  • S 6 ( 0 ) = ( 4.97 , 19.2 , 0.84 , 1.3 , 0.22 ) ,
  • S 7 ( 0 ) = ( 2.6 , 6.1 , 0.34 , 5.7 , 0.275 ) ,
  • S 8 ( 0 ) = ( 15.1 , 0.6 , 0.92 , 4.7 , 0.34 ) ,
  • S 9 ( 0 ) = ( 4.56 , 8.45 , 0.12 , 0.12 , 0.6 ) ,
  • S 10 ( 0 ) = ( 5.45 , 1.42 , 0.92 , 3.37 , 0.31 ) .
Lambdoid-shaped, ring-shaped and rectangle-shaped formation are studied. The vertex positions for lambdoid-shaped formation can be denoted as p 1 d 1 = [ 3 , 0 ] , p 2 d 1 = [ 2.2 , 0.6 ] , p 3 d 1 = [ 1.4 , 1.2 ] , p 4 d 1 = [ 0.6 , 1.8 ] , p 5 d 1 = [ 0.2 , 2.4 ] , p 6 d 1 = [ 1 , 3 ] , p 7 d 1 = [ 1.8 , 2.4 ] , p 8 d 1 = [ 2.6 , 1.8 ] , p 9 d 1 = [ 3.4 , 1.2 ] , p 10 d 1 = [ 4.2 , 0.6 ] . The vertex positions for ring-shaped formation can be denoted as p k d 2 = [ 2 × cos ( k × π / 5 ) , 2 × sin ( k × π / 5 ) ] , k = 1 , , 10 while for rectangle-shaped formation the positions of the vertex are denoted as p 1 d 3 = [ 0 , 0 ] , p 2 d 3 = [ 1 , 0 ] , p 3 d 3 = [ 2 , 0 ] , p 4 d 3 = [ 3 , 0 ] , p 5 d 3 = [ 3 , 1 ] , p 6 d 3 = [ 3 , 2 ] , p 7 d 3 = [ 2 , 2 ] , p 8 d 3 = [ 1 , 2 ] , p 9 d 3 = [ 0 , 2 ] , p 10 d 3 = [ 0 , 1 ] . The number of iterations h m a x is 500.

The Change of W m a x

A linear decrease strategy about W can improve the ability of optimization [23]. When W is given different values, different results for optimization will be produced. In the beginning of particle swarm algorithm, the larger inertia weight is, the stronger ability of global search is. As time goes on, the smaller inertia weight is, the stronger ability of local search is. Let W m i n is equal to 0.5, and add 0.1 every time. Make W m a x W m i n = 1 .
Table 1 shows that the value of C i and total energy consumption vary from different W m a x in the lambdoid-shaped formation. When W m a x is equal to 0.8, the total energy consumption in the formation is the minimum. In the beginning, the value of W m a x is 0.8, the ability of global search is strong to explore more value of control parameter. As time goes, the value of W m a x declines, and the ability of local search become stronger. Thus, particle swarm algorithm can select the appropriate value. Under the given initial conditions, when C k = ( 1 . 3 , 1 . 3 , 0 . 6608 , 1 . 3 , 1 . 3 , 0 . 7657 , 0 . 6 , 1 . 3 , 1 . 8738 ) , k = 2 , , 10 , ten robotic fishes consume the least energy.
Table 2 demonstrates that the value of C k and total energy consumption vary between different W m a x in the ring-shaped formation. When W m a x is equal to 0.7, the total energy consumption of ten robotic fishes in the formation is the minimum. When the value of W m a x is 0.7, the ability of global search and local search can be balanced well. As a result, the algorithm can find more suitable value of control parameter. Under the given initial conditions, when C k = ( 0 . 74 , 0 . 6 , 0 . 9041 , 1 . 3 , 1 . 3 , 0 . 74 , 0 . 74 , 0 . 74 , 0 . 74 ) , k = 2 , , 10 , ten robotic fishes consume the least energy.
Table 3 shows that the value of C k and total energy consumption vary from different W m a x in the rectangle-shaped formation. When W m a x is equal to 0.6, the total energy consumption of ten robotic fishes is the minimum. when C k = ( 1 . 2075 , 1 . 3 , 0 . 8908 , 0 . 7156 , 1 . 055 , 1 . 3 , 0 . 6534 , 1 . 3 , 1 . 3 ) , k = 2 , , 10 , ten robotic fishes consume the least energy.

4. Discussion

Different formation has different set of C k . To better illustrate the proposed optimization algorithm, the optimized energy is compared with the energy without optimization(fixed value).The experiment is finished in the computer whose motherboard is Z270 and CPU is i7-7700.
Table 4 shows the value of C k of three kinds of formation before and after optimization. Table 4 indicates comparison of total energy consumption of three kinds of formation. Make ten fishes as a whole. Each formation consumes a corresponding energy under three different kinds of parameters C k . Compare the three cases of energy, and Table 4 shows that the whole fishes in the three kinds of formation consume the least energy in which case that parameter C k is optimized. Lambdoid-shaped formation gets best energy optimization. During the process of formation, because the control parameters are optimized, the corresponding robotic fish will choose the better routine and consume little energy to finish the formation. To sum up, when ten robotic fishes conduct only one formation from the very beginning, the proposed algorithm can succeed to optimize the total energy consumption. However, as we can see from the Table 4, optimal control parameters of different formations are different. If we want to get each formations with least energy consumption, we need to choose different set of control parameters. This is the disadvantage of our algorithm. We cannot get the same value of control parameters to finish different formation.
Besides, power of ten agents in the formation can be simulated. Figure 6 demonstrates the power of ten agents in the ring-shaped formation. Figure 6b shows that when the control parameters are optimized, the whole fishes will quickly end the energy fluctuation period, and will finish the formation with the steady energy consumption. So, the formation will be completed quickly. Figure 7 indicates the power of ten agents in the rectangle-shaped formation. The two curves are similar. The time when formation transits to the smooth energy consumption is similar. However, before formation, the energy is consumed a little more. Figure 8 shows the power of ten agents in the lambdoid-shaped formation. Although the volatility is larger after optimizing control parameter, finishing time is shorter. thus, the energy consumption is reduced. Figure 9 shows the finishing time in three kinds of situation. This indicates that the proposed algorithm not only reduces the energy consumption in the process of formation, but also shorten the formation time.
Nowadays, we are trying to build the experimental platform to do do the experiment in a real world. We are using hardware such as STM32F407 and software such as Keil to build platform. In the future, we will build up a more general swimming model of the robotic fish by considering the complex stress. In addition, we will take the task to seek general control parameter to adapt to different formation transformation.

5. Conclusions

Nowadays, few papers focus on the energy consumption of total multi-agent during the formation. Our work can fill in this gap. This paper has presented an application of PSO to optimize the control parameters C k s to efficiently reduce energy consumption during the formation. Although that not all formation algorithms have C k s, each algorithm has control parameters that control the movement of agents. Although different formations have different control parameter, we can choose different optimal parameters by using particle swarm optimization algorithm to finish the formation with lower energy consumption. After optimizing the control parameter, individual robotic fish has their own suitable parameters and they will choose perfect routine to finish their formation. Besides, finishing time will be shorter.

Author Contributions

For research articles with several authors, D.X. conceived and designed the experiments, and analyzed the data; L.Y. contributed to the writing and editing of the manuscript; Z.L. is helpful to the comparative experiment of resubmitted paper; J.Z. performed the experiments; D.F. built the model; W.D. is experienced in the assembly process in the case.

Funding

This research received no external funding.

Acknowledgments

This work is supported by National Natural Science Foundation of China (under Grant 61203353, 61573038 and 61673031).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Yu, J.; Tan, M.; Wang, S.; Chen, E. Development of a biomimetic robotic fish and its control algorithm. IEEE Trans. Syst. Man Cybern. Part B Cybern. 2004, 34, 1798–1810. [Google Scholar] [CrossRef]
  2. Yu, J.; Wu, Z.; Wang, M.; Tan, M. CPG Network Optimization for a Biomimetic Robotic Fish via PSO. IEEE Trans. Neural Net. Learn. Syst. 2016, 27, 1962. [Google Scholar] [CrossRef] [PubMed]
  3. Triantafyllou, M.S.; Triantafyllou, G.S. An Efficient Swimming Machine. Sci. Am. 1995, 272, 64–70. [Google Scholar] [CrossRef]
  4. Gu, D.; Wang, Z. Leader-Follower Flocking: Algorithms and Experiments. IEEE Trans. Control Syst. Technol. 2009, 17, 1211–1219. [Google Scholar]
  5. Yu, W.; Chen, G.; Cao, M. Distributed leader-follower flocking control for multi-agent dynamical systems with time-varying velocities. Syst. Control Lett. 2010, 59, 543–552. [Google Scholar] [CrossRef]
  6. Su, H.; Wang, X.; Chen, G. Rendezvous of multiple mobile agents with preserved network connectivity. Syst. Control Lett. 2010, 59, 313–322. [Google Scholar] [CrossRef]
  7. Jia, Y.; Zhang, W. Distributed adaptive flocking of robotic fish system with a leader of bounded unknown input. Int. J. Control Autom. Syst. 2014, 12, 1049–1058. [Google Scholar] [CrossRef]
  8. Reynolds, C.W. Flocks, Herds and Schools: A Distributed Behavioral Model; ACM: New York, NY, USA, 2015; pp. 25–34. [Google Scholar]
  9. Jia, Y.; Wang, L. Leader-Follower Flocking of Multiple Robotic Fish. IEEE/ASME Trans. Mechatron. 2015, 20, 1372–1383. [Google Scholar] [CrossRef]
  10. Hu, Q.; Zhou, H. IPMC propelled biomimetics robotic fish energy consumption model construction and its application to energy-saving control. In Proceedings of the 2009 IEEE International Conference on Robotics and Biomimetics, Guilin, China, 19–23 December 2009; pp. 2151–2156. [Google Scholar]
  11. Wang, M.C.C.; Wang, W.; Xie, G.; Shi, H. Real-time energy monitoring and management system and its application on bionic robotic fish. In Proceedings of the 11th World Congress on Intelligent Control and Automation, Shenyang, China, 29 June–4 July 2014; pp. 3256–3261. [Google Scholar]
  12. Zhu, W.; Wang, X.; Xu, M.; Yang, J. A wave energy conversion mechanism applied in robotic fish. In Proceedings of the Ieee/asme International Conference on Advanced Intelligent Mechatronics, Wollongong, Australia, 9–12 July 2013; pp. 319–324. [Google Scholar]
  13. Shen, Y.; Guo, B. Energy-efficient cluster-head selection with fuzzy logic for robotic fish swarm. In Proceedings of the International Conference on Fuzzy Systems and Knowledge Discovery, Zhangjiajie, China, 15–17 August 2015; pp. 513–518. [Google Scholar]
  14. Tanner, H.G. On the controllability of nearest neighbor interconnections. In Proceedings of the 43rd IEEE Conference on Decision and Control, Nassau, Bahamas, 14–17 December 2004; pp. 2467–2472. [Google Scholar]
  15. Low, K.H. Locomotion and Depth Control of Robotic Fish with Modular Undulating Fins. Int. J. Autom. Comput. 2006, 3, 348–357. [Google Scholar] [CrossRef]
  16. Zhang, D.; Wang, L.; Yu, J.; Tan, M. Coordinated Transport by Multiple Biomimetic Robotic Fish in Underwater Environment. IEEE Trans. Control Syst. Technol. 2007, 15, 658–671. [Google Scholar] [CrossRef]
  17. Klein, D.J.; Bettale, P.K.; Triplett, B.I.; Morgansen, K.A. Autonomous underwater multivehicle control with limited communication: Theory and experiment. IFAC Proc. Vol. 2008, 41, 113–118. [Google Scholar] [CrossRef]
  18. Anderson, J.M.; Streitlien, K.; Barrett, D.S.; Triantafyllou, M.S. Oscillating foils of high propulsive efficiency. J. Fluid Mech. 1998, 360, 41–72. [Google Scholar] [CrossRef] [Green Version]
  19. Liang, J.; Wang, T.; Wen, L. Development of a two-joint robotic fish for real-world exploration. J. Field Robot. 2011, 28, 70–79. [Google Scholar] [CrossRef]
  20. Xu, D.; Zhang, S.; Wen, L. A Stiffness-Adjusting Method to Improve Thrust Efficiency of a Two-Joint Robotic Fish. Adv. Mech. Eng. 2014, 2014, 1–7. [Google Scholar] [CrossRef]
  21. Latombe, J.C. Robot Motion Planning; Kluwer Academic Publishers: Alphen, The Netherlands, 1991; pp. 628–649. [Google Scholar]
  22. Kennedy, J.; Eberhart, R. Particle swarm optimization. In Encyclopedia of Machine Learning; Springer: Boston, MA, USA, 1995; pp. 1942–1948. [Google Scholar]
  23. Shi, Y.; Eberhart, R. A modified particle swarm optimizer. In Proceedings of the IEEE World Congress on Computational Intelligence, 1998 IEEE International Conference on Evolutionary Computation Proceedings, Anchorage, AK, USA, 4–9 May 1998; pp. 69–73. [Google Scholar]
  24. Shi, Y.; Eberhart, R.C. Empirical study of particle swarm optimization. In Proceedings of the 1999 Congress on Evolutionary Computation-CEC99, Washington, DC, USA, 6–9 July 1999; pp. 1945–1950. [Google Scholar]
Figure 1. Kinematic model for the robotic fish k.
Figure 1. Kinematic model for the robotic fish k.
Energies 11 02023 g001
Figure 2. Dynamic model for the robotic fish k.
Figure 2. Dynamic model for the robotic fish k.
Energies 11 02023 g002
Figure 3. The energy consumption in the process of formation.
Figure 3. The energy consumption in the process of formation.
Energies 11 02023 g003
Figure 4. Flowchart for proposed algorithm.
Figure 4. Flowchart for proposed algorithm.
Energies 11 02023 g004
Figure 5. Flowchart for PSO algorithm.
Figure 5. Flowchart for PSO algorithm.
Energies 11 02023 g005
Figure 6. Power of ten agents in the ring-shaped formation.
Figure 6. Power of ten agents in the ring-shaped formation.
Energies 11 02023 g006
Figure 7. Power of ten agents in the rectangle-shaped formation.
Figure 7. Power of ten agents in the rectangle-shaped formation.
Energies 11 02023 g007
Figure 8. Power of ten agents in the lambdoid-shaped formation.
Figure 8. Power of ten agents in the lambdoid-shaped formation.
Energies 11 02023 g008
Figure 9. Total energy consumption in the different situations.
Figure 9. Total energy consumption in the different situations.
Energies 11 02023 g009
Table 1. Value of C k and energy consumption in the lambdoid-shaped formation due to different W.
Table 1. Value of C k and energy consumption in the lambdoid-shaped formation due to different W.
W max 0.50.60.70.80.91.01.11.21.31.4
C 2 1.50881.13781.23971.31.47930.8611.31.31.59891.4157
C 3 0.85981.30961.35211.31.85270.73951.31.31.05380.8627
C 4 1.28891.43931.0710.66080.88870.76520.60.61.02981.0283
C 5 1.8421.3641.81971.31.61250.93381.31.31.19661.135
C 6 1.7341.76991.42171.31.72431.14821.30.84941.16171.5876
C 7 1.29040.89631.26250.76571.57690.99091.30.61.68051.6112
C 8 1.57520.72950.91080.61.30541.04220.82431.30.83371.827
C 9 1.35860.91151.79681.31.87070.13061.30.61.61131.7266
C 10 1.23960.97630.68260.87381.36241.06580.61.30.92580.9837
Energy/ 10 6 J 1.441.41.411.171.411.921.31.181.441.54
Table 2. Value of C k and energy consumption in the ring-shaped formation due to different W.
Table 2. Value of C k and energy consumption in the ring-shaped formation due to different W.
W max 0.50.60.70.80.91.01.11.21.31.4
C 2 1.30.69640.741.30.80471.31.31.30.61.3
C 3 0.60.60.60.60.60.60.60.61.30.6
C 4 1.31.30.90411.31.31.31.30.98551.18831.3
C 5 1.11780.61.31.31.30.61.31.24230.60.6
C 6 1.31.31.30.8161.31.30.9710.61.30.6
C 7 0.72050.66080.741.30.99211.30.61.31.31.0629
C 8 1.12770.66080.741.13261.2461.31.31.31.31.3
C 9 1.25490.66080.741.31.31.31.30.69781.30.9269
C 10 1.31.30.741.01120.60.61.31.31.31.3
Energy/ 10 5 J 7.927.997.628.218.378.277.888.067.938.53
Table 3. Value of C k and energy consumption in the rectangle-shaped formation due to different W.
Table 3. Value of C k and energy consumption in the rectangle-shaped formation due to different W.
W max 0.50.60.70.80.91.01.11.21.31.4
C 2 0.61.20571.31.31.31.31.31.30.70741.3
C 3 0.61.30.60.61.20750.60.60.60.70741.3
C 4 0.99780.89081.31.11761.15881.31.30.61.31.3
C 5 1.30.71561.31.31.21661.31.31.30.60.6
C 6 1.31.0551.30.82040.91120.60.61.31.31.3
C 7 1.31.31.31.31.31.31.28810.61.31.3
C 8 1.30.65341.2841.30.97661.31.31.30.61.3
C 9 1.31.30.71290.60.97190.72160.60.93321.31.3
C 10 1.31.31.31.29421.31.31.31.31.31.3
Energy/ 10 5 J 7.236.357.486.656.737.827.067.486.657.85
Table 4. The comparison of total energy consumption.
Table 4. The comparison of total energy consumption.
(a) The Value of C k .
C k After OptimizationBefore Optimization
C k re C k la C k ri Fixed
C 2 1.20571.30.741
C 3 1.31.30.61
C 4 0.89080.66080.90411
C 5 0.71561.31.31
C 6 1.0551.31.31
C 7 1.30.76570.741
C 8 0.65340.60.741
C 9 1.31.30.741
C 10 1.30.87380.741
(b) Total Energy of Each Formation / J .
Rectangle-ShapedLambdoid-ShapedRing-Shaped
After optimization6.35 × 10 5 1.17 × 10 6 7.62 × 10 5
Before optimization6.4 × 10 5 2.27 × 10 6 1.22 × 10 6

Share and Cite

MDPI and ACS Style

Xu, D.; Yu, L.; Lv, Z.; Zhang, J.; Fan, D.; Dai, W. Energy Consumption Optimization for the Formation of Multiple Robotic Fishes Using Particle Swarm Optimization. Energies 2018, 11, 2023. https://doi.org/10.3390/en11082023

AMA Style

Xu D, Yu L, Lv Z, Zhang J, Fan D, Dai W. Energy Consumption Optimization for the Formation of Multiple Robotic Fishes Using Particle Swarm Optimization. Energies. 2018; 11(8):2023. https://doi.org/10.3390/en11082023

Chicago/Turabian Style

Xu, Dong, Luo Yu, Zhiyu Lv, Jiahuang Zhang, Di Fan, and Wei Dai. 2018. "Energy Consumption Optimization for the Formation of Multiple Robotic Fishes Using Particle Swarm Optimization" Energies 11, no. 8: 2023. https://doi.org/10.3390/en11082023

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop