Next Article in Journal
Threshold Determination for Effective Water Injection in Coal Seams: Insights from Numerical Simulation
Next Article in Special Issue
Dual-Layer Reinforcement Learning for Quadruped Robot Locomotion and Speed Control in Complex Environments
Previous Article in Journal
PFAS: The Journey from Wonder Chemicals to Environmental Nightmares and the Search for Solutions
Previous Article in Special Issue
Design of Minimal Model-Free Control Structure for Fast Trajectory Tracking of Robotic Arms
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Automatic Optimal Robotic Base Placement for Collaborative Industrial Robotic Car Painting

1
Department of Electrical & Computer Engineering, University of Michigan-Dearborn, Dearborn, MI 48128, USA
2
Ford Motor Company, Dearborn, 48124 MI, USA
*
Author to whom correspondence should be addressed.
These authors contributed equally to this work.
Appl. Sci. 2024, 14(19), 8614; https://doi.org/10.3390/app14198614
Submission received: 29 August 2024 / Revised: 19 September 2024 / Accepted: 22 September 2024 / Published: 24 September 2024
(This article belongs to the Special Issue Artificial Intelligence and Its Application in Robotics)

Abstract

:

Featured Application

This paper proposes a computationally efficient algorithm for base placement in automatic multi-robot vehicle painting. The proposed algorithm incorporates the CAD model of the vehicle the manufacturer is interested in painting and the kinematic parameters of the robotic manipulators (e.g., their Denavit–Hartenberg parameters). The algorithm computes the robot’s optimal fixed base positions. The base positions can subsequently be utilized by already available robotic path/motion planners.

Abstract

This paper investigates the problem of optimal base placement in collaborative robotic car painting. The objective of this problem is to find the optimal fixed base positions of a collection of given articulated robotic arms on the factory floor/ceiling such that the possibility of vehicle paint coverage is maximized while the possibility of robot collision avoidance is minimized. Leveraging the inherent two-dimensional geometric features of robotic car painting, we construct two types of cost functions that formally capture the notions of paint coverage maximization and collision avoidance minimization. Using these cost functions, we formulate a multi-objective optimization problem, which can be readily solved using any standard multi-objective optimizer. Our resulting optimal base placement algorithm decouples base placement from motion/trajectory planning. In particular, our computationally efficient algorithm does not require any information from motion/trajectory planners a priori or during base placement computations. Rather, it offers a hierarchical solution in the sense that its generated results can be utilized within already available robotic painting motion/trajectory planners. Our proposed solution’s effectiveness is demonstrated through simulation results of multiple industrial robotic arms collaboratively painting a Ford F-150 truck.

1. Introduction

In this paper, we investigate the problem of optimal robotic base placement for industrial multi-robot car painting (see Figure 1). Robotic spray painting, which aims at covering object surfaces with varnish, paint, or ink, utilizes compressed-air driven spray guns. These spray guns atomize fluid particles, directing them onto industrial target surfaces [1,2,3].
Conventional industrial painting automation systems using robots, however, suffer from time-consuming trajectory generation for the robotic arms [4,5]. To avoid the time-consuming process of manually guiding the robot arm through a complete spraying cycle, CAD-based methods have emerged as a viable and faster alternative for generating robot trajectories [2,6]. These methods employ various techniques for path planning, such as RRT-based algorithms [7], iterative schemes with adaptive spray-gun stroke diameters [8], and path-constrained trajectory planning [4]. In all these algorithms, poor robot base placement can detrimentally affect motion/trajectory planning in terms of convergence time and quality of generated paths/motion trajectories (see, e.g.,  [9]).
Base placement plays a critical role in optimizing performance across various robotic application domains, including industrial manufacturing [10,11], surgical robotics [12], and human–robot interaction [13,14]. In particular, the placement of a robot’s base affects the robot’s reachability, manipulability, and workspace coverage during task execution [15]. These factors can, in turn, minimize redundant movements in flexible production lines with limited workspace and further optimize the robot energy consumption profiles [16,17].
In an increasing number of flexible manufacturing settings such as vehicle painting, teams of collaborative robots need to execute a delicate and complex task such as coating/painting/welding, where a single robot is not capable of accomplishing the objectives individually (see, e.g., [18,19,20,21]). It should come as no surprise that base placement is of crucial importance to the field of collaborative industrial robotics, where repositioning of the robots is costly and time-consuming. As opposed to traditional, highly repetitive industrial processes, a primary goal in collaborative robotics is to enable flexible manufacturing systems for agile product customization. For example, in flexible manufacturing-based car painting, if one or more robotic arms malfunction and uninterrupted production is essential, the manufacturer may need to replace the inoperative arms with different robotic manipulators from their inventory. Alternatively, the manufacturer might need to rapidly change the vehicle model in the production line. In both cases, a new set of base positions and motion trajectories must be planned swiftly to meet agile manufacturing demands. Indeed, one of the keys to successful trajectory/motion planning for industrial collaborative robots is that of properly choosing the fixed base positions on the factory floor/ceiling.
Gaps in the literature: Table 1 provides an overview of various industrial robotic base placement algorithms that have been proposed in the literature. Many of these algorithms have been designed to be general and applicable to a wide range of applications including robotic welding, coating, and painting. Consequently, their generality prevents them from leveraging the inherent geometrical and task specific features in particular industrial applications such as robotic-based vehicle painting. Furthermore, a majority of these algorithms take a holistic and centralized approach to the problem by combining base placement and motion/trajectory planning together. However, centralized approaches to multi-robot path planning are plagued by NP-hardness, where the computational complexity grows exponentially with increasing robot numbers [22,23]. Given the complexity of simultaneous base placement and trajectory planning, it is not surprising that many generic solutions resort to computationally expensive meta-heuristic search algorithms (see Table 1). A detailed discussion and comparison with three of the most recent approaches in Table 1 is provided in Section 7 (see Discussion and Comparison with the State of the Art).
Considering the literature gaps, this paper exclusively focuses on the collaborative robotic car-painting application. This specific focus allows us to deviate from generic base placement methods, which try to perform base placement and trajectory planning simultaneously. Specifically, we leverage the unique geometric properties of this industrial automation process to develop a computationally efficient algorithm without the need for simultaneous path planning and base placement. Our hierarchical approach prioritizes determining optimal base positions before engaging existing robotic painting motion/trajectory planners. The core challenge lies in quantifying paint coverage maximization and collision avoidance minimization for multi-robot vehicle painting without relying on prior knowledge or real-time data from motion/trajectory planners. Furthermore, this quantification requires design of cost functions tailored to the collaborative robotic car-painting application, which can be efficiently computed in an iterative manner, hence making them well suited for being utilized within any standard multi-objective optimization algorithm.  
Contributions of the paper: This paper presents a computationally efficient algorithm for multi-robot car-painting base placement problem. Our approach represents a departure from the generic methods in the literature (see Table 1 for a sample overview), which combine base placement and motion/trajectory planning. In particular, our proposed algorithm does not rely on information from motion/trajectory planners during any stage of the base placement computations. Instead, our solution provides a hierarchical framework where computed optimal base positions can be employed as input to existing robotic painting motion planners. By leveraging the unique geometric characteristics of car painting, we develop two types of cost functions specifically designed for multi-robot vehicle painting scenarios. These cost functions, which are tailored to the collaborative robotic car-painting application, can be efficiently computed in an iterative manner. Consequently, they are well suited for being utilized within any standard multi-objective optimization algorithm. A key advantage of our proposed approach is that it primarily involves planar computations, with the exception of a one-time three-dimensional (3D) point cloud rendering and ellipsoidal fitting in its pre-processing stage.
Relationship to our previous work: The current article is independent from and complements our previous work [18], in which we investigated the design of motion planning algorithms for collaborative robotic car painting. In that work, we were assuming that the manufacturer would provide a suitable collection of base positions, usually from experience and/or heuristics. However, a poor choice of base positions for painting robots resulted in the failure of the motion/trajectory planning algorithms. The base placement algorithm proposed in the current paper makes the process completely automatic, whereby the computed optimal base positions can be utilized within any available robotic painting motion/trajectory planner including but not limited to [18].  
The rest of the paper is organized as follows. After presenting our assumptions and problem statement, we present our high-level solution strategy in Section 2. Next, we present the pre-processing computational step associated with our algorithm, which entails a one-time 3D point cloud rendering and ellipsoidal fitting for the reachable workspace of the robotic arms in Section 3. Thereafter, we present the two types of base placement cost functions tailored to the multi-robot car-painting application in Section 4 and Section 5. Subsequently, in Section 6, we present the multi-objective optimization framework and our overall algorithm. We demonstrate our simulation results in Section 7. Finally, we conclude this article with some final remarks and future research directions in Section 8.

