Energy Consumption Minimization for Autonomous Mobile Robot: A Convex Approximation Approach

—In this paper, we consider a trajectory design problem of an autonomous mobile robot working in industrial environments. In particular, we formulate an optimization problem that jointly determines the trajectory of the robot and the time step duration to minimize the energy consumption without obstacle collisions. We consider both static and moving obstacles scenarios. The optimization problems are nonconvex, and the main contribution of this work proposing successive convex approximation (SCA) algorithms to solve the nonconvex problems with the presence of both static and moving obstacles. In particular, we first consider the optimization problem in the scenario with static obstacles and then consider the optimization problem in the scenario with static and moving obstacles. Then, we propose two SCA algorithms to solve the nonconvex optimization problems in both the scenarios. Simulation results clearly show that the proposed algorithms outperform the A* algorithm, in terms of energy consumption. This shows the effectiveness of the proposed algorithms.


I. INTRODUCTION
The robotic field has been developing rapidly, and autonomous mobile robots (AMRs) have recently been widely used in industrial environments as well as other applications due to their efficiency and productivity [1], [2] Recently, the AMR with differential drive wheels has been increasingly noticed and widely applied due to its advantages, such as flexible motion capabilities, a simple structure, and lower production costs.However, the mobile robots are typically equipped with an removable energy source that has limited capacity.Meanwhile, the mobile robots require a large amount of energy for sensor system, control system, and motion system.Therefore, the energy consumption minimization for the mobile robots need to be investigated.With the aim of reducing energy consumption and improving the energy efficiency of the mobile robots, both hardware design and algorithms have been proposed.
For the hardware-based solutions, the authors in [3], [4] designed the low-power hardware to reduce the overall electrical energy consumption of the robot.The authors in [5] designed a novel DC power supplier for industrial robots to reduce the total energy consumption for different electrical power profiles.In addition, the authors in [6]- [14] proposed power management, wireless power transfer systems and battery conservation methods to reduce the energy consumption for the robots.Besides, the energy harvesting method was proposed in [15]- [18] to have more power for the robot thus reduce the energy that need from the battery.
Authors in [19] introduced two energy-conservation techniques which are dynamic power management and real-time scheduling to save energy.The experiment is conducted on the Pioneer 3DX robot, and the results shown that the proposed techniques are promising to reduce the energy consumption and extend the lifetime of the robot.Authors in [20] considered the energy-efficient consumption problem by using illuminance instead of the laser-beacon in the navigation system.The experiments results show that the proposed system outperforms the system using laser beacons in terms of power consumption.Different from the aforementioned works, other works aim to save energy by optimizing motion planning of the mobile robot as proposed in [21].
The simulation results in [21] show that optimizing the motion planning can save battery energy up to 10% compared with the widely used trapezoidal velocity profile.Energy-efficient motion planning for the mobile robot exploration is proposed in [22], which can save up to 42% energy compared with the standard utility-based method.Differently, the authors in [23] proposed a motion planning approach, and the simulation results show that the energy can be saved up to 51%.With motion planning, the problems of path planning and path tracking are the most important.Otherwise, several works have investigated a range of control algorithms of path tracking for the robots [24]- [35].However, these researches have not considered the energy consumption yet.
Author in [36] considered the energy consumption in the trajectory tracking problems.This work shows some wellknown motion controllers, such as feedback-based controller, the Lyapunov-based controller, the clever trigonometry-based controller, the advance controller, and the Dubins path-based controller.The simulation results show that the total energy loss by different controllers are different.
Authors in [37] proposed a optimized controller based on fuzzy logic systems to minimize the energy consumption of the robot.In particular, by using the genetic algorithm, the proposed controller minimizes acceleration, thus reducing the kinetic energy of the robot.The simulation results show that the energy consumption is reduced significantly, and thus demonstrating the efficiency of the proposed controller as well as the proposed algorithm.However, it is difficult to reduce more energy consumption with tracking task of the robot.
Related to path planning, many techniques based on Dijkstra, Genetic, Banker, Bellman-Ford, A* and D* algorithms have been developed over the years [38]- [53].In general, the path planning optimization with the aim of minimizing the energy consumption is challenging to be solved due to the nonconvex objective function.For this, the authors in [54] incorporated the shortest path length into the objective function to minimize energy consumption using the Newton algorithm.
A different approach is based on A* algorithm [55], [56].Authors in [56] proposed a energy-efficient A* (EA*) algorithm for optimizing the path for the robot.In this work, although authors only consider the energy consumption for stop and turns of the robot, the simulation results shows that the path optimization by EA* algorithm can save energy more than A* algorithm.Authors in [55] also designed the robot path based on the A* algorithm to generate an energy-efficient path where a new energy-related criterion is used in the cost function.Also, authors in [57] proposed trajectory planning algorithm based on A* algorithm to minimize energy loss.However, the aforementioned works only solve the problem with static obstacles.Authors in [58] proposed an algorithm base on a genetic algorithm (GA) to find an optimal path planning in a dynamic environment with many obstacles.A genetic algorithm was also implemented to optimize the path planning to decrease energy consumption [59].
Authors in [60] developed the optimal velocity profile to reduce energy consumption of the Differential Drive Mobile Robot (DDMR).In this work, authors consider the power model that combines the robot and motor dynamic models.The speed optimization was also used as a method for software-based power management in [61].In [62], authors proposed a mobile robot motion framework based on the enhanced robust panel method (ERPM), which provides the robust and effective path planning and motion control in partially known and unknown, static and dynamic environments.Differently, authors in [63]- [68] proposed deep reinforcement learning techniques for robot path planning.However, they did not consider the energy consumption.
From the existing works, we can observe that some of them are proposed to improve energy efficiency, but they do not consider the dynamic environment with moving obstacles.Moreover, they do not optimize the time step duration which has a great influence on the energy consumption of the robot.Meanwhile, some existing works are proposed for dynamic environment, but they do not investigate the energy efficiency.
In this work, we aim to jointly optimize the trajectory and time step duration, which is the interval time that the robot moves from the current position to the next position, so as to minimize the energy consumption of a mobile robot, i.e., an AMR, while avoiding the collisions in dynamic environments with both static and moving obstacles.Note that the introduction of the step time duration, along with the trajectory into the optimization problem makes the problem much more challenging.To solve the problem, we develop a successive convex approximation (SCA) algorithm.The simulation results clearly show the effectiveness of the proposed algorithm compared with the baseline schemes, i.e., the A* algorithm.Interestingly, the simulation results show that the proposed algorithm with the time step optimization further reduces the energy consumption of the mobile robot compared with the proposed algorithm without time step optimization.The main contributions of the paper are the followings: • We formulate an optimization problem for the mobile robot in the industrial environment that jointly optimizes the path planning and time step duration to minimize the energy consumption, subject to the limited velocity, the limited time and collision avoidance.• The optimization problem is nonconvex and computationally intractable.Thus, we develop an successive convex approximation (SCA) algorithm to solve the problem with efficient computation.This algorithm is proposed for the scenario in which there are only static obstacles in the working environment of the robot, and thus it is namely OSOW algorithm.• We further propose an algorithm, namely MSOW, for the scenario including both static and moving obstacles.In this case, the robot first based on the global path that is created by OSOW algorithm to move.Then, the robot uses working environment information sensed by its sensors to find the local path to avoid the moving obstacles.We formulate the energy consumption optimization problem in which the moving collision-avoidance constraints are included.
To solve this problem, we again use the successive convex approximation algorithm.• We provide simulation results to show the improvement ISSN: 2715-5072 405 of the proposed algorithms, i.e., the OSOW and MSOW algorithms, compared with the baseline algorithms in which the time step duration is random and with the A* based algorithm.
The rest of the paper is organized as follows.In Section II, we describe the AMR robot and formulate the optimization problem for the robot in environment with static obstacles.In Section III, we present the successive convex approximation algorithm proposed to solve the problem.In Section IV, we formulate the optimization problem in a dynamic environment with static and moving obstacles, followed by the the successive convex approximation algorithm.The simulation results and discussions are presented in Section V.The conclusions and future work are given in Section VI.

