<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Real-time Monitoring of Hungarian Highway Traffic from Cell Phone Network Data</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Andrea</forename><surname>Galloni</surname></persName>
							<email>andrea.galloni@inf.elte.hu</email>
						</author>
						<author>
							<persName><forename type="first">Balázs</forename><surname>Horváth</surname></persName>
							<email>balazs.horvath@inf.elte.hu</email>
						</author>
						<author>
							<persName><forename type="first">Tomáš</forename><surname>Horváth</surname></persName>
							<email>tomas.horvath@inf.elte.hu</email>
						</author>
						<author>
							<affiliation key="aff0">
								<orgName type="department">Department of Data Science and Data Technologies</orgName>
							</affiliation>
						</author>
						<author>
							<affiliation key="aff1">
								<orgName type="department">Faculty of Informatics</orgName>
								<orgName type="institution">ELTE -Eötvös Loránd University in</orgName>
								<address>
									<settlement>Budapest</settlement>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Real-time Monitoring of Hungarian Highway Traffic from Cell Phone Network Data</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">0F10FE37D90922FF9DD926B934D46CD6</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-25T09:12+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<textClass>
				<keywords>
					<term>Anomaly Detection</term>
					<term>Mobile Data Analytics</term>
					<term>Visualization</term>
				</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>A lightweight model for real-time monitoring of the load of Hungarian highway traffic is presented in the paper. The input data of the model are cell phone network event records provided by Magyar Telekom Nyrt., the major Hungarian telecommunication company. The output is a classification of the level of crowdedness of the Hungarian highways inferred from the activity level of the mobile telecommunication infrastructure. While processing, a data-stream is flowing through a chain of simple but efficient data structures. For computing anomalies against the usual behavior of the traffic at given segments of the highway, so-called break-points, known from the SAX representation of time-series, are utilized which require cheap computation. The model is implemented as a server application able to feed a client web-based visualization application implemented for demonstration purposes. The experiments, performed on anonymized data covering one month of cell phone records, show that the presented model is computationally cheap, it efficiently runs even on low-end hardware such that Raspberry Pi.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>A method resulting from an industrial research project is presented in this paper. The presented method has been developed for a specific and well-defined use case: inferring the level of the mobility traffic load on Hungarian highways from cell phone network data. The data have been provided by the industrial partner, Magyar Telekom Nyrt., the major Hungarian telecommunication company, a subsidiary of Deutsche Telekom AG.</p><p>Experimental outcomes are positive and promising as the underlying core model is computationally light and simple. The data structures used and the overall system architectural-design could be, possibly, exploited for other applications or use cases. More specifically, the presented model can be used where there is the need to detect anomalies in time series given a set of nodes and the logs providing quantitative information describing the activity of such nodes over time. Even if the developed framework is specifically build to infer information regarding the Hungarian highways mobility infrastructure through the anal-ysis of the mobile telecommunication infrastructure, the core model can be adapted to different scenarios and different data logs such as tower cell crowdedness or Internet backbones nodes activity monitoring.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.1">Related Work</head><p>Nowadays we are witnessing to a constant increasing speed of networks, furthermore the capability to store and process conspicuous amount of data can be performed at affordable prices. This new scenario enables telecom operators to store and process big quantities of logs triggered by a countless number of events. Along the past years, the research community proposed several models regarding the possibility to infer or predict information regarding the status of the mobility infrastructure analyzing the mobile telecommunication event logs. Furthermore, the evolution of new telecommunication technology standards such as 5G will bring more efficient and accurate localization techniques leading to more precise analysis and estimations <ref type="bibr" target="#b7">[7]</ref>.</p><p>In <ref type="bibr" target="#b6">[6]</ref>, authors present quite a complex model able to estimate the traffic flow making use of anonymized temporal series of cell handover logs, building state diagrams and using Markov Models in order to detect car accidents.</p><p>On the other hand, in <ref type="bibr" target="#b8">[8]</ref>, authors propose a framework mining several heterogeneous data sources making use of the MapReduce programming-model (more precisely using Apache Hadoop) in order to process big amounts of data in a reasonable amount of time involving high-end hardware and clusters of machines. The authors of this contribution are able to estimate the traffic volume and the speed of the traffic flow.</p><p>In <ref type="bibr" target="#b9">[9]</ref>, the authors provide a full overview of methodologies providing a possible list of necessary steps in order to infer traffic information such that i) location data collection, ii) terminal classification in order to determine which mobile terminals are located on the road and which means of transport they are in, while iii) map matching phase in order to link the extracted location data with the mobility infrastructure, iv) the route determination process used to determine the path of the vehicles while the last step is to perform v) the estimation of the traffic state.</p><p>In order to estimate traffic flows the use of origin/destination matrices have been tried out in <ref type="bibr" target="#b10">[10]</ref> and <ref type="bibr" target="#b11">[11]</ref>, however, as pointed out in <ref type="bibr" target="#b6">[6]</ref>, these solutions might be computationally expensive from the technical point of view and hard to scale when the size of the user set tends to grow. On the other hand, from the law regulation perspective these solutions might see limitations on real deployment scenarios due to privacy concerns and strict regulations, especially the ones applying within the European Union.</p><p>Within this contribution, a minimalistic approach to traffic load detection is introduced exploiting just events triggered by the active utilization of the User Equipments (Calls, SMS and Mobile Data Usage) without involving logs related to lower level signalling protocols such as cell handover event logs. The aim of this research was to discover at which extent and precision is possible to infer reliable traffic analysis with minimalistic datasets and minimal computing costs. A server application able to feed a web-based visualization application has been implemented for demonstration purposes. Experiments provided on real but anonymized data covering one month of cell phone records show that the the presented model is promising and is able to efficiently run even on low-end hardware.</p><p>The rest of this paper is organized as follows: Section 2 gives a description of the available data and the procedure utilized to match telecom data with geographical-map data. In Section 3, a detailed description of the system architecture and the core estimation model are provided. In the Section 4 the process of traffic load classification is described. The following Section 5 contains experimental results and measurements. Finally, in Section 6 some conclusions and plans for future work are provided.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Data Sources and Framework Initialization</head><p>An important part of the presented framework is its initialization to the specific use case, such that highway traffic load monitoring, in our case, what consists of understanding the data and selecting the towers to be considered relevant by the framework.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.1">Telecom Data</head><p>The industrial partner has granted access to a dataset 1 containing several .csv (Comma Separated Values) files organized in a daily basis containing two main kinds of information such that 1 Due to the signed non-disclosure agreement between the academic and the industrial partner of the project, each sample of the data, e.g. the Tables <ref type="table" target="#tab_1">1 and 2</ref>, presented in this paper are synthetic, i.e. contain fictive information.</p><p>Call Detail Record (CDR) data concern the activity logs of each user interacting with the network on a daily basis. A CDR is produced by a telephone equipment that documents the details of a call or other telecommunications events (e.g. notifications, short message service or signaling protocols) that involves the telecom provider infrastructure.</p><p>The dataset is composed by several files accounting a size of 500GB. The entire information contained within the dataset covers a range of 31 days, more precisely between 15th September 2016 and 15th October 2016, where all the unique identifiers referencing to the users have been anonymized on a daily basis. The overall number of logs is around 200 million records per day.</p><p>In order to work with just the useful data all the unnecessary information contained in the dataset such as the nature of event logs and other information regarding customer related data (e.g. phone and events identifiers) have to be discarded by the framework.</p><p>At the end of this process, the CDR files contains three kind of attributes as presented in Table <ref type="table" target="#tab_0">1</ref>, namely, the Unique User Identifier (UUID) re-anonymized on a daily basis (to prevent tracking of user movement across more days), the date-time information related to the log event and the Tower Identifier (TID) providing information from which cell-tower the event has been triggered.</p><p>Cell Reference (CR) data provide informations about the mobile radio-towers and their positioning within the Hungarian territory. As illustrated in the Table <ref type="table" target="#tab_1">2</ref>, CR data contain three attributes, namely, the Tower Identifier (TID) which connects the CDR data with the CR data, the Latitude and the Longitude regarding the given tower. Due to how the industrial partner gathered and anonymized the data, process on which the authors were not involved, some records contained within the CDR files hold UUIDs with NULL value or in some cases hold inconsistent TIDs. Namely some TIDs contained in the CDR logs do not match any of the TIDs in the CR data. The UIIDs inconsistencies are uniformly spread over the locations while for the inconsistent TIDs is not possible to draw any conclusion about the geographical regions affected. In case of those inconsistent logs, it is not possible to get the subject performing the action or the location of the event. For this reason all the affected records, which are around 30% of all the records, are affected and have to be handled (discarded) by the framework during the on-line computation.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.2">Geographic Maps Data</head><p>In order to get information about Hungarian highways the research relied on OpenStreetMap<ref type="foot" target="#foot_0">2</ref> (OSM) data. The open project makes available data about roads, trails, cafes, railway stations and other basic map features from all around the world.  First of all information about the Hungarian country borders have been extracted, then the data regarding only highways has been kept obtaining a .json file containing informations about each highway divided in several segments, where each segment contains information describing a small section of the highway (e.g.: name, type, speed limit) and its location. The length of each highway's section depends on the topography of the area, the density of the population and the radio-technology of the cell towers of the operator. The outcome of this phase, i.e. the detected borders, can be observed in the Figure <ref type="figure" target="#fig_7">6</ref>.</p><p>Detecting Relevant Towers In order to monitor the highways infrastructure traffic and exclude irrelevant information from the data model an additional filtering and selecting step has been performed. After this phase, only the relevant towers that have a strict correlation with the highways infrastructure have been kept.</p><p>The density of the cell tower placement and its spatial characteristics represent a crucial issue in terms of spaceresolution within the developed monitoring system. Provided the mostly flat characteristics of the Hungarian landscape, is possible to assume that the cell towers displacement is mostly not conditioned by the topographic properties of the surrounding areas but rather follows the density of the population over the whole territory. This characteristic of the cell towers placement is due to several factors such as scalability, laws of physics and signal processing theory. Figure <ref type="figure" target="#fig_1">1</ref> illustrates the density of the city of Budapest and its east country side area from which it is possible to observe that in rural areas cell towers are placed close to the highway in order to provide the radio-signal to travelers.</p><p>In order to detect cell towers which lead to the crowdedness status of that specific section of the highway, an adhoc algorithm have been developed based on a QuadTree <ref type="bibr" target="#b1">[1]</ref> data structure. The generated tree contains all the coordinates of the cell towers that are listed in the CR data. Then, for every highway section the closest tower cell has been found querying the tree structure. After this process,  as shown in Figure <ref type="figure" target="#fig_2">2</ref>, each highway section is linked to a specific cell tower while all the towers not related with the highways will not be considered by the framework while processing.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">The System Architecture</head><p>The framework has its roots in several components, i.e. the following data structures (called dictionaries, according to Python notation) and logical units.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.1">Data Structures</head><p>Relevant Towers Dictionary (RTD) RTD is one of the main data structure on which most of the others are based on. In fact the RTD represents an HashMap having as keys the identifiers (TID, see Table <ref type="table" target="#tab_1">2</ref>) of all the relevant towers and as values the geographical coordinates of given towers as strings. RTD is the result of the module for detection of relevant towers, described above. This dictionary remains constant in the framework and changes only if there are changes in geographical locations of cell towers such that a new tower is placed near the highways, for example.</p><p>User at Relevant Towers Dictionary (URTD) URTD is a HashMap and it has as keys all the UUIDs (Unique User IDs, see Table <ref type="table" target="#tab_0">1</ref>) of the users whose previous logs were triggered by relevant towers, namely, those logs who had their TID appearing in the RTD keys, and, as values the TID of the tower the given user has been related to for the last time. At the startup of the system, this data structure is empty and at the beginning of a new day, due to the UUID re-anonymization on a daily basis, it is reinitialized.</p><p>Tower ID Counter Dictionary (TIDCD) TIDCD is a HashMap and it has as keys (TIDs) all the relevant towers while it has as values counters representing the number of users whose last log have been related to that specific TID.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.2">The Status Maintainer Module (SMM)</head><p>As soon as a log event is triggered, the SMM is delegated to keep track of the last location of the user (attaching to him/her the proper TID in the URTD) and increases or decreases the counter of the proper TID within the TIDCD according to the situation. This module acts as a supervisor moving the subscribers from a tower to another, keeping the model up to date with the information provided by the event logs. SMM is delegated to interpret and take decisions based on the information provided from the logs with the following functionality:</p><p>As soon as the application is started, both the URTD and the TIDCD Hash Maps are empty. As the first incoming log having a TID present in the RTD key-set is processed, the SMM will fill the URTD with the UUID as key and the TID as value, then, it will initialize the counter of the specific TID key within the TIDCD to 1. If a second log from the same user will come but, this time, with a different and relevant TID then the counter of the old TID (the last "location" of the user) within the TIDCD will be decreased by one unit and suddenly the corresponding URTD's value will be updated to the actual TID inferred from the log querying the RTD and, finally, the corresponding TIDCD value (for the actual TID the user is connected to) will be increased. In the last case, if the subscriber's handset will trigger a log which is not related to a relevant tower, the counter of the old TID within the TIDCD will be decreased by one and the key within the URTD corresponding to the specific UUID will be removed (the user has left the set of towers delegated to monitor the highways mobility status). All the event logs (records) containing a non-relevant TID (user is not on a highway) and UUID not stored in URTD (user was not on a highway before) are immediately discarded. Figure <ref type="figure" target="#fig_3">3</ref> provides an illustration of the SMM logic.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.3">The Evaluator Module (EM)</head><p>The EM is the core module of the framework, which is responsible for classifying the status of the load of a spe-cific highway segment. It uses as an evaluation model described in the next section where the number of classes is determined by a parameter.</p><p>The EM module is triggered every time a time frame (a parameter of the framework) expires. At this point it is time to evaluate the status of the whole system. At this stage the EM iterates over all the TIDCD, computes all the means and standard deviations using the past data necessary to evaluate the actual status of all the relevant TIDs and then finally classifies every segment of a given highway into one of the predefined classes. For example, in case of 10 classes, the class 5-6 corresponds to normal traffic, 7-8 to higher while 9-10 to very high traffic, 3-4 to lower and 1-2 to very low traffic on a given segment of the highway.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.4">The Notification Delegate Module (NDM)</head><p>The NDM is the part of the framework responsible to constantly collect the result of the EM and update the clients about the highways status sending all the needed informations as a json payload. While this process takes place, an ID conversion is performed. In fact, the back-end and the front-end of the framework, due to security reasons, do not share the same internal IDs for representing the TIDs. Once finished, the control is passed to the Notification Delegate Module responsible for communicating with the client (described below).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Classification of the Traffic Load</head><p>In order to classify the load of a segment of highway, one should consider the past data as a reference for the evaluation of the new entries. Given the topographic features of the Hungarian landscape it is expected that the activity of cell towers close to the highway have a low static noise (in <ref type="bibr" target="#b6">[6]</ref> authors highlights that systems relying on cell telecom logs for traffic estimations within urban areas could suffer high loss of precision due to event logs triggered by non-traveling users). In fact, in this specific case the majority of the event logs are generated mostly by travelers and it is easily possible to observe that the number of travelers in a given time-range tend to be similar for different week-days.</p><p>Provided the latter observation, it is possible to build a model such that in order to classify the load of a specific road segment in a precise time-range of the day (e.g.: between 12:00 and 12:15) compares the value to be classified against the values of load within the same time range of the previous days. Here, a sort of seasonality of the traffic has to be considered, e.g. there is more heavier load during the rush hours while less traffic at nights.</p><p>An other, interesting phenomenon is that sometimes a traffic anomaly can become normal with time. For example, consider a longer construction work on a highway causing the close of some parts (e.g. lanes) of the road. In the time of its appearance, since it is sudden for the traffic, it is considered an anomaly and results in traffic jams. However, with time, the traffic normalizes such that people get used to it (e.g. start using alternative routes) and the notion of heavy load changes.</p><p>All of the above observations lead to the straightforward use of time-series for representing the given problem of traffic load monitoring and classification.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.1">Utilizing Breakpoints</head><p>The proposed model for classification of traffic load in various highway segments utilizes well-known concepts in Symbolic Aggregate Approximation (SAX) of time series <ref type="bibr" target="#b2">[2,</ref><ref type="bibr" target="#b3">3]</ref>. SAX makes use of Piecewise Aggregate Approximation (PAA), a computationally very cheap method <ref type="bibr" target="#b4">[4]</ref> since it operates with arithmetic mean and standard deviation, both very cheap operations.</p><p>SAX allows a time series of arbitrary length n to be reduced to a string of arbitrary length w, (w n) with the alphabet size a &gt; 2 (the number of letters used to represent the time-series using SAX). In this process the data is divided into w equal sized "frames". The mean value of each frame is calculated and a vector of these values becomes a reduced representation. For further details, refer to <ref type="bibr" target="#b2">[2,</ref><ref type="bibr" target="#b3">3]</ref>.</p><p>Assuming that the distribution of the values over the time-series follows a normal distribution, it is possible to subdivide the time-series into so called breakpoints B. Breakpoints are a sorted list of numbers B = (β 1 , • • • , β a−1 ) such that the area under a N(0, 1) Gaussian curve from β 1 to β i+1 = 1/a where β 0 and β a are defined as −∞ and +∞, respectively. The advantage of utilizing breakpoints is that they do not need further computation but may be determined by simply looking them up in a statistical table, as illustrated in the table 3 containing the breakpoints dividing a Gaussian distribution in an arbitrary number (from 3 to 10) of regions.</p><p>The final key-concept of the proposed model is that it does not represent the data in the past with a SAX representation, however the system classifies a new entry using the breakpoints generated making use of the data recorded in past in a SAX-like fashion just performing a lookup on a small table.</p><p>An efficient way to detect anomalies in time series is that it is enough to compare the breakpoint determined for the actual time frame to the breakpoints determined for the corresponding time frame(s) in the past, for example, the same time of the day before or the same time of the same day a week before, etc. Depending on the number of classes to which the framework should classify the new entry in the dataset, the right column of the statistical table has to be implemented in the system and then looked up. In order to give a wider freedom of tuning, this value has been kept as a parameter of the framework.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Historical Data Representation</head><p>The data from the past are stored in an efficient-to-load binary format making use of Python's Pickle module. Files are stored in a daily format in the form of a HashMap of arrays having as keys the TIDs. Once loaded, the files are reshaped in MxN matrices, one for each TID, where M is the number of timeframes and N represents the number of days to consider in the past. All the tests in this research were performed setting the time frames at 15 minutes and considering the last 15 days in the past. This representation have been chosen because once the system is running in real-time with a continuous data-stream then it is easy to shift the matrix data and recompute all the means and standard deviations efficiently. This shifting and re-computation operation would be performed once per day at a given time (e.g. midnight) exactly when the system is subject of a reinitialization or when the log re-anonymization process is performed.</p><formula xml:id="formula_0">a β i 3 4</formula></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">Experiments</head><p>Given the lack of open systems providing precise information about the traffic flows over time we validated the system over specific traffic congestions. The goal of the experiment is to validate the method looking for a correlation between the highways status and the telecommunication infrastructure. In order to validate the results of the developed system authors asked the collaboration of utinform 3 , a department of Magyar Közút Nonprofit Zrt.</p><p>whose responsibility is to collect information and monitoring the roads traffic. They gather information from heterogeneous data sources: the employees of the company monitoring the highways, the county directorates and the engineering departments employees. Utinform, in order to cross-validate the crowd sourced data sets, is also cooperating with institutions such as police, disaster management, and public transport which have their own feed to post their information to the system. Furthermore, the system has a crowd source interface, where people can submit experienced traffic anomalies. The goal of utinform is to provide fast and validated traffic information to the drivers in whole Hungary. The data received include information regarding traffic congestions on all the Hungarian highways. The dataset contained data from October the 1st to October the 14th, 2016 regarding congestions with a length of at least 3 kilometers. Table <ref type="table">4</ref> shows the validation data and the results of the proposed framework.</p><p>Setting the number of classes to 10. We define a correct detection when there is at least 50% overlap (in terms 3 http://utinform.hu/ of time) over the validation data with traffic classification level equal to 9 or 10. With this setup eleven out of fourteen (79%) congestions have been successfully detected. The time series have been quantized with time windows of 15 minutes, thus during the testing phase the classification takes place each fifteen minutes.</p><p>It is interesting to note that the majority of the anomalies are detected earlier than the data provided by utinform. This can be a proof that the proposed solution is able to spot congestions when these are shorter than three kilometers. The outcome is similar for what concerns the end of the congestions, in this case the proposed solution tends to detect the end of an anomaly later than the validation data set. Three congestions out of fourteen have not been detected, however this can be due to at least two reasons: the telecom operator (because of industrial secrecy concerns) did not provide to us any detail regarding the range of antennas or their direction, thus, there might be a chance of inaccuracies along the phase of matching the geographical maps with the towers' positions in order to define the competence of each tower w.r.t. the highways segments. Another reason could be due to data inconsistencies. In fact, as mentioned in Section 2, one third of the data have been dropped.</p><p>Figure <ref type="figure" target="#fig_4">4</ref> represents the classification value over time slices of fifteen minutes for the highway segment suffering for the congestion described in Table <ref type="table">4</ref> on row three. The red (in black and white print: the dark) vertical line represents the time slot when the anomaly is detected on the validation set. Here, a congestion is defined when the classification values are equal or greater than 9. On the other end, Figure <ref type="figure" target="#fig_6">5</ref> represents the number of handsets (an estimation of the number of travelers) involved in the congestion.</p><p>The application framework have been completely developed in Python 3.6 and it have been demonstrated to be very efficient. Although the system is designed to work on-line receiving a stream of data in real-time, in order to measure the performances of the model, we decided to exclude the streaming and the networking module, finally we tested the model in off-line mode. One log per time is read and suddenly processed. With this approach we  maintained the architectural design of the framework and no-delay straming process has emulated while at the same time avoiding networking related delays. Running the application on an Intel i7 6700K with 16GB of DDR4 RAM, on average, manages to process the logs for an entire day within less than 10 minutes with a peak of RAM consumption of 32MB. Furthermore, the application framework have been deployed on a Raspberry Pi 3 where the running time needed to process an entire set of logs representing one day is in around 1 hour, in average.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5.1">Visualization</head><p>First the communication interface need to be mentioned between the back end and the front end part. The front end is a web based application, it uses HTML and JavaScript, which communications with the Python back end through Web Sockets with .json files. At the initialization stage, first the front end asks the back end for mapping of tower IDs and highway sections, as it was mentioned before at the geographic data section. After the initial step, the back end is sending messages which the front end processes and shows on the map. These messages are json files, containing a list of objects with three attributes: ID, value, anomaly. The ID stands for the tower IDs and the value is an int from 0 to 9 showing the traffic load on that segment, and the anomaly flag is giving information that this value is the expected for the given time window or it is deviating from the usual traffic load on that area. In order to keep the low cost functionality of the system, the visualization had to be carefully built as well. An open-source JavaScript library, LeafletJS<ref type="foot" target="#foot_1">4</ref> was used to place layers on the particular highway segments. This library has relatively low cost of handling layers and as it is expected from an application where the traffic load is constantly changing this was a critical feature. Each layer is a colored visualization of the value given to the particular highway section, an example can be seen on the Figure <ref type="figure" target="#fig_7">6</ref>, where the spectrum is from blue to red, representing the low to high traffic load. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="6">Conclusions</head><p>A lightweight traffic monitoring and traffic jam detection framework has been presented in this paper based on HashMap data structures and methods for breakpoint detection well-known in time series classification. The used concepts require cheap computation and, basically, minimal tuning phase opposite to the case of tuning the hyperparameters of machine learning algorithms. The few parameters of the framework such that the time window or time frames as well as the number of breakpoints can be set according to an available domain knowledge or user expertise. However, to avoid false positives, it is recommended to tune the presented framework before implementing it into a production environment.</p><p>The SAX representation had already been used as a tool for time series classification. However, the proposed discretization procedure is unique in that it uses an intermediate representation between the raw time series and the symbolic strings. Furthermore the aim is not to classify full time series as in <ref type="bibr" target="#b5">[5]</ref> but rather to classify new incoming single values.</p><p>The presented framework was tested using real data. Due to the sensitive nature of the project the presented framework was developed within, the authors cannot disclose the source code nor the data used in experiments, in this time. Experiments show that the proposed framework is promising and worth further development and adaptation to other use-case scenarios.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head></head><label></label><figDesc>09-15 13:30:41 10B32F03E10CB 777865354435 2016-09-15 00:27:50 10DA0232324BC 677655453449 2016-09-15 17:44:08 00443344DFFEA</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Figure 1 :</head><label>1</label><figDesc>Figure 1: Density of cell towers for Budapest Urban and Eastern Rural Area, an illustrative example.</figDesc><graphic coords="3,311.73,153.22,226.35,102.47" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Figure 2 :</head><label>2</label><figDesc>Figure 2: Relevant towers identification and towers competence attribution, an illustrative example.</figDesc><graphic coords="3,311.73,315.20,226.35,71.71" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head>Figure 3 :</head><label>3</label><figDesc>Figure 3: The logic diagram of the Status Maintainer Module</figDesc><graphic coords="5,152.15,64.71,295.26,245.32" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_4"><head>Table 4 :</head><label>4</label><figDesc>Experimental Results indicating congestion (Cong.) start and end times as well as detection (Det.) start and end times.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_5"><head>Figure 4 :</head><label>4</label><figDesc>Figure 4: Classification values over time slices and the time of a congestion (red/dark line), an illustrative example.</figDesc><graphic coords="7,62.99,297.24,246.03,184.52" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_6"><head>Figure 5 :</head><label>5</label><figDesc>Figure 5: Number of handsets involved in a congestion and the time of the congestion (red/dark line), an illustrative example.</figDesc><graphic coords="7,310.80,297.24,246.03,184.52" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_7"><head>Figure 6 :</head><label>6</label><figDesc>Figure 6: The traffic load visualized on the highway segments, an illustrative example.</figDesc><graphic coords="8,73.92,181.43,226.35,129.44" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head>Table 1 :</head><label>1</label><figDesc>A synthetic CDR data sample with fictive UUID, date-time and TID data, for illustration purpose .</figDesc><table><row><cell>TID 6776554S3449 46.291311 17.366325 Latitude Longitude</cell></row><row><cell>777865354435 46.282342 17.357244</cell></row><row><cell>677655453449 46.366745 17.364112</cell></row></table></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_1"><head>Table 2 :</head><label>2</label><figDesc>A synthetic CR data sample with fictive TID, Latitude and Longitude data for illustration purpose.</figDesc><table /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_2"><head>Table 3 :</head><label>3</label><figDesc>Statistical table for determining the values of breakpoints</figDesc><table><row><cell>β 1 β 2 β 3 β 4 β 5 β 6 β 7 β 8 β 9</cell><cell>-0.43 0.43</cell><cell>-0.67 0 0.67</cell><cell>5 -0.84 -0.25 0.25 0.84</cell><cell>6 -0.97 -0.43 0 0.43 0.97</cell><cell>7 -1.07 -0.57 -0.18 0.18 0.57 1.07</cell><cell>8 -1.15 -0.67 -0.32 0 0.43 0.67 1.15</cell><cell>9 -1.22 -0.76 -0.43 -0.14 0.14 0.43 0.76 1.22</cell><cell>10 -1.28 -0.84 -0.52 -0.25 0 0.25 0.52 0.84 1.28</cell></row></table></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="2" xml:id="foot_0">https://www.openstreetmap.org/ Real-time Monitoring of Hungarian Highway Traffic from Cell Phone Network Data</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="4" xml:id="foot_1">http://leafletjs.com</note>
		</body>
		<back>

			<div type="acknowledgement">
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Acknowledgements</head><p>Authors would like to thank Magyar Telekom Nyrt. and utinform.hu. The research has been supported by the European Union, co-financed by the European Social Fund EFOP-3.6.3-VEKOP-16-2017-00001 and the project "Open City services" funded by Magyar Telekom Nyrt.</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Start Time Cong. End Time Det. Start Time</title>
		<author>
			<persName><surname>Cong</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Det. End Time</title>
		<imprint>
			<biblScope unit="volume">11</biblScope>
			<biblScope unit="issue">40 10</biblScope>
			<biblScope unit="page">25</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">Quad Trees: A Data Structure for Retrieval on Composite Keys</title>
		<author>
			<persName><forename type="first">R</forename><surname>Finkel</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><forename type="middle">L</forename><surname>Bentley</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Acta Informatica</title>
		<imprint>
			<biblScope unit="volume">4</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="1" to="9" />
			<date type="published" when="1974">1974</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">A symbolic representation of time series, with implications for streaming algorithms</title>
		<author>
			<persName><forename type="first">J</forename><surname>Lin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Keogh</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Lonardi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>Chiu</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 8th ACM SIGMOD workshop on Research issues in data mining and knowledge discovery</title>
				<meeting>the 8th ACM SIGMOD workshop on Research issues in data mining and knowledge discovery</meeting>
		<imprint>
			<publisher>ACM</publisher>
			<date type="published" when="2003">2003</date>
			<biblScope unit="page" from="2" to="11" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Experiencing SAX: A Novel Symbolic Representation of Time Series</title>
		<author>
			<persName><forename type="first">J</forename><surname>Lin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Keogh</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Wei</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Lonardi</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Data Mining and knowledge discovery</title>
		<imprint>
			<biblScope unit="volume">15</biblScope>
			<biblScope unit="issue">2</biblScope>
			<biblScope unit="page" from="107" to="144" />
			<date type="published" when="2007">2007</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">A piecewise aggregate approximation lower-bound estimate for posteriorgram-based dynamic time warping</title>
		<author>
			<persName><forename type="first">Y</forename><surname>Zhang</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Glass</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">12th Conference of the International Speech Communication Association</title>
				<imprint>
			<date type="published" when="2011">2011</date>
			<biblScope unit="page" from="1909" to="1912" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Sax-vsm: Interpretable time series classification using sax and vector space model</title>
		<author>
			<persName><forename type="first">P</forename><surname>Senin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Malinchik</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">IEEE 13th International Conference on</title>
				<imprint>
			<publisher>IEEE</publisher>
			<date type="published" when="2013-12">2013. December. 2013</date>
			<biblScope unit="page" from="1175" to="1180" />
		</imprint>
	</monogr>
	<note>Data Mining (ICDM)</note>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Cellular Flow in Mobility Networks</title>
		<author>
			<persName><forename type="first">A</forename><surname>Milani</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Gentili</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Poggioni</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">IEEE Intelligent Informatics Bulletin</title>
		<imprint>
			<biblScope unit="volume">10</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="17" to="23" />
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">High-efficiency device localization in 5G ultra-dense networks: Prospects and enabling technologies</title>
		<author>
			<persName><forename type="first">A</forename><surname>Hakkarainen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Werner</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Costa</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><surname>Leppanen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Valkama</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Vehicular Technology Conference (VTC Fall)</title>
				<imprint>
			<publisher>IEEE</publisher>
			<date type="published" when="2015-09">2015. September. 2015</date>
			<biblScope unit="page" from="1" to="5" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Data Mining for Traffic Prediction and Analysis using Big Data</title>
		<author>
			<persName><forename type="first">R</forename><surname>Khokale</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Ghate</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">International Journal of Engineering Trends and Technology</title>
		<imprint>
			<biblScope unit="volume">48</biblScope>
			<biblScope unit="issue">3</biblScope>
			<date type="published" when="2017">2017</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">Road Traffic Estimation using Cellular Network Signaling in Intelligent Transportation Systems</title>
		<author>
			<persName><forename type="first">D</forename><surname>Gundlegard</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><forename type="middle">M</forename><surname>Karlsson</surname></persName>
		</author>
		<idno>978-1-60741-588-6 2009</idno>
	</analytic>
	<monogr>
		<title level="m">Wireless technologies in Intelligent Transportation Systems</title>
				<editor>
			<persName><forename type="first">Ming-Tuo</forename><surname>Zhou</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">Yan</forename><surname>Zhang</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">L</forename><forename type="middle">T</forename><surname>Yan</surname></persName>
		</editor>
		<imprint>
			<publisher>Nova Science Publishers</publisher>
			<date type="published" when="2009">2009</date>
			<biblScope unit="page" from="361" to="392" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">Extracting origin destination information from mobile phone data</title>
		<author>
			<persName><forename type="first">J</forename><surname>White</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><surname>Wells</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">11th International Conference on Road Transport Information and Control</title>
				<meeting><address><addrLine>London</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2002">2002. 2002</date>
			<biblScope unit="page" from="30" to="34" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">Deriving Traffic Data from a Cellular Network</title>
		<author>
			<persName><forename type="first">J</forename><forename type="middle">P</forename><surname>Wideberg</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Caceres</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><forename type="middle">G</forename><surname>Benitez</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Procedings of the 13th ITS World Congress</title>
				<meeting>edings of the 13th ITS World Congress<address><addrLine>London</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2006">2006. 2006</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
