1 Introduction

Any water flow, regardless of its causative factor, is considered as flood when discharge in the river is higher than normal and the flow of water exceeds the natural banks and covers surrounding lands. Floods are one of the most important natural phenomena that cause a lot of damages to the world and countries pay a lot of costs annually. Flood routing is one of the most important engineering techniques for flood control (Wright 2000; Birkland et al. 2003; Brody et al. 2007; Chan 2012; Floater et al. 2014). Rainfall and hydrological characteristics of the basin are important in flood routing problems and factors such as previous rainfall, soil permeability and land gradient play a key role for a rainfall to cause flood occurrence at a certain period (Nguyen and Chua 2012). Today, one of the most vital concerns about rivers is their flood events. Forecasting is possible with ascent and descent of river hydrographs at a certain station. This method can be analyzed by flood routing technique.

Artificial neural network (ANN) has been successfully applied in many fields, including water resources. Recent studies have indicated that ANN can be an alternative to modeling the rainfall-runoff process and prediction of inflow to a dam reservoir (Dawson and Wilby 1998; Maier and Dandy 2000; Govindaraju and Rao 2000; Kisi 2004; Kumar et al. 2005; Mutlu et al. 2008; Zadeh et al. 2010; Kisi et al. 2012).

There are various methods for flood routing. Dynamic wave method is one of the most widely used. Using dynamic wave method requires cross-sectional mapping and hydrometric data. Thus, using this method is costly, time-consuming and sometimes impossible due to the unavailability of enough relevant data. Thus, studying artificial intelligence techniques is felt more than ever.

In recent decades, the meta-heuristic algorithms such as GA, ICA, PSO and Harmony Search (HS) can easily solve optimization problems for approximating the global optimum of a given function (Atashpaz-Gargari and Lucas 2007). Most of the optimization algorithms such as GA, simulated annealing and PSO have been developed based on biological intelligence. But the ICA was based on the human intelligence structure and is more accurate in many issues. The BA is based on the bat’s characteristics and can solve nonlinear problems (Yang 2010).

Kuo et al. (2001) stated in a study that GA provides more accurate results for optimization of the neural network. Aksoy and Dahamshed (2009) applied ARIMAX time-series model and PREVIS model to predict 1–7 days flow in the spring season in Chute-du-Daibale (an area of 9700 km2, located in northern Canada) for reservoir operation. They compared the performance of ARIMAX and PREVIS conceptual models to the ANN model. Results indicated that the ANN model is highly capable of prediction of river flow. Khatibi et al. (2011) compared three artificial intelligence methods [ANN, ANFIS and genetic programming (GP)] for flood routing. They concluded that GP provided better results compared to other methods. Several different networks have been used to predict and analyze rainfall-runoff process (Nourani et al. 2011), to predict flood flow (Dawson et al. 2006) and route the floods (Barati 2018).

Barati et al. (2012) did a comprehensive analysis of flood decomposition using dynamic wave method and sensitivity analysis of the parameters. Results showed that errors in the input parameters (such as low values of Manning roughness coefficient and/or steep bed slopes) are very significant in the characteristics of design hydrograph. Barati et al. (2013) performed flood routing for the Karun River using hourly and daily data and the Muskingum-Cunge method. Then, the results were compared to dynamic wave method.

Bozorg-Haddad et al. (2014) addressed the optimization of reservoir systems using BA and GA and showed that BA performed better in optimizing reservoir systems. Nikoo et al. (2016) studied flood routing in the Karun River using feed forward (FF), multilayer perceptron (MLP) and radial basis function (RBF) models. Input and output data were used to determine the effective delay time. The structure of artificial neural network models was optimized in terms of the number of nodes in the hidden layer using GA.

The aim of present study was to apply different meta-heuristic algorithms such as GA, PSO, BA and ICA as well as combinations (hybrids) of these algorithms with ANN and ANFIS for flood routing and estimation of the flood volume. In addition, flood hydrograph was estimated for 10,000-year return period using the best obtained hybrid algorithm.

2 Methodology

2.1 Case study

In this study, hydrometric data of two stations of Pir Soleiman and Kaleh Choub were used for routing the floods in Maryam Negar River, Kermanshah province, Iran. Pir Soleiman station is located at latitude of 27°47′ north and longitude of 42°34′ east, and Kaleh Choub station is located at latitude of 27°47′ north and longitude of 35°34′ east. The length of Maryam Negar River between the above stations is 24 km. Figure 1a shows the Maryam Negar River plan. Figure 1b is the location of this river in Iran.