II. SYSTEM MODEL AND PROBLEM FORMULATION
We consider a system model as shown in Fig. 1.There is an AGV robot moving from a start point (SP) to a goal point (GP).The robot is in a fixed coordinate system Oxy.Also, we consider a moving coordinate system O ′ x ′ y ′ associated with the robot.We denote q s = (x s , y s ) T , q g = (x g , y g ) T as the coordinates of the SP and the GP, respectively.We further denote q(t) = (x(t), y(t)) T and v as the coordinate and velocity, respectively, of the robot at time t.The robot is assumed to perform a task, e.g., carrying boxes, in an industrial environment.We aim to determine the optimal trajectory and time step duration so as to minimize the total energy consumption over its trajectory while avoiding static and moving obstacles.

A. Energy Model
The energy consumed for the robot motors include two main parts: the energy transformed into robot kinetic energy and the energy to overcome traction resistance, i.e., the friction [55].In our work, we ignore transforming loss, the mechanical loss, and the energy loss as heat in the armatures of motors as in [69].The kinetic energy losses of the robot can be expressed as in [70] as follows: where m is the mass and the moment of inertia of the robot.The friction dissipation during the movement of the robot is [70] where g is the gravitational acceleration, m is the weight of the robot the robot, and µ is the rolling friction coefficient that depends on the surface type of the ground.Therefore, the energy consumption of the robot's motion system is determined by [55] Now, we determine the energy consumed by the onboard computer, sensors, and electric circuits as follows: [70] [55] where P s is the electrical power of the system.
The energy consumption formulation can be rewritten in time-discrete as follows: where D is the total requirement number of time steps, d ∈ [0, D] as the time-varying path of the robot, Q = [q 0 , q 1 , . . ., q D ], and v = [v 1 , v 2 , . . ., v D ] denote the set of possible coordinates and the set of velocity values of the robot, and τ is the time step duration.

