In this section, we explain the method for deciding the proper delivery timing. By delivering the bumper with the proper timing, our system reduces worker waittime and improves work efficiency without disturbing assembly tasks. Pattern recognition with a statistical model based on prior information has been used for modeling such decision making. In particular, this problem is regarded as binary classification. Solving such a classification problem typically entails machine learning techniques such as neural network [12, 13] or support vector machine [14, 15]. In this study, we instead emphasize the generalization of the worker model. We analyze the worker information based on the logistic regression model and determine the significant model parameters to avoid the overfitting problem.
Definition of model variables
Many studies have addressed the handover between human and robot. Strabala et al. [16] grouped the handover task into the three processes: delivery process, signal process, and handover process. They analyzed the handover motion between humans. Then they applied the desired handover timing, robot configuration, and the approach based on the analysis results to the handover task between the worker and the robot. Basili et al. [17] focused on the transfer part in the handover between the humans. They performed a numerical analysis of the handover including the distance and velocity. Cakmak et al. [18] focused on the changes in the robot arm configuration at the start of the handover. They discussed the effect of the ambiguity of the robot configuration during the handover task and summarized the design process for a feasible robot configuration.
These studies used the following information to decide the handover timing.

a.
Direction of the human’s gaze.

b.
Orientation of the human’s body.

c.
Relative position between the human and the robot (endeffector).

d.
Elapsed time.

e.
Configuration of the robot while holding the object.

f.
Actions and signals by the human.
In this system, we use (a), (b), and (c) to determine the handover timing. We do not use (d) because of the variance in the work completion time among the workers. We also do not use (e) because it requires a priori consideration of the feasible handover configurations. Though (f) provides valuable information to directly understand the worker’s intentions, we do not use it because it increases unnecessary work. Consequently, we use the following input variables for this system.

Worker’s position \((M_x, M_y)\)

Worker’s velocity \((V_x, V_y)\)

Worker’s body orientation \((O_x, O_y, O_z)\)

Worker’s face orientation \((F_x, F_y, F_z)\)
To measure these variables, we use the Kinect v2, which is one of the most popular RGBD sensors because of its usability and versatility. It can be used to capture details of the human face and body with high precision. In this system, worker’s mass position \((M_x, M_y)\), orientation \((O_x, O_y, O_z)\) and face orientation \((F_x, F_y, F_z)\) are obtained from Kinect. The worker’s velocity \((V_x, V_y)\) is calculated from the worker’s mass position.
Logistic regression model
The logistic regression model is widely used in various fields because of its ability to represent twostate occurrence probability using continuous values. This makes it suitable for numerical decision modeling [19]. Miravitlles et al. [20] used logistic regression model to analyze risk factors of hospital admission and exacerbation for chronic obstructive pulmonary disease patients. Merlo et al. [21] analyzed social epidemiology with logistic regression model. In this system, we apply logistic regression analysis to statistical decision making of the robot to determine the proper delivery timing.
Here we describe the general case of the logistic regression model. Let \(\varvec{x}=(x_1,\ldots , x_r)\) be the variables for describing an occurrence of a twostate phenomenon and y be the dependent variable for describing the result of an occurrence, where \(y=1\) signifies occurrence and \(y=0\) signifies nonoccurrence. The vector of nth sample data \((n=1,\ldots ,N)\) used in the logistic regression model is defined as
$$\begin{aligned} (y_n,x_{1n},\ldots ,x_{rn}) \end{aligned}$$
(2)
where N is the total number of samples. Using the logistic function, the conditional probability \(p(y=1\varvec{x})\) is expressed as follows.
$$\begin{aligned} p(y=1\varvec{x})=\frac{\mathrm{exp}(Z)}{1+\mathrm{exp}(Z)} \end{aligned}$$
(3)
where Z is the linear multiple regression equation representing the influence of r variables and is given by
$$\begin{aligned} Z=\beta _0+\beta _1x_1+\cdots +\beta _rx_r \end{aligned}$$
(4)
where \(\beta _i\) is the ith partial regression coefficient. The logistic regression model is generated by estimating the partial regression coefficients \({\varvec{\beta }} = (\beta _0, \ldots , \beta _r)\) from the sample data. The maximum likelihood estimation method is generally used to calculate these coefficients. The likelihood function is as follows:
$$\begin{aligned} \mathrm{like}(\varvec{\beta })=\prod _{n=1}^N p(\varvec{x}_n)^{y_n}(1p(\varvec{x}_n))^{1y_n} \end{aligned}$$
(5)
Obtaining the maximum value of this likelihood function requires partial differentiation of the log likelihood \(L(\varvec{\beta })=\log (\mathrm{like}(\varvec{\beta }))\) by \(\varvec{\beta }\) and solving the following simultaneous equations.
$$\begin{aligned} {\left\{ \begin{array}{ll} \frac{dL}{d\beta _0} = \sum\limits _{n=1}^N (y_np(\varvec{x}_n)) = 0 &{} \\ \frac{dL}{d\beta _s} = \sum\limits_{n=1}^N x_{ns}(y_np(\varvec{x}_n)) = 0 &{} \end{array}\right. } \end{aligned}$$
(6)
The logistic regression model is generated by calculating the coefficients \(\varvec{\beta }\) from the above equations.
Variable selection
When multiple regression models such as logistic regression model are used, the overfitting problem should be considered. In multiple regression analysis, the prediction performance tends to improve as the number of the input parameters increases. However, with too many degrees of freedom, the model will lose its ability to deal with newly observed data. Avoiding this overfitting problem requires decreasing the number of parameters included in the model and simplifying it without compromising its prediction accuracy. The Akaike information criterion (AIC [22]) is often used to select the input parameters effectively. AIC is defined as
$$\begin{aligned} \mathrm{AIC}=2\log p(\varvec{Y}\tilde{\theta },M)+2K \end{aligned}$$
(7)
where M is the target model, \(\varvec{Y}\) is the observed data, \(\tilde{\theta }\) are estimated as the most probable parameters for the target model M, and K is the number of input variables. AIC is used when comparing several models and it is convenient because of its simple calculation and clear interpretation. A model with a smaller AIC is regarded as the better model for explaining a phenomenon.
We use the stepwise procedure to select the significant variables. The stepwise procedure is a common approach for selecting explanatory variables based on criteria such as the AIC in multiple regression analysis. The next most significant variable is added to the target model until the AIC stops decreasing. Forming the model to explain the worker’s state just before the handover with only these significant variables improves the generalization performance of the model.