2. The Base Placement Problem and High-Level Solution Strategy

This section outlines the base placement problem, underlying assumptions, and our high-level solution strategy. We present the details and the overall algorithm in subsequent sections.
Multi-robot car-painting base placement problem:Consider the CAD model of a vehicle and a group of robotic manipulators (see Figure 2 and Figure 3). Additionally, consider the following assumptions:
  • The robotic arms utilize an RRR articulated kinematic structure (see, e.g., Figure 2), where the body, shoulder, and elbow joints are all revolute (see, e.g., [30] [Chapter 1] for a detailed classification of robotic manipulators).
  • The robotic arms are fixed to the floor or ceiling and arranged in two rows on either side of the car, leveraging the vehicle’s inherent symmetry during car-painting operations.
Compute the optimal fixed base positions for a collection of heterogeneous articulated robotic arms on the factory floor/ceiling to maximize the possibility of paint coverage and minimize the possibility of robot collisions. Furthermore, do not utilize any information from motion/trajectory planners a priori or during base placement computations.
Figure 2. The kinematic structure of an example RRR articulated arm (ABB IRB 4600 industrial manipulator [31]), where the body, shoulder, and elbow joints are all revolute. The unit lengths are in millimeters.
Figure 2. The kinematic structure of an example RRR articulated arm (ABB IRB 4600 industrial manipulator [31]), where the body, shoulder, and elbow joints are all revolute. The unit lengths are in millimeters.
Applsci 14 08614 g002
Figure 3. The CAD model of an example vehicle (Ford Motor Company F-150 truck).
Figure 3. The CAD model of an example vehicle (Ford Motor Company F-150 truck).
Applsci 14 08614 g003
Remark 1. 
In certain industries, such as aerospace, special-shaped surfaces present unique challenges for robotic painting due to their non-uniform and complex geometries. While our current approach is designed for commercial vehicles, which generally have more regular shapes, multi-plane base placements may offer advantages for these specialized applications. Specifically, the ability to position robotic arms on different planes would allow greater flexibility in reaching difficult contours and ensuring full coverage, as discussed in prior work on robotic painting for irregular surfaces in aerospace contexts [32,33]. However, the assumption of floor- or ceiling-mounted robotic arms remains applicable to commercial vehicles due to their generally regular geometry.
High-level solution strategy: To solve the multi-robot car-painting base placement problem, we take the following steps.
Step 1 
In Section 3, we devise a scheme for a point cloud rendering of the reachable workspace of the forearms of the robotic arms and fit ellipsoids to these point clouds. The computations in this step need only be run once.
Step 2 
In Section 4, we project the ellipsoids obtained from Step 1 onto the floor/ceiling to obtain planar ellipses. Using these ellipses, we construct a cost function to quantify the possibility of robot collisions. The constructed cost function is parameterized by the Cartesian coordinates of the planar ellipse centers.
Step 3 
In Section 5, we construct a class of cost functions to quantify the amount of vehicle paint coverage. These cost functions are obtained by projecting the point clouds, which are computed in Step 1, onto the sides and top of the vehicle.
Step 4 
In Section 6, we formulate a proper multi-objective optimization problem using the cost functions obtained from Steps 2 and 3. Any standard multi-objective optimizer can then be invoked for computing the optimal fixed base positions.
Remark 2. 
In this work, we adopt a hierarchical optimization approach to vehicle painting, which contrasts with methods that attempt to simultaneously address base placement and painting objectives. Our approach prioritizes optimal base placement, minimizing collision risk and maximizing the reachability of the robotic arms. This establishes a strong foundation for the subsequent stages, where path planning algorithms, drawn from the existing literature, are applied to ensure complete paint coverage of the vehicle’s surface. This approach offers two key advantages. First, by decoupling base placement from path planning, we enhance both computational efficiency and practical effectiveness. While complete paint coverage remains a critical goal, treating it as a constraint in the later stages of path optimization allows us to fine-tune the robot’s trajectory while capitalizing on the optimal base positioning established earlier. Second, once base placement is determined, there is flexibility to choose from a wide range of established path planning algorithms in the literature such as [18,34].

3. Pre-Processing: Point Cloud Rendering and Ellipsoidal Fitting

In this section, we devise a numerical algorithm for the point cloud rendering of the reachable workspace of the forearms of the robotic arms and fit 3D ellipsoids to these point clouds. The 3D computations in this section can be considered as the pre-processing stage and need to be run only once.
We consider a team of M painting robots, each equipped with an articulated RRR arm (see the assumptions in Section 2). We describe the base positions of the robots relative to a common coordinate frame rigidly attached to the factory floor/ceiling.
Note that some robotic arm manufacturers, such as FANUC with their R-2000iC/220U model (see [35]), offer flip-over capability. This allows for ceiling installation in work cells unsuitable for floor or wall mounting, accommodating narrower cell designs. Without loss of generality, we consider the robots to be floor-mounted and assume that the floor coincides with the plane z = 0 . Accordingly, we can express the base positions as
p i = [ p x , i , p y , i , 0 ] R 3 , 1 i M ,
where i is the enumeration index for the robotic arms. In the base placement problem, the coordinates p x , i and p y , i , 1 i M , are unknown and are determined through the optimal base placement algorithm.
Let θ k i represent the angular position of the kth joint angle of the ith robot, where 1 i M and 1 k 3 . The joint angle vector for the ith robot is then expressed as
θ i : = [ θ 1 i , θ 2 i , θ 3 i ] ,
where θ k , min i θ k i θ k , max i . Specifically, the constant angles θ k , min i and θ k , max i represent the minimum and maximum joint angle limits, respectively, for the kth joint of the ith robot (e.g., see [31] for limit values of the ABB IRB 4600).  
Point Cloud Generation: To determine the reachable volume of each robot’s forearm, we employ the Denavit–Hartenberg parameters for the first three joints and forward kinematics mapping of the robot. Specifically, the forearm tip position t i R 3 of the ith robot with its base at p i R 3 on the factory floor/ceiling, 1 i M , can be computed from the forward kinematics mapping T i ( θ i ) R 4 × 4 . This mapping relates the first three joint angles to the forearm tip’s orientation and position. The forearm positions can be expressed as
t i ( θ i , p i ) 1 = T i ( θ i ) 0 0 0 1 + p i 0 , 1 i M .
To maintain generality for any RRR industrial manipulator (see the assumptions in Section 2), we approximate reachable forearm spaces using a sampling-based numerical approach. Unlike analytical or geometric methods (e.g., [36]), sampling techniques (see, e.g., [37,38,39]) generate 3D point clouds amenable to efficient Khachiyan’s algorithm [40,41]. It is remarked that while β -distribution or Gaussian growth-based sampling algorithms ([37,42]) are also viable options for workspace point cloud generation, uniform joint position sampling proved sufficient for our car-painting base placement application.
The reachable volume of the ith, where 1 i M , robot forearm tip is represented by a 3D point cloud. This point cloud can be expressed as
P i p i = t i ( θ j i , p i ) j = 1 N i .
In Equation (4), t i ( θ j i , p i ) is the position of the forearm tip under base position p i and joint configuration vector θ j i that can be computed using the forward kinematics mapping in (3). Each of the configuration vectors θ j i , which is associated with the ith robot, is a sample drawn from the cube
[ θ 1 , min i , θ 1 , max i ] × [ θ 2 , min i , θ 2 , max i ] × [ θ 3 , min i , θ 3 , max i ] .
Consequently, the number of samples N i in the point cloud P i p i is given by:
N i = θ 1 , max i θ 1 , min i δ i 1 + 1 θ 2 , max i θ 2 , min i δ i 2 + 1 θ 3 , max i θ 3 , min i δ i 3 + 1 .
In Equation (6), · denotes the floor function, and δ i j is a constant that specifies the distance between the samples in the jth angular interval. For example, if δ i 1 = π 10 , the samples from the interval [ θ 1 , min i , θ 1 , max i ] are π 10 radians apart. As seen in what follows, the number of points N i in (6) in each forearm point cloud directly affects the computational complexity of the 3D ellipsoidal fitting algorithm.
Remark 3. 
As it can be seen from Equation (4), the robot workspace point clouds depend on the base positions. However, the base coordinates are not known beforehand. To address this issue, we can express the relationship in (4) as follows:
P i p i = P i 0 + { p i } , 1 i M .
This expression indicates that the point cloud P i p i can be obtained by translating each element of a point cloud based at the origin. In particular, each element in the set P i p i is the sum of one element from P i 0 and the base position vector p i . Accordingly, in the pre-processing stage of the algorithm, we can carry out the point cloud rendering of the reachable workspace of the robot forearms at the origin without the need to know the base positions. As seen in Section 4 and Section 5, the base positions p i , 1 i M , can be considered as optimization decision variables.
Ellipsoidal fitting to the robot workspace point clouds: Consider the point cloud P i ( 0 ) associated with the ith robot, which consists of N i points in R 3 . This point cloud P i ( 0 ) is computed using (4) by setting p i = 0 (also, see Remark 3).  
To fit 3D ellipsoids to the point cloud P i ( 0 ) , we used Khachiyan’s algorithm, a widely used method in convex optimization [40,43]. Khachiyan’s algorithm is designed to compute the minimum-volume enclosing ellipsoid (MVEE) of the point cloud P i ( 0 ) , denoted by MVEE P i ( 0 ) , which is found by solving the following optimization problem:
argmin A i , c i log ( det ( A i ) ) , subject to ( t k c i ) A i ( t k c i ) 1 , for all t k P i ( 0 )
where c i is the center of the ellipsoid MVEE P i ( 0 ) , and the matrix A i provides the shape of the ellipsoid MVEE P i ( 0 ) . In particular, by computing the singular value decomposition of A i as U i Ξ i V i , the length of the ellipsoid semi-axes are given by r k , i = 1 / ξ k , i , k { x , y , z } , where the ξ k , i ’s are the components of the diagonal of the matrix Ξ . Furthermore, the orientation of the ellipsoid is given by the rotation matrix V i .
Khachiyan’s algorithm solves the Lagrangian dual problem of (8) using a conditional gradient ascent method [40] (see also [41]). In this paper, we utilized the implementation of Khachiyan’s algorithm provided in [44].
The point cloud rendering of the robotic forearm reachable spaces and Khachiyan’s algorithm result in M ellipsoids given by   
MVEE P i ( 0 ) = ( x , y , z ) | ( x c x , i ) 2 r x , i 2 + ( y c y , i ) 2 r y , i 2 + ( z c z , i ) 2 r z , i 2 = 1 , 1 i M .
Algorithm 1 summarizes the computations needed for the pre-processing stage. As depicted by Figure 4, Algorithm 1 generates a 3D point cloud and an MVEE for each of the robotic arms. To prevent unnecessary computations, the if conditional in Algorithm 1 ensures that the point cloud rendering and ellipsoid fitting computations are performed only for robotic arms having different kinematic parameters. For instance, if there are six ABB IRB 4600 robots, since their point clouds P i ( 0 ) , 1 i 6 and corresponding fitted ellipsoids MVEE P i ( 0 ) , 1 i 6 are the same, the rendering/fitting computations in the for loop are only run for the first robot.
Algorithm 1 The pre-processing stage (run only once)
1:
Input: The make of the M robotic arms and their kinematic parameters
2:
Output: 3D point clouds P i ( 0 ) and 3D ellipsoids MVEE P i ( 0 ) , 1 i M
3:
4:
for   i 1 to M do
5:
    if Make and kinematic parameters of the ith robot arm are the same as the jth robot arm, where j < i , then
