# Tourist Demand Prediction Model Based on Improved Fruit Fly Algorithm

Authors: Chuangle Guo; Wei Shang
Journal: Security and Communication Networks
 (2021)

---

## Abstract

To accurately predict the development and change trend of the future, tourism market can effectively improve the planning and purpose of tourism development. In order to improve the accuracy of tourist demand prediction, this paper studies the tourist demand prediction model based on improved fruit fly algorithm. Aiming at the optimization defects of the traditional fruit fly optimization algorithm (FOA), the model introduces two concepts of sensitivity and pheromone, improves the optimization strategy and position replacement of fruit fly, improves the diversity of fruit fly population, modifies the global optimization characteristics of the algorithm, and improves the local search ability and search efficiency of the algorithm. By combining the improved AFOA with echo state network (ESN), a two-stage combined prediction model (AAFOA-ESN) is constructed. The experimental results show that the minimum prediction error accuracy of the model is only 0.55%, which has more robust prediction effect, faster convergence speed, and higher prediction accuracy.


---

## Body

## 1. Introduction

Since the end of the 20 century, tourism has gradually become an important part of people’s lives, resulting in the development of tourism as one of the fastest growing and largest industries in the world. According to the research forecast of the world tourism organization, the number of international tourists in the world will reach 1.6 billion by 2023 and the income will exceed 2 trillion US dollars. The per capita number of trips and single consumption will maintain a high growth, and the growth of the number of tourists puts forward higher requirements for the management of tourist cities and scenic spots [1, 2]. The relevant information of tourism demand level is very important for commercial institutions and government decision-making departments. Tourism products are perishable, and their demand is affected by multiple factors such as seasons, holidays, weather, and emergencies. Improving the prediction accuracy is the research focus of tourism demand prediction [3, 4].At present, domestic and foreign scholars use “Tourism prediction” as the keyword to search in CNKI. From 2008 to now, there are a total of 13 literatures, including 2 reviews, one of which was published in 2008. This paper analyzes and summarizes in detail the literatures related to tourism forecast before 2008 and the prediction model [5]. The focus of tourism demand prediction research mainly focuses on two aspects: (1) the research of tourism revenue and (2) the research of tourism passenger flow, and the passenger flow prediction data are mainly based on the annual passenger flow data. The existing tourism demand prediction models are roughly divided into the following three categories: traditional econometric model, time series method, and artificial intelligence method [6, 7]. In 1997, Malekizadeh et al. used error correction model and time series model to predict the quarterly change of international tourism data. Their article compared the international tourism market prediction models by predicting the quarterly flow of tourists from the four major tourism markets at that time, namely, the United States, Japan, the United Kingdom, and New Zealand to Australia. The international tourism market prediction models they used include error correction model, autoregressive model, autoregressive moving average combination model, basic structure model, and time series regression model [8].The relevant information of tourism demand level is very important for commercial institutions and government decision-making departments. Moreover, the relevant information of tourism will involve safety communication issues between multiple departments. A perfect prediction model of tourist demand can reduce the interaction errors caused by communication problems. Many scholars try to use different models to improve the accuracy and timeliness of demand prediction, which can be divided into causality model, time series model, and artificial intelligence model. Wang et al. designed the tourism flow prediction model based on gradient lifting regression tree, aiming at the situation that there is no analytical solution to the minimization objective function in the model, optimized the tree generation algorithm of the original model, and used the person correlation coefficient to analyze the correlation of various influencing factors to construct the feature vector so as to realize the accurate prediction of tourism flow [9]. Wang et al. put forward the research and application of the integrated prediction model of tourist number based on singular spectrum analysis. On the basis of the first mock exam, the three models were used to model and predict the number of tourists. The SSA integrated model [10] with high accuracy and stability was constructed. Compared with the traditional algorithm, the training process of echo state network (ESN) is simple and efficient, and it can approach the dynamic system infinitely under general conditions. It is widely used in all kinds of prediction problems. However, ESN also has its own shortcomings and limitations, such as the parameters and connection weights of ESN are set randomly, and only the output layer weights are adjusted in the training process, which is easy to fall into the local optimal solution. At present, the common method is to build the ESN model when the network selects the optimal output for many times or to build the model by selecting parameters according to experience. In this regard, many scholars optimize the structure of ESN. The fruit fly optimization algorithm (FOA) proposed by pan has the advantages of low complexity, fast computing speed, and strong solving ability. It has been applied in many combinatorial optimization and continuous optimization fields. FOA has the disadvantages of low convergence accuracy and easy to fall into local extremum.In this paper, FOA with fast computing speed and strong solving ability is introduced to optimize the key parameters of ESN. Firstly, the standard FOA is improved to improve the performance of the algorithm. Then, combined with ESN, a two-stage combination prediction model, namely, adaptive fruit flow optimization algorithm-echo state network (AAFOA-ESN) is constructed. Finally, the new model is used to solve the problem of tourism demand prediction, and higher prediction accuracy is obtained. The tourism industry has a huge market space. According to the statistics of the Ministry of Culture and Tourism of China, in 2018, the number of domestic tourists reached 5.539 billion, the total number of inbound and outbound tourists reached 291 million, and the total annual tourism revenue was 5.97 trillion yuan. Therefore, accurate prediction of tourism demand is conducive to improving the operation efficiency of tourism assets, reasonably arranging the business plans of transportation, accommodation, catering, and other related industries, and providing a certain scientific basis for business decision-making, which has important practical significance. This paper provides a new research idea for the application of ESN in tourism demand prediction, provides a useful management reference for the management of related economic activities, and makes innovations in prediction methods.To summarize, our contributions include the following:(1)
In order to improve the accuracy of tourist demand prediction, this paper studies the tourist demand prediction model based on the improved fruit fly algorithm.(2)
Aiming at the optimization defects of the traditional fruit fly optimization algorithm (FOA), the model introduces two concepts of sensitivity and pheromone, improves the optimization strategy and position replacement of fruit fly, improves the diversity of fruit fly population, modifies the global optimization characteristics of the algorithm, and improves the local search ability and search efficiency of the algorithm.(3)
The experimental results show that the minimum prediction error accuracy of the model is only 0.55%, which has more robust prediction effect, faster convergence speed, and higher prediction accuracy.The remainder of this paper is organized as follows. Section2 introduces the fruit fly optimization algorithm and its improvement. Section 3 discusses the improved fruit fly optimization algorithm. Section 4 discusses experiment and analysis. Section 5 presents the conclusions of the study.


## 2. Fruit Fly Optimization Algorithm and Its Improvement

### 2.1. Basic Principle of Fruit Fly Optimization Algorithm