Fig. 1
figure 1

a Location of Maryamnegar River. b Map of study site location

In this study, 8 measured flood hydrographs at Kaleh Choub and Pir Soleiman stations were used.

2.2 Flood hydrograph

Studies conducted on the eight measured flood hydrographs showed that some volume of the inflow hydrograph is lost as transferred from Kaleh Choub to Pir Soleiman stations. Given the geographic location, it is possible to consider the losses to be due to evaporation. But decreasing water volume in downstream and peak discharge can be due to water penetration in the substrate. Comparison of the measured hydrographs between the two stations showed that in most cases, there is a base flow in Kaleh Choub station and there is little base flow in Pir Soleiman station (Fig. 2) .

Fig. 2
figure 2figure 2

Flood hydrograph

2.3 Neural network

Artificial neural network (ANN) is one of the smart computing models. It is a unique black-box concept, able to model complex systems with nonlinear pattern. It imitates the human brain’s neural network (Bowden et al. 2005). ANN was first introduced by Rosenblatt as a perceptron computational model (Rosenblatt 1958). Although ANN is not completely comparable to the natural neuronal system, it has features that are unique in some applications such as pattern separation, or wherever there is need for learning with a linear or nonlinear mapping (Coulibaly et al. 2000).

The structure of ANN is introduced by the relationship between nodes, determining the communicational weights as well as activity function. The normal structure of an ANN includes input layer, middle layers and output layer. The input layer is a transmitter layer; in other words, it provides the data. The last layer or output layer includes the values estimated by the network. The middle or hidden layers, which are composed of processor nodes, are data processing layers. The number of hidden layers and the number of nodes in each hidden layer are determined by trial and error method. To train the ANN, the followings are essential: selection and preprocessing steps, network architecture, training and testing the model (Bishop 1995).

2.4 Adaptive neuro-fuzzy inference system (ANFIS)

The ANFIS model is a hybrid model of soft computing and neural networks. Considering an example of this process for a fuzzy inference system (two inputs and one output), the general structure and the five layers of ANFIS are described as follows:

First layer (input nodes): Each node in this layer represents the degree of membership to an input.

$$ \begin{aligned} o_{i}^{1} &= \mu_{Ai} (Q_{t - 1} ) \hfill \\ o_{i}^{1} &= \mu_{Bi - 2} (Q_{t - 2} ) \hfill \\ \end{aligned} $$
(1)

where Qt−1 and Qt−2 are the first and second inputs, and μAi and μBi−2 are the membership functions of Ai and Bi of the fuzzy sets. In order to determine the membership degrees, there are different membership functions: triangular, zodiac, Gaussian and bell-shaped. Gaussian function has the advantage of being smooth and nonzero, and it has fewer parameters; therefore, Gaussian function was used in this research.

Second layer (rule nodes): In this layer, the fuzzy operators are used to extract the power of each fuzzy rule to the sum of the powers of calculated membership degrees in the first layer:

$$ O_{i}^{2} = w_{i} = \mu_{Ai} (Q_{t - 1} )\mu_{Bi} (Q_{t - 2} ) $$
(2)

Third layer (average nodes): In this layer, the motivational ratio of each fuzzy rule to the sum of the motivating powers of all the rules is determined as follows:

$$ O_{i}^{3} = \overline{{w_{i} }} = \frac{{w_{i} }}{{w_{1} + w_{2} }} $$
(3)

Fourth layer: In this layer, the values of the p, q and r parameters are optimized. In fact, in this layer, all nodes are going compatible with a node function as follows:

$$ O_{i}^{4} = \overline{{w_{i} }} (p_{i} Q_{t - 1} + q_{i} Q_{t - 2} + r_{i} ) $$
(4)

where p, q and r are sum of the parameters and w is the output of this layer.

Fifth layer (output node): In this layer, all outputs are calculated as the sum of all input signals as follows:

$$ O_{i}^{5} = \sum\nolimits_{i = 1}^{n} {\overline{w}_{i} f_{i} } = \frac{{\sum\nolimits_{i = 1}^{n} {w_{i} f_{i} } }}{{\sum\nolimits_{i = 1}^{n} {w_{i} } }} $$
(5)

where p, q and r are sum of the parameters and w is the output of this layer.

2.5 Evolutionary calculations

