A Novel Method of Spatiotemporal Dynamic Geo-Visualization of Criminal Data, Applied to Command and Control Centers for Public Safety

This article shows a novel geo-visualization method of dynamic spatiotemporal data that allows mobility and concentration of criminal activity to be study. The method was developed using, only and significantly, real data of Santiago de Cali (Colombia), collected by the Colombian National Police (PONAL). This method constitutes a tool that allows criminal influx to be analyzed by concentration, zone, time slot and date. In addition to the field experience of police commanders, it allows patterns of criminal activity to be detected, thereby enabling a better distribution and management of police resources allocated to crime deterrence, prevention and control. Additionally, it may be applied to the concepts of safe city and smart city of the PONAL within the architecture of Command and Control System (C2S) of Command and Control Centers for Public Safety. Furthermore, it contributes to a better situational awareness and improves the future projection, agility, efficiency and decision-making processes of police officers, which are all essential for fulfillment of police missions against crime. Finally, this was developed using an open source software, it can be adapted to any other city, be used with real-time data and be implemented, if necessary, with the geographic software of any other C2S.


Introduction
Currently, it is not possible to talk about a smart city without referring to a safe city. Clearly, it is due to safe city systems representing one of the main areas within smart cities [1]. One of the main tasks in the development of safe city systems is focused on criminal activity. To a greater or lesser extent, crime may affect any city. Therefore, this issue has been largely addressed by both, law enforcement and public safety agencies, as well as researchers from different areas of knowledge around the world [2]. This is partly due to the high social cost that criminal activity entails. Not surprisingly, it can be assumed that every investigation that contributes to solving crimes, especially if it is solved quickly, is justified [3]. Therefore, improving prevention and reaction against crime is, in any case and scenario, a resource of great value to combat negative effects and probably save lives.
It can be said that crime is not systematic, nor totally random [4]. However, it maintains patterns of common features that can be identified during investigation, since criminals themselves are individuals