The fruit fly optimization algorithm (FOA) is a new bionic global optimization algorithm based on fruit fly foraging behavior. In the process of outdoor foraging, fruit fly can fly to food according to the odor concentration of olfactory smell and adjust its flight direction according to the real-time odor concentration. When it is close to food, it can observe the specific position of food by vision and fly to it, completing the whole foraging process [11–13], as shown in Figure 1.Figure 1
Schematic diagram of the foraging process of fruit flymelanogaster.Based on the characteristics of fruit fly population searching for food, the necessary steps of the fruit fly algorithm are summarized as follows:Step 1. According to the objective function, determine the number of fruit fly population Sizepop and the maximum number of iterations Maxgen; randomize the initial optimization position X_axis,Y_axis of fruit fly population according to the following formula:(1)X_axis=C∗rand(),Y_axis=C∗rand(),whereC is the adjustable parameter.Step 2. Determine the direction (Random Value) and range (X, Y) of fruit fly search according to the following formula:(2)Xi=X_axis+Random Value,Yi=Y_axis+Random Value.Step 3. Calculate the distance from the origin of the coordinates (Dist) according to the coordinates of the location of the fruit fly and then use the reciprocal value of the distance as the judgment value of the food taste concentration (SM) according to the relationship between the taste concentration and the distance.(3)Disti=Xi∧2+Yi∧2,SMi=1Disti.Step 4. Obtain the taste concentration (Smell) of fruit fly melanogaster according to the taste concentration determination function (objective function) and the taste concentration determination value (SM) of fruit fly melanogaster.(4)Smelli=FunctionSMi.Step 5. Find out the fruit fly individual with the best concentration of food taste (the minimum value in this paper).(5)bestSmell bestIndex=minSmell,Smellbest=bestSmell.Step 6. Retain and use the coordinates of the location of the fruit fly individual with the best taste concentration in the fruit fly population as the central coordinates of other fruit fly individuals searching for food.(6)X_axis=XbestIndex,Y_axis=YbestIndex.Step 7. Carry out iterative optimization according to the attenuation coefficient formula of ultrasonic wave in the atmosphere, and the formula is as follows:(7)α≈8π2f2η3ρc3,wheref represents the frequency of ultrasonic wave, c represents the propagation speed of ultrasonic wave in the atmosphere, η represents the dynamic viscosity coefficient, and ρ represents the atmospheric density.If the best flavor concentration of this generation is better than that of the previous generation and the iteration number is less than Maxgen, then Step 6 is executed; otherwise, the optimization is ended.


### 2.2. Improved Fruit Fly Optimization Algorithm

According to the optimization strategy of the traditional fruit fly optimization algorithm, in the iterative optimization process, the whole fruit fly population only takes the individual position with the best taste concentration as the center to carry out the peripheral optimization. This flight mode reduces the diversity of fruit fly population, reduces the search space, and fails to search the global region randomly, which makes the algorithm easy to fall into local extremum and difficult to escape and affects the global optimization ability of the algorithm [14]. Therefore, the research focus of the improved fruit fly algorithm is mainly on the optimization strategy and the position replacement of fruit fly.


#### 2.2.1. Improvement of Optimization Strategy

Sensitivity and pheromone are two important parameters in free search (FS) algorithm. The pheromone in the search area must adapt to its sensitivity in order to search effectively. Therefore, pheromone and sensitivity are introduced to improve the optimization strategy in the fruit fly optimization algorithm: the fruit fly individuals whose sensitivity matches pheromone are regarded as individuals with good olfactory function and can be locally optimized according to the taste concentration; fruit fly individuals whose sensitivity do not match the pheromone are regarded as individuals with poor olfactory function and could conduct global optimization in other neighborhoods to avoid falling into local optimization to a large extent [15]. The definitions of sensitivity and pheromone in the improved fruit fly algorithm are as follows.Firstly, the bestSmile with the best flavor concentration is found, and the food pheromonePi of the i-th fruit fly individual is calculated according to the following formula:(8)Pi=SmellibestSmell,Smelli≥0,bestSmell≠0,bestSmellSmelli,Smelli<0..Secondly, the individual positionXi,Yi of fruit fly melanogaster and the position XOi,YOi of the previous generation are retained, and the sensitivity determination factor Rxi is calculated according to the following formula (the calculation formula of Ryi is the same as Rxi):(9)Rxi=Xi−XOiXbest−Xworst,Pi≤Si,Xi+BA,Pi>Si.Finally, according to the adaptive relationship between pheromone and sensitivity and the sensitivity determination factor of fruit fly individual, the sensitivitySi of each fruit fly individual is calculated:(10)Si=Smin+Smax−Smin∗Ri,Rxi=Rxi+Ryi2,Smin=Pmin,Smax=Pmax.


#### 2.2.2. Improvement of Position Replacement of Fruit Flymelanogaster

Theoretically, the relationship betweenDrosophila melanogaster can be searched based on individual sensitivity. According to the sensitivity and pheromone of the previous generation of fruit fly melanogaster, the position of fruit fly melanogaster is replaced: the fruit fly melanogaster with good olfactory function performed local optimization between the best individual and the worst individual in the fruit fly population with matching sensitivity and pheromone; the fruit fly melanogaster with poor olfactory function performed random initialization of the search position. Therefore, the improved position replacement method improves the diversity of fruit fly population, avoids the traditional fruit fly algorithm falling into local optimum, and has a certain guiding effect on the convergence of the objective function [16]. The method of position replacement is as follows.According to the matching relationship between pheromone and sensitivity, ifPi≤Si, the olfactory fruit fly individual can be considered as sensitive to local optimization; if Pi≥Si, the search position can be rerandomly initialized to global optimization. Therefore, the starting point of the next round of search can be determined according to the following formula:(11)Xi=XOi+Xbest−Xworst∗unifrnd0,1,1,Pi≤Si,A∗rand()−B,Pi>Si,(12)Yi=YOi+Ybest−Yworst∗unifrnd0,1,1,Pi≤Si,A∗rand()−B,Pi>Si,where Xbest,Ybest and Xworst,Yworst are the location coordinates of the fruit fly individuals with the best and the worst taste concentration in the fruit fly population with good olfactory function.The specific implementation steps of the improved fruit fly optimization algorithm are as follows:(1)
Follow the necessary steps of the fruit fly algorithm to Step 4.(2)
According to formulas (8) to (10), the initial pheromone and sensitivity of fruit fly melanogaster are generated, and the fruit fly melanogaster whose pheromone matched the sensitivity is found, and the coordinates of the highest and lowest concentration individuals are reserved.(3)
According to formulas (11) and (12), the starting point of next round search for fruit fly individual is determined.(4)
Repeat Steps 3 and 4 of the necessary steps to calculate the taste concentration value of fruit fly individual and judge whether the best taste concentration value is better than the best taste concentration value of the previous generation; if so, proceed to the next step; otherwise, proceed to Step 2.(5)
According to formulas (8) to (10), the initial pheromone and sensitivity of fruit fly melanogaster are generated, and the pheromone is found to produce the initial pheromone and sensitivity of fruit fly melanogaster, and the fruit fly melanogaster matched with the pheromone and sensitivity is found, and the coordinates of the highest and lowest concentration individuals are reserved.(6)
Loop steps (3)–(5) for iterative optimization.(7)
If the current number of iterations is equal to the maximum number of iterations Maxge or the optimization result has reached the optimal value of the objective function, the optimization ends and the optimization result is output; otherwise, the optimization continues.Among them, (1)-(2) is initialization, (3)–(6) is iterative optimization, and (7) is the judgment of optimization end condition. It can be seen from the above steps that the search range and search step size of individual fruit fly are self-adaptive in the iterative optimization of the improved AFOA, so it is not necessary to set the search direction and distance of each generation of fruit fly. Compared with FOA, it only needs to set the initialization range, and the parameter setting is simpler.


