Next Article in Journal
The Impact of Immersive Virtual Reality on Knowledge Acquisition and Adolescent Perceptions in Cultural Education
Previous Article in Journal
Enhanced Fault Detection in Bearings Using Machine Learning and Raw Accelerometer Data: A Case Study Using the Case Western Reserve University Dataset
Previous Article in Special Issue
Erlang-U: Blocking Probability of UAV-Assisted Cellular Systems
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Medical Support Vehicle Location and Deployment at Mass Casualty Incidents

by
Miguel Medina-Perez
,
Giovanni Guzmán
*,
Magdalena Saldana-Perez
* and
Valeria Karina Legaria-Santiago
Centro de Investigación en Computación (CIC), Instituto Politécnico Nacional (IPN), Unidad Profesional Adolfo López Mateos (UPALM)-Zacatenco, Mexico City 07320, Mexico
*
Authors to whom correspondence should be addressed.
Information 2024, 15(5), 260; https://doi.org/10.3390/info15050260
Submission received: 19 April 2024 / Accepted: 25 April 2024 / Published: 3 May 2024
(This article belongs to the Special Issue Telematics, GIS and Artificial Intelligence)

Abstract

:
Anticipating and planning for the urgent response to large-scale disasters is critical to increase the probability of survival at these events. These incidents present various challenges that complicate the response, such as unfavorable weather conditions, difficulties in accessing affected areas, and the geographical spread of the victims. Furthermore, local socioeconomic factors, such as inadequate prevention education, limited disaster resources, and insufficient coordination between public and private emergency services, can complicate these situations. In large-scale emergencies, multiple demand points (DPs) are generally observed, which requires efforts to coordinate the strategic allocation of human and material resources in different geographical areas. Therefore, the precise management of these resources based on the specific needs of each area becomes fundamental. To address these complexities, this paper proposes a methodology that models these scenarios as a multi-objective optimization problem, focusing on the location-allocation problem of resources in Mass Casualty Incidents (MCIs). The proposed case study is Mexico City in a earthquake post-disaster scenario, using voluntary geographic information, open government data, and historical data from the 19 September 2017 earthquake. It is assumed that the resources that require optimal location and allocation are ambulances, which focus on medical issues that affect the survival of victims. The designed solution involves the use of a metaheuristic optimization technique, along with a parameter tuning technique, to find configurations that perform at different instances of the problem, i.e., different hypothetical scenarios that can be used as a reference for future possible situations. Finally, the objective is to present the different solutions graphically, accompanied by relevant information to facilitate the decision-making process of the authorities responsible for the practical implementation of these solutions.

1. Introduction

The International Federation of Red Cross (IFRC) defines a disaster as “an event that disrupts the normal functioning conditions of a community and exceeds its ability to deal with the effects with its own resources [1]”. The term natural risks refers to “natural phenomena that have the potential to cause a disaster, such as climatologist, meteorologist, hydrologist, biological or geophysical phenomena”. Given the natural conditions of the planet, all geographic regions are exposed to different types of natural risks that have the potential to cause disasters that are inevitable and sometimes unpredictable. However, disasters that could occur from these natural phenomena are also avoidable and it is the responsibility of the population to prepare to reduce its impact in three different stages: before the event (proactive), during the event (active), and after the event (reactive). The World Health Organization (WHO) defines four phases for disaster management: prevention, to minimize the effects of the incident; preparation, to plan the actions to take in each dangerous situation and to educate the population on the subject; response, to act immediately after the incident and provide medical assistance and resources; and finally recovery, to return to normal once the tasks associated with the response phase are completed [2].
If a disaster leads to a large number of casualties beyond the capabilities of healthcare providers, it is considered a Mass Casualty Incident (MCI). Medical problems resulting from an MCI are those defined by the National Association of Emergency Medical Technicians (NAEMT) in the Manual for Prehospital Trauma Life Support (PHTLS) [3] that include the following five elements:
  • Search and Rescue: This activity involves identifying and removing victims from a dangerous situation.
  • Triage and Initial Stabilization: This is the process of classifying victims according to the severity of their injuries and the primary medical care they require.
  • Patient Monitoring: This refers to continuously monitoring a patient’s health status from identification to evacuation.
  • Definitive Medical Care: It is the component in which specialized care is provided to the patient according to his needs until his recovery is complete.
  • Evacuation: This refers to the transfer of the patient from the disaster area to the area of definitive medical care.
These elements describe the tasks carried out in the disaster response phase from a medical perspective, although there are other aspects to consider when participating in an MCI. One of the most widely used risk management tools is the Incident Command System (ICS), which is designed to facilitate the coordination of agencies in different jurisdictions to work effectively together [3,4]. This system is based on an organizational structure for managing the response to any small or large incident. The ICS describes best practices for trained personnel to address the five medically relevant elements safely and efficiently; however, various factors can make the scenario more complex, such as the dynamic nature of a disaster, the uncertainty of the damage caused, and the location of the victims, among others.
A scenario that can occur in large-scale disasters is when a large geographic area is affected (originated from fires, floods, earthquakes, and pandemics), where there is a multitude of demand points and the victims are not concentrated in a single area, which means that medical personnel cannot move between them in a reasonable amount of time. In this scenario, the process of assigning the available resources needs to be analyzed. The ICS recommends that “to avoid the problems that might be caused by the massive convergence of resources to the scene and to manage them effectively, the Incident Commander (IC) may establish the required holding areas”.
In these types of situations, units are typically sent to a staging area rather than going directly to the incident location [3]. A staging area, or preparation area, is a location near the incident where multiple units can be held in reserve, and dinamically assigned as required. With this in mind, a hypothetical ambulance allocation proposal is to allocate only those ambulances necessary to care for confirmed victims at each care center, then place the rest of the available ambulances in one (or more) staging areas, and then allocate them to nearby care centers as the presence of victims is confirmed. This assignment means that an ambulance will go to a demand point, then paramedics will evacuate the victim to a hospital and return to the staging area, thus distributing the workload among all available units. However, this requires the selection and activation of staging zones, ensuring the following:
  • They are close to the centers of attention to which ambulances will be directed.
  • The number of activated zones does not create an unnecessary logistical problem.
  • They have easy access to the roads and do not represent an obstacle for vehicle traffic.
For this reason, it is recommended to identify the candidate staging areas (candidate bases) in advance. From these candidates, the areas to be activated can be determined according to the disaster conditions. According to the state-of-the-art, various authors consider hospitals and ambulance bases as starting points that can be used as candidate stating areas. However, this approach is not applicable to all countries and cities considering the local characteristics of the medical service infrastructure. Alternatively, road transport infrastructure can be used to temporarily locate this type of resources, as long as it satisfies the previous requirements. In summary, there are three major tasks to solve this problem:
  • Define a methodology to find candidate areas to reduce the search space, given the number of road segments that can be considered as staging areas.
  • Find the best staging areas to activate from the set of candidate zones, taking into account the travel time to the attention centers and the number of activated zones.
  • For each enabled staging area, assign the focus of attention to cover, considering proximity and capacity.
Taking these aspects into account, there is an opportunity to improve the ability to respond to disasters by optimizing the use of medical assistance resources, reducing the impact on the number of human losses. In the present work, these three tasks are addressed in a specific study area, adapting to local protocols and regulations; however, the methodology developed and the mathematical model of the problem can be adapted to other regions, when relevant information is available.
This article is organized as follows: Section 2 presents related work; Section 3 presents materials and methods; Section 4 presents the obtained results; and Section 5 describes the conclusions and future work. Finally, references are listed.

2. Related Work

