3.1. Simulated Annealing–Genetic Algorithm
When the genetic algorithm is applied to the calculation of optimization problems, its initial convergence speed is fast because it is based on the population. However, with an increased evolution order, the convergence speed will gradually become slower. On the other hand, the simulated annealing method gradually converges with decreasing temperature of the annealing process through the slow cooling mechanism and sufficient iterations. In contrast, the convergence speed of the simulated annealing method is worse than that of the genetic algorithm at the beginning of the algorithm. However, the simulated annealing method has the ability to search quickly, which the genetic algorithm does not have. The simulated annealing method may get the chance to accept poor solutions through disturbances, and with the gradual decrease of temperature, the chance of the poor solution being accepted becomes smaller and smaller, until the better solution is accepted. Therefore, some hybrid genetic algorithms and simulated annealing methods are proposed to improve efficiency [
3,
15,
16].
In order to improve the efficiency of the genetic algorithm by the fast search of the simulated annealing method, Adler [
17] proposed combining the machine function of the simulated annealing method with the selection and mutation operators of the genetic algorithm. The simulated annealing–genetic algorithm (SAGA) proposed by Esbensen et al. [
18] is an SA mutation, and the algorithm gradually reduces the population. This method, like Adler’s, changes the operation mode of the original genetic algorithm. Lin et al. [
19] proposed the annealing–genetic (AG) algorithm, which is divided into the GA and SA stage in each generation. There are also hybrid methods to improve SA efficiency by using mating operators with the ability to communicate between individuals in the GA, such as PGSA proposed by Mahfoud et al. [
20] and GSA proposed by Koakutsu [
21].
The simulated annealing–genetic algorithm, which is a hybrid of the genetic algorithm and the simulated annealing method, as shown in the
Figure 2, is proposed in this paper [
3,
15,
16]. It improves the ability of the genetic algorithm to search for regions by using the characteristics of the simulated annealing method, which can make small disturbances in adjacent regions of the solution [
22,
23].
3.2. Steps of the Simulated Annealing–Genetic Algorithm by Fractional Factorial Design
FFD-SAGA can assist in determining the number and optimal level of key factors, as shown in Equations (1)–(11). Grey relational analysis can help in evaluating consumers who use smart lockers often, in terms of ranking the key service factors of the lockers, as shown in Equations (12)–(17). Grey multiple attribute decision-making can analyze the consumer groups that use smart lockers most frequently, as in Equations (18)–(24).
Fractional factorial design can analyze the advantages of the best factor combination, and can be combined with the genetic algorithm and simulated annealing algorithm in this paper to improve the search ability of the original algorithm. When the traditional genetic algorithm does the mating operation, it will randomly select two individuals for genetic mating. Common ones such as single-point and arithmetic mating have a common feature; that is, the offspring produced after mating cannot be guaranteed. It is better than the parent because it generates offspring in a random manner. In order to improve this shortcoming, this paper uses a partial factorial design method to replace the traditional mating method, so that the solution space generated by the two randomly selected parents can be sampled uniformly, and then the best offspring in this range can be analyzed.
We assume that when solving the problem of three variable dimensions, each variable is equivalent to a factor in the orthogonal table. Using FFD-GA is equivalent to considering a point in the search space generated by two parents, and in these
points, we select the best and second best individuals as two offspring. As multiple individuals are considered at the same time and the best and second best are selected, compared to the traditional random exchange of parental genes, there is no guarantee that the offspring will be better than the parent’s method; it is systematic and efficient (
Section 1,
Section 2 and
Section 3, step 2, below). The perturbation of the traditional simulated annealing algorithm is to randomly generate a perturbed solution in the searched solution space and use the probability function to determine whether to accept it as a new solution. This paper proposes that the partial factorial design method has the advantage of systematically inferring the best factor combination to find the best solution in the solution space generated by the current and perturbed solutions, and then judge whether to accept it as a new solution through the probability function. This paper refers to it as fractional factorial design–simulated annealing (FFD-SA). FFD-SA improves the traditional SA without systematic random disturbances, but uses systematic disturbances to improve the search performance of the algorithm (
Section 3, steps 3–5, below) [
3,
15,
16,
22,
23].
By combining the fractional factor design method with the mating operator of the simulated annealing–genetic algorithm, the global optimal solution can be obtained. We call it FFD-SAGA. FFD-SAGA can be regarded as FFD-GA combined with SA because of the added fractional factorial design method (in the same way as FFD-GA). The steps of the simulated annealing–genetic algorithm by fractional factorial design are as follows [
3,
15,
16,
22,
23]:
- (1)
Define the objective function
The objective function of the problem is defined as and the individual variable direction in the population is set as . Usually, is a nonlinear function and the search space is the dimensional hyperplane space of .
- (2)
Generate an orthogonal table of FFD
According to the size of the variable vector dimension, the corresponding orthogonal table with columns and lines can be generated. The first columns are used. Here, N is the size of the variable vector dimension and .
- (3)
Combine FFD with the mating operator of GA
Assuming that GA randomly selects two individuals in the mating operator, and :
Step 1. The two horizontal values “−” and “+” in the FFD respectively represent the genes of and .
Step 2. Each line of the FFD judges the genes of , , and the kth variables according to the corresponding level value. If the level value corresponding to this variable is “−,” it means that it is a gene of , and such value is expressed as ; if the corresponding level value is “+,” it is a gene of , expressed as .
Step 3. Calculate the value of the target function for each line: . The corresponding variable vector is , and the variable vector is substituted into the objective function to obtain the objective function value .
Step 4. Calculate the main effect of each line and determine the level value with the greater contribution in each line. When the level value of the ith line in the kth column is j, , otherwise , where j is “+”or “−.” Next, compare the main effects of the calculated level values in each column. When the problem is to maximize the adaptation function, the level values with larger main effects will contribute more. On the contrary, when the problem is to minimize the adaptation function, the level value of the smaller main effect will contribute more.
Step 5. The variables corresponding to the N main effect with greater contribution are the optimal factor combination and are taken as the first offspring. Then, the main effect difference for each column is calculated to find the one with the smallest value and the variable corresponding to the column and the same level value as the first offspring just generated as the variable of the second offspring, while the other variables of the second offspring are the same as the first offspring.
Equation (1): Calculate the main effect for each column and find the level value with the larger contribution in each column [
16]:
When the level value of row
in column
is
,
; otherwise,
, where
j is “+” or “−”; M represents the number of experiments; and
is the output of the orthogonal array. Regarding the comparison of the main effects of the two level values calculated in each column, if the question is to maximize the fitness function, then the value with a larger main effect contributes more; conversely, if the question is to minimize the fitness function, then the value with a smaller main effect contributes more. The level values of the factors corresponding to the main effects with a larger contribution in each column make up the combination of optimal factors. This paper uses the following example to illustrate FFD-SAGA and how to apply FFD to infer a new solution [
3,
15,
16,
22,
23].
3.3. Utility Model of Service Level Agreement
After performing the discovery process from step 1 to step 9, we can strengthen the relationship between candidate solutions and obtain a ranking order. The candidate solutions are multi-user services provided by service providers. Therefore, users can obtain appropriate multi-user services through such ranking information [
24,
25].
Through the normalization of service items based on the service level agreement, utility models can be created to indicate users’ satisfaction in receiving multi-user services [
24,
25].
is used to represent real value of multi-user service that user t obtains from service provider on issue . The utility value is normalized to fall within and is used to represent utility value , which the user obtains from multi-user service on issue . If the service provider offers high-quality service, the utility value obtained by the user will approach 1. Such relation can be represented as .
When users face multi-user service, the value of expected service issues of interest can be obtained. Given the variety of service issues that users are interested in, a multi-criterion decision analysis method is required to select a suitable multi-user service from a large number of services. In this study, a modified version of the ELECTRE method was adopted to find an appropriate multi-user service. The overall method consists of nine steps to determine the ranking order for the selection of a multi-user service [
24,
25]:
Step 1. Normalize the decision matrix. If
multi-user services are involved in
service quality assessment criteria, decision matrix
will be normalized based on the service level agreement and utility model. The normalized decision matrix is shown in Equation (2):
Step 2. Multiply each row in the normalized decision matrix by the relevant weight. A weight will be assigned for each service quality assessment item, and all weighted values will form weighted matrix
, as shown in Equation (3):
Normalized decision matrix Q is multiplied by its weighted matrix W to obtain weighted normalized decision matrix
, as shown in Equation (4):
Step 3. Determine the consistent and nonconsistent sets according to Equation (5):
Step 4. Calculate consistent matrix
as shown in Equation (6):
Step 5. Calculate nonconsistent matrix
using Equation (7), where
is a set containing all service qualities and
. The consistent matrix can be denoted as
.
Step 6. Calculate modified consistent matrix
according to Equation (8):
Step 7. Calculate modified weighted aggregation matrix
(the Hadamard product of
and
) using Equation (9):
Step 8. Calculate modified aggregation dominant matrix
by using the maximum value of each row,
, as shown in Equation (10):
In order to identify a suitable solution, we rank
in ascending order:
. Threshold
is a set of values between minimum value
and maximum value
. If the value of
is smaller than threshold value
, it will be replaced by 0, otherwise it remains 1. We can obtain modified aggregation dominant matrix
, as shown in Equation (11):
Step 9. Finally, modify aggregation dominant matrix . When equals 1, it means that the preferred solution is better than solution . We can therefore eliminate solution , denoted as .
3.4. Grey Relational Analysis—Key Factor Sequencing
Grey system theory, as proposed by Professor Ju-long Deng in 1982, is aimed at describing the uncertainty of system models and the incompleteness of information to conduct information relational analysis and model building. The theory discusses and understands systems by means of prediction and decision-making. Incomplete system information is both the basic feature and the main determining factor of grey theory. In the grey system, information comprises two parts: the immensurable part expressing information visualization, and the measurable part, or the part of information data, which expresses the information scale. Grey relational analysis is aimed at the systems in daily life, such as social systems, economic systems, etc. There are various relationships among these systems, such as causal relationships; some of the relationships are known, while some are unknown or partially known. Hence, how to mine, analyze, and further understand the relationships between all systems is the key to system analysis [
15,
26].
Step 1. Normalize the original data, as shown in Equation (12):
Step 2. Assign the standard sequence and calculate the difference sequence, as shown in Equation (13):
Step 3. Solve the maximum difference
and minimum difference
, as shown in Equations (14) and (15):
Step 4. Calculate grey relational coefficient
, as shown in Equation (16):
Step 5. Calculate the grey relational degree
of all sequences and the standard sequence, as shown in Equation (17):
Step 6. Put in order based on the grey relational degree.
3.6. Effect Measure
All attributes are required to be considered in multiple attribute decisions, regardless of which attribute is the analysis objective and which is a relevant factor. Hence, a virtual standard sequence must be built to calculate the grey relational coefficient
. The virtual standard sequence comprises the optimal
sij of the evaluation results under all attributes. The definition of the optimum solution must be determined as maximizing, minimizing, or minimizing the deviation to the target by considering the target of the attribute. The effect measure
rij represents the correlativity between all elements and the virtual standard sequences in the progression
corresponding to all
ai attributes. The calculation method of the effect measure is to maximize, minimize, or minimize the deviation to the target, based on the target of the attribute, which are differentiated as a ceiling effect, a floor effect, and a specific center effect measure. They are described as follows [
15,
26].
The ceiling effect measure applies to the requirement of maximizing the target effect, that is, the larger the better, such as interests and outputs. Hence, the largest result
of all solutions under attribute
ai is taken as the corresponding element of the virtual standard sequence. The ceiling effect measure is defined as Equation (18):
The floor effect measure applies to the requirement of minimizing the target effect, that is, the smaller the better, such as resource inputs and variations. Hence, the smallest result
of all solutions under attribute
ai is taken as the corresponding element of the virtual standard sequence. The floor effect measure is defined as Equation (19):
The specific center effect measure applies to the condition requiring the target to be near a certain intended target, such as weather or temperature. Hence, target
under attribute
ai is taken as the corresponding element of the virtual standard sequence. The specific center effect measure is defined as Equation (20):
As seen above, the value of effect measure rij is between 0 and 1, and the larger the value, the better the effect of solution bj under attribute ai.
3.8. Decision Criterion
After the decision matrix is formed, the optimal solution can be selected according to the decision criterion. The decision criterion for grey multiple attribute decision analysis is to select the maximum effect measure in attribute
ai* showing that, under consideration of attribute
ai*,
bj is the optimal decision solution. As the maximum element is sought in all lines, it is also known as a line decision, as shown in Equation (22) [
15,
26]:
To consider the comprehensive result
of solution
in all attributes, the relative weight
can be incorporated, as shown in Equation (23), where the determination of
is comprehensively scored based on linearly weighted summation, and the comprehensive result
is calculated, as shown in Equation (24) [
15,
26]:
where
is the total items of the attribute and
is the attribute factor ordering; and
Finally, the maximum solution under the comprehensive result of summation is the optimal solution.