## 2.1. Basic Principle of Fruit Fly Optimization Algorithm

The fruit fly optimization algorithm (FOA) is a new bionic global optimization algorithm based on fruit fly foraging behavior. In the process of outdoor foraging, fruit fly can fly to food according to the odor concentration of olfactory smell and adjust its flight direction according to the real-time odor concentration. When it is close to food, it can observe the specific position of food by vision and fly to it, completing the whole foraging process [11–13], as shown in Figure 1.Figure 1
Schematic diagram of the foraging process of fruit flymelanogaster.Based on the characteristics of fruit fly population searching for food, the necessary steps of the fruit fly algorithm are summarized as follows:Step 1. According to the objective function, determine the number of fruit fly population Sizepop and the maximum number of iterations Maxgen; randomize the initial optimization position X_axis,Y_axis of fruit fly population according to the following formula:(1)X_axis=C∗rand(),Y_axis=C∗rand(),whereC is the adjustable parameter.Step 2. Determine the direction (Random Value) and range (X, Y) of fruit fly search according to the following formula:(2)Xi=X_axis+Random Value,Yi=Y_axis+Random Value.Step 3. Calculate the distance from the origin of the coordinates (Dist) according to the coordinates of the location of the fruit fly and then use the reciprocal value of the distance as the judgment value of the food taste concentration (SM) according to the relationship between the taste concentration and the distance.(3)Disti=Xi∧2+Yi∧2,SMi=1Disti.Step 4. Obtain the taste concentration (Smell) of fruit fly melanogaster according to the taste concentration determination function (objective function) and the taste concentration determination value (SM) of fruit fly melanogaster.(4)Smelli=FunctionSMi.Step 5. Find out the fruit fly individual with the best concentration of food taste (the minimum value in this paper).(5)bestSmell bestIndex=minSmell,Smellbest=bestSmell.Step 6. Retain and use the coordinates of the location of the fruit fly individual with the best taste concentration in the fruit fly population as the central coordinates of other fruit fly individuals searching for food.(6)X_axis=XbestIndex,Y_axis=YbestIndex.Step 7. Carry out iterative optimization according to the attenuation coefficient formula of ultrasonic wave in the atmosphere, and the formula is as follows:(7)α≈8π2f2η3ρc3,wheref represents the frequency of ultrasonic wave, c represents the propagation speed of ultrasonic wave in the atmosphere, η represents the dynamic viscosity coefficient, and ρ represents the atmospheric density.If the best flavor concentration of this generation is better than that of the previous generation and the iteration number is less than Maxgen, then Step 6 is executed; otherwise, the optimization is ended.


## 2.2. Improved Fruit Fly Optimization Algorithm

According to the optimization strategy of the traditional fruit fly optimization algorithm, in the iterative optimization process, the whole fruit fly population only takes the individual position with the best taste concentration as the center to carry out the peripheral optimization. This flight mode reduces the diversity of fruit fly population, reduces the search space, and fails to search the global region randomly, which makes the algorithm easy to fall into local extremum and difficult to escape and affects the global optimization ability of the algorithm [14]. Therefore, the research focus of the improved fruit fly algorithm is mainly on the optimization strategy and the position replacement of fruit fly.


### 2.2.1. Improvement of Optimization Strategy

Sensitivity and pheromone are two important parameters in free search (FS) algorithm. The pheromone in the search area must adapt to its sensitivity in order to search effectively. Therefore, pheromone and sensitivity are introduced to improve the optimization strategy in the fruit fly optimization algorithm: the fruit fly individuals whose sensitivity matches pheromone are regarded as individuals with good olfactory function and can be locally optimized according to the taste concentration; fruit fly individuals whose sensitivity do not match the pheromone are regarded as individuals with poor olfactory function and could conduct global optimization in other neighborhoods to avoid falling into local optimization to a large extent [15]. The definitions of sensitivity and pheromone in the improved fruit fly algorithm are as follows.Firstly, the bestSmile with the best flavor concentration is found, and the food pheromonePi of the i-th fruit fly individual is calculated according to the following formula:(8)Pi=SmellibestSmell,Smelli≥0,bestSmell≠0,bestSmellSmelli,Smelli<0..Secondly, the individual positionXi,Yi of fruit fly melanogaster and the position XOi,YOi of the previous generation are retained, and the sensitivity determination factor Rxi is calculated according to the following formula (the calculation formula of Ryi is the same as Rxi):(9)Rxi=Xi−XOiXbest−Xworst,Pi≤Si,Xi+BA,Pi>Si.Finally, according to the adaptive relationship between pheromone and sensitivity and the sensitivity determination factor of fruit fly individual, the sensitivitySi of each fruit fly individual is calculated:(10)Si=Smin+Smax−Smin∗Ri,Rxi=Rxi+Ryi2,Smin=Pmin,Smax=Pmax.


### 2.2.2. Improvement of Position Replacement of Fruit Flymelanogaster