Works Related to Criminal Activity Visualization Methods
The graphical representation of data is a tool that not only facilitates compression and analysis in any field of knowledge, but also allows, in many cases, the extract of further information. There are different approaches and methodologies in representing data that allows criminal activity to be visualized. Authors approach these approaches from different perspectives, including empirical and observation methods to statistical techniques and mathematical modeling.
On the one hand, some visualizations aim to solve specific information needs, as in [6][7][8][11][12][13]18], where visualization intends to address key issues, such as the impact of greening programs on crime rates, the fluctuation of crime patterns according to seasonal climate, the growth of public transport systems, the influence of traffic and its restrictions, or stratification and zoning of cities, among others. On the other hand, other works area imed at improving visualization techniques, so they can be used with any type of data, including criminal activity data, such as [19][20][21][22][23].
However, the commands involved should be able to see the criminal activity visualization system that will be integrated into the C2IS of a C2S. This will allow improving situational awareness in useful time and often in real-time, as support for decision-making in missions against crime. Therefore, these visualizations should preferably be georeferenced, located in time and dynamic. Some studies can serve this purpose, since their approach include one or several characteristics. In this regard, these studies include: Investigations with methodology that include georeferencing and spatial and statistical analysis to find critical points such as [5,[24][25][26][27][28] or; visualizations with predictive usefulness, such as [29][30][31][32][33]; simulations of criminal behavior aimed at analyzing collateral effects and resources allocations [34][35][36]; systems that use algorithms for trajectory analysis to identify crimes from different sources of information [37,38]; mechanisms for calculating severity of incidents determined by distance, time and type of transition, plotted on heatmaps with dynamic transition, to extract information on street crimes [39,40]; systems for merging, associating and clustering data attributes, as well as for associating with other nodes to extract patterns from evolving criminal networks, based on observation and analysis of temporary data [41][42][43]; and finally, visualizations that use comparisons to find similarities in criminal patterns through associative searches with knowledge graphs [44] and multivariate reduction plots for comparative analysis of cases [45].
As shown above, there is a wide range of studies on criminal behavior visualization, however, the C2S must be created to serve the mission of the command using them. Therefore, in the case of the C2S of the PONAL (which already has several of the characteristics described above and some others do not correspond to their mission itself), none of these developments have an integrable method or methods that allow filtering data of criminal mobility and concentration in cities by zones, time slots and dates. Furthermore, it does not enable a large amount of data to be used in real-time to constitute an architectural proposal of a safe city for a smart city. This can be aligned to the specific requirements of the C2S of the PONAL through spatiotemporal dynamic geo-visualization. In fact, it is the method described here. This is summarized in Table 1. As shown in the table above, this novel method offers more advantages in Command and Control applications than other methods, due to its real-time functionality, space-time analysis and geo-visualization adaptable and flexible.

Command and Control Systems (C2S) and Command and Control Information Systems (C2IS)
Basic architecture of any C2S contains: Command and Control Communication Systems (or Subsystems) (C2CS), Command and Control Information Systems (or Subsystems) (C2IS), sensor systems and/or information sources; and command posts [16]. In the Command and Control Centers for Public Safety, the C2IS of the PONAL (which is where the tool that constitutes the method presented here, would fit); gathers the information from several sources of information, such as: institutional databases, sensor systems and video surveillance systems [46,47], among others, Figure 1; and Geographic Information Systems (GIS) to show relevant information from the aforementioned sources. They also have internal tools for processing data in order to extract more information. management of physical and human resources in an anti-crime mission.
Therefore, if the C2S is appropriate for the process of the command it supports (as in the case of the PONAL), it significantly improves the strategic aspects, such as: Situational perception (Situational Awareness), future projection of situation (Situation Understanding), decision-making support (Decision Making Improvement) and agility in fulfillment of police missions (Agility and Efficiency Improvement); which definitely increases possibility of reacting more quickly and assertively in criminal cases, thus deterring, preventing and controlling criminal activity [48,49]. Operational area of C2S, through Common Operational Picture, is responsible for processing and transmitting necessary information to police commanders of strategic area. It is also responsible for interpreting that information and creating the strategic objectives to act when appropriate. Then, it transmits these objectives to the commanders in tactical area who must implement them, mostly, in real-time. This cycle is repeated once information on follow-up of actions is obtained, (Command and Control OODA Loop), Figure 2. These actions may be, for example, distribution and management of physical and human resources in an anti-crime mission. With situational awareness strategic commands decid action lines and transmit them to Tactical Commands.
Control of evolution of situation from new data after executing actions. Although, the C2S for Public Safety of the PONAL has already-integrated several utilities, the PONAL through the development of its mission and its field experience, reveals there are quite significant needs in terms of tools that provide more information; are created and adapted to the context of the criminal activity in charge; that provide better possibilities to support decision-making  Therefore, if the C2S is appropriate for the process of the command it supports (as in the case of the PONAL), it significantly improves the strategic aspects, such as: Situational perception (Situational Awareness), future projection of situation (Situation Understanding), decision-making support (Decision Making Improvement) and agility in fulfillment of police missions (Agility and Efficiency Improvement); which definitely increases possibility of reacting more quickly and assertively in criminal cases, thus deterring, preventing and controlling criminal activity [48,49].
Although, the C2S for Public Safety of the PONAL has already-integrated several utilities, the PONAL through the development of its mission and its field experience, reveals there are quite significant needs in terms of tools that provide more information; are created and adapted to the context of the criminal activity in charge; that provide better possibilities to support decision-making of command line, such as a tool that enables the study, measurement and analysis of mobility and concentration of crime in different cities, based on geo-referenced and temporal data, in order to improve their actions in fulfillment of anti-crime strategies. That tool did not exist until now.

A Novel Method to Geo-Visualize Spatiotemporal Data Dynamically
Colombia is a country with approximately 48.2 million inhabitants [50] that has a single police force: the National Police. It is divided into metropolitan and departmental forces (where the Command and Control Centers for Public Safety are located) and, according to their strategic and tactical objectives for public safety, cities and towns are divided into quadrants [51]. Quadrants are different land extensions, divided in a non-physical way according to population density ratio directly proportional to armed forces (number of police officers allocated). These quadrants are controlled by Police Stations and CAIs (Immediate Action Commands) [51].
Once the need described above was detected by the PONAL, with the support of its Telematics Office; and after assessing the mission and operational processes of the institution, the city of Santiago de Cali (Colombia) was chosen as the development model for two reasons. First, Santiago de Cali is the third largest city in Colombia, with a population of 2,470,852 inhabitants [52], however, in terms of criminal activity flow, it is the second in the country and the number 31 in the world [53]. Second, there was a large amount of real data on criminal activity in the city and yet there was no development that showed additional useful information in this regard. Although, each city in countries as large and multicultural as Colombia faces its own challenges against criminal activity, based on the reasons above and the fact that all cities in Colombia are divided by quadrants (and any other city in the world can be divided into hypothetical quadrants), the method proposed can be considered a generic approach and applied to any other city.
The spatiotemporal geo-visualization method proposed takes advantage of this division by quadrants. Therefore, it starts from the idea of a grid-shaped division of land that represents quadrant division of any police jurisdiction.

Information and Sources
Relevant data to detect criminal patterns in cities were determined in cooperation with the PONAL and it was concluded that the most appropriate database was SECAD (Emergency System of Assistance for Automatic Dispatch Centers), which includes the RNMC (National Registry of Corrective Measures (of the National Police Code)) database. These databases have complete information on reported cases of criminal incidents in the country, since SECAD collects all information related to 123 emergency calls. On the other hand, the SECAD and the RNMC include the spatiotemporal data of said incidents. This is fundamental to fulfilling the objective of representing data in a way that allows mobility and concentration of criminal activity in cities to be visualized.
Consequently, subject to confidentiality agreements, the PONAL provides years of data of criminal incidents that are delimited to the area of jurisdiction within Santiago de Cali. Data in large quantities and excellent quality.

Stages of the Graphic Visualization Process
The entire process, described in this subsection, has been developed in Python programming language, with support of its functionalities for visualization, numerical calculation, data analysis and geolocation. 1.
The first stage consists of the collection and conditioning data to be used from SECAD and RNMC database. These databases are hosted within the C2IS and information reaches them through military-grade critical real-time communication channels arranged for this by the PONAL. This conditioning involves a process of Data Cleaning and Data Wrangling. In this case, it basically refers to the need to filter information that should not be considered a criminal incident (e.g., calls to wrong number), adaptation of geographic coordinates and timestamps, as well as organization by date. This process can be done automatically to use data in real-time.

2.
Those data that do not correspond to the target area or that have out-of-normal values (outliers), which may have been inserted in the database by mistake, must be deleted. However, in this process it should be borne in mind that outliers are filtered by geographical coordinates. Therefore, it is important to filter data according to metropolitan or departmental area covered by the PONAL, as appropriate, as well as to take into account the 123 emergency cases redirected to SECAD. Here, a reverse geolocation utility is generated to add it to the information in the dataset, see Section "Geocoding on the Geo-visualizer" At this point, the dataset with the data is available, and its structure corresponds to each criminal incident with its geographical coordinates, street address; and appropriate timestamp to be handled by programming language used. 3.
Since the observation area is limited to specific geographical coordinates of latitude and longitude and these data are ready to be used, a system of two superimposed grids delimited by the geographical coordinates of the target area is created. In this case, it is the city of Santiago de Cali and its respective areas under the police jurisdiction. The first grid (pink) is limited to the observation area and the second grid (gray) has the same size as the first one, but it moves in longitude and latitude so that the vertices of each frame of the second grid coincide with the centers of each frame of the first grid. Then, the overlapping grids create frames corresponding to 25% of the original size, Figure 3a. This coordinates system should be placed as a layer on the geographical map of the observation area, on the Geographic Information System (GIS), in which this geo-visualization method will be used as shown in Figure 3b. In other words, the method described in this article constitutes a geo-visualization tool that act like a Plug-in that can be adapted to any GIS through the API (Application Programming Interface), specific to each GIS.
Latitude and longitude grid system was created in such a way that each time one or more criminal activity events are detected in one place; they are represented on the grid system with separate references to each of two grids. Then, data are represented using a smoothing method that overlaps the graphics in this density map. This is intended to facilitate observation of crime displacement and concentration, which could not be done with a single grid and that is the reason for the use of a double grid system. Figure 3a. For the specific case of spherical coordinates on the globe, the grids created had 100 frames on the latitudinal axis (approximately 358.65 m each) and 60 frames on the longitudinal axis; approximately 453.06 m each at north latitude, and approximately 453.21 m at south latitude. Notwithstanding this, it is important to emphasize that those values were selected for this case because, as specified above, the quadrants can be of different sizes, depending on the population density of the area. Hence, the resulting division of the land into 100 parts on the latitudinal axis and 60 parts on the longitudinal axis, along with the graphic smoothing technique used, represents the average extension of the quadrants in Colombia. Therefore, this approach is very useful for this case, as shown in Figure 3b. All these values can be adjusted to the follow-up needs of any geographic territory required. 4.
At this stage of process it is already possible to start observing information that the data could offer through this geo-visualization method. As a test of its initial operation, for Figure 4, three different data samples were taken and represented on the system created in the previous stages. Here, each criminal incident is represented by a color point with the same level of transparency, which enables the concentrations of criminal incidents to be observed in the sub-areas within the observation area. In the sub-areas where the points are more transparent, there is a lower concentration of criminal incidents, and a greater concentration of criminal incidents in the sub-areas where the points have more color concentration. This geo-visualization could be done with any data distribution required, e.g., data of one day, one week, three months, some hours, etc.  4. At this stage of process it is already possible to start observing information that the data could offer through this geo-visualization method. As a test of its initial operation, for Figure 4, three different data samples were taken and represented on the system created in the previous stages.
Here, each criminal incident is represented by a color point with the same level of transparency, which enables the concentrations of criminal incidents to be observed in the sub-areas within the observation area. In the sub-areas where the points are more transparent, there is a lower concentration of criminal incidents, and a greater concentration of criminal incidents in the sub-

Construction of the Spatiotemporal Dynamic Geo-visualizer
The final phase of graphic representation is where the Spatiotemporal Dynamic Geo-visualizer of criminal behavior is created. This final phase has been developed in Python programming language, with support of its functionalities for visualization, numerical calculation, data analysis and geolocation. In order to do so: areas where the points have more color concentration. This geo-visualization could be done with any data distribution required, e.g., data of one day, one week, three months, some hours, etc.

Construction of the Spatiotemporal Dynamic Geo-visualizer
The final phase of graphic representation is where the Spatiotemporal Dynamic Geo-visualizer of criminal behavior is created. This final phase has been developed in Python programming language, with support of its functionalities for visualization, numerical calculation, data analysis and geolocation. In order to do so: 1. Two parameters must be defined: First, the temporary sliding windows (time period during which cases will be represented in each frame); and second, the time frame to slide the

1.
Two parameters must be defined: First, the temporary sliding windows (time period during which cases will be represented in each frame); and second, the time frame to slide the window, (how often the screen will be refreshed or the timestamp in which the next frame will be represented in the animation), this latter will be referred as ∆t.

2.
In this case, there were 30-min temporary sliding windows, i.e., the cases that occurred over the last 30 min will be represented in each frame or animation frame. However, each frame will refresh each 20 min. In other words, the spatiotemporal dynamic geo-visualizer shows the cases that happened during the 30-min sliding windows, in frames that refresh every 20 min (∆t).

3.
According to the example, this implies that in each frame there will be a 10-min overlap. In consequence, from the second frame, the cases that occurred in the last 10 min will be repeated in the next frame. However, if the value of the temporary sliding window is 40 min and the ∆t value is 20 min, for example, the overlap would now be 20 min and so on. This is intended to provide continuity and ease for the analysis of the target areas when counting events by area and observing the displacement of criminal activity ( Figure 5).

4.
It is important to clarify that these two parameters have been specified in this way for the purpose of helping police commanders to understand the global spatiotemporal behavior of crime in the city, according with the amount of data observed. Therefore, these parameters were randomly selected at the beginning, and then adjusted by trial and error, within the geo-visualization, to find those that served the purpose of the analyst. For this reason, it can be concluded that these parameters can also be adjusted according to the requirements of the person making the observation in both, temporary sliding windows and ∆t, as well as in the quantity of data (by days, months, etc.). It is also possible to use parameters that do not generate overlaps.

5.
Once defined the initial temporary sliding windows and ∆t, the events are represented on the grids by frame or window every ∆t. Then, it is possible to count the events that happened on each geographical sub-area (grid frames). To do so, a color scale has been defined; the light colors indicate low criminal activity and dark colors indicate high activity. This facilitates the interpretation of data, since transparency or absence of color represents that no event has happened, and darker colors represent a large concentration of events. A color scale can be adjusted as required by the user (Figure 6). 6.
The color of the frame in that sub-area at a certain moment indicates a number of incidents. For example, according to the color bar, it could be said that there were about 5 criminal incidents in that green area during that window of time. This allows the analyst to count cases by zone, time slot and hour, and also to analyze the pattern of displacement of these events, Figure 6. 7.
This process is repeated for each window, generating dynamism in the representation. Therefore, variation in the occurrence of criminal events can be observed using this method, since it allows to see the variations and patterns for each geographical sub-area (grid frame), Figure 6. window, (how often the screen will be refreshed or the timestamp in which the next frame will be represented in the animation), this latter will be referred as Δt. 2. In this case, there were 30-minute temporary sliding windows, i.e., the cases that occurred over the last 30 minutes will be represented in each frame or animation frame. However, each frame will refresh each 20 minutes. In other words, the spatiotemporal dynamic geovisualizer shows the cases that happened during the 30-minute sliding windows, in frames that refresh every 20 minutes (Δt). 3. According to the example, this implies that in each frame there will be a 10-minute overlap.
In consequence, from the second frame, the cases that occurred in the last 10 minutes will be repeated in the next frame. However, if the value of the temporary sliding window is 40 minutes and the Δt value is 20 minutes, for example, the overlap would now be 20 minutes and so on. This is intended to provide continuity and ease for the analysis of the target areas when counting events by area and observing the displacement of criminal activity ( Figure 5). 4. It is important to clarify that these two parameters have been specified in this way for the purpose of helping police commanders to understand the global spatiotemporal behavior of crime in the city, according with the amount of data observed. Therefore, these parameters were randomly selected at the beginning, and then adjusted by trial and error, within the geo-visualization, to find those that served the purpose of the analyst. For this reason, it can be concluded that these parameters can also be adjusted according to the requirements of the person making the observation in both, temporary sliding windows and Δt, as well as in the quantity of data (by days, months, etc.). It is also possible to use parameters that do not generate overlaps. 5. Once defined the initial temporary sliding windows and Δt, the events are represented on the grids by frame or window every Δt. Then, it is possible to count the events that happened on each geographical sub-area (grid frames). To do so, a color scale has been defined; the light colors indicate low criminal activity and dark colors indicate high activity. This facilitates the interpretation of data, since transparency or absence of color represents that no event has happened, and darker colors represent a large concentration of events. A color scale can be adjusted as required by the user (Figure 6). 6. The color of the frame in that sub-area at a certain moment indicates a number of incidents.
For example, according to the color bar, it could be said that there were about 5 criminal incidents in that green area during that window of time. This allows the analyst to count In this way, the graph becomes an animated spatiotemporal geo-visualizer that shows temporal evolution of the criminal activities according to the count of events, Figure 6. This allows the police commander to track the movement of the concentration of criminal events and the areas where they happen. It is also possible to filter data by specific cases, time slots and dates to observe this same behavior. This significantly improves the situational awareness of the commander in charge of observing the situation to make decisions. Figure 6 shows the results of these spatiotemporal dynamic geo-visualization graphs that enable the concentration of criminal incidents to be observed by time windows, frame-by-frame.
To explain the method in detail, Figure 6 shows the geo-visualizer with scale in parts of the grid, since this parameter is also adjustable. It is interesting to observe how this parameter looks on the geographical map. However, a user will see this scale on the geographical map in geographical coordinates of latitude and longitude, as shown in the previous graphs. Figure 7 shows a summary of the complete operation process of the Spatiotemporal Dynamic Geo-visualization of criminal data on geographic map, for C2S applications.
observing the situation to make decisions. Figure 6 shows the results of these spatiotemporal dynamic geo-visualization graphs that enable the concentration of criminal incidents to be observed by time windows, frame-by-frame.
To explain the method in detail, Figure 6 shows the geo-visualizer with scale in parts of the grid, since this parameter is also adjustable. It is interesting to observe how this parameter looks on the geographical map. However, a user will see this scale on the geographical map in geographical coordinates of latitude and longitude, as shown in the previous graphs.    Geocoding is the process of transforming description of a location into a real location on the Earth's surface. It was determined for tactical force of the PONAL, which is in charge of visiting the site in case of emergencies based on location of the event in geographical coordinates, it would be very beneficial to also have geolocation of the event as a street direction in real-time. Consequently,

Geocoding on the Geo-Visualizer
Geocoding is the process of transforming description of a location into a real location on the Earth's surface. It was determined for tactical force of the PONAL, which is in charge of visiting the site in case of emergencies based on location of the event in geographical coordinates, it would be very beneficial to also have geolocation of the event as a street direction in real-time. Consequently, a reverse geolocation utility was generated in Python to add it to the information shown by the geo-visualizer. Thus, each representative point of a criminal activity event can show its geolocation as a street direction by hovering mouse over location. On the other hand, the events required by the analyst can also be separated into groups of bookmarks.

Results and Discussion
This method of animated spatiotemporal geo-visualization allows criminal influx to be analyzed on the basis of concentrations, zones, time slots and dates, in real-time and as necessary. It can work with historical data or real-time data, and since constitutes a geo-visualization tool that act like a

Results and Discussion
This method of animated spatiotemporal geo-visualization allows criminal influx to be analyzed on the basis of concentrations, zones, time slots and dates, in real-time and as necessary. It can work with historical data or real-time data, and since constitutes a geo-visualization tool that act like a Plug-in, it can be adapted to any GIS through the API (Application Programming Interface), specific to each GIS. Therefore, it is particularly useful in the approach to architectures for C2IS within C2S, as in case of the PONAL, or for any other security system that promotes concepts of safe city and smart city in pursuit of deterrence, prevention and control of crime in cities.
The implementation of this geo-visualization method contributes to operational capabilities of police force, as it improves situational awareness of commanders in the Command and Control Centers for Public Safety. Therefore, it allows making tactical and strategic decisions based on more information, because until now, there was no tool offering this capability within the C2S of the PONAL. This is possible because the operating parameters of this method can be adjusted as needed, so the commander analyzing the information can decide what information they need according to his or her experience in operation, which can be adapted to any other system.
The results of this project demonstrate that it is possible to develop a method of spatiotemporal dynamic geo-visualization of criminal activities that is aligned with mission and strategic objectives of an entity responsible for ensuring public safety.
However, there are a few technical challenges for implementation that must be discussed. For example, for a large-scale deployment, there must be several developments and integrations with geo-information sources, such as the different GIS used by the different police forces in the world, like ArcGIS (GIS name of ESRI Company).
In a large-scale deployment, certain technical challenges must be resolved first, e.g., the need for a high-performance Data Warehouse or Data Lake capable of receiving and storing geo-data in real-time. In this regard, some "On Premise" solutions can be taken into account, such as Hadoop-Spark or other solutions with cloud providers such as Google Big Query, Google Big Table, AWS Data Lake or Azure Data Lake.
Another challenge is the computational capacity necessary for processing and plotting of maps and database processing that arise from the method described here. This computational capacity can be deployed in an "On Premise" system such as Hadoop-Spark or solutions with cloud providers like Google AI Platform.
In the case of Colombia, these large-scale deployments will depend on the Government budget allocation.
Finally, the results of this project demonstrate feasibility of the method to improve the C2S of the PONAL in its Public Safety Centers. Thus, this project gives opportunity to allocate public resources for a possible large-scale deployment.

Conclusions
Command and control systems are components that contribute to the construction of smart cities and safe cities. The dynamic visualization of data is usually more effective than static visualization because it allows patterns and trends to be identified. This method of spatiotemporal dynamic geo-visualization of data converts information into the knowledge that the strategic and tactical commanders of the PONAL need in order to make decisions in an effective and timely manner. According to the analysis carried out by police commanders, this could allow patterns of crime displacement to be identified and it even identify the actions of specific criminal or terrorist gangs.
This study analyzed several methods of geo-visualization of criminal activities, which have several advantages and disadvantages. However, when applied to a C2S, the advantages of this method become necessary since it is not only very novel, but because the existing methods do not have the combination of certain important and necessary characteristics for C2S. Only some of these characteristics can be found in other methods, but individually.