B. Collision-avoidance Constraints
Given the factory environment, we assume that the obstacles are in rectangular shape.In particular, there is a set K = {1, . . ., K} of obstacles in the workspace of the AMR.Then, each obstacle is defined as the intersection of four half spaces [71] P = {z|Az < b}, where e = (e 1 , e 2 , . . ., e H ) T is a vector of binary variables, e h ∈ {0, 1}, and 1 = 1 H is a vector of ones, M is a sufficiently large constant used in the Big-M method [72].The constraints in ( 7) and ( 8) ensure that at least one element of e is equal to 1 and the point z is out of the obstacle.We denote d r as the size of robot.To avoid the collision between the robot and obstacles, we define a safe distance of δ > 0. Therefore, the location of the robot needs to satisfy the following constraint where e k,h,d ∈ {0, 1} H is a binary vector for obstacle k and E = (e 1 , e 2 , . . ., e K ).

C. Optimization Formulation
In general, we can design the trajectory which makes to decrease the travel distance to reduce the kinetic energy consumption and the friction dissipation during the movement of the robot.However, it should be to satisfy the collision avoidance requirement.In addition, we can decrease the time step duration to reduce the energy consumed by the onboard computer, sensors, and electric circuits.However, this requires the mobile robot to move faster that can exceed its limited velocity.Therefore, in this work, we aim to minimize the energy consumption of the robot by optimizing its trajectory and time step duration while satisfying the collision avoidance requirement.The optimization problem is mathematically formulated as the mixed-binary optimization problem as follows: s.t. ( 9) - (11), where v max is the maximum linear velocity of the robot, τ min and τ max are the minimum time step duration and the maximum time step duration, respectively.

III. SUCCESSIVE CONVEX APPROXIMATION ALGORITHM
It is observed that the optimization problem ( 12) is nonconvex because the objective in (12a) is nonconvex.In this section, we develop a successive convex approximation [73] algorithm to solve it.