Each engineering issue may have several different solutions; some of which are possible and some impossible. The task of designers is to find the best possible solution from different solutions. The set of possible answers make the design space in which we look for the best answer. Usually, the classic search technique is used to solve nonlinear equations. But the new optimization methods that are used today to solve many different issues are simulated annealing (SA), ant colony algorithm (ACO), PSO, GA, HS, etc. (Pham et al. 2006; Sivanandam and Deepa 2007; Ramezani and Lotfi 2013; Salimi et al. 2018).

2.6 Bat algorithm (BA)

The BA is inspired by the trapping characteristics of small bats in search of bait. Small bats can fly in absolute darkness, and by emitting sound and receiving it they can hunt their prey. Development of this algorithm is based on three ideal rules:

All bats use sound reflection to detect distances and they know the difference between food and obstacle.

The bats fly randomly at speed νi in distance xi with fixed frequency fmin and different wavelengths of λ and loudness of A0 for hunting. Also, they can automatically set the waves and the rate of their sent pulses (r ∈ [0, 1]) with respect to closeness of the prey.

Given that the volume may vary in many different ways, it is assumed that the loudness of the sound varies between R0 to Rmin.

According to the above-mentioned rules, the xti location and the velocity of vit for each ith virtual bat at t replication as well as the fi frequency are calculated as follows:

$$ \begin{aligned} f_{i} & = f_{\hbox{min} } + (f_{\hbox{max} } - f_{\hbox{min} } )\theta \\ v_{i}^{t} & = v_{i}^{t - 1} + (x_{i}^{t} - x^{*} ) \\ x_{i}^{t} & = x_{i}^{t - 1} + v_{i}^{t} \\ \end{aligned} $$
(6)

where θ ∈ [− 1, 1] is a random vector with uniform distribution and x0 is the best current location, which is selected in each replication after comparison with the position of the virtual bats. Usually, the frequency f is considered with fmin = 0 and fmax = 100. In each replication, in the local search, one of the answers is selected as the best answer, and the new position of each bat is updated locally with random pace as follows:

$$ x_{\text{new}} = x_{\text{old}} + eA_{0}^{t} $$
(7)

where e ∈ [− 1,1] is a random number and \( A^{t} \le A_{i}^{t} \) is the average bat loudness at t. In addition, the loudness of Ai and the sent pulse rate r at each replication is updated as follows:

$$ A_{i}^{t + 1} = \alpha A_{i}^{t} $$
(8)
$$ r_{i}^{t + 1} = r_{i}^{0} [1 - \exp ( - \gamma t)] $$
(9)

where α and γ are fixed values for each 0 < α > 1 and r > 0. Figure 3 depicts the flowchart of BA.

Fig. 3
figure 3

Bat algorithm flowchart

2.7 Imperialist competitive algorithm (ICA)

Recently, a new algorithm called ICA was presented by Atashpaz-Gargari and Lucas (2007), which is inspired by a social phenomenon instead of the nature. The inventors of this algorithm analyzed the historical phenomenon of imperialism regarding a sociopolitical development of human societies. By mathematical modeling of this process, they proposed a powerful optimization algorithm.

There are a number of countries in the ICA algorithm. In fact, these sets of countries are random points within the search space. Then, a few stronger countries (more powerful) are selected as imperialist. Therefore, powerful countries are considered as imperialist and weak ones are colonies. At the beginning of the implementation of this algorithm, countries are randomly generated and several powerful countries are considered as imperialist. Then, other countries are randomly assigned to one of the imperialists. The number of each imperialist is in accordance with its power.

In this algorithm, the imperialist countries attract colonial countries into their own countries by applying assimilation policy (e.g., language and culture). This is modeled by the random movement of each colonial country toward its imperialist country in the search space. As shown in Fig. 4a, the colonial country movement toward the imperialist country is done at α and an angle of θ, which are determined randomly. In the process of movement of countries during the implementation of the algorithm, a colonial country may become stronger than its colonizer. In this case, the colonial and colonizer countries will be replaced. At each stage of the replication of the algorithm, there is a competition between the imperialist countries. In this process, the weakest colony of the weakest imperialist will randomly join one of the other imperialists. The probability of assigning this new colony to each imperialist is proportional to their power. If an imperialist loses all of its colonies, it will become colonized by another imperialist. The algorithm proceeds similarly so that there is only one imperialist. In this case, all countries are colonies of an imperialist and the algorithm ends. Of course, other stop conditions such as a certain process replication can also be applied (Fig. 4b).

Fig. 4
figure 4

a Imperialism competitive algorithm. b Imperialism competitive algorithm flowchart

2.8 Combining GA and PSO

The GA is very sensitive to the initial population. In fact, the random nature of genetic operators leads to this sensitivity. The dependency on the initial population is so that if the population is not well-chosen, the algorithm cannot get converged at all. However, if the initial population is well-chosen, the algorithm operator will be improved.

On the other hand, the PSO algorithm is sensitive to the initial population, too. One of the characteristics of the PSO is its rapid convergence toward overall optimization at early stages of the search process. The idea behind this research is to combine (hybridize) the GA and PSO so that it performs better than GA and PSO. This means that the speed of getting response increases significantly, while the accuracy is acceptable as well (Kennedy and Eberhart 1995; Shi and Eberhart 1999; Murthy et al. 2010).

2.9 Criteria for evaluation of the accuracy of the models

The following criteria were used to evaluate the models (Sudheer et al. 2002; Barati 2011, 2013).

$$ {\text{MAE}} = \frac{{\sum\nolimits_{i = 1}^{n} {\left| {\frac{{Q_{i} - Q^{*}_{i} }}{{Q_{i} }}} \right|} }}{n} $$
(10)
$$ {\text{RMSE}} = \sqrt {\frac{{\sum\nolimits_{i = 1}^{n} {\left( {Q_{i} - Q_{i}^{*} } \right)}^{2} }}{n}} $$
(11)
$$ {\text{BIAS}} = \frac{{\sum\nolimits_{i = 1}^{n} {\left( {Q_{i} - Q_{i}^{*} } \right)} }}{n} $$
(12)
$$ {\text{SI}} = \frac{\text{RMSE}}{{\overline{{Q_{i} }} }} $$
(13)
$$ {\text{SSQ}} = \sum\limits_{i = 1}^{N} {\left( {Q_{i} - Q_{i}^{*} } \right)^{2} } $$
(14)

where Qi is observed flow, \( Q_{i}^{*} \) is calculated flow, and \( \overline{{Q_{i} }} \) is average calculated flow.

2.10 Selection of input and output parameters of the models

In this research, statistical data are used as inputs of the neural network as well as training, testing and validating the neural network and reviewing and comparing them.

$$ \begin{aligned} Q(t) & = f(I_{t - 7} ) \\ Q(t) & = f(I_{t - 7} ,I_{t - 6} ) \\ Q(t) & = f(I_{t - 7} ,I_{t - 6} ,Q_{t - 1} ) \\ Q(t) & = f(I_{t - 7} ,I_{t - 6} ,Q_{t - 1} ,Q_{t - 2} ) \\ \end{aligned} $$
(15)

Using trial and error procedure, the above 4 patterns were selected for flood routing, where It−7 is the inflow with delay time of t−7, It−6 is inflow with delay time of t−6, Qt−1 is outflow with delay time of t−1, and Qt−2 is outflow with delay time of t−2. Inflow is the measured flow at Kaleh Choub station, and outflow is the flow measured at Pir Soleiman station.

The following formula was used for normalizing the data:

$$ x_{{{\text{normal}}(i)}} = \frac{{x_{i} - x_{\hbox{min} } }}{{x_{\hbox{max} } - x_{\hbox{min} } }} $$
(16)

In the next step, the inflow and outflow data are divided into two categories: 6 hydrographs were used or training, and 2 hydrographs were used for testing. The input matrix of our data includes the parameters that each flood event depends on it. The total number of flows was 147; 109 data were used to train the network; and 38 data were used for testing.

2.11 Sensitivity analysis

Over the past years, several methods have been used to analyze the effect or importance of input variables on the output of the proposed neural network. These methods are divided into two sets of analysis based on weight and sensitivity analysis. However, these methods are subject to limitations. The sensitivity analysis using weight was first used for the first time by Garson (1991) and is followed by Goh (1995) and Gervey et al. (2003):

$$ Q_{ik} = \frac{{\sum\nolimits_{j = 1}^{L} {\left( {\frac{{w_{ij} }}{{\sum\nolimits_{r = 1}^{N} {w_{rj} } }}\nu_{jk} } \right)} }}{{\sum\nolimits_{i = 1}^{N} {\left( {\sum\nolimits_{j = 1}^{L} {\left( {\frac{{w_{ij} }}{{\sum\nolimits_{r = 1}^{N} {w_{rj} } }}\nu_{jk} } \right)} } \right)} }} $$
(17)