6:
         P i ( 0 ) P j ( 0 )
7:
         MVEE P i ( 0 ) MVEE P j ( 0 )
8:
        continue ▹ Terminate the current iteration and go to the next one.
9:
    end if
10:
    Compute the 3D point cloud P i ( 0 ) associated with the reachable volume of the ith robot forearm tip. ▹ Utilize (7) with p i = 0 and (3)
11:
12:
    Fit an ellipsoid MVEE P i ( 0 ) to the point cloud P i ( 0 ) . ▹ Solve (8) using Khachiyan’s algorithm
13:
end for 
14:
15:
Return P i ( 0 ) , MVEE P i ( 0 ) , 1 i M .
Computational complexity for point cloud generation: The forward kinematics for an RRR arm typically involves calculations using trigonometric operations (like sine and cosine) and matrix multiplications. These calculations are generally constant-time operations, i.e., O ( 1 ) for each configuration. Since we are computing forward kinematics for each configuration, the total computational complexity is the number of configurations multiplied by the complexity of forward kinematics (see, e.g., [45,46,47]). Thus, the total computational complexity for the point cloud generation is O ( N i ) .
Computational complexity for ellipsoid fitting: As demonstrated in [40], the original algorithm for computing MVEEs can be solved in O ( N i 3.5 ln ( N i ε ) ) arithmetic operations, achieving a relative accuracy of ε in the volume.

4. Construction of the First Cost Function: Minimizing the Possibility of Collision

In this section, we construct a cost function that quantifies the notion of collision possibility in the context of multi-robot car painting, which is based on computing the overlap area between planar ellipses.
To provide the intuition behind our proposed cost function in this section, let us consider the multi-robot arrangements depicted in Figure 5. The ellipses are the MVEEs that closely fit the reachable workspace of the forearms of the robotic arms. As it can be seen from these arrangement, larger volumes of intersection in-between the ellipsoids amount to a higher possibility of collision in-between the robots while they are painting the vehicle. Additionally, larger volumes of intersection in-between the 3D ellipsoids correspond to larger areas of intersection in-between their projections on the factory floor. Remarkably, the projection of these 3D ellipses on the factory floor results in planar ellipses. Hence, the overlap areas of planar ellipses can quantify the possibility of collision in-between the arms during painting (see Figure 6). Additionally, there are very efficient computational algorithms in the literature for computing the overlap area between ellipses as elaborated in what follows.
To formalize this intuition, we first consider each of the ellipsoids MVEE P i ( 0 ) , 1 i M , which are generated by the pre-processing stage summarized in Algorithm 1. According to Remark 3, each computed ellipsoid MVEE P i ( 0 ) is obtained based on the assumption that its corresponding robot base position is located at the origin. Considering the variable unknown base position vector p i given by (1), it is possible to translate the ellipsoid using this vector. In particular, the ellipsoid associated with the ith arm with base position p i , 1 i M , is given by
MVEE P i ( p i ) = ( x , y , z ) | ( x c x , i p x , i ) 2 r x , i 2 + ( y c y , i p y , i ) 2 r y , i 2 + ( z c z , i ) 2 r z , i 2 = 1 .
We project the translated ellipsoids given by (10) onto the floor/ceiling to obtain planar ellipses, which are parameterized by the Cartesian coordinates of the robot base positions. Specifically, we project the ellipsoid MVEE P i ( p i ) , 1 i M , given by (10) to obtain the planar ellipse
E P i ( p i ) : = ( x , y ) | ( x c x , i p x , i ) 2 r x , i 2 + ( y c y , i p y , i ) 2 r y , i 2 = 1 c z , i 2 r z , i 2 .
Having obtained the planar ellipses, we denote the overlap area between the ith ellipse E P i ( p i ) and the jth ellipse E P j ( p j ) , where 1 i < j M , by A i , j ( p i , p j ) . It can be easily seen that A i , j ( p i , p j ) 0 for all p i , p j , and 1 i < j M (i.e., overlap areas are positive or zero). Moreover, A i , j ( p i , p j ) = A j , i ( p j , p i ) due to symmetry.
It is now possible to define the cost function quantifying the possibility of collision between the M robots during painting. In particular, using the ellipse overlap areas, we define the cost function F 1 ( · ) according to
F 1 p 1 , , p M : = 1 i < j M A i , j ( p i , p j ) .
There are a variety of ellipse overlap area computation algorithms in the literature such as computationally intensive Monte Carlo methods [48], approximations based on polyarcs [49], and polygon-based methods [50]. Since we feed the cost function F 1 ( · ) given by (12) to a multi-objective optimizer, we need a fast and accurate algorithm for computing ellipse overlap areas. A very appealing algorithm suited for our needs is the one due to Hughes and Chraibi [51], which avoids the use of approximating proxy curves. Rather, that algorithm, which is based on a strategy that combines segment and polygon areas to compute the overlap, is applicable to any two general ellipses. The algorithm distinguishes between a variety of different ellipse intersection configurations (see Figure 7) and utilizes the Gauss–Green theorem to compute segment areas (see [51] for further details).
Remark 4. 
While the overlap of robotic arm workspaces provides a useful heuristic for evaluating collision potential, it is important to recognize that the actual likelihood of collisions is primarily influenced by the motion planning and control strategies applied after base placement. Workspace overlap alone does not directly correlate with collision risk, as modern algorithms are capable of dynamically adjusting the robot trajectories to avoid collisions, even in scenarios where significant overlap exists. However, poor base placement can negatively impact the performance of subsequent path planning algorithms, potentially leading to suboptimal coverage or even failure in certain areas. To address this, advanced collision avoidance strategies that operate in densely populated robotic environments are applied after base placement. These strategies mitigate the risks associated with workspace overlap while maximizing the effective utilization of robotic arms. This hierarchical approach ensures that while base placement reduces collision potential, the subsequent dynamic adjustments during motion planning handle remaining collision concerns (see, e.g., [34,52]), thus optimizing both safety and efficiency.