Theoretically, the relationship betweenDrosophila melanogaster can be searched based on individual sensitivity. According to the sensitivity and pheromone of the previous generation of fruit fly melanogaster, the position of fruit fly melanogaster is replaced: the fruit fly melanogaster with good olfactory function performed local optimization between the best individual and the worst individual in the fruit fly population with matching sensitivity and pheromone; the fruit fly melanogaster with poor olfactory function performed random initialization of the search position. Therefore, the improved position replacement method improves the diversity of fruit fly population, avoids the traditional fruit fly algorithm falling into local optimum, and has a certain guiding effect on the convergence of the objective function [16]. The method of position replacement is as follows.According to the matching relationship between pheromone and sensitivity, ifPi≤Si, the olfactory fruit fly individual can be considered as sensitive to local optimization; if Pi≥Si, the search position can be rerandomly initialized to global optimization. Therefore, the starting point of the next round of search can be determined according to the following formula:(11)Xi=XOi+Xbest−Xworst∗unifrnd0,1,1,Pi≤Si,A∗rand()−B,Pi>Si,(12)Yi=YOi+Ybest−Yworst∗unifrnd0,1,1,Pi≤Si,A∗rand()−B,Pi>Si,where Xbest,Ybest and Xworst,Yworst are the location coordinates of the fruit fly individuals with the best and the worst taste concentration in the fruit fly population with good olfactory function.The specific implementation steps of the improved fruit fly optimization algorithm are as follows:(1)
Follow the necessary steps of the fruit fly algorithm to Step 4.(2)
According to formulas (8) to (10), the initial pheromone and sensitivity of fruit fly melanogaster are generated, and the fruit fly melanogaster whose pheromone matched the sensitivity is found, and the coordinates of the highest and lowest concentration individuals are reserved.(3)
According to formulas (11) and (12), the starting point of next round search for fruit fly individual is determined.(4)
Repeat Steps 3 and 4 of the necessary steps to calculate the taste concentration value of fruit fly individual and judge whether the best taste concentration value is better than the best taste concentration value of the previous generation; if so, proceed to the next step; otherwise, proceed to Step 2.(5)
According to formulas (8) to (10), the initial pheromone and sensitivity of fruit fly melanogaster are generated, and the pheromone is found to produce the initial pheromone and sensitivity of fruit fly melanogaster, and the fruit fly melanogaster matched with the pheromone and sensitivity is found, and the coordinates of the highest and lowest concentration individuals are reserved.(6)
Loop steps (3)–(5) for iterative optimization.(7)
If the current number of iterations is equal to the maximum number of iterations Maxge or the optimization result has reached the optimal value of the objective function, the optimization ends and the optimization result is output; otherwise, the optimization continues.Among them, (1)-(2) is initialization, (3)–(6) is iterative optimization, and (7) is the judgment of optimization end condition. It can be seen from the above steps that the search range and search step size of individual fruit fly are self-adaptive in the iterative optimization of the improved AFOA, so it is not necessary to set the search direction and distance of each generation of fruit fly. Compared with FOA, it only needs to set the initialization range, and the parameter setting is simpler.


## 2.2.1. Improvement of Optimization Strategy

Sensitivity and pheromone are two important parameters in free search (FS) algorithm. The pheromone in the search area must adapt to its sensitivity in order to search effectively. Therefore, pheromone and sensitivity are introduced to improve the optimization strategy in the fruit fly optimization algorithm: the fruit fly individuals whose sensitivity matches pheromone are regarded as individuals with good olfactory function and can be locally optimized according to the taste concentration; fruit fly individuals whose sensitivity do not match the pheromone are regarded as individuals with poor olfactory function and could conduct global optimization in other neighborhoods to avoid falling into local optimization to a large extent [15]. The definitions of sensitivity and pheromone in the improved fruit fly algorithm are as follows.Firstly, the bestSmile with the best flavor concentration is found, and the food pheromonePi of the i-th fruit fly individual is calculated according to the following formula:(8)Pi=SmellibestSmell,Smelli≥0,bestSmell≠0,bestSmellSmelli,Smelli<0..Secondly, the individual positionXi,Yi of fruit fly melanogaster and the position XOi,YOi of the previous generation are retained, and the sensitivity determination factor Rxi is calculated according to the following formula (the calculation formula of Ryi is the same as Rxi):(9)Rxi=Xi−XOiXbest−Xworst,Pi≤Si,Xi+BA,Pi>Si.Finally, according to the adaptive relationship between pheromone and sensitivity and the sensitivity determination factor of fruit fly individual, the sensitivitySi of each fruit fly individual is calculated:(10)Si=Smin+Smax−Smin∗Ri,Rxi=Rxi+Ryi2,Smin=Pmin,Smax=Pmax.


## 2.2.2. Improvement of Position Replacement of Fruit Flymelanogaster

Theoretically, the relationship betweenDrosophila melanogaster can be searched based on individual sensitivity. According to the sensitivity and pheromone of the previous generation of fruit fly melanogaster, the position of fruit fly melanogaster is replaced: the fruit fly melanogaster with good olfactory function performed local optimization between the best individual and the worst individual in the fruit fly population with matching sensitivity and pheromone; the fruit fly melanogaster with poor olfactory function performed random initialization of the search position. Therefore, the improved position replacement method improves the diversity of fruit fly population, avoids the traditional fruit fly algorithm falling into local optimum, and has a certain guiding effect on the convergence of the objective function [16]. The method of position replacement is as follows.According to the matching relationship between pheromone and sensitivity, ifPi≤Si, the olfactory fruit fly individual can be considered as sensitive to local optimization; if Pi≥Si, the search position can be rerandomly initialized to global optimization. Therefore, the starting point of the next round of search can be determined according to the following formula:(11)Xi=XOi+Xbest−Xworst∗unifrnd0,1,1,Pi≤Si,A∗rand()−B,Pi>Si,(12)Yi=YOi+Ybest−Yworst∗unifrnd0,1,1,Pi≤Si,A∗rand()−B,Pi>Si,where Xbest,Ybest and Xworst,Yworst are the location coordinates of the fruit fly individuals with the best and the worst taste concentration in the fruit fly population with good olfactory function.The specific implementation steps of the improved fruit fly optimization algorithm are as follows:(1)
Follow the necessary steps of the fruit fly algorithm to Step 4.(2)
According to formulas (8) to (10), the initial pheromone and sensitivity of fruit fly melanogaster are generated, and the fruit fly melanogaster whose pheromone matched the sensitivity is found, and the coordinates of the highest and lowest concentration individuals are reserved.(3)
According to formulas (11) and (12), the starting point of next round search for fruit fly individual is determined.(4)
Repeat Steps 3 and 4 of the necessary steps to calculate the taste concentration value of fruit fly individual and judge whether the best taste concentration value is better than the best taste concentration value of the previous generation; if so, proceed to the next step; otherwise, proceed to Step 2.(5)
According to formulas (8) to (10), the initial pheromone and sensitivity of fruit fly melanogaster are generated, and the pheromone is found to produce the initial pheromone and sensitivity of fruit fly melanogaster, and the fruit fly melanogaster matched with the pheromone and sensitivity is found, and the coordinates of the highest and lowest concentration individuals are reserved.(6)
Loop steps (3)–(5) for iterative optimization.(7)
If the current number of iterations is equal to the maximum number of iterations Maxge or the optimization result has reached the optimal value of the objective function, the optimization ends and the optimization result is output; otherwise, the optimization continues.Among them, (1)-(2) is initialization, (3)–(6) is iterative optimization, and (7) is the judgment of optimization end condition. It can be seen from the above steps that the search range and search step size of individual fruit fly are self-adaptive in the iterative optimization of the improved AFOA, so it is not necessary to set the search direction and distance of each generation of fruit fly. Compared with FOA, it only needs to set the initialization range, and the parameter setting is simpler.


## 3. Improved Fruit Fly Optimization Algorithm to Optimize the Combination Prediction Model of Tourist Demand Based on ESN

### 3.1. Standard ESN Model