IV. MOVING OBSTACLES SCENARIO
In Section III, we consider the scenario in which the obstacles are static.In realistic scenarios, other than the static obstacles, there are also the obstacles are movable.Thus, in this section, we consider the scenarios with moving obstacles while the robot runs.In particular, we consider the workspace is with the static obstacles (SOs) similar to subsection II-B.First of all, the robot calculates and determines the trajectory to minimize the energy consumption by solve the problem (12).After that, the robot follows the trajectory, i.e., Q = [q 0 , q 1 , . . ., q D ].During the robot's movement, at time step i ∈ [0, D], the robot detects a set N i = {1, . . ., N i } of moving obstacles (MOs).Each MO is assumed to be in circle shape.Particularly, the robot observes the MO n i centered at q O n,i = (x O n,i , y O n,i ) with velocity v ni = (v nxi , v nyi ).The collision avoidance requirement is to ensure that the future trajectory of the robot q i,di = (x i,di , y i,di ) for d i ∈ [0, D i ] does not collide with all obstacles, where D i is number of steps to overcome N i MOs.We denote Q i = [q i,0 , q i,1 , . . ., q i,Di ], and v i = [v i,1 , v i,2 , . . ., v i,Di ] be the set of possible coordinates and the set of velocity values of the robot.Accordingly, Q is called the global trajectory and Q i is the local trajectory.For the collision avoidance requirement, the following constraints are satisfied where r O n,i is the radius of the obstacle n, and ) is the location of the obstacle n at time step d i .Let d i,r,n = r O n,i +d r +δ, the constraint in ( 20) can be rewritten as We now formulate the optimization problem for the MOs scenario, which is similar to (12) with the introduction of the moving obstacle avoidance constraint (20) 9) - (11), and (21).
where τ i is step time, q i,s , q i,g are the start point where the robot detects the MOs, and the goal point where the robot overcomes the MOs and backs to the trajectory Q, respectively, and is the total energy consumption for overcoming N i MOs.
The problem in ( 22) is nonconvex since the objective (22a) and the constraint in (21) are nonconvex.Similar to Section III, by applying the inequality (A.2) in Appendix A to E ki , we have Therefore, we can approximate the objective in (22a) by the following convex function Now, we consider the constraint in (21), which is equivalent to the following expression where Let the right-hand-side of (26) be f (w n,di ), where w i,di = (q i,di , q n,di ).By taking the Hessian matrix of second partial derivatives of function f (w n,di ) with respect to x i,di , y i,di and τ i , it is observed that matrix is positive semidefinite.Therefore, f (w n,di ) is convex.As the function f (w n,di ) is convex, its gradient, i.e, ∇f (w ⟨κ⟩ n,di ), is super-gradient [76].Therefore, we have Based on ( 26) and ( 27), the nonconvex constraint in ( 20) is innerly approximated by the following convex constraint From ( 25) and ( 28), instead of ( 22), we solve the following convex optimization problem min Qi,τi,e in the next iteration.The computational complexity of the algorithm to solve the convex problem in (15) is O α 2 β 2.5 + β 3.5 [74], where O α 2 β 2.5 + β 3.5 [74], where α = 2D i + KH(D i + 1) + 3 and β = 2(D i + 1)KH +(D i +1)K +D i +D i N i +3 are the numbers of decision variables and convex constraints as solving (29), respectively.Similar to Section III, the sequence Q ⟨κ+1⟩ i , τ ⟨κ+1⟩ i converges to a saddle point Qi , τi after a sufficiently large number of iterations [75].To enhance the computational efficiency of the algorithm, it is important to generate a feasible point.
As mention early, the robot follows the local trajectory Q i to overcome the MOs, and after that, the robot returns the global trajectory Q.The overall algorithm for the optimization problem with both SOs and MOs is shown in Algorithm 2. This algorithm is namely MSOW algorithm, meaning that there are both moving and static obstacles in the robot's workspace.The robot moves base on the global trajectory Q ⟨g⟩ , τ ⟨g⟩ .

5:
if The robot detects N i MOs at step i then Solve the convex problem (29) to obtain until Convergence 12: Output Using end if 15: until The robot is at the goal point.