5. Construction of the Second Type of Cost Functions: Maximization of the Possibility of Paint Coverage

In this section, we construct a group of cost functions to quantify the amount of vehicle paint coverage. These cost functions are obtained by projecting the point clouds, which are computed in the pre-processing stage, onto the sides and top of the vehicle.
We first create grid map representations of the top and sides of the car. These grid maps are computed using standard image processing algorithms like the Moore–Neighbor Tracing algorithm (see, e.g., [53]), which traces given contours and detects object boundaries in the vehicle’s CAD model (see Figure 8). It is remarked that the grid map computation needs to be run only once.
After creating the grid maps from the vehicle’s CAD model, we consider the point cloud representation of the reachable workspace of the robotic forearms. In particular, we consider the point clouds P i ( 0 ) , 1 i M , obtained from the pre-processing stage (see Section 3). Given a collection of base positions p i , 1 i M , we translate each of the given point clouds P i ( 0 ) to obtain their translated versions P i ( p i ) , 1 i M , by utilizing Equation (7). Subsequently, we obtain a planar point cloud by projecting P i ( p i ) , 1 i M , onto the sides and top of the vehicle. This is equivalent to the projection of i = 1 M P i ( p i ) onto the car sides and top.
Focusing on the vehicle top for brevity, we can assess its coverage using a computationally efficient technique like ray-casting (see, e.g., [54]). This method, which can determine if a point lies within a traced boundary from the Moore–Neighbor algorithm, can be used to provide a quantitative measure of the top’s (resp., sides’) paint coverage. Algorithm 2 provides the procedure for computing the top paint coverage ratio. The same algorithm can be utilized for computing the paint coverage ratio of the vehicle sides, whose details we skip for brevity.
Algorithm 2 Computation of the second cost function (the car’s top paint coverage ratio)
Remark: The algorithm structure remains the same for the sides of the car.
1:
Input: Base positions p i , 3D point clouds P i ( 0 ) , 1 i M , and grid map of the top of the vehicle CAD model of size M G top × N G top
2:
Output: The paint coverage ratio of the vehicle top given by F 2 top p 1 , , p M
3:
4:
Compute P i ( p i ) , 1 i M , using (7).
5:
Initialize covered_cells as an empty set.
6:
Consider the vehicle top grid map of size M G top × N G top .
7:
Project i = 1 M P i ( p i ) onto the top of the vehicle to obtain a 2D point cloud.
8:
Run a ray-casting computation to add cells to the covered_cells.
9:
Compute the cardinality N covered top of the set covered_cells.
10:
Calculate the paint coverage ratio as: F 2 top p 1 , , p M = N covered top M G top × N G top .
11:
12:
Return F 2 top p 1 , , p M .
In summary, the second cost function F 2 top p 1 , , p M , which is calculated according to Algorithm 2, can be expressed as
F 2 top p 1 , , p M = N covered top M G top × N G top ,
where the resulting value of F 2 top p 1 , , p M lies in the interval [ 0 , 1 ] . We can repeat the same process (details omitted for brevity) for obtaining the coverage ratio of the sides of the car to obtain the cost functions F 2 side 1 ( · ) and F 2 side 2 ( · ) according to
F 2 side 1 p 1 , , p M = N covered side 1 M G side 1 × N G side 1 ,
F 2 side 2 p 1 , , p M = N covered side 2 M G side 2 × N G side 2 .
Computational complexity for computing the paint coverage ratios: The worst-case computational complexity for testing the inclusion of N i points from a point cloud in a boundary from a grid map of size M G top × N G top is O ( N i · M G top · N G top ) . It is remarked that the worst case-complexity of ray casting for point inclusion in a general 2D polygon is O ( n ) , where n is the number of the polygon edges (see, e.g., [54,55]). Similar computational complexity expressions can also be stated for computing F 2 side 1 ( · ) and F 2 side 2 ( · ) .

6. Formulating the Multi-Objective Optimization Problem

In this section, we formulate a proper multi-objective optimization problem using the cost functions developed in Section 4 and Section 5.
Considering the base positions p i , 1 i M , as the decision variables, the cost functions F 1 ( · ) , F 2 top ( · ) , F 2 side 1 ( · ) , F 2 side 2 ( · ) constitute a proper objective function vector. We recall that F 1 ( · ) given by (12) quantifies the possibility of collision between the robots during painting. On the other hand, F 2 top ( · ) , F 2 side 1 ( · ) , and F 2 side 2 ( · ) given by (13), (14), and (15), respectively, quantify the vehicle’s top and sides’ paint coverage ratios.
We are interested in finding optimal decision variables p i , 1 i M , such that F 1 ( · ) is minimized while F 2 top ( · ) (resp., F 2 side 1 ( · ) , F 2 side 2 ( · ) ) is maximized. Equivalently, we can seek to minimize F 2 top ( · ) (resp., F 2 side 1 ( · ) , F 2 side 2 ( · ) ). Using the cost functions F 1 ( · ) , F 2 top ( · ) , F 2 side 1 ( · ) , and F 2 side 2 ( · ) we formulate the following multi-objective optimization problem
min p 1 , , p M F BP ( p 1 , , p M )
where the objective function vector F BP ( · ) is defined by
F BP ( p 1 , , p M ) : = F 1 ( p 1 , , p M ) F 2 top ( p 1 , , p M ) F 2 side 1 ( p 1 , , p M ) F 2 side 2 ( p 1 , , p M ) .
Having formulated the multi-objective optimization problem as in (16) and (17), we can invoke any standard multi-objective optimizer for computing the optimal fixed base positions. In this paper, we adopted the goal attainment algorithm [56], which has an efficient implementation through the function fgoalattain in MATLAB, R2020b, Mathworks, Natick, MA. To determine the goals in the goal attainment problem, we set the goal of the first cost function equal to 0. This indicates a goal value of zero for the overlap area between the projection of the robot workspace ellipsoids. Since we are minimizing the cost functions F 2 top ( · ) , F 2 side 1 ( · ) , and F 2 side 2 ( · ) in the objective function vector given by (17), we set their associated goal values equal to 1 .  
The overall proposed solution:Figure 9 illustrates the overall proposed solution to the multi-robot car-painting base placement problem. The pre-processing stage (see Algorithm 1) performs a point cloud rendering of the reachable workspace of the forearms of the robotic arms and fits ellipsoids to these point clouds. Using the constructed cost function in (12), we quantify the possibility of collision between the robotic arms without any need for planning their motion trajectories a priori. This cost function can be computed using a projection of the ellipsoids on the factory floor/ceiling and summing the resulting ellipse overlap areas. Similarly, using the constructed cost functions in (13), (14), and (15) computed using Algorithm 2, we quantify the possibility of the vehicle paint coverage. These cost functions can then be utilized within any standard multi-objective optimization routine to compute the optimal robot base positions.

7. Simulation Results

