Problem description
The mine water inrush monitoring network proposed in this study was based on an underground network that monitored the depth of water flow in real time through the networked deployment of water level sensors at specific locations along a mine roadway (e.g., water sumps, drainage ditches, or lowlying areas of the roadway). This enabled changes in the amount of mine water inrush to be determined in a timely manner, as shown in Fig. 1.
The effectiveness of the monitoring network was largely determined by the installation location and number of water level sensors. Therefore, the selection of suitable locations for the water level sensors in the monitoring network to achieve a balance between cost and response time was a critical issue. A multiconstraint and multiobjective optimization layout method was therefore adopted to establish the layout of the monitoring network.
With reference to Wu et al.^{21}, an objective function and three multiple constraint conditions were incorporated to expand the problem of water level sensor locations into a multiconstraint and multiobjective optimization model, further enhancing the effectiveness and practicality of the monitoring network, as shown in Fig. 2.
Mathematical model
Model parameters and decision variables
To fully explain the mathematical model, it is necessary to clarify the following concepts. The position in the roadway where a water level sensor can be installed is called a potential monitoring point, and the place where water inrush is simulated is called a water inrush point. Monitoring response time refers to the time that a water inrush is detected after its initial occurrence, represented by T. The spreading scope of a water inrush point refers to the roadway through which the water flow passes within the monitoring response time after the water inrush process is simulated at the water inrush point. The monitoring scope of a potential monitoring point refers to the area of roadway where the simulated water inrush can be monitored by the water level sensor installed at the potential monitoring point within the monitoring response time T. If a water inrush point is within the monitoring scope of a potential monitoring point, it means that the water inrush point can be monitored by the monitoring point. Therefore, within the monitoring response time T, the water inrush simulated at the water inrush point can be monitored by a water level sensor installed on the potential monitoring point. For the same potential monitoring point, the monitoring response time T is different, and the corresponding monitoring scope is also different.
Assuming that the number of water inrush points in a mine is n, each water inrush point corresponds to a fixed number i, starting from 0, then the set of water inrush points in the mine can be expressed as N = {0, 1, 2, 3, …, i}, i = n − 1. N_{i} represents the water inrush point numbered i, and NT i indicates the spreading scope of water inrush point i when the monitoring response time is T. If the number of potential monitoring points is m, each potential monitoring point corresponds to a fixed number j, starting from 0, then the set of potential monitoring points of the mine can be expressed as M = {0, 1, …, m − 1}, j = m − 1. M_{j} represents the potential monitoring point j, and MT iindicates the monitoring scope of the potential monitoring point j when the monitoring response time is T. No more than one water level sensor should be installed at the location of each potential monitoring point.
The decision variables are defined as follows:
$$ x_{j} = \left\{ {\begin{array}{*{20}l} {0,} \hfill \\ {1,} \hfill \\ \end{array} } \right. \quad \left( {j = 0, 1, 2, \ldots ,m – 1} \right) $$
(1)
When x_{j} is equal to 0, it means that no water level sensor is installed at the potential monitoring point M_{j}; when x_{j} is equal to 1, it means that a water level sensor is installed at the potential monitoring point M_{j}. The water inrush point i is monitored by at least one water level sensor within the monitoring response time T, i.e., at least one potential monitoring point in the spreading scope of the water inrush point i (NT i) must be installed with a water level sensor.
Objective functions
Minimum total cost
The total cost of the mine water inrush monitoring network was uniformly expressed by the number of water level sensors, i.e., the fewer the water level sensors, the lower the total cost of the monitoring network. Combined with the decision variables, the objective function of minimum total cost was obtained as follows:
$$ f_{1} = min\mathop \sum \limits_{j} x_{j} \forall j \in M $$
(2)
This objective function was mainly used to optimize the location of water level sensors in the spatial domain.
Minimum average monitoring time
The average monitoring time refers to the average of the maximum monitoring time (t_{max}) corresponding to all potential monitoring points where water level sensors were installed. The t_{max} of M_{j} is the latest time when water inrush within MT j was detected. Under the condition that the monitoring response time T is determined, the t_{max} of the potential monitoring point M_{j} can be calculated, and the value of t_{max} is less than or equal to the value of T. Combining the decision variables, the objective function of minimum average monitoring time was obtained as follows:
$$ f_{2} = min\left( {\frac{{\mathop \sum \nolimits_{j} x_{j} t_{max} }}{{\mathop \sum \nolimits_{j} x_{j} }}} \right) \forall j \in M $$
(3)
This objective function was mainly used to optimize the location of water level sensors in the time domain.
Restraint conditions

1.
No more than one water level sensor should be installed at each potential monitoring point:
$$ x_{j} = \left( {0, 1} \right) \left( {j = 0, 1, 2, \ldots , m – 1} \right) $$
(4)

2.
Within the monitoring response time T, each water inrush point should be monitored by at least one water level sensor:
$$ \mathop \sum \limits_{{j \in N_{i}^{T} }} x_{j} \ge 1 \left( {i = 0, 1, 2, \ldots , n – 1} \right) $$
(5)

3.
The monitoring response time T is the time requirement of monitoring water inrush when designing a monitoring network for a mine, and its unit is seconds:

4.
Mining area
The mining area refers to the area in the mine where excavation engineering construction is still ongoing, including slope faces and development ends. The roof and floor of coal seams in these areas are more seriously damaged, and mining cracks are more likely to penetrate the aquifer resulting in a water inrush hazard. Therefore, the optimized layout of a water inrush monitoring network in the mining area meets the requirements for preventing mine water disasters. The constraint conditions can be expressed by the following formula:
$$ M_{area} = \left\{ {C_{1} , C_{2} , \ldots , C_{k} } \right\} $$
(7)
C_{k} represents a mining area with sequence number k, and is also a set of some water inrush points.

5.
Water inrush risk level
Monitoring water inrush is critical in mining areas, especially in mining areas with a high water inrush risk level. Therefore, when selecting locations for the installation of water level sensors, the influence of the water inrush risk level should be considered. In locations with a high water inrush risk level there is a need for monitoring networks to rapidly determine the occurrence of water inrush.
According to the hydrogeological conditions of a coal mine, a water inrush hazard zoning scheme can be applied using wellestablished water inrush hazard zonalevaluation methods for the roof and floor of coal seams. For example, the three figuresdual prediction method has been applied to conduct a zonal evaluation of water hazards in a coal seam roof, and the vulnerability index method has been used to conduct a comprehensive zonal evaluation of water inrush risk for a confined aquifer in a coal seam floor^{26,27}.
Based on the location of the water inrush points in the mining area and the results of the water inrush risk zonalevaluation of the mine, water inrush points were assigned different water inrush risk levels. The corresponding relationship between the water inrush risk level and the monitoring response time T was then established (Table 1). The corresponding relationship was dependent on the capacity of the drainage system in different mining areas and the time required for the monitoring network to detect a water inrush.
The judgment criterion used to determine the water inrush risk level was “care about high not about low”. For example, if there were three different water inrush risk levels (1, 3, and 4) in a development end, then the water inrush risk level of the development end was uniformly set to 4. According to Table 1, the corresponding monitoring network response time T should be 900 s. This constraint condition could be expressed by the following formula:
$$ N_{i} \in I_{r} \left( {r \in 1, 2, 3, 4, 5} \right) $$
(8)
where r refers to the water inrush risk level and I_{r} refers to the set of water inrush points for which the risk level is r.

6.
Installation at specified locations
The method for determining the optimal layout of the mine water inrush monitoring network was based on the premise that the water inrush per unit time was greater than the drainage capacity of the mining area or working face. Therefore, the location of the water level sensors was optimized to detect disastrous water inrush events, with a water volume greater than the drainage capacity. Generally, the probability of a disastrous water inrush in a mine is low. To ensure that the optimized location of the water level sensors considered the monitoring of the daily water inflow of a mine, a constraint condition for installing water level sensors at designated locations was proposed according to the location of the mine drainage system, water sumps, and monitoring points for daily water inflow. The constraint condition was expressed by the following formula:
$$ x_{j} = 1, j \in D $$
(9)
where D is the set of potential monitoring points at the specified location, and j is the identification number of a potential monitoring point.
Algorithm design
The NSGAII is an elitist nondominated sorting genetic algorithm with an elite strategy and is one of the most popular multiobjective genetic algorithms^{28}. It reduces the complexity of the NGSA and has the advantages of a fast running speed and good convergence of the solution set. The focus and difficulty of the NSGAII genetic algorithm lies in the design of its genetic operation, which mainly includes the coding method, population size, selection, crossover, and mutation. The validity and feasibility of the solution should be considered when determining the optimal location of water level sensors. Using the NSGAII multiobjective genetic algorithm to determine the optimal location of water level sensors, the legitimacy and feasibility of the solution was confirmed. The NSGAII design steps are described in detail below.

1.
Coding design
A 0–1 coding scheme was adopted, in which 1 means a water level sensor was installed at a potential monitoring point, and 0 means that no water level sensor was installed. Assuming that the number of potential monitoring points was 10, Table 2 shows the chromosome of an individual monitoring point. The gene of this chromosome was 0010110100, which means that water level sensors were installed at the locations of the potential monitoring points numbered 2,4,5,7.

2.
Initial population
The initial population size was expressed by P, i.e., the number of individuals in the population. The value of P was set to 100.

3.
Genetic operation
Genetic operation consists of selection operation, crossover operation, and mutation operation. The selection operation adopted random sampling, the crossover operation adopted a twopoint crossover, and the crossover probability was set to 0.8. The mutation operator of a binary chromosome was used, and the mutation probability was set to 0.1.

4.
Termination conditions
The running generation was selected as the termination condition of the algorithm, i.e., when the running generation was greater than the set value, the program stopped calculating. The operation generation was represented by G, and G was set to 60,000.
The NSGAII multiobjective genetic algorithm was implemented using the Python programming language and “Geatpy” library function on the PyCharm compiler platform.