V. PERFORMANCE EVALUATION
In this section, we present the numerical results to demonstrate the effectiveness of the proposed algorithms.We first present simulation results in the scenario with only static obstacles (SOs), and then we present simulation results the scenario with both SOs and moving obstacles (MOs).Consider the first scenario, the number of SOs is set to K = 5, which are randomly distributed in a square area of 10m × 10m [55].The friction parameter µ on the flat road is 0.05.Other simulation parameters are listed in Table I.The simulation is implemented by MATLAB, and the optimization problem is solved in MATLAB using the CVX 2.2 [77]- [80] with the optimization solver Mosek 9.1.9and default precision.For the performance comparison, we consider the following algorithms: • OSOW: This is the successive convex approximation algorithm as described in Section III (shown in Algorithm 1), which is proposed to solve the optimization problem given in (12).
• OSOW with fixed τ : This algorithm is similar to the OSOW algorithm in which the step time duration τ is fixed.
• MSOW: This is the successive convex approximation algorithm as described in Section IV (shown in Algorithm 2), which is proposed to solve the optimization problem given in (22).• MSOW with fixed τ : This is similar to the MSOW algorithm in which the time step duration τ is fixed.
First, we consider the only static obstacles (SOs) scenario.For comparison, we introduce the A* based algorithm [55] as a baseline scheme.It is note that the A* based algorithm is adopted for SOs scenario only, thus the comparison is only in this scenario.Fig. 2(a) shows the optimal trajectory by three algorithms which are the OSOW algorithm, the OSOW algorithm with fixed τ , and the A* based algorithm.It is observed that the trajectory with the OSOW algorithm and the OSOW algorithm with fixed τ are the same, and they are smoother than that with the A* based algorithm.In addition, Fig. 2(b) shows the energy consumption and the travel time of the robot versus its maximum velocity with three algorithms.As seen, the energy consumption and the travel time of the robot obtained by the OSOW algorithm are always the lowest at each value of v max .This result clearly shows that it is important and necessary to optimize the time step duration τ in the OSOW algorithm.This also demonstrates the effectiveness of our proposed algorithm.Next, we discuss the impact of the maximum velocity, i.e., v max , of the robot on the energy consumption obtained by the algorithms in only static obstacles scenario.As shown in Fig. 2, as v max increases, the energy consumption and the travel time of the robot obtained by the OSOW algorithm and the A* based algorithm decrease, and those obtained by the OSOW with fixed τ algorithm keep constant.These results can be explained as follows.With the OSOW algorithm, as v max increases, the totally moving time of the robot decreases that reduces the energy consumption by the onboard computer, sensors, and electric circuit, i.e., E s .On other hand, as v max increases, the robot moves with higher velocity that increases the energy consumption of the robot's motion system, i.e., E motion .However, it is interesting that the total energy consumption decreases.The reason may be that the decrease of E s is faster than the increase of E motion .The similar reason is explained for down trend of the energy consumption and the travel time of the robot when v max increases.With the OSOW with fixed τ , as v max increases, the travel time keeps no change.The reason is that the location of robot at each step is no change as v max varies.Moreover, the step duration τ is fixed, thus the velocity of the robot is no change.As a result, the total energy consumption seems does not change.Now, we consider the scenario with both moving and static obstacles in the working environment of the robot.It is important to show how the energy consumption varies as the number of moving obstacles (MOs) varies.In our simulations, we assume the robot detects one MO at step 3, the MO centered at (1.5, 3), with radius 0.5 m, then the robot detects one more MO at step 20, this MO centered at (6.5, 7.5), with radius 0.3 m.As shown in Fig. 3(a), as the number of MOs increases, the energy consumption of the robot increases.The reason is that as the number of MOs increases, the robot requires longer travel distance and travel time to avoid the collisions.In addition, the energy consumption of the robot obtained by the MSOW algorithm is lower than by the MSOW with fixed τ algorithm.This demonstrates the effectiveness of our proposed algorithm.

VI. CONCLUSIONS AND FUTURE WORK
In this paper, we have investigated the energy consumption of the AMR with differential drive wheels.In particular, we aim to design the trajectory and the time step duration for the robot to minimize the energy consumption.The robot was limited by the velocity and the workplace layout.Therefore, we have formulated an optimization problem that minimizes the energy consumption constrained to a maximum velocity and obstacles.We consider two scenarios: the first scenario with static obstacles and the second scenario with both static and moving obstacles.The optimization problem is nonconvex, and we have proposed the successive convex approximation algorithms to solve it.Simulation results have shown the effectiveness of the proposed algorithms compared with the A* algorithm.In addition to the path planning, path tracking as a motion planning can help to improve the performance of the mobile robot.In future work, we will investigate the energy consumption minimization of the mobile robots by jointly optimizing the path planning and path tracking.

Fig. 2 .
Fig. 2. (a) The optimal trajectory by three algorithms (b) The energy consumption and travel time versus the maximum velocity of the robot.

Fig. 3 .
Fig. 3.The energy consumption and travel distance versus number of moving obstacles in the workspace

Finally, it isFig. 4 .
Fig. 4. The optimal trajectory of the robot for minimizing the energy consumption in (a) OSOW scenario (b) MSOW scenario with 1 MO (c) MSOW scenario with 2 MOs and (d) 3 scenarios.

xȳ 2 x x + y ȳ 2 , 2 ,
APPENDIX A: FUNDAMENTAL INEQUALITIES Using the Cauchy-Schwarz inequality, we have the following inequality 2xy ≤ ∀(x, y) ∈ R 2 + and (x, ȳ) ∈ R 2 + (A.1) Substituting y → 1/y and ȳ → 1/ȳ, we have the following inequality ∀(x, y) ∈ R 2 + and (x, ȳ) ∈ R 2 + (A.2) H×2and b ∈ R H .The point z is defined to be outside of the shape P if at least one of the four scalar inequalities Aq ≥ b is satisfied, i.e., Nguyen Thi Thanh Van, Energy Consumption Minimization for Autonomous Mobile Robot: A Convex Approximation Approach Az ≥ b + (e − 1)M, as follows:

TABLE I .
SIMULATION PARAMETERS