An analysis based on the weight values is exclusively based on the values stored in the static-weight matrix to determine the relative effect of each input data on the output. Different equations for the weight values are provided; all of which are determined by calculating the weight product of wij (the binding weight between input neuron i and hidden neuron j) and νjk (the binding weight between hidden neuron j and output neuron k).

3 Results and discussion

3.1 Flood routing results using ANN

MLP model was applied to predict the outflow hydrograph. Number of nodes in its first layer was 5. TanhAxon transfer function and the momentum network learning algorithm were used. Equation (15) was used to select the best combination of inputs. As seen in Table 1, pattern 4 is the best pattern. In this model, the moment discharge flow depends on the inputs of t − 7 and t − 6 and the discharge flow of the same station depends on the inflow Q − 1 and Q − 2 of Pir Soleiman station.

Table 1 Statistical parameters of the accuracy of the ANN

The statistical profile of the hydrograph calculated by the model is presented in Table 1. Figure 5 presents the calculated hydrographs. In addition, calculations for hydrograph volume at peak flow and peak time and relative error that is obtained by dividing the measured hydrograph values into calculated hydrographs are available in Table 2.

Fig. 5
figure 5

a Calculation hydrograph and observation hydrograph in flood event 1. b Calculation hydrograph and observation hydrograph in flood event 2

Table 2 Output hydrograph profile obtained from ANN

3.2 Flood routing results using ANN–ICA

As stated above, six hydrographs were used for training and two hydrographs were used for model testing. The parameters used in the MATLAB software for predicting outflow hydrographs using the ICA are: number of countries = 150, number of imperialists = 10, number of decades = 50 and revolution rate = 0.1.

To select the best input composition from the time delays, data were divided into four different combinations. According to Eq. (15), the best combination was selected using different tests.

The hydrograph profile calculated by the model is presented in Table 3. In addition, Fig. 6a, b presents the calculated hydrographs. Furthermore, calculations for hydrograph volume at peak flow and peak time and relative error that is obtained by dividing the measured hydrograph values by the calculated hydrograph values are presented in Table 4.

Table 3 Statistical parameters of the accuracy of the ANN–ICA
Fig. 6
figure 6

a Calculation hydrograph and observation hydrograph in flood event 1. b Calculation hydrograph and observation hydrograph in flood event 2

Table 4 Output hydrograph profile obtained from ANN–ICA

3.3 Flood routing results using ANN–BA

The parameters used in the MATLAB software for predicting outflow hydrographs using the BA are: walk factor = 0.03, walk rate = 5, Amin = 0.03, A0 = 0.9, fmax = 1 and fmin = 0.

To select the best input composition from the time delays, data were divided into four different combinations. The best combination was selected using different criteria.

The calculated hydrograph profile using the present model is presented in Table 5. Figure 7 presents the calculated hydrographs. Furthermore, calculations for hydrograph volume at peak flow and peak time are presented in Table 6.

Table 5 Statistical parameters of the accuracy of the ANN–BA
Fig. 7
figure 7

a Calculation hydrograph and observation hydrograph in flood event 1. b Calculation hydrograph and observation hydrograph in flood event 2

Table 6 Output hydrograph profile obtained from ANN–BA

3.4 Flood routing results using ANFIS (PSO–GA)

The parameters used in the MATLAB software for predicting outflow hydrographs using GA and PSO combination optimization are: population = 50, crossover rate = 0.7, mutation rate = 0.1 and number of iterations= 1000.

To select the best input composition from the time delays, data were divided into four different combinations. The best combination was selected using different tests.

The calculated hydrograph profile using the present model is shown in Table 7. Figure 8 presents the calculated hydrographs. Furthermore, calculations for hydrograph volume at peak flow and peak time are presented in Table 8.

Table 7 Statistical parameters of the accuracy of the ANFIS (PSO–GA)
Fig. 8
figure 8

a Calculation hydrograph and observation hydrograph in flood event 1. b Calculation hydrograph and observation hydrograph in flood event 2

Table 8 Output hydrograph profile obtained from ANFIS (PSO–GA)

3.5 Comparison of the models

There is a general consensus that each model is more appropriate than others for a number of specific issues. Therefore, the disadvantages and advantages of the models should be considered in relation to each other. In this research, the performance of each method has been compared regarding the prediction of outflow hydrographs. In Tables 1, 3, 5 and 7, using the statistical parameters, the success rate of each of the models for fitting the measured hydrographs was evaluated. The results of these tables indicated that for both hydrographs, ANN–ICA performed better in prediction of the outflow hydrographs. Relative error percentage was used to compare the performance of different models in prediction of outflow hydrograph characteristics, including volume of outflow flood hydrograph, peak discharge of the hydrograph and the time of peak flow occurrence. According to Tables 2, 4, 6 and 8, in both flood cases, ANN–ICA performed better for prediction of the peak flow rate and volume of outflow hydrograph and time of occurrence of the peak flow was predicted more precisely by ANFIS. Figure 9 presents the calculated and observed flows using ANN–ICA. It is seen that the results are acceptable, peak flow is calculated accurately and it provided us reasonable results for the baseflow.

Fig. 9
figure 9

a Calculate and observed discharge by using ANN–ICA in training. b Calculate and observed discharge by using ANN–ICA in testing

Figure 10 represents the variations of error in ANN–ICA.

Fig. 10
figure 10

a Network error changed by using ANN–ICA in training. b Network error changed by using ANN–ICA in testing

Given Figs. 9 and 10, statistical criteria, as well as relative errors, it can be concluded that ANN–ICA performed better than other single and hybrid algorithms in terms of peak flows and flood volume. The PSO–GA and ANN–BA ranked next. Ultimately, it is concluded that all three methods were better than ANN. Results showed that combination of intelligent algorithms with ANN leads to an increase in accuracy of the neural networks. Results of the ANN–ICA were used to predict the outflow hydrographs.

3.6 Sensitivity analysis of the input parameters

Sensitivity analysis was used to measure the influence of the four input parameters in the ANN on the output of the model. Results of ANN–ICA sensitivity analysis are presented in Fig. 11.

Fig. 11
figure 11

Sensitivity analysis

According to Fig. 11, the It−6 parameter had the highest effect on the output of the model (with a value of 58.3%) and next were Qt−1, It−7 and Qt−2 (23.2, 11.6 and 6.9%, respectively).

3.7 Overflow flood prediction

Given the results of previous sections and the superiority of ANN–ICA, this hybrid method was used to predict overflow characteristics. Using the prediction of inflow in Kaleh Choub station flood routing information of Maryam Negar River, the outflow discharge with a return period of 10,000 years is calculated (Table 9). The reason for choosing 10,000-year flood is that the dam was considered to be highly at risk.

Table 9 Flood hydrograph values (10,000 year)

In this hydrograph, which is shown in Fig. 12 and Table 10, the peak flow is 794 m3/s and the flood volume is 21,435,480 m3. This is the inflow hydrograph which enters the dam reservoir. Since the reservoir is assumed to be full, this volume of flood is released as overflow on the spillway.

Fig. 12
figure 12

Flood hydrograph (10,000 year) calculated by ANN–ICA

Table 10 Values of different flood parameter (10,000 year)

Of course, given the limited data, this method should be used with caution to predict a 10,000-year flood.

Given the data in Table 9, the full hydrograph is drawn.

4 Conclusion

In this research, few meta-heuristic algorithms and their combinations with ANN and ANFIS were used for flood routing of Maryam Negar River. Results indicated that considering the river inflow in Kaleh Choub station and transmission losses in the river reach, the ANN model accurately simulated the outflow hydrograph in the Pir Soleiman station. To test the model, the It−6, It−7, Qt−1 and Qt−2 patterns were used. The ICA, BA, PSO and GA were used to optimize ANN and ANFIS. This technique significantly decreased the time needed to determine the optimal structure. Results of the routed inflow hydrograph indicated that ANN–ICA was the best method for flood routing. The error of predicting flood volumes was acceptable, but it is not applicable for peak flow. Then, by using the best prediction model (i.e., ANN–ICA), the 10,000-year peak flood discharge was estimated as 794 m3/s. The outflow hydrograph could be used in design of hydraulic structures such as dam spillway. To determine the effect of each of the input parameters on prediction of flood, sensitivity analysis was carried out by Garson (1991) method using the adjusted weight gain as well as ANN–ICA. The results indicated that It−6, Qt−1, It−7 and Qt−2 were evaluated with 58.3, 23.2, 11.6 and 6.9%, respectively.