This section presents the most relevant research related to the issues analyzed in this paper. The studies include proposals for the location of ambulances and analysis of disaster situations such as earthquakes. Others, although not directly related (such as the permanent or temporary location of medical aid facilities or centers), offer solutions that have inspired the formulation of the strategy proposed in this work.
The problem of facility location and resource allocation (location-allocation problem) has been addressed by many authors from different perspectives. For example, Halper et al. [5] considered the Mobile Facility Location Problem (MFLP) to minimize the cost of moving existing facilities and the cost of traveling to the assigned facility. Obtaining satisfactory results using a dynamic model, the authors proposed to analyze the problem by decomposing it into two subproblems: the first to assign facilities and the second to assign customers. Both are solved in polynomial time using local search neighborhoods. On the other hand, Barojas-Payán et al. [6] considered two problems in the same form: one to determine the optimal locations of warehouses to provide humanitarian assistance and the other to determine the levels of stock in these facilities. In addition, the authors proposed solving two problems: determining the optimal location of temporary medical stations and allocating the minimum number of stations to optimally cover the entire demand area. Similarly, in this paper, the optimal location of temporary ambulance stations and the assignment of the smallest number of stations are studied to optimally cover the entire demand area.
In the location-allocation research area of medical support vehicles (ambulances), Zaffar and colleagues [7] found that the main objective of most state-of-the-art work is related to finding the best distribution of ambulances to maximize coverage and minimize response times. Mohri and Haghshenas [8] analyzed the problem using the Ambulance Location Problem (ALP) as an extension of the Set Coverage Problem introduced by Toregas [9]; Kavhe and Mesgari combined the Maximum Coverage Location Problem (MCLP) and metaheuristics [10]; Hashtarkhani et al. proposed the use of MCLP and combinatorial optimization techniques [11]; while Barojas-Payán et al. [12] addressed the problem using the p-median problem.
However, in the particular case of disasters, in addition to maintaining an adequate response time as the primary objective, the location of emergency medical services (both facilities and vehicles that are temporarily or permanently located at a site) frequently must also attempt to satisfy constraints associated with the number of available resources (sometimes insufficient for the demand points), the heterogeneity of demand (that changes over time), and other uncertain or indeterminate factors [13]. For this reason, and following earlier contributions, this paper models this request using a multi-objective function that combines the p-median and MCLP (the model description is detailed in Section 3.
Zheng and colleagues [13] presented a collection of algorithms designed to solve combinatorial optimization problems in disaster situations. The algorithms were classified by problem type, such as transportation planning, location of the facility, route, or integrated (combining multiple problems). The proposed algorithms formulate functions with one or more objectives and some are considered uncertain or random factors. In the collection, Genetic Algorithms (GAs) were the most used, followed by Particle Swarm Optimization (PSO), and other heuristic techniques such as Simulated Annealing (SA), Tabu Search (TS), Harmony Search (HS), Variable Neighborhood Search (VNS), as well as hybrid models that combine different metaheuristics to solve the problem. The NGSA-II algorithm was used for evacuation planning and transportation costs by Saadseresht et al. [14]; for relief planning by Nolz et al. [15]; and for dynamically adjusting supply distribution plans according to demand requirements, delivery time, and transportation costs by Chang et al. [16].
In this work, the behavior of the NGSA-II algorithm for finding the temporary locations of emergency vehicles is studied, which is supported by the results of Schjølberg et al. [17] and Saeidian et al. [18]. They found in their experiments that for the problem of finding the location of emergency vehicles, the Genetic Algorithm achieves better results when comparing different metaheuristics, achieving a better response time, which is more pronounced in scenarios with a high demand for emergency vehicles.
Particularly in earthquake disasters, the following research proposed resource management models with different considerations. Geng et al. [19] focused on the perception of victims’ distress to analyze optimization of storage location and the allocation of supplies for emergency rescue. Alinaghian et al. [20] used harmony and taboo metaheuristics in combination with variable neighborhood metaheuristics to suggest the location of permanent health centers and temporary relief centers under normal and critical conditions, considering the characteristics before and after a disaster. To improve preparedness and response in the first 72 h after an earthquake, Oksuz and Satoglu [21] introduced a multi-objective stochastic programming model to optimize allocation of resources, temporary health centers, and medical personnel. Similarly to [21], where the model considers possible damage to roads and hospitals, including distance restrictions, in this research the characteristics of roads are evaluated.
Real-time decision-making has been studied in several contexts, but it is still challenging [22,23]. Location problems (including the p-median and MCLPs discussed in this paper) are NP-hard problems, meaning that they are extremely difficult to solve in terms of computational complexity and cannot be solved optimally for large input data. Moreover, there is no known efficient algorithm that can solve all instances of the problem in polynomial time in an NP-hard problem. To reduce computational complexity, some proposals require the list of possible candidate locations in advance or otherwise include in the methodology an approach to decrease the search space [11,21]. Saeidian et al. [18] used a GIS to select candidate locations that satisfied the initial conditions, followed by applying a metaheuristic to calculate the optimal location of temporary help centers. However, even with a list of candidate locations, conditions can change in disaster situations. Therefore, this article uses the proposal detailed in [24] to find possible locations based on the initial conditions of the problem and to reduce the search space according to the disaster scenario.
Finally, one of the works that is most closely related to the present proposal is described in [25]. Karpova et al. presented a technique for dynamically relocating ambulances that are available at a specific time, attempting to maintain complete coverage that adapts when an ambulance is occupied. Their proposal did not consider large-scale emergency scenarios, but rather everyday medical emergencies in which ambulances are individually assigned to care locations. Likewise, Caglayan and Satoglu [26] proposed a multi-objective model with three objectives: minimize the number of victims unable to be transported to hospitals after the disaster, reduce the number of additional ambulances needed in the response phase, and reduce the total transport time. Caglayan and Satoglu considered the assignment of triage points to emergency stations prior to the event and decided the number of ambulances that may be needed in advance. The number of unattended victims and the time spent in transport were minimized based on their health status.
On the other hand, Wang et al. [27] proposed a model for ambulance location-allocation in disaster management, addressing the identification of both temporary bases and medical centers with funding restrictions. It is a combination of SA, GA, and PSO. The main contribution of this research is the consideration of relocating temporary ambulance stations as the demand rate changes. The work of [28] analyzed the problem of ambulance location-allocation considering the station preference order to dispatch ambulances, the temporal variation in demand and travel time, the probabilities of station-specific ambulance occupancy, and possible everyday ambulance relocation. Their proposal used a particle swarm approach to obtain the number of ambulances assigned to each station. The adaptive VNS metaheuristic was used to solve the problem. However, both [27,28] recommended for future work to extend model experiments with different travel times from temporary stations to demand points, considering different times of day, since in a disaster situation the closest temporary station will not always be the first to arrive. To address this issue, the model proposed in the present paper consulted the traffic data corresponding to the time of day of each scenario analyzed. Thus, the actual travel time (taking into account the level of congestion of different roads) was considered to select the optimal locations to reach the demand points.

3. Materials and Methods

The proposed methodology is shown in Figure 1 and consists of eight stages: Problem Model, Historical Data, Incident Data, Data Integration, Algorithm Selection, Optimization Process, Solution Visualization, and Implementation Plan. The purpose of each stage and its components are described in the following.

3.1. Problem Model

The problem can be described as a combination of the p-median problem and the Maximum Coverage Problem, with two objectives. Formally, use the following representations:
  • b i is the i-th candidate base (decision variable).
  • p j is the j-th demand point.
  • I is the set of candidate bases.
  • J is the set of demand points.
  • U is the set of urgencies of the demand points.
  • a i j is the coverage from b i to p j (decision variable).
  • C is the cost matrix of | I | × | J | .
  • c i j is the cost of travel from b i to p j .
  • l i is the capacity of b i .
  • d j is the demand for p j .
  • u j is the urgency of p j .
  • α is the maximum cost that a route can have.
The first objective consists of minimizing the cost (distance) between the candidate bases and their respective assigned demand points (see Equation (1)), and the second is to activate the smallest possible number of candidate bases (see Equation (2)). In consequence, the two objective functions are as follows:
minimize f 1 = i I j J c i j a i j
minimize f 2 = i I b i
Subject to the restrictions described by the Equations (3)–(10).
a i j = 1 , if b i attend p j 0 , other
i I a i j = 1 , j J
j J a i j b i , i I
a i j b i , i I , j J
j J d j a i j l i b i , i I
m a x j J ( c i j a i j ) α , i I
i I b i | J | 2
b i { 0 , 1 } , a i j { 0 , 1 } , i I , j J
Taking into account the observation in [29] on the p-median problem, it is established that “if you have a solution with p installations, increasing another installation in any of the candidate nodes that do not have an installation will reduce the total weighted cost. Therefore, the objective function will decrease”. However, in the proposed model, adding an installation p deteriorates the second objective, so there is a conflict between the two objectives. Figure 2 shows an example of the relationship between the bipartite graph and the location of the candidate bases and the demand points. In this figure, the cost matrix is represented by straight gray dotted lines, and the values of a i j = 1 are represented by red lines. On the other hand, Figure 3 contains the matrices that describe this scenario.
Several definitions of the p-median problem specify a i j = 1 c i j < c i k , i k i , k I , j J . However, this is not always possible when the problem has limited capacity. For this reason, a criterion must be defined to process each p j J , taking into account demand ( d j ) , capacity ( l i ) , distance ( c i j ) , or urgency ( u j ) (several examples of urgency calculation can be consulted in [30]). For the processing of each j-th element, it is possible to apply one of the following allocation methods:
  • Classic: A p j is randomly chosen and assigned to the nearest b i .
  • Urgency-based: u j , j J is calculated and processed in descending order of u j .
  • Demand–urgency-based: Elements are processed in descending order of d j and later in descending order of u j .
Figure 4 shows the results obtained using the classic, urgency-based, and demand–urgency-based allocation methods for the same set of vectors I and J, with their corresponding capacity and demand values. It is evident that the demand–urgency-based method is less expensive. However, this condition cannot be guaranteed in all scenarios, so it must be determined which method is more appropriate for a particular case and considered as a hyperparameter for further adjustment.

3.2. Historical Data

These is a result of acquiring or generating information from the case study in which the problem is analyzed. Examples of required information include road transport infrastructure, hospital locations, reception centers, temporary refuges, and potential staging areas. Some of these data were obtained from open access databases and official sources. The remaining data set is generated specifically for the problem.

3.2.1. Official Data

These data were obtained from the Mexico City Open Data Portal (Portal de Datos Abiertos de la Ciudad de México, in Spanish) and the Risk Atlas Portal (Atlas de Riesgos, in Spanish). All layers were modified to homogenize common characteristics and reprojected to SRS EPSG:6369, Mexico ITRF2008/ UTM Zone 14N. The names of the layers and each attribute are written in lowercase, and a crop was applied using the boundary of the polygon of Mexico City. The layer list and related information are described in Table 1.

3.2.2. Generated Data

The set of geographic data required for the multi-objective optimization process is obtained and adapted in this stage. It consists of obtaining data on the road transport network and the set of possible locations for candidate bases.
Road Transport Network. The OSMNX Python library is applied to generate a graph using the Mexico City polygon as a reference. A multi-digraph object is obtained from NetworkX, where the edges represent the roads and the vertices describe their intersections. All components of the graph are georeferenced with the SRS EPSG:4326, so a reprojection is applied to the system EPSG:6369.
Candidate bases. Several approaches assume that the candidate locations where the ambulances will be placed are known in advance and are typically hospitals. In Mexico City, there are no official data, but in practice the same road transport infrastructure is generally used to place ambulances. Applying this alternative to other models, each road could be considered a candidate location, i.e., there would be 305,190 possible locations using the roads individually, or 128,825 considering only the intersections as starting points. However, the search space for the location problem would be 2 128 , 825 , which is not computationally efficient. Therefore, in this work, a simplification process based on [24] is proposed to segment the road transport network, described as a road transport graph G t = { V t , E t } , and to obtain a filtered graph G f = { V f , E f } , such that G f G t , considering a limit representing the minimum capacity ( μ ) and a proximity factor ( λ ). The process used is described in the following:
  • Selection by characteristics: Roads with any of the following characteristics are discarded:
    • It is a highway, incorporation, residential street, or it has no classification;
    • It has fewer than 3 lanes;
    • It is represented with a bidirectional edge and has fewer than 4 lanes;
    • The number of lanes is unknown and it has a lower hierarchy than the type of secondary road.
  • Selection by capacity: The road segments are discarded where it is not possible to assign a minimum of μ ambulances. On average, the length of an ambulance is considered equal to 6 m, and the use of μ = 15 removes all segments that are shorter than 90 m. Furthermore, isolated vertices are eliminated and the filtered graph G f is updated with the capacity factor.
  • Elimination of redundancy: Roads are represented by their terminal vertex, i.e., the vertex v of the road ( u , v ) , because this is the point from which an ambulance will start, and intersections of two or more roads can have a common terminal node. To avoid redundancy, roads that share a terminal node v are grouped, but their individual characteristics are preserved. As a result, a subset of vertices V s V f is obtained, which stores the attributes of the edges { ( u 1 , v ) , ( u 2 , v ) ( v ) u 1 , u 2 , v V f } and contains two new attributes, length and total capacity, which are the sum of the lengths and capacities of the grouped edges, respectively.
  • Proximity grouping: The vertices of the set V s that are “close” are grouped according to a proximity parameter λ . This proximity factor is measured by the path from point a V s to point b V s using a path in G f . Using a clustering algorithm, information from multiple vertices ( w 1 , w 2 , . . . , w n ) is added to a representative vertex v.
A reduction is applied when obtaining the network using OSMNX, in which the edges representing connected roads without intersections are merged, i.e., the edges ( u , v ) , ( v , w ) are merged into ( u , w ) if the vertex v has no neighbors (either ancestors or predecessors) except u and w. For this reason, 21,454 edges in the graph represent more than one road, having multiple attribute values such as name, type, and number of lanes, among others. In the previous simplification process, the merged roads were considered a single road of the type of lower hierarchy present in the merged roads, i.e., if a primary road and a secondary road have been merged, the new edge is considered a secondary road but preserves the original attributes of the merged roads. To verify the coverage that the bases have throughout the city, the distance between each vertex of G t and its nearest base is evaluated using the Voronoi diagram of the graph with the resulting candidate bases as control points, i.e., the set V. To detect possible changes in this coverage, different weights can be applied to the edges using historical traffic data.

3.3. Incident Data

In this stage, event information is collected from the location of the demand points, considering the confirmed or possible number of victims, as well as blocked roads, traffic data, and available hospital capacity. In a real scenario, these data are obtained from government sources as the information is being integrated. In an experimental scenario, historical data from previous incidents are used.
Location of demand points. The CDMX Open Data Portal provides georeferenced data on buildings that collapsed or suffered damage during the 19 September 2017 earthquake, which can be used to estimate the probability distribution of damage locations that could occur in future events. It is proposed to generate new hypothetical scenarios that follow this spatial distribution and enable an adjustment of the algorithm parameters based on different instances of the same problem, using the kernel density estimation of the buildings damaged in the 2017 earthquake, and using the library scikit learn and a Gaussian kernel. To determine the bandwidth of the kernel, a grid search is performed (in one dimension) with 1000 values of powers of 10, from 10 1 to 10 4 . For each bandwidth value, the KDE is obtained using the leave one out validation method, and selecting the maximum likelihood logarithmic estimation.
In addition, the demand for each of them has to be estimated. In a real scenario, the responsible official reports the location of the incident and its characteristics to make an initial estimation of the damage per quadrant [40]. This estimation includes details of damaged buildings (does not change), as well as the number of victims (may change as more specific information becomes available). The official data reported in the September 2017 earthquake do not have this information; therefore, it is proposed to make an approximation of the number of victims by using the points generated with the kernel density, the data from the land census, and the SEDUVI, which requires the following modifications:
  • Only residential buildings with information on the number of levels are considered.
  • If a building does not have the number of levels but the height, then half of the height in meters is used as the number of levels.
  • For blocks that do not have the average number of occupants, the average of the surrounding blocks is used.
To estimate the number of victims in each p j , the following steps were performed:
  • n points are sampled using the kernel with 15 n 60 ;
  • Search for the nearest building in the land records layer using Euclidean distance.
  • The block in which each building is located is identified by calculating the Euclidean distance between the building and the centroids of the blocks.
  • The average number of occupants per apartment p o c u p in the block is taken and rounded to the closest integer using the ceiling function.
  • If the building has three floors or less, it is considered a single-family unit, so the number of victims of the block is equal to n v i c t i m s = p o c c u p .
  • If the building has more than three levels, it is considered a multi-family building, and the average number of residents in the block is multiplied by the number of levels n v i c t i m s = n l e v e l s × p o c c u p .
Traffic data. Traffic data can be obtained in real time through TomTom’s TrafficFlow API according to the specifications provided on the website, which is in raster format and segmented into fixed-size rectangular tiles, representing an exponential division of space [41], as is described in Figure 5a. To optimize the memory required to maintain all tiles, the data are converted to single-band rasters that preserve the different traffic classes by mapping the RGB components with a range of [ 0 , 255 ] to a class index of [ 0 , 6 ] ; see Figure 5b.
When tiles are available as single-band raster data, a sampling is performed for each edge of the graph. This is performed by calculating the center of the sampling window, which is the end of the line segment perpendicular to the intermediate line segment of the edge geometry and crossing its center. The final result of the extraction of traffic data is a Pandas dataframe that associates the id of each edge ( u , v , k ) with an integer value for each color that corresponds to the most commonly used value in the sampling window. However, if the sample window does not contain a number other than 0, it is assumed to represent free traffic segment and the number 1 is assigned.

3.4. Data Integration

At this stage, the Historical Data and Incident Data are concentrated and processed. Analysis is performed to ensure that all geographic data are in the same coordinate system and that all files are properly formatted. The incident data update the status of previous data, with features such as the possibility of traveling along the road axes, obtaining a geospatial model that describes the complete scenario of the incident. Specifically, to obtain the required Geospatial Model, it is necessary to apply the procedure described below.

3.4.1. Upload Information

The data previously obtained must be loaded, processing the following information:
  • Candidate locations as temporary bases I, l i , i I . Since bases are a subset V V t , they are identified by the id of the vertex in G t , i.e., the node attribute is used as an index;
  • The road transport graph G t = V t , E t ;
  • The location of hospitals with more than 10 beds;
  • The points where the victims are located are identified by an i d denoted num;
  • Traffic data associated with the incident.

3.4.2. Update Previous Data with Incident Data

For each particular scenario, the following data must be modified before performing an optimization technique, in order to consider the specific characteristics of each incident:
  • The traffic information is included in the traffic graph G t as an attribute (traffic) of the edges. If historical traffic data are used, all available data collected on the same day of the week with the closest time to the event are obtained.
  • A version of the graph is obtained in which there are no vertices that cannot be reached from a candidate base. Since the simplification of G t excludes unclassified roads, some points cannot be traveled to from a temporary base. This does not mean that they cannot be accessed, but only that they will not be considered as a destination point and the nearest available edge or vertex will be considered instead. To determine which points must be discarded, the Voronoi diagram of G t is calculated using the candidate bases as control points. Vertexes that are not grouped in any cell are eliminated from G, resulting in a graph G u .
  • The nearest edge to each demand point and to each hospital in the graph G u is identified. These edges are stored with their identifier ( u , v , k ) in independent lists that will be used later.
  • Edges of G t that are not traversable are identified, either because they have a value of 5 or 6 in the traffic classification, or if it is the closest edge to p j and is found in the list of edges from the previous step. All edges of G t are assigned a state attribute locked and marked true for those identified in this step.
  • The edge costs of G t are calculated as the weight attribute as follows:
    • If the value of the block attribute is false, the value corresponding to the mapping trafficweight is assigned as the value of the weight attribute:
      -
      1 1 × l ;
      -
      2 2 × l ;
      -
      3 4 × l ;
      -
      4 6.7 × l .
      where l is the length of the edge and the coefficient is the inverse of the speed, expressed as the distance.
    • On the other hand, if the lock attribute is true, the maximum weight is 1 × 10 9 .
  • Candidate bases that satisfy any of the following conditions will be identified:
    • It has no successors in the graph G t (this can occur at the boundaries of the zone).
    • Some of the grouped edges are found in one of the lists in step 3, i.e., there is a demand point or a hospital on one of the streets it represents.
    • They have a traffic value greater than 2.
    These bases are discarded for use in the optimization problem, so they are not included in the calculation of the cost matrix.
  • The graph G t is updated with the new edge attributes.

3.4.3. Computation of the Cost Matrix

The resulting set I is used to calculate the origin–destination matrix (matrix C). To define the targets (set J), we take the two endpoints of the nearest edge to each demand point and use the vertex with the highest cost to consider the worst-case scenario. If the most expensive vertex to reach requires traveling through the blocked path, the lowest-cost point is considered. The result is the set J, where each element represents the closest vertex of the graph G t to the true location of each demand point with the estimated number of casualties.
Assuming | J | < | I | , it is more efficient to compute G t 1 and run Dijkstra’s algorithm | J | times than to use G t and run the algorithm | I | times. The result is the cost of traveling from each vertex of G t to p j , which is stored in a Pandas dataframe that relates the id of each vertex and its distance to j. In addition, another dataframe is stored that relates each vertex to its predecessor. Finally, the dataframes define the cost matrix, where each row represents a base i I and each column represents a demand point j J . The relationship between position (row or column number) and base identifier (node attribute) or demand point (num attribute) is stored to know which indices i and j correspond to each base and demand point, respectively. The implementation of Dijkstra’s algorithm is based on the cuGraph library.
Demand estimation. Since each b i has limited capacity and the total number of ambulances must be distributed to cover all the demand points, the value of d j , p j J is estimated with the ratio between the number of victims at that demand point and the total number of victims. After identifying the closest activated bases, the number of ambulances assigned to each group can be adjusted, provided that there is a tolerance in the total capacity of each base. To have a tolerance in the capacity of each base, half of the total capacity is taken as a value. Equation (11) describes the calculation of demand ( d j ) for a given demand point ( p j ).
d j = round n v i c t i m s j j J n v i c t i m s j × ( k | J | ) + 1
where n v i c t i m s j is the number of victims in p j and k is the number of ambulances that are available to meet the total demand. The number of ambulances in Mexico City varies, although most of the sources consulted agree that there are more than 290 ambulances. Considering that not all of them will be available at the time of a disaster, it is proposed to use the number of 250 ambulances.
Instance storage. When all the data used to describe the problem are available, the data are stored as Python objects. This process is performed for each of the 10 hypothetical scenarios proposed. Each scenario has its own set of demand points and random traffic data for one week in November at different times.

3.5. Algorithm Selection

In multi-objective optimization problems, one of the most widely used algorithms is the NSGA-II algorithm, both in computational engineering problems and in other areas [42,43,44]. For this reason, the NSGA-II Genetic Algorithm was used and in order to improve the performance of this algorithm; its parameters were modified by using the following procedure.

3.5.1. Design and Implementation

The implementation of the NSGA-II algorithm is carried out using the Python library p y m o o . The algorithm works with solutions using a feasible first selection method, as described in the [45] library documentation. To solve the optimization problem, several objects should be defined.
Problem and solution representation. This is an object that describes the mathematical model of the problem.
Algorithm. It is the object through which the proposed algorithm is carried out. It receives as input the parameters of the algorithm and three additional parameters:
  • Remove duplicates: A boolean parameter that indicates whether or not solutions that are the same in the current population should be removed. There is no guarantee that there will be no repetition of solutions from previous generations that have been removed. In this paper, this value is set to true.
  • Stop criteria: This is an object that contains the criteria that determine when the algorithm stops, which remain fixed for all configurations with the values described in Table 2. These values were chosen after a tuning stage, defining test scenarios with a high maximum number of generations, n _ m a x _ g e n = 10 , 000 , 000 , and analyzing the behavior of both xtol and ytol. The smallest values found were higher than 0.0001 and the best point was reached in fewer than 500 generations; therefore, this limit was used for n _ m a x _ g e n as well as 0.0001 for xtol and ytol. The number of evaluations of the objective function was determined considering the worst case, assuming 200 subjects in the population, and supposing the limit of 500 generations is reached, the result is 100 , 000 . The 100 value used in period and n_skip prevents evaluating the stop criteria in each generation, but different values can be assigned. Tolerance values are used to compare the Pareto fronts of the current generation P n and a generation from a previous period P n p e r i o d , each n_skip generations. This comparison depends on the space in which it is performed:
    • In the decision space (xtol), two Pareto fronts P n and P n p e r i o d are compared using Equation (12):
      x t o l = 1 | X | b X max i = 1 | Y | j = 1 | b | ( b j Y i j ) | b |
      where P n = [ f 1 ( X ) , f 2 ( X ) ] and P n p e r i o d = [ f 1 ( Y ) , f 2 ( Y ) ] .
    • In the target space (ftol), the Inverse Generation Distance (IGD) is calculated between the normalized fronts to be compared, that is: f t o l = I G D ( P n ¯ , P n p e r i o d ¯ ) .
  • Repair function: Depending on the allocation method, the different solution vectors b can change and be reduced to the same solution vector, because activated bases that do not correspond to any demand point are discarded. There are two ways to repair:
    • Normal repair: The assignment process is performed and the modified solution vector b that satisfies the required constraints is returned to the algorithm to remove duplicates in the current population.
    • Repair with mutation: The assignment process is performed and the modified solution vector b is checked; if this vector has already been obtained after the assignment process, regardless of the number of generations, the solution vector is mutated and the assignment process is performed iteratively until a valid modified vector that has not been evaluated before is obtained, that is, an unexplored solution.
    Since the assignment process is performed during repair and then before evaluation (for new solutions), it is important that the assignment is the same at both times, that is, the same b always produces the same a. In the case of the urgency-based and demand–urgency–based allocation methods, this is not a problem, since they are deterministic methods; but in the case of the classic allocation method, the first assignment must be recorded for future processing, since it has a stochastic component. For this purpose, a dictionary is used for storing the pairs (b,a), where b is encoded with the hash method sha256.

3.5.2. Parameter Selection

Since each algorithm requires a specific set of parameters, the correspondence between the required parameters and the information described in the Geospatial Model, categoric or numeric variables, is determined. Categoric variables can be different methods of performing an internal procedure of the algorithm, such as the assignment process, crossover and mutation operators, and the metric used to measure performance, among others. Numeric variables are the hyperparameters of an algorithm that can take different integer or real values, such as the number of individuals, the percentage of crossover and mutation, and the number of offspring, among others. For numeric variables, it is important to define a finite set of options to limit the search space. Table 3 shows the parameters proposed to find a configuration that solves the problem in a reasonable time.
The biased bit flip mutation operator uses a probability of 0.5 for active bits (value 1) and zero for inactive bits (value 0). In addition, for each inverted bit, another bit is inverted that is different from all the bits that were originally inverted, so that the number of active bits remains intact after the mutation. Note that the probability of mutation refers to the probability of a chromosome mutating, and each bit within the chromosome has a fixed probability of mutation of 1 | I | . Similarly, the probability of crossover represents the probability that two chromosomes will recombine, and each bit has a probability of inheriting children of 0.5.
Furthermore, the parameter α is kept fixed for all instances and the ideal value of 9000 m is proposed, that is, 9 min of response from the candidate base to the demand point, under the assumption that the ambulance travels at a constant speed of 60 km/h. The value of 9 min is a standard recommended by [47] and is used in the models described in [7,48]. However, this is an ideal case, so they propose the range [9–13] min. Our assumption is that there is at least one ambulance on standby in each location, which is dispatched the moment a victim is confirmed, and another unit is immediately requested from the corresponding base, even if no other victim is confirmed. Therefore, a response time in this range would only be necessary in the worst case.

3.5.3. Parameter Tuning

The parameter tuning technique irace was used through its official library in R. Since this technique is designed for single-objective algorithms, it must be adapted to a multi-objective problem by representing the Pareto front by a scalar value [46]. There are several ways to scalarize the Pareto front. Some require knowledge of the ideal Pareto front to quantify their similarity. Since no ideal front is known, these alternatives are not an option. On the other hand, in the implementation guide irace [46] suggests the use of the hypervolume indicator, which requires a reference point to scalarize a Pareto front that can be used as a comparison metric between different algorithms or configurations.
The reference point for this metric should be chosen to ensure that every solution on the Pareto front contributes to the hypervolume. For this reason, it must be greater than the maximum value of each objective. To guarantee this, the point ( 1 , 1 ) is defined as the reference point and both objectives are normalized from 0 to 1 by dividing the value of each by the maximum possible value, i.e.,
f O n o r m a l i z e d = f O i f O i m a x , i P , O [ 1 , 2 ]
where P is the Pareto front obtained by the algorithm, and the maximum f O m a x for each objective O is calculated using Equations (14) and (15):
f 1 _ m a x = α × | J |
f 2 _ m a x = | J | 2 + 1
Regarding the implementation of irace, the parameter files are defined together with the scenario and target-runner.py, which is a Python script that provides the interface between R and the program that receives the parameters and implements the algorithm. In the scenario, a budget of 5000 iterations is defined and the execution method is “ e x e c u t e _ t h r e a d e d _ t i m e o u t ” with a maximum of two attempts per configuration and a maximum time of 420 s (7 min), after which the operation of irace is aborted. To avoid interrupting the execution of the target-runner.py script, a maximum time of 6 min is defined for the internal operation of the algorithm. This is based on the assumption that a reasonable time to obtain a solution is 5 min plus the time it may take to load the data or generate the instance data. This means that the target-runner time limit will always be reached, because the optimizer itself stops the execution when the 6 min limit is exceeded and returns a value. If it finishes in time, it returns the value of the inverse of the hypervolume of the Pareto front obtained, and if it exceeds the time, it saves the configuration parameters and returns a value of 1 to indicate poor performance and discard it. Note that irace is a minimization algorithm by default, so the inverse of the hypervolume is used as the evaluation metric.

3.5.4. Performance Evaluation

This enables the evaluation of the result of different configurations in different cases of the problem. The result is a set of elite configurations. Their performance can be compared to determine how to implement them in future problems. For this purpose, the five elite configurations with the best performance are taken as a reference, along with the three instances that describe the lowest, median, and highest number of demand points. To observe convergence to the Pareto front of elite configurations, the algorithm is executed 20 times with different random seeds for each elite configuration, obtaining the minimum, maximum, average, and standard deviation values of the hypervolume indicator to compare with the information obtained in the parameter adjustment stage. According to the performance of the configurations and the requirements in case of an emergency, different paths are chosen to find the solutions to present, for example, to the decision manager:
  • Run the algorithm with the best performance multiple times using different random seeds until the maximum time is reached.
  • Run the algorithm with the different elite configurations obtained as many times as possible without exceeding the maximum time.
For this purpose, the time required for the execution of the algorithm, as a function of its parameters, must be recorded, weighting the importance of the solution quality and the speed with which it is generated. Additionally, the execution times of the last 20 iterations per configuration are recorded. To make comparisons between configurations, the median value (50th percentile) of the inverse of the hypervolume is used as a reference, which represents the maximum value that 50% of the executions will have.

3.6. Optimization Process

This stage performs the algorithm using the parameters with the best performance obtained in previous stages. For new cases, steps 1, 2, 3, 4, and 6 should be executed using the algorithm with the best combination of parameters. After the result is obtained, the decision-maker must choose one of the available options on the Pareto front to decide how the temporary bases are allocated. By performing multiple executions, the multiple Pareto fronts obtained are merged, and the non-dominated solutions separated, among which the final decision for subsequent implementation will be made. To avoid the fact that multiple executions do not represent a disadvantage in terms of sequential execution time, parallelization of the executions is proposed using the joblib library. In the process of determining final solutions, if there are activated bases that cover a single demand point, the actual assignment of ambulances will be made directly to the waiting area of that point, rather than using the closest temporary base determined by the algorithm, since it is not relevant to assign ambulances to a neighboring base.

3.7. Solution Visualization

Once the Pareto front with the candidate solutions is computed, it is possible to plot it to facilitate decision-making. For this purpose, the following elements will be displayed on a map of Mexico City:
  • The locations of the attention centers, showing the number of resources required;
  • The locations of the activated bases, displaying the number of ambulances;
  • The routes from each enabled base to each assigned demand point. They are identified by using a different color for each base and their cost;
  • Boundaries of townships;
  • The attention regions defined in the earthquake emergency plan serve as a reference to assign a person directly responsible for the administration of each base, depending on where they are located;
  • The location of the hospitals and, if available, the number of beds available;
  • The location of collection centers and refuges.
Visualization is performed using the geopandas library, which contains functions that allow other functions of the folium library to be implemented indirectly, providing visualization parameters without having to develop an implementation from scratch. The product of using this library for visualization is an HTML file that can be included in a web page for visualization.

3.8. Implementation Plan

Once the decision-maker selects a solution, the implementation plan must be defined to coordinate response activities with different emergency services. Although this stage is not part of the objectives of this research, a proposal is presented to relate the solution to the current earthquake action plan. Initially, more information is obtained from the selected solution, as follows:
  • Voronoi diagram with activated bases: The Voronoi diagram of the graph G t can be obtained using activated bases b i = 1 as control points. In the case of the external Voronoi diagram, the routes for each vertex of the graph are obtained as the destination and the closest activated base as the origin, which can be useful for addressing other incidents that occurred after the current solution was chosen. In the case of the internal Voronoi diagram, the route can be obtained from any vertex of the graph G t to its closest activated base, allowing one to identify the shortest route that ambulances can take to the assigned base from any point they encounter.
  • Voronoi Diagram with hospitals: Obtaining the internal Voronoi diagram of G t using the vertices closest to each hospital as control points, we obtain the shortest path from any other vertex in G t to the nearest hospital. This can be useful in determining which hospital to take patients to, depending on the location of the victims and whether it is an isolated victim transported in a private vehicle or a victim from a care center transported in an ambulance.
  • Attention flow: Once the available ambulances have been assigned to activated bases as preparation points, a person in charge of each is designated and the commander in charge of the attention centers is notified that they will be served by that base. The sequence they must follow to distribute the workload is as follows:
    -
    At least one ambulance must remain in the waiting area near the attention center.
    -
    Once a victim is confirmed, he is assigned to the ambulance in the staging area and the appropriate staging area is notified to dispatch another unit.
    -
    The victim is transported to the nearest hospital and the ambulance returns to the same staging area from which it originated, taking the last spot in line. On the way back to the staging area, the operator of the ambulance has the choice of fuel loading.
    -
    If one of the bases runs out of ambulances and still has demand, ambulances from other bases with lower demand can be arbitrarily reassigned, omitting the formula for estimating demand and adapting the solution to the new emergency conditions.
  • Changes in the Emergency Situation: Although a static model is considered at the time the optimization algorithm is performed, some actions are required to adjust the solution to the new conditions. First, when a significant number of headlights are introduced, the algorithm is repeated, reassigning the ambulances from the old solution to the closest bases from the new solution. If the changes are primarily traffic-related and there is an Internet connection, it is possible to perform the traffic query to generate the new weights of the edges with these data, and then compute the routes from the bases to the ambulances. However, since the bases are already activated, instead of performing the entire optimization process from scratch, it is sufficient to obtain the external Voronoi diagram with the bases as control points to find the new paths. In this case, the Voronoi algorithm would update the assignment vector a based on the previous solution vector b, but it cannot ensure that the constraints defined in the model are satisfied.

4. Results

The computing equipment used to implement the methodology has an Intel Core i9-9900K processor and NVidia GeForce RTX 2080 graphics card; consequently, all execution time measurements of the procedures are relative to these characteristics.

4.1. Generated Data: Candidate Base Locations

In order to solve the proposed problem, a data set must be generated that describes the candidate base locations that can be used as temporary ambulance bases. Table 4 describes the number of resulting elements after each step described in the previous section. Furthermore, the steps to obtain candidate locations in a specific area are sketched in Figure 6.
To perform coverage analysis, we applied the weights corresponding to the average traffic at each edge according to the defined hours, considering the traffic speeds of 20 ,   30 ,   40 ,   40 ,   50 , and 60 km/h. Applying the Voronoi diagram algorithm, the data in Table 5 were obtained. This table presents the percentage of graph vertices that are less than 9 min and the response time at which 95 % of the vertices are located (95th percentile). This table reveals that the difference between coverage at different times does not vary substantially. In particular, at 7 and 8 p.m. and 3 p.m., the percentage of vertices covered by the nearest base is smaller for the speed 20 km/h. Note that higher speeds increase the percentage of vertices that can be reached from a candidate base in less than 9 min. Starting at 50 km/h, all vertices satisfy this property, which is essential to justify the maximum cost constraint used in the problem model.

4.2. Generated Data: Demand Points

The Kernel Density Estimation (KDE) used to generate the hypothetical scenarios is shown in Figure 7, where the best bandwidth value found (1365) was used. The projection of the KDE on the x (longitude) and y (latitude) axes is also observed with the projection of the original data used to generate the KDE (black lines). In total, 10 hypothetical problem scenarios were generated, each associated with a random date and time from which traffic data can be obtained to define a problem instance. Figure 8 shows the scenarios with the lowest and highest number of demand points. To generate an instance of the problem, each hypothetical scenario is associated with a time and date from which traffic data can be obtained. The characteristics of these instances are described in Table 6.

4.3. Data Obtained: City Traffic

Table 7 describes the parameters used to capture traffic information for most CDMX streets by applying the procedure described in the methodology section. Furthermore, Figure 9 shows the tiles required to map the city; additionally, on the right a zoomed-in region on the Cuauhtémoc district is displayed. Finally, to obtain the traffic for each edge of the graph, Figure 10 shows the different stages required.

4.4. Parameter Tuning

Once the instance generation process is finished, execution of irace is carried out with the implementation of the NSGA-II algorithm [43,49,50]. The execution of the algorithm is characterized by the features listed in Table 8.
The five elite configurations with the highest average performance are listed in performance order in Table 9. There are parameter values that are repeated in most cases, including the uniform crossover operator (4/5), the emergency assignment method (5/5), the repair with mutation (5/5), the population of 200 with 50% offspring (5/5), the crossover percentage of 0.5 (4/5), and the mutation percentage of 0.5 (4/5). The experiments carried out are shown in Figure 11, which were obtained using the Python code provided in [51]. This figure shows that in the first iterations, parameters are sampled that produce regular configurations. These configurations do not converge near the minimum value found (marked with ×); however, as iterations progress, the elite configurations start to appear in the graph (◊,★), and most of the time they are found at values closest to the known minimum. In addition, instances that were aborted because they exceeded the execution times of 6 min (they return the value 1) are shown at the top, and these instances have been registered in a nonfeasible configuration file. In total, 164 iterations were interrupted.

4.5. Solution Visualization

The result of the optimization process for each instance is a preview visualization of all Pareto front solutions. Considering the 2017 earthquake post-disaster scenario solutions described in Figure 12, and the relevant data for each solution of this scenario in Table 10, Figure 13 contains the preview of three solutions: 1, 8 and 14. Figure 14 shows the HTML file generated when processing solution number 8 (the knee point of the Pareto front in the Figure 12). It is possible to interact with this generated map to visualize more information about the elements found.

4.6. Implementation Plan

An example of the Attention Flow described in Section 3.8 is presented. Clicking on the marker of an activated base will display the group number, the locations where ambulances should be assigned, the number of locations to be serviced, the most distant focus of attention, the number of ambulances to be deployed, and the total capacity of the activated base. Similarly, clicking on a route produces geometry information and a message indicating the group to which the route belongs, the focus of attention associated with the base, and the base’s ID in the transport network. These elements are shown in Figure 15.
An X symbol of the color assigned to the group is displayed next to the demand points. Clicking on one of these points displays the number of the demand point, the number of victims, the estimated demand, the group to which it belongs, the address, the coordinates, and the average number of residents in the block, as shown in the Figure 16. Finally, other points of interest can be shown, such as the publication of hospitals, gathering centers, and temporary shelters that can be installed, related to geographic information obtained from official data.

4.7. Runtime Results

The creation of an instance from the location of the demand points and the traffic information requires an execution time that needs to be analyzed; therefore, 15 executions of the complete procedure were carried out, obtaining the data described in Table 11.
Figure 17 depicts the comparison between the computation of the routes by Dijkstra’s algorithm with the implementation of NetworkX and the implementation of cuGraph. In this figure, the processing time is proportional to the number of demand points, and the performance with NetworkX is almost three times slower compared to cuGraph for all instances. Therefore, the final implementation uses the cuGraph library.
The rest of the execution time to create the instances corresponds to the reading of data and the execution of procedures without taking into account the path calculation. Figure 18 shows the percentage of time required for each stage in the total runtime, where the reading is between 20 and 25 s and the processing takes about 30 and 33 s, which does not represent a significant difference between the different instances, as in the case of routes.

5. Conclusions and Future Work

Relevant data can be obtained from official data sources in the study area to solve the location-allocation problem of ambulances in Mass Casualty Incidents with multiple demand points, integrating historical data of disaster incidents; the location of complementary resources, such as hospitals, temporary shelters, and collection centers; and the geographical delimitation of regions of care designated by the authorities of emergency services.
The proposed methodology to determine candidate emergency response areas (candidate bases) allows us to find a subset of 1846 representative vertices on the graph that model the road transport network, from which at least 99 % of the remaining vertices are expected to reach within 9 min at 40 km/h, considering different daytime values. In contrast to the alternative of using the complete road transport network in the problem model, the resulting search space contains only 1.43 % of the original graph. Although the identification of candidate bases is performed statically, it is possible to discard more bases considering complementary event data, such as traffic data.
By obtaining the set of roads that can be used as temporary ambulance bases with their respective capacities, the location of the demand points with their respective estimated number of victims, and the graph that models the road transport network, it is possible to analyze the location-allocation problem as a multi-objective optimization problem. This model requires the identification of the candidate bases to be activated (location) and the demand point served by each one (allocation), subject to eight constraints that ensure the congruence of the solution and limit the solutions to viable regions, considering the maximum response time or the maximum number of candidate bases to be activated.
By using the Kernel Density Estimation of the historical data of buildings damaged by the 19 September 2017 earthquake, it is possible to generate hypothetical scenarios of the problem. For each scenario (hypothetical or real), a specific instance of the same problem was generated. To generate such an instance, the read time of the data and the procedure have approximately the same duration, but the time needed to compute the cost matrix is proportional to the number of demand points. The Dijkstra algorithm was used to obtain the cost matrix by inverting the graph and running it twice for each demand point, using as the origin the end points of the edge that is closest to the demand points. Implementing this algorithm using graphs from the cuGraph library accelerated this calculation by approximately 300 % compared to the implementation of the NetworkX library. The NSGA-II algorithm, implemented with the proposed parameters, allows us to find solutions that adapt to the two objectives considered and to the multiple constraints established. The elite configurations found in the parameter tuning stage for the NSGA-II algorithm have a better evaluation with the hypervolume indicator and have a tendency to converge on Pareto fronts that are close to the best known optimal zone compared to other regular configurations. The obtained parameters of the elite configurations suggest that it is preferable to have large population sizes (200 individuals), to use the urgency-based allocation method, to perform mutation repair, and to have a small initialization probability (0.1–0.25). Regarding time-interrupted configurations, it can be observed that increasing the percentage of descendants significantly increases execution time, so it is preferable to keep it in the middle (0.5) to avoid bottlenecks. However, the best option to compare these configurations would be to implement the time-based termination criterion instead of aborting when the execution time is exceeded. The urgency-based allocation method was considered one of the best configurations compared to the classic and the demand–urgency-based methods, suggesting that the relationship between base capacity and urgency at the demand point in this problem is not significant enough to benefit from a method that considers demand first and urgency afterward.
The possible parameter values included populations of small size (20, 50) and a percentage of descendants. On the other hand, the mutation repair method outperformed the normal repair method, indicating that the procedure used to discard already explored solutions tends to improve the performance of the algorithm. A more rigorous analysis is needed to verify the relationship between these parameters and the algorithm performance, but these results provide a baseline for designing the required experiments.
The evaluation of the elite configurations on three representative instances with 20 random seeds suggests that although these configurations stand out from other regular configurations evaluated in parameter tuning, better techniques and configurations still need to be evaluated to obtain more accurate results with less variability, exploring solutions on the Pareto front with a smaller number of activated bases. However, the quality of the solutions is improved by merging the Pareto fronts of multiple runs of the same configuration, with the disadvantage of requiring more time. Furthermore, by parallelizing the multiple runs to generate the unified Pareto front, the result was obtained in half the time of a sequential execution.
The different solutions of the Pareto front suggest different ways of assigning the ambulances to the focus locations, and the pre-visualizations allow for the intuitive identification of which points remain isolated and which bases should be activated. The final visualization, generated in HTML format, can be used for further implementation in a context that allows the emergency medical services involved in the care plan to visualize the information interactively, to show or hide elements of interest depending on the circumstances.
The comparison of the results with other algorithms is important in future work. However, in this paper, the main objective focuses on the mathematical modeling of the problem and the integration of real data that could be obtained during a large-scale emergency scenario, from which the quality of solutions can be described. Thus, this work represents a useful starting point for future studies.

Author Contributions

Conceptualization, M.S.-P. and G.G.; methodology, M.M.-P. and M.S.-P.; software, V.K.L.-S. and G.G.; validation, G.G. and M.S.-P.; formal analysis, M.M.-P. and V.K.L.-S.; investigation, M.M.-P. and V.K.L.-S.; resources, V.K.L.-S. and M.S.-P.; data curation, G.G. and M.M.-P.; writing—original draft preparation, V.K.L.-S. and M.M.-P.; writing—review and editing, G.G. and M.M.-P.; visualization, M.M.-P. and V.K.L.-S.; supervision, G.G. and M.M.-P.; project administration, M.S.-P. and G.G.; funding acquisition, M.S.-P. and G.G. All authors have read and agreed to the published version of the manuscript.

Funding

This work was partially sponsored by the Instituto Politécnico Nacional under grants 20240426, 20240632, and by the Consejo Nacional de Humanidades, Ciencias y Tecnologías (CONAHCYT) under grants 960525 and 1183927.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The original data presented in the study are openly available in NextCloud at https://sadami.ddns.net/nextcloud/s/fLogjaH6CqNxHp3?path=%2F (accessed on 18 April 2024).

Acknowledgments

We are thankful to the reviewers for their time and invaluable and constructive feedback, which helped improve the quality of the paper.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. The International Federation of Red Cross and Red Crescent Societies. What Is a Disaster? Available online: https://www.ifrc.org/what-disaster (accessed on 4 November 2022).
  2. World Health Organization. Emergency Cycle. Available online: https://www.who.int/europe/emergencies/emergency-cycle (accessed on 4 November 2022).
  3. American college of surgeons committee on trauma and Campos, Víctor and Roig, Félix Garcia. In PHTLS Soporte Vital de Trauma Preshospitalario; Jones & Bartlett Learning: Burlington, MA, USA, 2020.
  4. International Resources Group and “Oficina de los Estados Unidos de Asistencia para Desastres en el Extranjero para Latino América y el Caribe”. Curso Básico Sistema de Comando de Incidentes. 2021. Available online: https://www.gob.mx/cms/uploads/attachment/file/228836/Curso_Basico_SCI_material_de_referencia.pdf (accessed on 14 September 2022).
  5. Halper, R.; Raghavan, S.; Sahin, M. Local search heuristics for the mobile facility location problem. Comput. Oper. Res. 2015, 62, 210–223. [Google Scholar] [CrossRef]
  6. Barojas-Payán, E.; Sánchez-Partida, D.; Gibaja-Romero, D.E.; Martínez-Flores, J.L.; Cabrera-Rios, M. Optimization Model to Locate Pre-positioned Warehouses and Establish Humanitarian Aid Inventory Levels. In Disaster Risk Reduction in Mexico: Methodologies, Case Studies, and Prospective Views; Springer International Publishing: Cham, Switzerland, 2021; pp. 169–192. [Google Scholar] [CrossRef]
  7. Zaffar, M.A.; Rajagopalan, H.K.; Saydam, C.; Mayorga, M.; Sharer, E. Coverage, survivability or response time: A comparative study of performance statistics used in ambulance location models via simulation–optimization. Oper. Res. Health Care 2016, 11, 1–12. [Google Scholar] [CrossRef]
  8. Mohri, S.S.; Haghshenas, H. An ambulance location problem for covering inherently rare and random road crashes. Comput. Ind. Eng. 2021, 151, 106937. [Google Scholar] [CrossRef]
  9. Toregas, C.; Swain, R.; ReVelle, C.; Bergman, L. The Location of Emergency Service Facilities. Oper. Res. 1971, 19, 1363–1373. [Google Scholar] [CrossRef]
  10. Kaveh, M.; Mesgari, M.S. Improved biogeography-based optimization using migration process adjustment: An approach for location-allocation of ambulances. Comput. Ind. Eng. 2019, 135, 800–813. [Google Scholar] [CrossRef]
  11. Hashtarkhani, S.; Matthews, S.A.; Yin, P.; Mohammadi, A.; Mohammad Ebrahimi, S.; Tara, M.; Kiani, B. Where to place emergency ambulance vehicles: Use of a capacitated maximum covering location model with real call data. Geospat. Health 2023, 18, 1198. [Google Scholar] [CrossRef]
  12. Barojas-Payán, E.; Sánchez-Partida, D.; Caballero-Morales, S.O.; Martínez-Flores, J.L. A Hybrid Capacitated Multi-facility Location Model for Pre-positioning Warehouses and Inventories in Regions at Risk in Mexico. In Disaster Risk Reduction in Mexico: Methodologies, Case Studies, and Prospective Views; Springer International Publishing: Cham, Switzerland, 2021; pp. 193–221. [Google Scholar] [CrossRef]
  13. Zheng, Y.J.; Chen, S.Y.; Ling, H.F. Evolutionary optimization for disaster relief operations: A survey. Appl. Soft Comput. 2015, 27, 553–566. [Google Scholar] [CrossRef]
  14. Deb, K.; Pratap, A.; Agarwal, S.; Meyarivan, T. A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 2002, 6, 182–197. [Google Scholar] [CrossRef]
  15. Nolz, P.C.; Doerner, K.F.; Gutjahr, W.J.; Hartl, R.F. A Bi-objective Metaheuristic for Disaster Relief Operation Planning. In Advances in Multi-Objective Nature Inspired Computing; Coello Coello, C.A., Dhaenens, C., Jourdan, L., Eds.; Springer: Berlin/Heidelberg, Germany, 2010; pp. 167–187. [Google Scholar] [CrossRef]
  16. Chang, F.S.; Wu, J.S.; Lee, C.N.; Shen, H.C. Greedy-search-based multi-objective genetic algorithm for emergency logistics scheduling. Expert Syst. Appl. 2014, 41, 2947–2956. [Google Scholar] [CrossRef]
  17. Schjølberg, M.E.; Bekkevold, N.P.; Sánchez-Díaz, X.; Mengshoel, O.J. Comparing Metaheuristic Optimization Algorithms for Ambulance Allocation: An Experimental Simulation Study. In Proceedings of the Genetic and Evolutionary Computation Conference, GECCO ’23, Lisbon, Portugal, 15–19 July 2023; pp. 1454–1463. [Google Scholar] [CrossRef]
  18. Saeidian, B.; Mesgari, M.S.; Ghodousi, M. Evaluation and comparison of Genetic Algorithm and Bees Algorithm for location–allocation of earthquake relief centers. Int. J. Disaster Risk Reduct. 2016, 15, 94–107. [Google Scholar] [CrossRef]
  19. Geng, J.; Hou, H.; Geng, S. Optimization of Warehouse Location and Supplies Allocation for Emergency Rescue under Joint Government–Enterprise Cooperation Considering Disaster Victims’ Distress Perception. Sustainability 2021, 13, 10560. [Google Scholar] [CrossRef]
  20. Alinaghian, M.; Hejazi, S.R.; Bajoul, N.; Sadeghi Velni, K. A novel robust model for location-allocation of healthcare facilities considering pre-disaster and post-disaster characteristics. Sci. Iran. 2023, 30, 619–641. [Google Scholar] [CrossRef]
  21. Oksuz, M.K.; Satoglu, S.I. Integrated optimization of facility location, casualty allocation and medical staff planning for post-disaster emergency response. J. Humanit. Logist. Supply Chain. Manag. 2023; ahead-of-print. [Google Scholar] [CrossRef]
  22. Qi, W.; Ovur, S.E.; Li, Z.; Marzullo, A.; Song, R. Multi-Sensor Guided Hand Gesture Recognition for a Teleoperated Robot Using a Recurrent Neural Network. IEEE Robot. Autom. Lett. 2021, 6, 6039–6045. [Google Scholar] [CrossRef]
  23. Zhao, J.; Lv, Y.; Zeng, Q.; Wan, L. Online Policy Learning-Based Output-Feedback Optimal Control of Continuous-Time Systems. IEEE Trans. Circuits Syst. II Express Briefs 2024, 71, 652–656. [Google Scholar] [CrossRef]
  24. Medina-Perez, M.; Legaria-Santiago, V.K.; Guzmán, G.; Saldana-Perez, M. Search Space Reduction in Road Networks for the Ambulance Location and Allocation Optimization Problems: A Real Case Study. In Telematics and Computing; Mata-Rivera, M.F., Zagal-Flores, R., Barria-Huidobro, C., Eds.; Springer: Cham, Switzerland, 2023; pp. 157–175. [Google Scholar]
  25. Karpova, Y.; Villa, F.; Vallada, E.; Ángel Vecina, M. Heuristic algorithms based on the isochron analysis for dynamic relocation of medical emergency vehicles. Expert Syst. Appl. 2023, 212, 118773. [Google Scholar] [CrossRef]
  26. Caglayan, N.; Satoglu, S.I. Multi-Objective Two-Stage Stochastic Programming Model for a Proposed Casualty Transportation System in Large-Scale Disasters: A Case Study. Mathematics 2021, 9, 316. [Google Scholar] [CrossRef]
  27. Wang, J.; Wang, Y.; Yu, M. A multi-period ambulance location and allocation problem in the disaster. J. Comb. Optim. 2020, 43, 909–932. [Google Scholar] [CrossRef]
  28. Nadar, R.A.; Jha, J.; Thakkar, J.J. Adaptive variable neighbourhood search approach for time-dependent joint location and dispatching problem in a multi-tier ambulance system. Comput. Oper. Res. 2023, 159, 106355. [Google Scholar] [CrossRef]
  29. Daskin, M.S.; Maass, K.L. The p-Median Problem. In Location Science; Springer International Publishing: Cham, Switzerland, 2015; pp. 21–45. [Google Scholar] [CrossRef]
  30. Ghoseiri, K.; Ghannadpour, S.F. Solving capacitated p-median problem using genetic algorithm. In Proceedings of the 2007 IEEE International Conference on Industrial Engineering and Engineering Management, Singapore, 2–4 December 2007. [Google Scholar] [CrossRef]
  31. Instituto Nacional de Estadística y Geografía (INEGI). Límite de Alcaldías (áreas Geoestadísticas Municipales). 2023. Available online: https://datos.cdmx.gob.mx/dataset/alcaldias (accessed on 1 August 2023).
  32. Secretaría de Gestión Integral de Riesgos y Protección Civil (SGIRPC). Capas Relacionadas al Sismo del 19/09/2017: Inmuebles Colapsados, Zona de Mayor Afectación e Infraestructura Dañada, Zonas de Riesgo Sísmico. Available online: https://www.atlas.cdmx.gob.mx/datosabiertos2.html (accessed on 1 August 2023).
  33. Órgano de Difusión del Gobierno de la Ciudad de México. Gaceta Oficial de la Ciudad de México, No. 685 Bis. Protocolo del Plan de Emergencia Sísmica. 2021. Available online: https://data.consejeria.cdmx.gob.mx/portal_old/uploads/gacetas/18652b057da05daee4cf7a0784093fff.pdf (accessed on 26 March 2023).
  34. Instituto de Planeación Democrática y Prospectiva. Hospitales Públicos y Privados en Operación de la ZMVM. 2023. Available online: https://datos.cdmx.gob.mx/dataset/hospitales-publicos-y-privados-en-operacion-de-la-zmvm (accessed on 1 August 2023).
  35. Secretaría de Gestión Integral de Riesgos y Protección Civil. 22 Conjuntos de Datos de Secretaría de Gestión Integral de Riesgos y Protección Civil. 2023. Available online: https://datos.cdmx.gob.mx/organization/secretaria-de-gestion-integral-de-riesgos-y-proteccion-civil (accessed on 1 August 2023).
  36. Secretaría de Gestión Integral de Riesgos y Protección Civil. Refugios Temporales. 2023. Available online: https://datos.cdmx.gob.mx/dataset/refugios (accessed on 1 August 2023).
  37. Instituto Nacional de Estadística y Geografía (INEGI). Polígonos de Manzanas de la Ciudad de México. 2023. Available online: https://datos.cdmx.gob.mx/dataset/poligonos-de-manzanas-de-la-ciudad-de-mexico (accessed on 1 August 2023).
  38. Secretaría de Desarrollo Urbano y Vivienda (SEDUVI). Descarga de Datos SEDUVI. 2023. Available online: https://sig.cdmx.gob.mx/datos/descarga#d_datos_seduvi (accessed on 1 September 2023).
  39. Secretaría de Administración y Finanzas (SAF). Descarga de Datos del Catastro. 2023. Available online: https://sig.cdmx.gob.mx/datos/descarga#d_datos_cat (accessed on 1 September 2023).
  40. Secretaria de Gestión Integral de Riesgos y Protección Civil de la Ciudad de México and Urzúa, Myriam. Protocolo del Plan de Emergencia Sísmica; Gaceta oficial de la Ciudad de México: Mexico City, Mexico, 2021. [Google Scholar]
  41. TomTom Developers. Zoom Levels and Tile Grid. 2023. Available online: https://developer.tomtom.com/map-display-api/documentation/zoom-levels-and-tile-grid (accessed on 9 September 2023).
  42. Liang, J.J.; Yue, C.T.; Qu, B.Y. Multimodal multi-objective optimization: A preliminary study. In Proceedings of the 2016 IEEE Congress on Evolutionary Computation (CEC), Vancouver, BC, Canada, 24–29 July 2016; pp. 2454–2461. [Google Scholar] [CrossRef]
  43. Ma, H.; Zhang, Y.; Sun, S.; Liu, T.; Shan, Y. A comprehensive survey on NSGA-II for multi-objective optimization and applications. Artif. Intell. Rev. 2023, 56, 15217–15270. [Google Scholar] [CrossRef]
  44. Ahmadi, M.H.; Ahmadi, M.A. Multi objective optimization of performance of three-heat-source irreversible refrigerators based algorithm NSGAII. Renew. Sustain. Energy Rev. 2016, 60, 784–794. [Google Scholar] [CrossRef]
  45. Pymoo: Multi-Objective Optimization in Python. Available online: https://www.pymoo.org (accessed on 2 September 2023).
  46. López-Ibáñez, M.; Dubois-Lacoste, J.; Pérez Cáceres, L.; Birattari, M.; Stützle, T. The Irace Package: User Guide. 2022. Available online: https://cran.r-project.org/web/packages/irace/vignettes/irace-package.pdf (accessed on 21 October 2023).
  47. Fitch, J. Response times: Myths, measurement & management. JEMS J. Emerg. Med Serv. 2005, 30, 46–56. [Google Scholar] [CrossRef]
  48. Wu, C.; Hwang, K.P. Using a Discrete-event Simulation to Balance Ambulance Availability and Demand in Static Deployment Systems. Acad. Emerg. Med. 2009, 16, 1359–1366. [Google Scholar] [CrossRef] [PubMed]
  49. Tian, Z.; Zhang, Z.; Ning, C.; Peng, T.; Guo, Y.; Cao, Z. Multi-objective optimization of cable force of arch bridge constructed by cable-stayed cantilever cast-in-situ method based on improved NSGA-II. Structures 2024, 59, 105782. [Google Scholar] [CrossRef]
  50. Bora, T.C.; Mariani, V.C.; dos Santos Coelho, L. Multi-objective optimization of the environmental-economic dispatch with reinforcement learning based on non-dominated sorting genetic algorithm. Appl. Therm. Eng. 2019, 146, 688–700. [Google Scholar] [CrossRef]
  51. de Souza, M.; Ritt, M.; López-Ibáñez, M.; Cáceres, L.P. ACVIZ: A Tool for the Visual Analysis of the Configuration of Algorithms with irace. Oper. Res. Perspect. 2021, 8, 100–186. [Google Scholar] [CrossRef]
Figure 1. Proposed methodology.
Figure 1. Proposed methodology.
Information 15 00260 g001
Figure 2. Representation of the problem using a bipartite graph.
Figure 2. Representation of the problem using a bipartite graph.
Information 15 00260 g002
Figure 3. Decision variables and fitness value of the solution for the scenario represented in Figure 2.
Figure 3. Decision variables and fitness value of the solution for the scenario represented in Figure 2.
Information 15 00260 g003
Figure 4. Example of allocation methods.
Figure 4. Example of allocation methods.
Information 15 00260 g004
Figure 5. Mexico City traffic on 20 October 2023 at 18:58 obtained with a zoom level of 12. (a) Tiles required to cover the bounding box in Mexico City (red box). (b) Final result of conversion to single-band raster.
Figure 5. Mexico City traffic on 20 October 2023 at 18:58 obtained with a zoom level of 12. (a) Tiles required to cover the bounding box in Mexico City (red box). (b) Final result of conversion to single-band raster.
Information 15 00260 g005
Figure 6. Process for obtaining candidate bases. (a) Selection by features, vertices, and resulting edges. (b) Selection by capacity, vertices, and resulting edges. (c) Redundancy elimination, representative vertices, and their associated edges. (d) Proximity grouping, representative vertices, and their associated edge groups. (e) Candidate bases colored by capacity.
Figure 6. Process for obtaining candidate bases. (a) Selection by features, vertices, and resulting edges. (b) Selection by capacity, vertices, and resulting edges. (c) Redundancy elimination, representative vertices, and their associated edges. (d) Proximity grouping, representative vertices, and their associated edge groups. (e) Candidate bases colored by capacity.
Information 15 00260 g006aInformation 15 00260 g006b
Figure 7. Kernel Density Estimation of buildings damaged by the 19 September 2017 earthquake.
Figure 7. Kernel Density Estimation of buildings damaged by the 19 September 2017 earthquake.
Information 15 00260 g007
Figure 8. Instances with the lowest and highest number of demand points described in Figure 7.
Figure 8. Instances with the lowest and highest number of demand points described in Figure 7.
Information 15 00260 g008
Figure 9. Tiles used to determine the amount of traffic in Mexico City. Example of data obtained on 14 November 2023 at 13:45 h.
Figure 9. Tiles used to determine the amount of traffic in Mexico City. Example of data obtained on 14 November 2023 at 13:45 h.
Information 15 00260 g009
Figure 10. Stages for obtaining traffic data using the TomTom API and the OSMNX network. (a) RGBA raster obtained through the TomTom API. (b) Conversion to single-band raster. (c) Sampling windows of the single-band raster. (d) Road network graph with traffic as attribute.
Figure 10. Stages for obtaining traffic data using the TomTom API and the OSMNX network. (a) RGBA raster obtained through the TomTom API. (b) Conversion to single-band raster. (c) Sampling windows of the single-band raster. (d) Road network graph with traffic as attribute.
Information 15 00260 g010
Figure 11. Experiments performed during parameter tuning. Each color represents a specific instance.
Figure 11. Experiments performed during parameter tuning. Each color represents a specific instance.
Information 15 00260 g011
Figure 12. Pareto front of 2017 earthquake post-disaster scenario.
Figure 12. Pareto front of 2017 earthquake post-disaster scenario.
Information 15 00260 g012
Figure 13. Preview of the solutions 1, 8, and 14 for the 2017 scenario.
Figure 13. Preview of the solutions 1, 8, and 14 for the 2017 scenario.
Information 15 00260 g013
Figure 14. Interactive visualization of the solution, displaying the available layers and the default map view.
Figure 14. Interactive visualization of the solution, displaying the available layers and the default map view.
Information 15 00260 g014
Figure 15. Elements of an activated base and a route. Only two specific groups are shown.
Figure 15. Elements of an activated base and a route. Only two specific groups are shown.
Information 15 00260 g015
Figure 16. Elements of a demand point. Possible regions of attention are displayed.
Figure 16. Elements of a demand point. Possible regions of attention are displayed.
Information 15 00260 g016
Figure 17. Comparison of the execution time of Dijkstra’s algorithm with NetworkX and Cugraph, ratio t N e t w o r k X / t C u G r a p h .
Figure 17. Comparison of the execution time of Dijkstra’s algorithm with NetworkX and Cugraph, ratio t N e t w o r k X / t C u G r a p h .
Information 15 00260 g017
Figure 18. Ratio of runtime to generate the instances between data reading, computation of the routes, and the remaining procedure.
Figure 18. Ratio of runtime to generate the instances between data reading, computation of the routes, and the remaining procedure.
Information 15 00260 g018
Table 1. Data retrieved from official data sources.
Table 1. Data retrieved from official data sources.
LayerDescriptionGeometry TypeNumber of RecordsFeatures
mayorships [31]Geographic boundaries of each mayorshippolygon166
risk_zones [32]Earthquake risk zonespolygon49082
regions * [33]Classification of urban areas according to the unit responsible for rescue operationspolygon53
hospitals [34]Public and private hospitals operating in the CDMXpoint58459
gathering_centers [35]Emergency collection centers availablepoint6710
refuges [36]Temporary emergency shelters availablepint6710
collapses [32]Collapsed buildings from the 2017 earthquakepoint381
damages [32]Damaged buildings from the 2017 earthquakepoint381
blocks [37]Geographic delimitation of blocks and 2020 population census datapolygon1,215,06618
seduvi [38]Buildings Centroid and their characteristics, provided by SEDUVIpoint1,215,06618
land_registry [39]Geographical delimitation of the buildings and their characteristics, provided by Land Registry Departmentpolygon1,607,1097
* Data created from the description.
Table 2. Values used in the tuning phase for the values of the stop criteria.
Table 2. Values used in the tuning phase for the values of the stop criteria.
ParameterNameValuesSelected Value
Tolerance in the decision spacextol [ 0.01 , 0.0075 , 0.005 , 0.0025 , 0.0001 , 0.000075 , 0.00005 ] 0.0001
Tolerance in the target spaceftol [ 0.01 , 0.0075 , 0.005 , 0.0025 , 0.0001 , 0.000075 , 0.00005 ] 0.0001
Criteria evaluation periodperiod100100
Ignore generations for criteria evaluationn_skip100100
Maximum number of generationsn_max_gen≤10,000500
Maximum number of evaluations of itemsn_max_evals≤10,000,000100,000
Table 3. Proposed values for algorithm parameters.
Table 3. Proposed values for algorithm parameters.
ParameterNameKeyTypeValues
Crossover operatorcrossover–crcategoricun—cross uniform
hun—cross half uniform
Mutation operatormutation–mucategoricbf—bit flip mutation
bfo—active bit flip mutation
Allocation methodallocation–acategoriccl—classic
ur—urgency-based
urc—demand–urgency-based
Repair methodrepair–repcategoricrn—normal repair
rm—repair with mutation
Population sizepopulation–popcategoric 1(20, 50, 100, 200)
Percentage of offspringoffsprings–deccategoric 1(25, 50, 75)
Crossing percentageprob_crossover–prob_crcategoric 1(0.5, 0.75, 0.9, 0.99)
Mutation percentageprob_mutation–prob_mucategoric 1(0.5, 0.25, 0.1, 0.01)
Start probabilityprob_initial–prob_inicategoric 1(0.25, 0.1, 0.01)
1 Numeric attributes that, according to the documentation, should be converted to categoric attributes [46].
Table 4. Reducing transport network.
Table 4. Reducing transport network.
StepResultSize
Transport network { V t , E t } 128,825
Selection by characteristics { V f , E f } 15,560
Selection by capacity { V f , E f } 8184
Elimination of redundancy V s 5784
Proximity groupingV1846
Table 5. Response time to V t vertices from the closest candidate base, % = percentage of vertices covered in less than 9 min, p95 = maximum response time for 95 % of vertices (95th percentile), and X = number of candidate bases that are discarded by level traffic > 2 .
Table 5. Response time to V t vertices from the closest candidate base, % = percentage of vertices covered in less than 9 min, p95 = maximum response time for 95 % of vertices (95th percentile), and X = number of candidate bases that are discarded by level traffic > 2 .
Daytime X 20 km/h30 km/h40 km/h50 km/h60 km/h
 %p95%p95%p95%p95%p95
7:00 a.m.470.968.150.995.440.994.081.03.261.02.72
8:00 a.m.690.968.250.995.50.994.131.03.31.02.75
9:00 a.m.660.968.170.995.451.04.091.03.271.02.72
11:00 a.m.520.968.090.995.391.04.041.03.241.02.7
1:00 p.m.740.968.390.995.591.04.191.03.361.02.8
3:00 p.m.1220.958.750.995.840.994.381.03.51.02.92
5:00 p.m.570.968.470.995.650.994.231.03.391.02.82
7:00 p.m.1390.959.00.986.00.994.51.03.61.03.0
8:00 p.m.550.958.710.995.810.994.361.03.491.02.9
9:00 p.m.210.968.450.995.640.994.231.03.381.02.82
Table 6. Characteristics of the instances created to describe demand points, θ : instance, X : number of candidate bases that are discarded, n v : number of victims, d: demand.
Table 6. Characteristics of the instances created to describe demand points, θ : instance, X : number of candidate bases that are discarded, n v : number of victims, d: demand.
θ Date/Hour X | I | | J | Total
n v
Min
n v
Max
n v
Min
d
Max
d
027 October–09:00 a.m.319152743334245226
127 October–03:00 p.m.482136445463245219
228 October–11:00 a.m.265158144381245317
329 October–07:00 p.m.227161938515245267
430 October–1:00 p.m.240160619193245544
530 October–05:00 p.m.235161153570245216
631 October–07:00 a.m.306154023192245529
71 November–08:00 a.m.267157937275245316
81 November–08:00 p.m.280156635376245328
92 November–09:00 p.m.139170726302245234
Table 7. List of parameters used in TomTom API.
Table 7. List of parameters used in TomTom API.
ParameterValue
Zoom level16
Total number of tiles (to cover the bounding box) 79 × 106 = 8374
Tiles occupied (intersecting the polygon of the CDMX)4789
Meters per tile 611.4962
Meters per pixel 1.1943
Table 8. Values used for parameter tuning.
Table 8. Values used for parameter tuning.
ParameterValue
Number of iterations10
Performed experiments4982
Remaining budget18
Number of elites5
Number of settings used679
Total user time on CPU880,930.4 (10.19 days)
Table 9. Elite configurations.
Table 9. Elite configurations.
topid-cr-mu-a-rep-pop-dec-prob_cr-prob_mu-prob_ini
1625unbfurrm200500.50.250.1
2499unbfurrm200500.750.50.25
3432hunbfourrm200500.50.50.25
4655unbfurrm200500.50.50.1
5617unbfourrm200500.50.50.1
Table 10. Statistics of the Pareto front solutions of the 2017 scenario.
Table 10. Statistics of the Pareto front solutions of the 2017 scenario.
Solution f 1 f 2 r max r prom * b min b max
112,4065.267904.63264.91216
210,5696.977800.32781.51213
391,577.886107.82409.9128
482,685.196258.12175.9127
577,329.4106258.12035.0227
672,245.0115013.11901.2437
768,039.6124907.81790.5537
864,555.3134907.81698.8627
961,456.4144907.81617.3727
1058,493.7154907.81539.3727
1156,013.6164907.81474.0827
1253,807.9174907.81416.0825
1351,680.9184907.81360.0925
1449,675.7194907.81307.31025
* Number of activated bases that are assigned to only one demand point.
Table 11. Runtime (in seconds) of the three main stages of data integration, θ : instance, avg: mean, std: standard deviation.
Table 11. Runtime (in seconds) of the three main stages of data integration, θ : instance, avg: mean, std: standard deviation.
   ReadingProcessingDijkstra 
θ | I | | J | AvgStdAvgStdAvgStdTotal
015274323.9351.03932.5111.68930.3611.46186.806
113644524.4521.20832.9731.44930.7751.19988.2
215814424.2250.98832.0701.20426.9610.96583.256
316193823.3580.23531.3730.56922.4080.13777.139
416061923.2680.23531.1260.28810.7370.04065.131
516115322.9830.17830.9610.36130.3050.16584.249
615402323.1200.18530.6160.43014.4560.07568.192
715793722.9460.20030.6210.43422.0710.11075.638
815663522.8800.13430.7540.45421.5030.07275.137
917072622.8690.18230.2950.43814.1820.05367.345
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Medina-Perez, M.; Guzmán, G.; Saldana-Perez, M.; Legaria-Santiago, V.K. Medical Support Vehicle Location and Deployment at Mass Casualty Incidents. Information 2024, 15, 260. https://doi.org/10.3390/info15050260

AMA Style

Medina-Perez M, Guzmán G, Saldana-Perez M, Legaria-Santiago VK. Medical Support Vehicle Location and Deployment at Mass Casualty Incidents. Information. 2024; 15(5):260. https://doi.org/10.3390/info15050260

Chicago/Turabian Style

Medina-Perez, Miguel, Giovanni Guzmán, Magdalena Saldana-Perez, and Valeria Karina Legaria-Santiago. 2024. "Medical Support Vehicle Location and Deployment at Mass Casualty Incidents" Information 15, no. 5: 260. https://doi.org/10.3390/info15050260

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop