Online Structure Learning for Traffic Management Evangelos Michelioudakis 1 , Alexander Artikis 2 , 1 and Georgios Paliouras 1 1 Institute of Informatics and Telecommunications, NCSR “Demokritos” 2 Department of Maritime Studies, University of Piraeus 26 th International Conference on Inductive Logic Programming September 6, 2016
Introduction ◮ Event recognition applications in sensor environments: ◮ Mostly based on manually constructed patterns ◮ Patterns may be very hard to identify manually ◮ Learning relational structures in the presence of uncertainty is desirable ◮ We applied OSL α to learning definitions for traffic congestions ◮ Real sensor data provided in the context of the SPEEDD project 1 ◮ Learned definitions are used for event detection 1 www.speedd-project.eu 1 / 13 Evangelos Michelioudakis Online Structure Learning for Traffic Management
Event Recognition I NPUT ◮ R ECOGNITION ◮ O UTPUT � . . . . . . . . . . . . Event Recognition Streams of SDEs Recognised CEs System . . . . . . . . . . . . CE Definitions ◮ Event Calculus & Axiomatization ◮ Logic formalism to represent and reason about events and their effects ◮ CE initiations and terminations define whether a fluent holds or not ◮ Law of inertia : Fluents persist over time, unless affected by an event 2 / 13 Evangelos Michelioudakis Online Structure Learning for Traffic Management
Learning CE Definitions I NPUT ◮ ◭ I NPUT CE D EFINITION C ONSTRUCTION . . . . . . . . . . . . Machine Learning Streams of SDEs Annotated CEs System . . . . . . . . . . . . CE Definitions 3 / 13 Evangelos Michelioudakis Online Structure Learning for Traffic Management
Procedure of OSL α OSL α Data Stream/Training Examples Learnt Hypothesis H t : 0 . 4 HoldsAt ( congestion ( lid ) , t +1) ⇐ Micro-Batch D t HappensAt ( fast Slt20 ( lid ) , t ) ∧ HappensAt ( fast Slt25 (53708) , 99) HappensAt ( fast Ogt45 ( lid ) , t ) HappensAt ( fast Ogt55 (53708) , 99) HappensAt ( slow Slt15 (53708) , 99) HappensAt ( slow Ogt65 (53708) , 99) Next (99 , 100) HoldsAt ( congestion (53708) , 100) . . . − EC Axioms : MLN HoldsAt ( f, t +1) ⇐ InitiatedAt ( f, t ) HoldsAt ( f, t +1) ⇐ HoldsAt ( f, t ) ∧ ¬ TerminatedAt ( f, t ) ¬ HoldsAt ( f, t +1) ⇐ TerminatedAt ( f, t ) ¬ HoldsAt ( f, t +1) ⇐ ¬ HoldsAt ( f, t ) ∧ ¬ InitiatedAt ( f, t ) 4 / 13 Evangelos Michelioudakis Online Structure Learning for Traffic Management
Procedure of OSL α OSL α Data Stream/Training Examples Learnt Hypothesis H t : 0 . 4 HoldsAt ( congestion ( lid ) , t +1) ⇐ Inference Micro-Batch D t HappensAt ( fast Slt20 ( lid ) , t ) ∧ HappensAt ( fast Slt25 (53708) , 99) HappensAt ( fast Ogt45 ( lid ) , t ) HappensAt ( fast Ogt55 (53708) , 99) HappensAt ( slow Slt15 (53708) , 99) HappensAt ( slow Ogt65 (53708) , 99) Next (99 , 100) HoldsAt ( congestion (53708) , 100) . . . − EC Axioms : MLN HoldsAt ( f, t +1) ⇐ InitiatedAt ( f, t ) HoldsAt ( f, t +1) ⇐ HoldsAt ( f, t ) ∧ ¬ TerminatedAt ( f, t ) ¬ HoldsAt ( f, t +1) ⇐ TerminatedAt ( f, t ) ¬ HoldsAt ( f, t +1) ⇐ ¬ HoldsAt ( f, t ) ∧ ¬ InitiatedAt ( f, t ) 4 / 13 Evangelos Michelioudakis Online Structure Learning for Traffic Management
Procedure of OSL α OSL α Data Stream/Training Examples Learnt Hypothesis H t : 0 . 4 HoldsAt ( congestion ( lid ) , t +1) ⇐ Hypergraph Inference Micro-Batch D t HappensAt ( fast Slt20 ( lid ) , t ) ∧ HappensAt ( fast Slt25 (53708) , 99) HappensAt ( fast Ogt45 ( lid ) , t ) HappensAt ( fast Ogt55 (53708) , 99) HappensAt ( slow Slt15 (53708) , 99) HappensAt ( slow Ogt65 (53708) , 99) Next (99 , 100) HoldsAt ( congestion (53708) , 100) . . . − EC Axioms : MLN HoldsAt ( f, t +1) ⇐ InitiatedAt ( f, t ) HoldsAt ( f, t +1) ⇐ HoldsAt ( f, t ) ∧ ¬ TerminatedAt ( f, t ) ¬ HoldsAt ( f, t +1) ⇐ TerminatedAt ( f, t ) ¬ HoldsAt ( f, t +1) ⇐ ¬ HoldsAt ( f, t ) ∧ ¬ InitiatedAt ( f, t ) 4 / 13 Evangelos Michelioudakis Online Structure Learning for Traffic Management
Procedure of OSL α OSL α Data Stream/Training Examples Learnt Hypothesis H t : 0 . 4 HoldsAt ( congestion ( lid ) , t +1) ⇐ Hypergraph Inference Micro-Batch D t HappensAt ( fast Slt20 ( lid ) , t ) ∧ HappensAt ( fast Slt25 (53708) , 99) HappensAt ( fast Ogt45 ( lid ) , t ) HappensAt ( fast Ogt55 (53708) , 99) HappensAt ( slow Slt15 (53708) , 99) HappensAt ( slow Ogt65 (53708) , 99) Next (99 , 100) HoldsAt ( congestion (53708) , 100) . . . Paths to EC Axioms : MLN − Clauses HoldsAt ( f, t +1) ⇐ InitiatedAt ( f, t ) HoldsAt ( f, t +1) ⇐ HoldsAt ( f, t ) ∧ ¬ TerminatedAt ( f, t ) ¬ HoldsAt ( f, t +1) ⇐ TerminatedAt ( f, t ) Weight Clause Learning Evaluation ¬ HoldsAt ( f, t +1) ⇐ ¬ HoldsAt ( f, t ) ∧ ¬ InitiatedAt ( f, t ) 4 / 13 Evangelos Michelioudakis Online Structure Learning for Traffic Management
Procedure of OSL α OSL α Data Stream/Training Examples Learnt Hypothesis H t : . . . 0 . 4 HoldsAt ( congestion ( lid ) , t +1) ⇐ Hypergraph Inference Micro-Batch D t HappensAt ( fast Slt20 ( lid ) , t ) ∧ HappensAt ( fast Slt25 (53708) , 99) HappensAt ( fast Ogt45 ( lid ) , t ) HappensAt ( fast Ogt55 (53708) , 99) + HappensAt ( slow Slt15 (53708) , 99) HappensAt ( slow Ogt65 (53708) , 99) Next (99 , 100) HoldsAt ( congestion (53708) , 100) . . . Paths to EC Axioms : MLN − Clauses HoldsAt ( f, t +1) ⇐ InitiatedAt ( f, t ) Micro-Batch D t +1 HoldsAt ( f, t +1) ⇐ HappensAt ( fast Sgt70 (53708) , 200) HoldsAt ( f, t ) ∧ HappensAt ( fast Olt25 (53708) , 200) ¬ TerminatedAt ( f, t ) HappensAt ( slow Sgt40 (53708) , 200) HappensAt ( slow Olt18 (53708) , 200) ¬ HoldsAt ( f, t +1) ⇐ Next (200 , 201) TerminatedAt ( f, t ) Weight Clause ¬ HoldsAt ( congestion (53708) , 201) Learning Evaluation ¬ HoldsAt ( f, t +1) ⇐ . . . ¬ HoldsAt ( f, t ) ∧ ¬ InitiatedAt ( f, t ) . . . 4 / 13 Evangelos Michelioudakis Online Structure Learning for Traffic Management
Dataset ◮ Real data collected from sensors ◮ Mounted on the southern part of the Grenoble ring road ◮ 19 collection points along 12 km stretch on the highway ◮ Each collection point has a sensor per lane ◮ Consists of one month of data ( ≈ 3 . 3 GiB) ◮ Annotated by human traffic controllers for traffic congestion ◮ Sensor data are collected every 15 seconds and contain: ◮ Total number of vehicles passing through a lane ◮ Average speed and sensor occupancy 5 / 13 Evangelos Michelioudakis Online Structure Learning for Traffic Management
Learning Challenges (1/3) ◮ Traffic congestion annotation is largely incomplete ◮ Leading to the incorrect penalization of good rules 60 100 55 90 50 80 average speed (km/hour) 45 occupancy (% of time) 70 40 60 35 30 50 25 40 20 30 15 20 10 10 5 1400 1500 1600 1700 1800 1400 1500 1600 1700 1800 timepoints (x15 sec) timepoints (x15 sec) 6 / 13 Evangelos Michelioudakis Online Structure Learning for Traffic Management
Learning Challenges (2/3) ◮ Quality of information of each sensor differs 120 120 110 110 100 100 average speed (km/hour) average speed (km/hour) 90 90 80 80 70 70 60 60 50 50 40 40 30 30 20 20 10 10 7100 7150 7200 7250 7300 7350 7400 7450 7500 7100 7150 7200 7250 7300 7350 7400 7450 7500 timepoints (x15 sec) timepoints (x15 sec) (a) Fast (b) Queue 7 / 13 Evangelos Michelioudakis Online Structure Learning for Traffic Management
Learning Challenges (3/3) ◮ Generic location- and lane-agnostic rules are not sufficient ◮ They capture the concept of traffic congestion in a few locations, and completely fail in others. InitiatedAt ( congestion ( lid ) , t ) ⇐ HappensAt ( aggr ( lid, occupancy, avgspd ) , t ) ∧ avgspd < 50 ∧ occupancy > 25 8 / 13 Evangelos Michelioudakis Online Structure Learning for Traffic Management
Experimental Setup ◮ Data are stored in a database ◮ Micro-batches were constructed dynamically by querying the database ◮ Input events were produced by discretizing the numerical data ◮ The total length of the training sequence consists of 172799 timepoints ◮ We consider only SDEs in fast lanes ◮ 10 -fold cross-validation ◮ Compare OSL α vs AdaGrad online weight learner ◮ OSL α starting from an empty hypothesis ◮ AdaGrad operating on manually constructed definitions 9 / 13 Evangelos Michelioudakis Online Structure Learning for Traffic Management
Experimental Results Structure Learning Structure Learning 0.65 12 avg. batch processing (seconds) 11.4362 10 0.6 8 F 1 score 0.5911 0.5984 6.3153 0.5796 6 0.55 0.5495 4 2.8938 2 0.5 0.6913 50 0 10 1500 40 3000 20 2500 1000 30 30 2000 20 1500 500 40 1000 batch size (minutes) 10 50 0 500 batch size (minutes) batch size (SDEs) #batches Weight Learning Only Weight Learning Only 0.65 12 avg. batch processing (seconds) 0.6331 10 0.6 8 F 1 score 0.6062 0.6115 6 0.6077 0.55 4 3.012 0.5387 2 0.864 0.5 0.397 0.064 600 0 0 15000 3000 400 200 10000 2000 200 400 5000 1000 batch size (minutes) 0 batch size (minutes) 600 0 0 #batches batch size (SDEs) 10 / 13 Evangelos Michelioudakis Online Structure Learning for Traffic Management
Summary & Future Work ◮ OSL α achieves comparable predictive accuracy to manually curated rules ◮ OSL α can process data batches efficiently ◮ Faster search procedure may match AdaGrad processing time ◮ Low predictive accuracy of the learned model ◮ Extend OSL α to handle missing supervision 11 / 13 Evangelos Michelioudakis Online Structure Learning for Traffic Management
Recommend
More recommend