In this section, we present the simulation results associated with our optimal base placement algorithm. Our simulations were conducted using two different kinds of robotic arms, namely, ABB IRB 4600 and FANUC R-2000iC robots, for painting an F-150 truck produced by Ford Motor Company (see Figure 3). To demonstrate the versatility of our proposed base placement solution, we applied our algorithm to homogeneous as well as heterogeneous teams of robots. This is especially beneficial when one or more robotic arms malfunction, where the manufacturer can replace the faulty arms with alternative robotic manipulators from their inventory to avoid disruptions in the painting process.
To further assess the impact of base positions on the performance of the robotic arms during painting, we also computed the manipulability index (manipulability for brief) of the robots in our simulations. Given the Jacobian matrix J ( θ ) of a robotic arm, where θ represents the configuration vector of the arm, the manipulability at θ can be computed according to w ( θ ) = det ( J ( θ ) J ( θ ) ) (see [30] [Section 4.12] for further details). The normalized manipulability at configuration θ during a certain task such as car painting is then given by w normalized ( θ ) : = w ( θ ) w max , where w max is the maximum value of arm manipulability over all possible robot configurations.
Figure 9 illustrates the overall algorithm for optimal multi-robot car-painting base placement. The most computationally expensive part of the algorithm is the pre-processing stage (Algorithm 1), which needs to be run only once. Even on a single core of a modest PC, this polynomial-time algorithm can efficiently handle point cloud rendering and ellipsoid fitting. For instance, a MATLAB implementation of Algorithm 1 was run on six ABB IRB 4600 robots on an Intel Core i7 CPU. With point cloud sizes of around 1000 and an ellipsoidal fitting tolerance of 0.01 , the pre-processing computations were completed in less than one minute.  
Simulations with a homogeneous robotic team: We first considered six ABB IRB 4600 robotic arms and computed their optimal base positions using our proposed algorithm. Table 2 provides an overview of various base positions, planar ellipse overlap areas, percentages of vehicle paint coverage, and the mean and standard deviation values of the normalized manipulability of the robotic arms during painting. Since the robot arms were positioned in a symmetric manner on the sides of the F-150 vehicle, we only included the information associated with one side. Table 3 presents the computational times (in seconds) required to compute the overlap areas and paint coverage ratios for various base positions, using an Intel Core i7 CPU. Additionally, the multi-objective optimizer fgoalattain took approximately 3.33 min to determine the optimal base positions, highlighted in bold in the table.
The gray entries demonstrate the results obtained from our proposed optimal base placement algorithm. As shown in Table 2, the optimal base positions (the gray entries in the table) not only achieved complete paint coverage and minimal ellipse overlap areas but also exhibited the highest mean normalized manipulability with a low standard deviation. After base placement calculations, we utilized the mutli-robot path planning algorithm devised in our previous work [18] to determine the joint trajectories of the robotic arms for painting the vehicle. In our previous work [18], we assumed that the manufacturer would provide a suitable collection of base positions, usually from experience and/or heuristics. However, as seen in the simulations, a poor choice of base positions for painting robots resulted in the failure of the motion/trajectory planning.
Figure 10 depicts the snapshots of the homogeneous team of six ABB IRB 4600 robots painting a Ford Motor Company F-150 truck where the robot base positions were obtained from our proposed optimal base placement algorithm. Furthermore, Figure 11 depicts the snapshots of the same team placed at non-optimal positions. The figures demonstrate that in the non-optimal case, the robots failed to paint the top of the vehicle completely, despite the fact that both painting scenarios were utilizing the same motion planning algorithm. Furthermore, suboptimal base positions forced the robots to traverse configurations close to elbow and shoulder singularities during painting, which can be clearly seen when the arms have to overstretch to perform their painting task. Finally, the histograms in Figure 12 depict the normalized manipulability values of the robots during painting. The percentage values on each bar in the histograms provide the painting duration during which the robot manipulability belonged to a certain interval. For instance, a 50 % value on the bar in [ 0.85 , 0.9 ] for Robot 1 in histograms on the left indicate that Robot 1 had a normalized manipulability value belonging to the interval [ 0.85 , 0.9 ] during half of the painting task duration.
Simulations with a heterogeneous robotic team: In all simulation scenarios, suboptimal base positions led to degraded algorithm performance, even when using the same path planning algorithm. This resulted in reduced coverage and frequent encounters with singular configurations. Specifically, elbow and shoulder singularities occurred during the painting process when the robot bases were poorly positioned. Elbow singularities arise when the robotic arm is fully extended, while shoulder singularities occur when the shoulder joint aligns in a way that restricts the arm’s ability to rotate freely in certain directions (see Figure 13).
The collection of simulation results considered six robotic arms of different types, namely, four ABB IRB 4600 and two Fanuc R2000iC robots. Figure 14 depicts the snapshots of the heterogeneous team of robots painting the Ford Motor Company F-150 truck where the robot base positions were obtained from our proposed optimal base placement algorithm. Furthermore, Figure 15 depicts the snapshots of the same team placed at non-optimal positions. The figures demonstrate that in the non-optimal case, the robots failed to paint the top of the vehicle completely, despite the fact that both painting scenarios were utilizing the same motion planning algorithm. Furthermore, suboptimal base positions forced the robots to traverse configurations close to elbow and shoulder singularities during painting, which can be clearly seen when the arms have to overstretch to perform their painting task.
Discussion and comparison with the state of the art: In the development of our base placement algorithm for industrial painting robots, we initially utilized ellipsoidal fitting and point cloud rendering techniques (Algorithm 1) during the pre-processing phase. This stage was critical for modeling the reachable workspace of the robots, ensuring that we had an accurate geometric representation to base further calculations on. Although this process involved polynomial time complexity, it was executed only once, thereby minimizing its impact on the overall computational load. Following the pre-processing, we implemented a multi-objective optimization strategy by utilizing custom-designed cost functions specifically aimed at minimizing collision risk (see Section 4) and maximizing paint coverage (see Section 5). As it can be seen from Table 3, the computation of each of these cost functions took less than 0.4 s on a modest Intel Core i7 CPU. The primary advantage of our approach is decoupling the base placement from trajectory planning. Additionally, after base placement, one has the freedom to choose from a plethora of robotic painting path planning algorithms available in the literature.
The method of base placement for single robot machining operation proposed by [28] incorporates two main algorithms: sparse uniform grid decomposition (SUGD) and sequential quadratic programming (SQP). Initially, the SUGD is employed to identify feasible base positions within a defined search space. The SUGD requires significant computational resources, largely due to its dependency on the resolution of the grid and the extent of the search area. This approach serves as a preliminary filter to establish a starting point for further optimization. Following this, SQP takes over to find the optimal base positions using these initial guesses. SQP is well-suited for handling the nonlinearities and constraints typical in such optimization scenarios, offering an effective means to navigate through complex decision spaces. As for SQP, while it is capable of achieving superlinear convergence rates, the complexity and the computational expense can escalate quickly depending on the size of the problem and the intricacies of the constraints involved.
In the base position optimization proposed by [14], a GA was employed to iteratively evaluate and refine multiple solutions, aiming to find the optimal configuration. While a GA provides flexibility in exploring various solutions, its iterative nature often results in higher computational demands, particularly when multiple constraints like collision avoidance and workspace coverage must be considered. Complementing the optimization, the Object Collision Algorithm was used to detect potential collisions between robot arms and their environment. This algorithm evaluated bounding boxes around objects with a quadratic computational cost. To further ensure efficient and stable robot movements, Singularity Detection through the Manipulability Index assessed the robot’s Jacobian matrix for potential kinematic singularities. Additionally, Inverse Kinematics, often solved using Powell’s method, calculated joint angles for specific end-effector positions. By integrating these algorithms, especially within a GA framework, the overall complexity increased, but the approach ensured a simultaneous optimization of robot base placement while addressing collisions, singularities, and precise kinematic configurations.
The authors in [17] developed a comprehensive framework for optimizing robot placement in large-scale manufacturing environments, utilizing an intricate blend of energy consumption models and quality metrics like dimensional accuracy. Central to this framework was the application of a simulated annealing algorithm—a heuristic method celebrated for its ability to approximate global optima efficiently. Complementing the simulated annealing was the Recursive Newton–Euler Algorithm (RNEA), which calculated the energy requirements of robotic movements. Moreover, the framework integrated a multi-objective optimization model that simultaneously addressed energy conservation and printing quality, navigating the complex trade-offs between these objectives. Additionally, the system incorporated task decomposition and scheduling algorithms to manage the assignment and coordination of tasks among multiple robots, ensuring collision-free operation and optimizing production timelines. The computational methods employed, like simulated annealing, can be resource-intensive and might not scale well with larger numbers of robots or more complex tasks. Additionally, the effectiveness of these algorithms can depend heavily on initial conditions and parameter settings, which may complicate their implementation and optimization in practical scenarios.

8. Conclusions

This paper presented a novel approach for optimizing the fixed base positions of articulated robotic arms in a factory setting to maximize vehicle paint coverage while minimizing the risk of robot collisions. By exploiting the inherent two-dimensional geometric properties of car painting, we developed two cost functions that quantitatively measured paint coverage and collision avoidance. These cost functions were integrated into a multi-objective optimization problem, which could be efficiently solved using standard multi-objective optimization techniques. The algorithm’s applicability extends to diverse industrial robotic teams and vehicle types. Our algorithm for optimal base placement decouples base positioning from motion and trajectory planning, providing a computationally efficient solution that is independent of motion planning data. This hierarchical approach allows our generated results to be seamlessly integrated into existing robotic painting motion and trajectory planning systems.
There are various future research directions emanating from this work including base positioning for mobile manipulators, extending the framework to aircraft robotic painting, and integrating energy consumption optimality considerations into the proposed base placement algorithm. While our current work focuses on optimizing the base placement of robotic arms using kinematic manipulability, which is well suited for non-contact tasks such as vehicle painting, we recognize the importance of considering force ellipsoids in scenarios where the robot end-effector comes into contact with the object’s surface, such as welding or assembly tasks. The alignment of the force ellipsoid with gravity can enhance the operational performance of the robot by minimizing torque requirements and improving stability. As such, incorporating a force ellipsoid analysis into base placement and path planning algorithms is a promising direction for future research, which we aim to explore in subsequent studies.

Author Contributions