Echo state neural network is a kind of recurrent neural network. Compared with traditional artificial neural network, ESN has the advantages of simple learning process, fast convergence speed, avoiding falling into local optimum, and strong nonlinear processing ability [17]. ESN generates a reserve pool randomly at the initial time to form a dynamic and complex hidden layer space. In the training process, the input weight and reserve pool weight do not change, and the output weight is usually adjusted by the least square method according to the error between the actual output value and the target value of ESN.A typical ESN network consists of input layer, reserve pool, and output layer. The input layer of ESN has K nodes, which are used to convert the input information into the initial activation signal. The number of nodes in the hidden layer (reserve pool) is N, which represents the number of neurons in the reserve pool. There areL nodes in the output layer, which are responsible for transforming the internal information of the reserve pool into the output layer information [18]. The connection weights of input layer, reserve pool, and output layer are represented by Win,W, and Wout, respectively, and Wback represents the feedback weight of output layer to reserve pool. The network structure is shown in Figure 2, in which the solid line is the necessary connection and the dotted line is the optional connection.Figure 2
Schematic diagram of ESN structure.Because of its complex internal connection structure, ESN has the nonlinear dynamic characteristics of recurrent neural network. The information of the current time is input from the input layer to the reserve pool. Combined with the feedback information of the previous time state and output layer of each neuron in the reserve pool, through a certain weight, the input signal of the neuron is formed together, and then the input signal is transformed into a new round of state vectorxt+1 through the activation function. The update formula is as follows:(13)xt+1=gWin⋅ut+1+W⋅xt+Wback⋅yt,where g represents the activation function, and the result of function calculation constitutes the state vector xt+1 of neuron. xt represents the state of the reserve pool in the previous step, and the state vector x0 at 0 can be generated randomly. ut represents the input vector in step t, and the length of the vector depends on the dimension of the input information. yt is the output vector of step t, and yt+1 is the output vector of the next step, which is determined by the input vector ut+1 of the next step, the state vector xt+1 of the next step, and the output vector yt of the current step. The specific formula is as follows:(14)ut=u1t,u2t,…,uktT,xt=x1t,x2t,…,xNtT,yt=y1t,y2t,…,yLtT,yt+1=foutWout⋅ut+1,xt+1,yt,where fout represents the excitation function of the output layer.


### 3.2. AAFOA-ESN Prediction Model

The improved FOA is combined with ESN to build a new combination prediction model AAFOA-ESN. Firstly, the standard FOA is improved, and the adaptive population number and search step size are introduced. Then, the improved FOA, i.e., AFOA is combined with ESN. The ESN is optimized by AFOA, and its key parameters (including spectral radius SR, input unit size, and reserve pool size n) are obtained. The fitness of FOA is the prediction error of training set. Finally, the optimized parameters are input into ESN to form the final combination prediction model, and the effect of parameter optimization is tested through the test dataset [19, 20]. The implementation steps of AAFOA-ESN are as follows:(1)
Data Preprocessing. In order to prevent the size of the input data from affecting the model, the input data are usually normalized.(2)
Parameter Initialization. Firstly, the basic parameters of AFOA and ESN are set. The basic parameters of AFOA include standard population size, standard maximum random step size, and maximum number of iterations; the basic parameters of ESN include spectral radius, number of input nodes, number of output nodes, and sparsity.(3)
ESN Parameter Optimization. The position of fruit fly is used to represent the optimized parameters, and the taste concentration was used to represent the target value (prediction error). After the random position is generated by AFOA, the fruit fly uses its olfactory sense to judge the flavor concentration of the position and then determines the next flight direction of the fruit fly population. During the iteration, the fruit fly population constantly changes the search position and search range to realize the parameter optimization process and stops flying when the maximum number of iterations is reached.(4)
ESN Network Prediction. According to the optimal prediction error and optimal location of the markers in the iterative process, the optimization effect of AFOA is judged, and the optimal parameters and actual prediction value of ESN are finally found.


## 3.1. Standard ESN Model

Echo state neural network is a kind of recurrent neural network. Compared with traditional artificial neural network, ESN has the advantages of simple learning process, fast convergence speed, avoiding falling into local optimum, and strong nonlinear processing ability [17]. ESN generates a reserve pool randomly at the initial time to form a dynamic and complex hidden layer space. In the training process, the input weight and reserve pool weight do not change, and the output weight is usually adjusted by the least square method according to the error between the actual output value and the target value of ESN.A typical ESN network consists of input layer, reserve pool, and output layer. The input layer of ESN has K nodes, which are used to convert the input information into the initial activation signal. The number of nodes in the hidden layer (reserve pool) is N, which represents the number of neurons in the reserve pool. There areL nodes in the output layer, which are responsible for transforming the internal information of the reserve pool into the output layer information [18]. The connection weights of input layer, reserve pool, and output layer are represented by Win,W, and Wout, respectively, and Wback represents the feedback weight of output layer to reserve pool. The network structure is shown in Figure 2, in which the solid line is the necessary connection and the dotted line is the optional connection.Figure 2
Schematic diagram of ESN structure.Because of its complex internal connection structure, ESN has the nonlinear dynamic characteristics of recurrent neural network. The information of the current time is input from the input layer to the reserve pool. Combined with the feedback information of the previous time state and output layer of each neuron in the reserve pool, through a certain weight, the input signal of the neuron is formed together, and then the input signal is transformed into a new round of state vectorxt+1 through the activation function. The update formula is as follows:(13)xt+1=gWin⋅ut+1+W⋅xt+Wback⋅yt,where g represents the activation function, and the result of function calculation constitutes the state vector xt+1 of neuron. xt represents the state of the reserve pool in the previous step, and the state vector x0 at 0 can be generated randomly. ut represents the input vector in step t, and the length of the vector depends on the dimension of the input information. yt is the output vector of step t, and yt+1 is the output vector of the next step, which is determined by the input vector ut+1 of the next step, the state vector xt+1 of the next step, and the output vector yt of the current step. The specific formula is as follows:(14)ut=u1t,u2t,…,uktT,xt=x1t,x2t,…,xNtT,yt=y1t,y2t,…,yLtT,yt+1=foutWout⋅ut+1,xt+1,yt,where fout represents the excitation function of the output layer.


## 3.2. AAFOA-ESN Prediction Model

The improved FOA is combined with ESN to build a new combination prediction model AAFOA-ESN. Firstly, the standard FOA is improved, and the adaptive population number and search step size are introduced. Then, the improved FOA, i.e., AFOA is combined with ESN. The ESN is optimized by AFOA, and its key parameters (including spectral radius SR, input unit size, and reserve pool size n) are obtained. The fitness of FOA is the prediction error of training set. Finally, the optimized parameters are input into ESN to form the final combination prediction model, and the effect of parameter optimization is tested through the test dataset [19, 20]. The implementation steps of AAFOA-ESN are as follows:(1)
Data Preprocessing. In order to prevent the size of the input data from affecting the model, the input data are usually normalized.(2)
Parameter Initialization. Firstly, the basic parameters of AFOA and ESN are set. The basic parameters of AFOA include standard population size, standard maximum random step size, and maximum number of iterations; the basic parameters of ESN include spectral radius, number of input nodes, number of output nodes, and sparsity.(3)
ESN Parameter Optimization. The position of fruit fly is used to represent the optimized parameters, and the taste concentration was used to represent the target value (prediction error). After the random position is generated by AFOA, the fruit fly uses its olfactory sense to judge the flavor concentration of the position and then determines the next flight direction of the fruit fly population. During the iteration, the fruit fly population constantly changes the search position and search range to realize the parameter optimization process and stops flying when the maximum number of iterations is reached.(4)
ESN Network Prediction. According to the optimal prediction error and optimal location of the markers in the iterative process, the optimization effect of AFOA is judged, and the optimal parameters and actual prediction value of ESN are finally found.


