In recent decades, the global economy has seen a massive development in the global value chain combined with the growth of “Industry 4.0” and “Internet plus” phenomena [
1,
2]. In spite of the impact of the COVID-19 pandemic, in an increasingly interconnected world, the flow of goods across different countries has become more and more frequent. This has led to a significant expansion of logistics markets [
3]. With these developments, the need for greater efficiency and reliability in the transportation and storage process has become more and more intense. Against this background, the smart logistics industry, whose goal is the transition of the logistics industry to new technologies, has come into being. The smart warehouse is an automated warehouse based on several automated and interconnected technologies. It is characterised by high levels of automation, low labour costs, and high efficiency [
4]. To develop a smart warehouse, a key role is represented by warehouse logistics robots. Indeed, in the process of rapid development of the logistics industry, smart sorting is one of the critical links to ensure that the logistics process can handle, in a timely manner, the massive material demand. Ultimately, the goal is to find a collision-free path between two points in the work environment. Implementing an optimal path planning algorithm would significantly reduce the operation time of logistics robots, while also reducing wear and energy consumption, and increasing the productivity and overall quality of the logistics industry. In addition, automation of such tasks would relieve human workers of repetitive and dull activities, which may cause harm to their health. Moreover, the COVID-19 pandemic makes the use of robots more attractive as they are not affected by health concerns or lock-down policies [
5]. More generally, path planning of mobile robots in semi-structured environments, i.e., environments in which only the position of a subset of obstacles is known a priori, is a crucial topic in robotics, not just for the logistics sector [
6]. The pursuit of increasingly optimised models and algorithms in terms of path length and smoothness, running time, and reliability is an active research field.
Path planning for mobile robots is mainly classified into two categories: global planning and local planning [
7]. From all the known techniques, Model Predictive Control Algorithms (MPCA), in combination with global path planning strategies such as A* algorithm [
8], show some of the greatest potential to provide efficient navigation in collision avoidance problems [
9]. In this context, a common strategy is to model obstacles as multiple convex polytopes leading to a convex optimisation problem whose solution is guaranteed [
10].
Several algorithms have been proposed to solve convex optimisation problems. Several early approaches were based on the Active-Set (AS) method [
11], which initially estimates the optimal active set. This algorithm then repeatedly uses gradient and Lagrange multiplier information to eliminate one index from the current estimate of the active constraints while adding a new index until optimality is reached [
12]. Later, algorithms based on the Interior-Point (IP) method, which involves modelling the constraints as barrier functions [
13], became popular in solving convex optimisation problems
The key novelty of this work is the development and use of a Dual Forward–Backward Algorithm (DFBA) [
14] to solve a Model Predictive Control problem. This DFBA can compute the optimal trajectory to avoid obstacles in a convex optimisation framework, and this is vital for obstacle avoidance in mobile robotic platforms operating in two-dimensional, semi-structured environments such as warehouses. Although the DFBA requires a longer computational time than the IP and AS algorithms, formulation of the optimisation problem associated with MPCA is relatively straightforward, and this is suited to real-time applications.
Section 2 presents the physical model of the system and the geometrical representation of the environment. This is then used to define the mathematical formulation in terms of an optimisation problem. Finally, there is a description of the algorithms needed to solve the proposed optimisation problem. A case study to test the proposed algorithms and the corresponding results are described in
Section 3. A discussion of the results is presented in
Section 4. Finally, the conclusion and future works are presented in
Section 5.