Conceptualization, A.M., K.Z. and A.K.; methodology, A.M.; software, K.Z. and A.K.; validation, K.Z., A.K., A.M. and M.S.; writing–original draft preparation: K.Z. and A.K.; formal analysis: K.Z., A.K. and A.M.; writing-review and editing: A.M. and M.S.; visualization: K.Z. and A.K.; supervision, A.M. and M.S.; resources, A.M. and M.S.; project administration: A.M. and M.S.; funding acquisition: A.M. All authors have read and agreed to the published version of the manuscript.

Funding

This work was funded by Ford Motor Company (Automatic Optimal Multi-Robot Task Allocation) under grant 389760.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Proprietary data available upon request from the authors.

Conflicts of Interest

M.S. is an employee of Ford Motor Company. The authors declare no conflicts of interest.

References

  1. Moe, S.; Gravdahl, J.T.; Pettersen, K.Y. Set-based control for autonomous spray painting. IEEE Trans. Autom. Sci. Eng. 2018, 15, 1785–1796. [Google Scholar] [CrossRef]
  2. Gasparetto, A.; Vidoni, R.; Pillan, D.; Saccavini, E. Automatic path and trajectory planning for robotic spray painting. In Proceedings of the ROBOTIK 2012; 7th German Conference on Robotics, VDE, Munich, Germany, 21–22 May 2012; pp. 1–6. [Google Scholar]
  3. Biegelbauer, G.; Pichler, A.; Vincze, M.; Nielsen, C.L.; Andersen, H.J.; Häusler, K. The inverse approach of flexpaint [robotic spray painting]. IEEE Robot. Autom. Mag. 2005, 12, 24–34. [Google Scholar] [CrossRef]
  4. Trigatti, G.; Boscariol, P.; Scalera, L.; Pillan, D.; Gasparetto, A. A new path-constrained trajectory planning strategy for spray painting robots-rev. Int. J. Adv. Manuf. Technol. 2018, 98, 2287–2296. [Google Scholar] [CrossRef]
  5. Akkaladevi, S.C.; Propst, M.; Hofmann, M.; Hiesmair, L.; Ikeda, M.; Chitturi, N.C.; Pichler, A. Programming-free approaches for human–robot collaboration in assembly tasks. In Advanced Human-Robot Collaboration in Manufacturing; Springer: Berlin/Heidelberg, Germany, 2021; pp. 283–317. [Google Scholar] [CrossRef]
  6. Chen, H.; Sheng, W. Transformative CAD based industrial robot program generation. Robot.-Comput.-Integr. Manuf. 2011, 27, 942–948. [Google Scholar] [CrossRef]
  7. Zhang, H.; Wang, Y.; Zheng, J.; Yu, J. Path planning of industrial robot based on improved RRT algorithm in complex environments. IEEE Access 2018, 6, 53296–53306. [Google Scholar] [CrossRef]
  8. Seriani, S.; Cortellessa, A.; Belfio, S.; Sortino, M.; Totis, G.; Gallina, P. Automatic path-planning algorithm for realistic decorative robotic painting. Autom. Constr. 2015, 56, 67–75. [Google Scholar] [CrossRef]
  9. Xu, M.; Di, J.; Das, N.; Yip, M.C. Optimal Multi-Manipulator Arm Placement for Maximal Dexterity during Robotics Surgery. In Proceedings of the 2021 IEEE International Conference on Robotics and Automation (ICRA), Xi’an, China, 30 May–5 June 2021; pp. 9752–9758. [Google Scholar] [CrossRef]
  10. Weingartshofer, T.; Hartl-Nesic, C.; Kugi, A. Optimal TCP and robot base placement for a set of complex continuous paths. In Proceedings of the 2021 IEEE International Conference on Robotics and Automation (ICRA), Xi’an, China, 30 May–5 June 2021; pp. 9659–9665. [Google Scholar] [CrossRef]
  11. Balci, B.; Donovan, J.; Roberts, J.; Corke, P. Optimal workpiece placement based on robot reach, manipulability and joint torques. In Proceedings of the 2023 IEEE International Conference on Robotics and Automation (ICRA), London, UK, 29 May–2 June 2023; pp. 12302–12308. [Google Scholar] [CrossRef]
  12. Trabelsi, A.; Sandoval, J.; Mlika, A.; Lahouar, S.; Zeghloul, S.; Laribi, M.A. Robot base placement and tool mounting optimization based on capability map for robot-assistant camera holder. Robotica 2024, 1–22. [Google Scholar] [CrossRef]
  13. Pandey, A.K.; Saut, J.P.; Sidobre, D.; Alami, R. Towards planning human-robot interactive manipulation tasks: Task dependent and human oriented autonomous selection of grasp and placement. In Proceedings of the 2012 4th IEEE RAS & EMBS International Conference on Biomedical Robotics and Biomechatronics (BioRob), Rome, Italy, 24–27 June 2012; pp. 1371–1376. [Google Scholar] [CrossRef]
  14. De Caro, J.D.S.; Sunny, M.S.H.; Montenegro, E.J.M.; Ahmed, H.U.; Rahman, M.H. Optimal Base Placement of a 6-DOFs Robot to Cover Essential Activities of Daily Living. IEEE Access 2022, 10, 134536–134548. [Google Scholar] [CrossRef]
  15. Makhal, A.; Goins, A.K. Reuleaux: Robot base placement by reachability analysis. In Proceedings of the 2018 Second IEEE International Conference on Robotic Computing (IRC), Laguna Hills, CA, USA, 31 January–2 February 2018; pp. 137–142. [Google Scholar] [CrossRef]
  16. Mohammed, A.; Schmidt, B.; Wang, L. Energy-efficient robot configuration for assembly. J. Manuf. Sci. Eng. 2017, 139, 051007. [Google Scholar] [CrossRef]
  17. Ghungrad, S.; Haghighi, A. Three-dimensional spatial energy-quality map construction for optimal robot placement in multi-robot additive manufacturing. Robot. Comput.-Integr. Manuf. 2024, 88, 102735. [Google Scholar] [CrossRef]
  18. Zbiss, K.; Kacem, A.; Santillo, M.; Mohammadi, A. Automatic Collision-Free Trajectory Generation for Collaborative Robotic Car-Painting. IEEE Access 2022, 10, 9950–9959. [Google Scholar] [CrossRef]
  19. Arrais, R.; Costa, C.M.; Ribeiro, P.; Rocha, L.F.; Silva, M.; Veiga, G. On the development of a collaborative robotic system for industrial coating cells. Int. J. Adv. Manuf. Technol. 2021, 115, 853–871. [Google Scholar] [CrossRef]
  20. Tavares, P.; Costa, C.M.; Rocha, L.; Malaca, P.; Costa, P.; Moreira, A.P.; Sousa, A.; Veiga, G. Collaborative welding system using BIM for robotic reprogramming and spatial augmented reality. Autom. Constr. 2019, 106, 102825. [Google Scholar] [CrossRef]
  21. Hassan, M.; Liu, D.; Paul, G. Collaboration of multiple autonomous industrial robots through optimal base placements. J. Intell. Robot. Syst. 2018, 90, 113–132. [Google Scholar] [CrossRef]
  22. Akella, S.; Hutchinson, S. Coordinating the motions of multiple robots with specified trajectories. In Proceedings of the Proceedings 2002 IEEE International Conference on Robotics and Automation (Cat. No.02CH37292), Washington, DC, USA, 11–15 May 2002; Volume 1, pp. 624–631. [Google Scholar] [CrossRef]
  23. Chiddarwar, S.S.; Ramesh Babu, N. Conflict free coordinated path planning for multiple robots using a dynamic path modification sequence. Robot. Auton. Syst. 2011, 59, 508–518. [Google Scholar] [CrossRef]
  24. Vosniakos, G.C.; Matsas, E. Improving feasibility of robotic milling through robot placement optimisation. Robot. Comput.-Integr. Manuf. 2010, 26, 517–525. [Google Scholar] [CrossRef]
  25. Hassan, M.; Liu, D.; Paul, G. Modeling and stochastic optimization of complete coverage under uncertainties in multi-robot base placements. In Proceedings of the 2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Daejeon, Republic of Korea, 9–14 October 2016; pp. 2978–2984. [Google Scholar] [CrossRef]
  26. Doan, N.C.N.; Lin, W. Optimal robot placement with consideration of redundancy problem for wrist-partitioned 6R articulated robots. Robot. Comput.-Integr. Manuf. 2017, 48, 233–242. [Google Scholar] [CrossRef]
  27. Kalawoun, R.; Lengagne, S.; Mezouar, Y. Optimal robot base placements for coverage tasks. In Proceedings of the 2018 IEEE 14th International Conference on Automation Science and Engineering (CASE), Munich, Germany, 20–24 August 2018; pp. 235–240. [Google Scholar] [CrossRef]
  28. Fan, Q.; Gong, Z.; Tao, B.; Gao, Y.; Yin, Z.; Ding, H. Base position optimization of mobile manipulators for machining large complex components. Robot. Comput.-Integr. Manuf. 2021, 70, 102138. [Google Scholar] [CrossRef]
  29. Mutti, S.; Nicola, G.; Beschi, M.; Pedrocchi, N.; Tosatti, L.M. Towards optimal task positioning in multi-robot cells, using nested meta-heuristic swarm algorithms. Robot. Comput.-Integr. Manuf. 2021, 71, 102131. [Google Scholar] [CrossRef]
  30. Spong, M.W.; Hutchinson, S.; Vidyasagar, M. Robot Modeling and Control; John Wiley & Sons: Hoboken, NJ, USA, 2020. [Google Scholar]
  31. ABB Company. Robotics: Product Specification: IRB 4600. Technical Report, 2020. Document ID: 3HAC032885-001, Revision: AB. Available online: https://library.abb.com/d/ROB0109DE_B (accessed on 7 January 2024).
  32. Becroft, S.A. Automated painting for aerospace, challenges, newer technologies and lessons learned. Sae Int. J. Aerosp. 2012, 5, 22–30. [Google Scholar] [CrossRef]
  33. Weissling, D.H.; Wiedmann, S.L.; Solomon, D.P. A large-scale robotic system for depainting advanced fighter aircraft. Sae Int. J. Aerosp. 2011, 4, 1125–1132. [Google Scholar] [CrossRef]
  34. Gleeson, D.; Jakobsson, S.; Salman, R.; Ekstedt, F.; Sandgren, N.; Edelvik, F.; Carlson, J.S.; Lennartson, B. Generating optimized trajectories for robotic spray painting. IEEE Trans. Autom. Sci. Eng. 2022, 19, 1380–1391. [Google Scholar] [CrossRef]
  35. Corporation, F.A. FANUC R-2000iC/220U. 2021. Available online: https://www.fanucamerica.com/products/robots/series/r-2000/r-2000ic-220u (accessed on 28 August 2021).
  36. Vafa, Z.; Dubowsky, S. The kinematics and dynamics of space manipulators: The virtual manipulator approach. Int. J. Robot. Res. 1990, 9, 3–21. [Google Scholar] [CrossRef]
  37. Cao, Y.; Lu, K.; Li, X.; Zang, Y. Accurate numerical methods for computing 2d and 3d robot workspace. Int. J. Adv. Robot. Syst. 2011, 8, 76. [Google Scholar] [CrossRef]
  38. Bohigas, O.; Manubens, M.; Ros, L. A complete method for workspace boundary determination on general structure manipulators. IEEE Trans. Robot. 2012, 28, 993–1006. [Google Scholar] [CrossRef]
  39. Guan, Y.; Yokoi, K.; Zhang, X. Numerical methods for reachable space generation of humanoid robots. Int. J. Robot. Res. 2008, 27, 935–950. [Google Scholar] [CrossRef]
  40. Khachiyan, L.G. Rounding of polytopes in the real number model of computation. Math. Oper. Res. 1996, 21, 307–320. [Google Scholar] [CrossRef]
  41. Todd, M.J.; Yıldırım, E.A. On Khachiyan’s algorithm for the computation of minimum-volume enclosing ellipsoids. Discret. Appl. Math. 2007, 155, 1731–1744. [Google Scholar] [CrossRef]
  42. Peidró, A.; Reinoso, Ó.; Gil, A.; Marín, J.M.; Payá, L. An improved Monte Carlo method based on Gaussian growth to calculate the workspace of robots. Eng. Appl. Artif. Intell. 2017, 64, 197–207. [Google Scholar] [CrossRef]
  43. Nesterov, Y. Rounding of convex sets and efficient gradient methods for linear programming problems. Optim. Methods Softw. 2008, 23, 109–128. [Google Scholar] [CrossRef]
  44. Moshtagh, N. Minimum Volume Enclosing Ellipsoid. MATLAB Central File Exchange. 2021. Available online: https://www.mathworks.com/matlabcentral/fileexchange/9542-minimum-volume-enclosing-ellipsoid (accessed on 20 July 2021).
  45. Pavešić, P. Complexity of the forward kinematic map. Mech. Mach. Theory 2017, 117, 230–243. [Google Scholar] [CrossRef]
  46. Huang, K.; Su, Y.H.; Khalil, M.; Melesse, D.; Mitra, R. Sampling of 3DOF robot manipulator joint-limits for haptic feedback. In Proceedings of the 2019 IEEE 4th International Conference on Advanced Robotics and Mechatronics (ICARM), Toyonaka, Japan, 3–5 July 2019; pp. 690–696. [Google Scholar] [CrossRef]
  47. Orthey, A.; Chamzas, C.; Kavraki, L.E. Sampling-based motion planning: A comparative review. Annu. Rev. Control Robot. Auton. Syst. 2023, 7, 285–310. [Google Scholar] [CrossRef]
  48. Rabiei, N.; Saleeby, E.G. On intersection volumes of confidence hyper-ellipsoids and two geometric Monte Carlo methods. Monte Carlo Methods Appl. 2021, 27, 153–167. [Google Scholar] [CrossRef]
  49. Fu, P.; Walton, O.R.; Harvey, J.T. Polyarc discrete element for efficiently simulating arbitrarily shaped 2D particles. Int. J. Numer. Methods Eng. 2012, 89, 599–617. [Google Scholar] [CrossRef]
  50. Han, K.; Feng, Y.; Owen, D. Polygon-based contact resolution for superquadrics. Int. J. Numer. Methods Eng. 2006, 66, 485–501. [Google Scholar] [CrossRef]
  51. Hughes, G.B.; Chraibi, M. Calculating ellipse overlap areas. Comput. Vis. Sci. 2012, 15, 291–301. [Google Scholar] [CrossRef]
  52. Safeea, M.; Neto, P.; Bearee, R. On-line collision avoidance for collaborative robot manipulators by adjusting off-line generated paths: An industrial use case. Robot. Auton. Syst. 2019, 119, 278–288. [Google Scholar] [CrossRef]
  53. Biswas, S.; Hazra, R. Robust edge detection based on Modified Moore-Neighbor. Optik 2018, 168, 931–943. [Google Scholar] [CrossRef]
  54. Kim, I.S.; Lee, W.K.; Hong, Y.D. Simple global path planning algorithm using a ray-casting and tracking method. J. Intell. Robot. Syst. 2018, 90, 101–111. [Google Scholar] [CrossRef]
  55. Zengin, R.S.; Sezer, V. A novel point inclusion test for convex polygons based on Voronoi tessellations. Appl. Math. Comput. 2021, 399, 126001. [Google Scholar] [CrossRef]
  56. Gembicki, F.; Haimes, Y. Approach to performance and sensitivity multiobjective optimization: The goal attainment method. IEEE Trans. Autom. Control. 1975, 20, 769–771. [Google Scholar] [CrossRef]