## 4. Experimental Analysis

### 4.1. Simulation Verification of Improved Fruit Fly Optimization Algorithm

In order to verify the performance of the improved fruit fly optimization algorithm proposed in this paper, five classical test functions are used to compare the improved optimization algorithm with the basic fruit fly optimization algorithm (including convergence speed, optimization accuracy, and search time) on the MATLAB software platform. These functions include unimodal function, sphere1f function, multimodal function, Sphere1f function, Scahffer2f function, Rastrigin3f function, Griewank4f function, and Ackley5f function. The function expressions are as follows:(15)f1x=∑i=1nx12,f1x1,x2=0.5−sinx12+x222−0.51+0.001x12+x222,f3x=∑i=1nx12−10cos2πxi+10,f4x=∑i=1nx124000−∏i=1ncosxii+1,f5x=20+e−20e−0.21/n∑i=1nx12−e1/n∑i=1n2πxi.AFOA and FOA adopt the same parameter settings: population size Sizepop = 10, maximum iterations Maxgen = 2000, initial position range of fruit fly [0, 10], initial optimization range of fruit fly [−10, 10], and optimization precision E. In FOA, the optimal moving range of fruit fly is [−5, 5], while AFOA does not need to set the moving range of fruit fly. The function expression, iteration times, average time, average convergence value, and accuracy are shown in Table1.Table 1
Statistical table of optimization results of FOA and AFOA on test functions.
Function expressionIterationsTime (s)Convergence valueAccuracyFOAAFOAFOAAFOAFOAAFOAFOA (%)AFOA (%)Sphere1f2000341.330.050.65e − 0.88.77e − 1190.197.3Scahffer2f2000910.0540.151188.498.2Rastrigin3f2000631.20.135.12e − 068.49e − 1189.797.9Griewank4f2000261.190.269.99e − 098.78e − 1189.197.7Ackley5f20001201.170.224.56e − 047.79e − 1185.298.4Through the analysis of the optimization results of the above five classic test functions, it can be seen that the improved fruit fly optimization algorithm AFOA has significantly improved the convergence speed, optimization accuracy, and stability of the algorithm compared with the traditional fruit fly optimization algorithm (FOA). The optimization process of Sphere1f is shown in Figure3.Figure 3
Comparison of optimization process of sphere1f function: (a) FOA optimization process; (b) AFOA optimization process; (c) flight trajectory of FOA fruit fly; (d) flight trajectory of AFOA fruit fly.
(a)(b)(c)(d)According to the comparison of Sphere1f function optimization process, AFOA fell into the local optimal solution in the fifth generation or so, and then by initializing the fruit fly position, the algorithm quickly jumped out of the local extremum and found the global optimal solution.The optimization process of Scahffer2f is shown in Figure4.Figure 4
Comparison of optimization process of Scahffer2f function: (a) FOA optimization process; (b) AFOA optimization process; (c) flight trajectory of FOA fruit fly; (d) Flight trajectory of fruit flymelanogaster in AFOA.
(a)(b)(c)(d)As can be seen from Figure4, through the comparison of the optimization process of Sphere1f function and Scahffer2f function by AFOA and FOA, respectively, the search path of fruit fly in FOA is roughly a straight line, which indicates that the search direction of fruit fly population is basically the same, which leads to the limited search space of FOA and easy to fall into the local optimal solution. However, the search path of fruit fly population in AFOA is random and the search step is not fixed, which makes the search space of the algorithm larger and realizes global optimization. Therefore, according to the sensitivity and pheromone of fruit fly individual, the improved fruit fly algorithm randomly initializes the position of fruit fly with weak olfactory ability, improves the diversity of fruit fly population, modifies the optimization characteristics of the basic fruit fly algorithm, and expands the application field of the algorithm.


### 4.2. Verification of Model Prediction Effect

In order to test the application effect of this prediction model in tourism demand prediction, the real tourism data of a province from January 2014 to December 2019 are used to test. The data come from the statistical website of a chain brand travel agency in the province. These data are used by scholars to test the effect of the demand prediction model, so the data can be used for the comparative analysis of the prediction effect of this model. The number of tourists in a province is shown in Figure5.Figure 5
Diagram of the number of tourists.In this paper, five kinds of error evaluation indexes, including mean absolute error (MAE), mean square error (MSE), root mean square error (RMSE), normalized root mean square error (NRMSE), and mean absolute percentage error (MAPE), are comprehensively used to ensure the comprehensiveness and objectivity of the prediction model effect test.(16)MAE=∑i=1ny^t−ytn,MSE=∑i=1ny^t−yt2n,RMSE=∑i=1ny^t−yt2n,NRMSE=RMSEymax−ymin,MAPE=∑i=1ny^t−yt/ytn,where y^t is the predicted value at t, yt is the real value at t, n is the number of predicted values, and ymax and ymin are the maximum and minimum values in the real dataset, respectively.A total of 72 data are used in this experiment, which are divided into training set and test set. The experimental training set is the monthly data from January 2014 to December 2018, and the test set is the data from January 2019 to December 2019. This experiment uses one-step prediction method, training concentration, using 36 data from May 2015 to April 2018 to fit the number of tourists in May 2018, 36 data from June 2015 to May 2018 to fit the number of tourists in June 2018, and so on. AFOA obtains the optimal parameters of ESN from the training set as the parameters of ESN in the test set. Finally, it uses the one-step prediction results of 12 data from January 2019 to December 2019 to calculate the average prediction error and compares and tests the prediction effect of the model. In order to keep consistent test conditions,LgQ function is used to preprocess all data items (Q is the monthly number of tourists, in 10000 person times).The experiment is implemented inPython3.7 programming environment, the hardware is MacBook Pro produced in 2014, the operating system is MacOS High Sierra 10.13.3, the processor is 2.8 GHz Intel Core i5, and the memory is 8 Gb 1600 MHz DDR3. In the aspect of algorithm parameter setting, according to the experience recommended by experts and many experiments, there are 36 ESN input layer nodes, 1 ESN output layer node, 50–500 ESN reserve pool size, 1.0–2.0 ESN spectrum radius, and the activation function uses the tanh function and 0.2 ESN activation state memory parameter. The population size of an algorithm is 10, and the maximum number of iterations is 100. The population size and search step size of AFOA are adaptively adjusted based on the value of objective function. The results of AFOA-ESN and AAFOA-ESN are compared with the actual data. The comparative prediction results of AAFOA-ESN and AFOA-ESN are shown in Figure 6, and the prediction accuracy of the five error indicators is shown in Table 2.Figure 6
Comparison between AAFOA-ESN and AFOA-ESN.Table 2
Comparison results of prediction error accuracy.
Prediction modelMAE (%)MSE (%)RMSE (%)NRMSE (%)MAPE (%)FOA-ESN0.780.760.720.790.70AFOA-ESN0.540.580.640.750.53AAFOA-ESN0.410.470.520.640.41AFOA-ESN prediction model has good prediction accuracy and optimization effect but also has strong robustness, which can make the error gradient drop rapidly and solve the problem of tourism demand prediction. However, from Figure6, it can be seen that the prediction accuracy comparison experiment results of AFOA-ESN and AAFOA-ESN show that the prediction accuracy of AAFOA-ESN is better than that of AFOA-ESN, and the prediction accuracy of 5 error indicators is improved, respectively, as 13%, 0.11%, 0.12%, 0.11%, and 0.12%, respectively. The comprehensive results show that the AAFOA-ESN combination model, that is, the model in this paper, has stronger prediction ability of tourist demand.In order to test the stability of the optimization parameters in the prediction effect, the real dataset is divided into three parts: optimization set, training set, and test set. Among them, the optimization set is used to get the fitting output weight; the training set is used to get the optimization parameters of ESN through AFOA optimization set and get the output weight; the test set is used to compare and verify the prediction accuracy of the model. Comparative tests are conducted by using the model in this paper, AFOA-ESN model, gradient lifting regression tree prediction model in literature [9], and integrated prediction model of tourist number based on singular spectrum analysis in literature [10]. The specific dataset division is shown in Table 3.Table 3
Dataset division.
DatasetTime (s)Number of datasetsOptimization setJanuary 2014 to June 201742Training setJuly 2017 to February 201920Test setMarch to December 201910The comparison and prediction results of the four models are shown in Figure7, and the prediction accuracy is shown in Table 4.Figure 7
Comparison diagram of model prediction effect.Table 4
Comparison results of prediction error accuracy.
Prediction modelMAE (%)MSE (%)RMSE (%)NRMSE (%)MAPE (%)Model in [10]29.7535.287.925.664.91Model in [21]25.6730.586.733.214.76Model in [22]20.3926.735.922.553.26FOA-ESN33.2448.546.564.516.23AFOA-ESN10.2213.121.750.680.77AAFOA-ESN6.869.691.490.550.68It can be seen from Figure7 and Table 4 that through the verification of five different error evaluation indexes, under the same index, the minimum prediction error accuracy of this model is only 0.55%, which is 0.13%, 4.96%, and 5.11% lower than that of the three comparative prediction models, respectively; the maximum prediction error accuracy is 9.69%, which is 3.43%, 38.85%, and 25.59% lower than that of the comparative prediction model, respectively. The results show that the proposed model has more robust prediction effect, and the convergence speed and prediction accuracy are significantly higher than those of the comparison model. It is proved that the introduction of adaptive factor can effectively improve the optimization performance of FOA.


## 4.1. Simulation Verification of Improved Fruit Fly Optimization Algorithm

In order to verify the performance of the improved fruit fly optimization algorithm proposed in this paper, five classical test functions are used to compare the improved optimization algorithm with the basic fruit fly optimization algorithm (including convergence speed, optimization accuracy, and search time) on the MATLAB software platform. These functions include unimodal function, sphere1f function, multimodal function, Sphere1f function, Scahffer2f function, Rastrigin3f function, Griewank4f function, and Ackley5f function. The function expressions are as follows:(15)f1x=∑i=1nx12,f1x1,x2=0.5−sinx12+x222−0.51+0.001x12+x222,f3x=∑i=1nx12−10cos2πxi+10,f4x=∑i=1nx124000−∏i=1ncosxii+1,f5x=20+e−20e−0.21/n∑i=1nx12−e1/n∑i=1n2πxi.AFOA and FOA adopt the same parameter settings: population size Sizepop = 10, maximum iterations Maxgen = 2000, initial position range of fruit fly [0, 10], initial optimization range of fruit fly [−10, 10], and optimization precision E. In FOA, the optimal moving range of fruit fly is [−5, 5], while AFOA does not need to set the moving range of fruit fly. The function expression, iteration times, average time, average convergence value, and accuracy are shown in Table1.Table 1
Statistical table of optimization results of FOA and AFOA on test functions.
Function expressionIterationsTime (s)Convergence valueAccuracyFOAAFOAFOAAFOAFOAAFOAFOA (%)AFOA (%)Sphere1f2000341.330.050.65e − 0.88.77e − 1190.197.3Scahffer2f2000910.0540.151188.498.2Rastrigin3f2000631.20.135.12e − 068.49e − 1189.797.9Griewank4f2000261.190.269.99e − 098.78e − 1189.197.7Ackley5f20001201.170.224.56e − 047.79e − 1185.298.4Through the analysis of the optimization results of the above five classic test functions, it can be seen that the improved fruit fly optimization algorithm AFOA has significantly improved the convergence speed, optimization accuracy, and stability of the algorithm compared with the traditional fruit fly optimization algorithm (FOA). The optimization process of Sphere1f is shown in Figure3.Figure 3
Comparison of optimization process of sphere1f function: (a) FOA optimization process; (b) AFOA optimization process; (c) flight trajectory of FOA fruit fly; (d) flight trajectory of AFOA fruit fly.
(a)(b)(c)(d)According to the comparison of Sphere1f function optimization process, AFOA fell into the local optimal solution in the fifth generation or so, and then by initializing the fruit fly position, the algorithm quickly jumped out of the local extremum and found the global optimal solution.The optimization process of Scahffer2f is shown in Figure4.Figure 4
Comparison of optimization process of Scahffer2f function: (a) FOA optimization process; (b) AFOA optimization process; (c) flight trajectory of FOA fruit fly; (d) Flight trajectory of fruit flymelanogaster in AFOA.
(a)(b)(c)(d)As can be seen from Figure4, through the comparison of the optimization process of Sphere1f function and Scahffer2f function by AFOA and FOA, respectively, the search path of fruit fly in FOA is roughly a straight line, which indicates that the search direction of fruit fly population is basically the same, which leads to the limited search space of FOA and easy to fall into the local optimal solution. However, the search path of fruit fly population in AFOA is random and the search step is not fixed, which makes the search space of the algorithm larger and realizes global optimization. Therefore, according to the sensitivity and pheromone of fruit fly individual, the improved fruit fly algorithm randomly initializes the position of fruit fly with weak olfactory ability, improves the diversity of fruit fly population, modifies the optimization characteristics of the basic fruit fly algorithm, and expands the application field of the algorithm.


## 4.2. Verification of Model Prediction Effect

In order to test the application effect of this prediction model in tourism demand prediction, the real tourism data of a province from January 2014 to December 2019 are used to test. The data come from the statistical website of a chain brand travel agency in the province. These data are used by scholars to test the effect of the demand prediction model, so the data can be used for the comparative analysis of the prediction effect of this model. The number of tourists in a province is shown in Figure5.Figure 5
Diagram of the number of tourists.In this paper, five kinds of error evaluation indexes, including mean absolute error (MAE), mean square error (MSE), root mean square error (RMSE), normalized root mean square error (NRMSE), and mean absolute percentage error (MAPE), are comprehensively used to ensure the comprehensiveness and objectivity of the prediction model effect test.(16)MAE=∑i=1ny^t−ytn,MSE=∑i=1ny^t−yt2n,RMSE=∑i=1ny^t−yt2n,NRMSE=RMSEymax−ymin,MAPE=∑i=1ny^t−yt/ytn,where y^t is the predicted value at t, yt is the real value at t, n is the number of predicted values, and ymax and ymin are the maximum and minimum values in the real dataset, respectively.A total of 72 data are used in this experiment, which are divided into training set and test set. The experimental training set is the monthly data from January 2014 to December 2018, and the test set is the data from January 2019 to December 2019. This experiment uses one-step prediction method, training concentration, using 36 data from May 2015 to April 2018 to fit the number of tourists in May 2018, 36 data from June 2015 to May 2018 to fit the number of tourists in June 2018, and so on. AFOA obtains the optimal parameters of ESN from the training set as the parameters of ESN in the test set. Finally, it uses the one-step prediction results of 12 data from January 2019 to December 2019 to calculate the average prediction error and compares and tests the prediction effect of the model. In order to keep consistent test conditions,LgQ function is used to preprocess all data items (Q is the monthly number of tourists, in 10000 person times).The experiment is implemented inPython3.7 programming environment, the hardware is MacBook Pro produced in 2014, the operating system is MacOS High Sierra 10.13.3, the processor is 2.8 GHz Intel Core i5, and the memory is 8 Gb 1600 MHz DDR3. In the aspect of algorithm parameter setting, according to the experience recommended by experts and many experiments, there are 36 ESN input layer nodes, 1 ESN output layer node, 50–500 ESN reserve pool size, 1.0–2.0 ESN spectrum radius, and the activation function uses the tanh function and 0.2 ESN activation state memory parameter. The population size of an algorithm is 10, and the maximum number of iterations is 100. The population size and search step size of AFOA are adaptively adjusted based on the value of objective function. The results of AFOA-ESN and AAFOA-ESN are compared with the actual data. The comparative prediction results of AAFOA-ESN and AFOA-ESN are shown in Figure 6, and the prediction accuracy of the five error indicators is shown in Table 2.Figure 6
Comparison between AAFOA-ESN and AFOA-ESN.Table 2
Comparison results of prediction error accuracy.
Prediction modelMAE (%)MSE (%)RMSE (%)NRMSE (%)MAPE (%)FOA-ESN0.780.760.720.790.70AFOA-ESN0.540.580.640.750.53AAFOA-ESN0.410.470.520.640.41AFOA-ESN prediction model has good prediction accuracy and optimization effect but also has strong robustness, which can make the error gradient drop rapidly and solve the problem of tourism demand prediction. However, from Figure6, it can be seen that the prediction accuracy comparison experiment results of AFOA-ESN and AAFOA-ESN show that the prediction accuracy of AAFOA-ESN is better than that of AFOA-ESN, and the prediction accuracy of 5 error indicators is improved, respectively, as 13%, 0.11%, 0.12%, 0.11%, and 0.12%, respectively. The comprehensive results show that the AAFOA-ESN combination model, that is, the model in this paper, has stronger prediction ability of tourist demand.In order to test the stability of the optimization parameters in the prediction effect, the real dataset is divided into three parts: optimization set, training set, and test set. Among them, the optimization set is used to get the fitting output weight; the training set is used to get the optimization parameters of ESN through AFOA optimization set and get the output weight; the test set is used to compare and verify the prediction accuracy of the model. Comparative tests are conducted by using the model in this paper, AFOA-ESN model, gradient lifting regression tree prediction model in literature [9], and integrated prediction model of tourist number based on singular spectrum analysis in literature [10]. The specific dataset division is shown in Table 3.Table 3
Dataset division.
DatasetTime (s)Number of datasetsOptimization setJanuary 2014 to June 201742Training setJuly 2017 to February 201920Test setMarch to December 201910The comparison and prediction results of the four models are shown in Figure7, and the prediction accuracy is shown in Table 4.Figure 7
Comparison diagram of model prediction effect.Table 4
Comparison results of prediction error accuracy.
Prediction modelMAE (%)MSE (%)RMSE (%)NRMSE (%)MAPE (%)Model in [10]29.7535.287.925.664.91Model in [21]25.6730.586.733.214.76Model in [22]20.3926.735.922.553.26FOA-ESN33.2448.546.564.516.23AFOA-ESN10.2213.121.750.680.77AAFOA-ESN6.869.691.490.550.68It can be seen from Figure7 and Table 4 that through the verification of five different error evaluation indexes, under the same index, the minimum prediction error accuracy of this model is only 0.55%, which is 0.13%, 4.96%, and 5.11% lower than that of the three comparative prediction models, respectively; the maximum prediction error accuracy is 9.69%, which is 3.43%, 38.85%, and 25.59% lower than that of the comparative prediction model, respectively. The results show that the proposed model has more robust prediction effect, and the convergence speed and prediction accuracy are significantly higher than those of the comparison model. It is proved that the introduction of adaptive factor can effectively improve the optimization performance of FOA.


## 5. Conclusion

This paper proposes an improved algorithm to improve the adaptive ability of FOA. Aiming at the optimization defects of the basic fruit fly algorithm, a modified fruit fly optimization algorithm (AFOA) is proposed. Through the concepts of sensitivity and pheromone, the optimization strategy and position replacement method of fruit fly are improved. The global optimization characteristics of the modified fruit fly algorithm are introduced, and a more efficient algorithm is constructed by combining with ESN. The new two-stage combination prediction model AFOA-ESN is simple and easy to understand, which expands the application field of the algorithm and provides a new idea for the application of ESN. The experimental results show that the AAFOA-ESN prediction model has better and more robust prediction effect. However, the complexity of the model and the algorithm can continue to be optimized. In the feature research, we can expand the number of optimization parameters in the future, test the performance of the AAFOA-ESN model in multiparameter optimization, try to use a variety of big data means (such as network search index) to enrich the diversity of input information, and more appropriately select the prediction information suitable for the tourism industry.



---

*Source: 3411797-2021-06-07.xml*