Figure 1. Mutli-robot car-painting base placement problem. The base positions directly impact the quality of vehicle paint coverage and the possibility of robot collisions during painting. For instance, robots placed on golden diamonds are more prone to collisions. On the other hand, robots placed on red diamonds will not be able to ensure complete vehicle paint coverage.
Figure 1. Mutli-robot car-painting base placement problem. The base positions directly impact the quality of vehicle paint coverage and the possibility of robot collisions during painting. For instance, robots placed on golden diamonds are more prone to collisions. On the other hand, robots placed on red diamonds will not be able to ensure complete vehicle paint coverage.
Applsci 14 08614 g001
Figure 4. Algorithm 1 generates a 3D point cloud and a minimum volume enclosing ellipsoid (MVEE) for each of the robotic arms.
Figure 4. Algorithm 1 generates a 3D point cloud and a minimum volume enclosing ellipsoid (MVEE) for each of the robotic arms.
Applsci 14 08614 g004
Figure 5. Intuition behind the first cost function formulation. The ellipsoids in the plots are the MVEEs that closely fit the reachable workspace of the robot forearms. The larger the volumes of intersection in-between the ellipsoids, the higher the possibility of robot collision during painting. Larger intersection volumes between the 3D ellipsoids, in turn, correspond to larger overlap areas of their projections on the factory floor.
Figure 5. Intuition behind the first cost function formulation. The ellipsoids in the plots are the MVEEs that closely fit the reachable workspace of the robot forearms. The larger the volumes of intersection in-between the ellipsoids, the higher the possibility of robot collision during painting. Larger intersection volumes between the 3D ellipsoids, in turn, correspond to larger overlap areas of their projections on the factory floor.
Applsci 14 08614 g005
Figure 6. The planar ellipse overlap areas are employed to define the first cost function, which quantifies the possibility of collision in-between the robotic arms during painting.
Figure 6. The planar ellipse overlap areas are employed to define the first cost function, which quantifies the possibility of collision in-between the robotic arms during painting.
Applsci 14 08614 g006
Figure 7. The algorithm proposed by [51] distinguishes between a variety of different ellipse intersection cases. It computes the overlap area of any two general ellipses without resorting to proxy curves.
Figure 7. The algorithm proposed by [51] distinguishes between a variety of different ellipse intersection cases. It computes the overlap area of any two general ellipses without resorting to proxy curves.
Applsci 14 08614 g007
Figure 8. Boundary detection in the vehicle’s CAD model and creation of the grip map representations.
Figure 8. Boundary detection in the vehicle’s CAD model and creation of the grip map representations.
Applsci 14 08614 g008
Figure 9. The overall proposed solution to the multi-robot car-painting base placement problem.
Figure 9. The overall proposed solution to the multi-robot car-painting base placement problem.
Applsci 14 08614 g009
Figure 10. Snapshots of multi-robot car painting (a homogeneous team of robots) utilizing the optimal robot base positions obtained from our base placement algorithm.
Figure 10. Snapshots of multi-robot car painting (a homogeneous team of robots) utilizing the optimal robot base positions obtained from our base placement algorithm.
Applsci 14 08614 g010
Figure 11. Snapshots of multi-robot car painting (a homogeneous team of robots) utilizing non-optimal base positions.
Figure 11. Snapshots of multi-robot car painting (a homogeneous team of robots) utilizing non-optimal base positions.
Applsci 14 08614 g011
Figure 12. The normalized manipulability of the robotic arms during collaborative vehicle painting: (left) optimal and (right) non-optimal base positions. The percentage values on each bar in the histograms provide the painting duration during which the robot manipulability belonged to a certain interval. In particular, a percentage value of p 0 % on a bar located in the interval [ σ 1 , σ 2 ] for the ith robot, 1 i 3 , indicates that the robot had a normalized manipulability value belonging to the interval [ σ 1 , σ 2 ] during p 0 % of the painting task duration.
Figure 12. The normalized manipulability of the robotic arms during collaborative vehicle painting: (left) optimal and (right) non-optimal base positions. The percentage values on each bar in the histograms provide the painting duration during which the robot manipulability belonged to a certain interval. In particular, a percentage value of p 0 % on a bar located in the interval [ σ 1 , σ 2 ] for the ith robot, 1 i 3 , indicates that the robot had a normalized manipulability value belonging to the interval [ σ 1 , σ 2 ] during p 0 % of the painting task duration.
Applsci 14 08614 g012
Figure 13. Elbow singular configurations of (left) ABB IRB 4600 and (right) FANUC R-2000iC robotic arms.
Figure 13. Elbow singular configurations of (left) ABB IRB 4600 and (right) FANUC R-2000iC robotic arms.
Applsci 14 08614 g013
Figure 14. Snapshots of multi-robot car painting (a heterogeneous team of robots) utilizing the optimal robot base positions obtained from our base placement algorithm.
Figure 14. Snapshots of multi-robot car painting (a heterogeneous team of robots) utilizing the optimal robot base positions obtained from our base placement algorithm.
Applsci 14 08614 g014
Figure 15. Snapshots of multi-robot car painting (a heterogeneous team of robots) utilizing non-optimal base positions.
Figure 15. Snapshots of multi-robot car painting (a heterogeneous team of robots) utilizing non-optimal base positions.
Applsci 14 08614 g015
Table 1. A sample overview of robotic base placement algorithms proposed in the literature.
Table 1. A sample overview of robotic base placement algorithms proposed in the literature.
ReferenceNumber of RobotsAlgorithmBase Placement Objective
[24] Vosniakos and Matsas (2010)SingleGenetic AlgorithmOptimizing manipulability and torque profiles
[21,25] Hassan et al. (2016, 2018)MultipleHybrid: Genetic Algorithm and simulated annealingMaximizing the coverage while minimizing the makespan
[26] Doan and Li (2017)SingleParticle Swarm OptimizationMaximizing reachability while avoiding singularities and collision
[27] Kalawoun et al. (2018)MultipleHybrid: greedy, genetic, and simulated annealingMinimizing the number of robots while maximizing the coverage
[28] Fan et al. (2021)SingleSequential quadratic programmingMaximizing the stiffness performance index while avoiding singularities and collision
[29] Mutti et al. (2021)MultipleWhale and Ant Colony OptimizationEnsuring kinematic feasibility while checking for collision-free trajectories
[14] De Caro et al. (2022)SingleGenetic AlgorithmMaximizing the available workspace
[17] Ghungrad and Haghighi (2024)MultipleMetaheuristic SearchEnergy efficiency in additive manufacturing
Table 2. Impact of robotic base positions on paint coverage and manipulability with the homogeneous robotic team consisting of ABB IRB 4600 robots. The gray entries demonstrate the results obtained from our proposed optimal base placement algorithm.
Table 2. Impact of robotic base positions on paint coverage and manipulability with the homogeneous robotic team consisting of ABB IRB 4600 robots. The gray entries demonstrate the results obtained from our proposed optimal base placement algorithm.
Base Positions ( p x , p y ) for R 1 | R 2 | R 3 (Units: [m])Overlap Areas (Units: [m2])Paint Coverage (%)Mean Normalized Manipulability (NM)NM Standard Deviation
( 4.5 , 1 ) | ( 0 , 0 ) | ( 4.5 , 1 ) 056.10.24760.1902
( 3.5 , 0 ) | ( 0 , 0 ) | ( 3.5 , 0 ) 066.70.26690.2283
( 3.0 , 0 ) | ( 0 , 0 ) | ( 3.0 , 0 ) 0.492980.30.28310.2340
( 2.5 , 1 ) | ( 0 , 0 ) | ( 2.5 , 1 ) 2.0598.50.69320.0974
( 2 , 1 . 3 ) | ( 0 , 0 ) | ( 2 , 1 . 3 ) 4.121000.77170.0919
( 1.5 , 0 ) | ( 0 , 0 ) | ( 1.5 , 0 ) 9.1390.90.40530.2428
( 1.0 , 1 ) | ( 0 , 0 ) | ( 1.0 , 1 ) 10.8892.40.72110.1317
( 1.0 , 0 ) | ( 0 , 0 ) | ( 1.0 , 0 ) 12.9683.30.48860.2719
Table 3. Computational times.
Table 3. Computational times.
Base Positions ( p x , p y ) for R 1 | R 2 | R 3 (Units: [m])Overlap Area Computation Time (Units: [s ])Paint Coverage Computation Time (Units: [s])Base Placement Algorithm Computation Time (Units: [s])
( 4.5 , 1 ) | ( 0 , 0 ) | ( 4.5 , 1 ) 0.24040.3550-
( 3.5 , 0 ) | ( 0 , 0 ) | ( 3.5 , 0 ) 0.24910.3538-
( 3.0 , 0 ) | ( 0 , 0 ) | ( 3.0 , 0 ) 0.25880.3566-
( 2.5 , 1 ) | ( 0 , 0 ) | ( 2.5 , 1 ) 0.24990.3664-
( 2 , 1.3 ) | ( 0 , 0 ) | ( 2 , 1.3 ) 0.29420.3664197.24
( 1.5 , 0 ) | ( 0 , 0 ) | ( 1.5 , 0 ) 0.23630.3705-
( 1.0 , 1 ) | ( 0 , 0 ) | ( 1.0 , 1 ) 0.29750.3897-
( 1.0 , 0 ) | ( 0 , 0 ) | ( 1.0 , 0 ) 0.28250.3671-
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Zbiss, K.; Kacem, A.; Santillo, M.; Mohammadi, A. Automatic Optimal Robotic Base Placement for Collaborative Industrial Robotic Car Painting. Appl. Sci. 2024, 14, 8614. https://doi.org/10.3390/app14198614

AMA Style

Zbiss K, Kacem A, Santillo M, Mohammadi A. Automatic Optimal Robotic Base Placement for Collaborative Industrial Robotic Car Painting. Applied Sciences. 2024; 14(19):8614. https://doi.org/10.3390/app14198614

Chicago/Turabian Style

Zbiss, Khalil, Amal Kacem, Mario Santillo, and Alireza Mohammadi. 2024. "Automatic Optimal Robotic Base Placement for Collaborative Industrial Robotic Car Painting" Applied Sciences 14, no. 19: 8614. https://doi.org/10.3390/app14198614

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