Predicting Crime Propagation

Predicting Crime Propagation with Self-Exciting Point Processes

Watch a video presentation

Start Date End Date Duration Members
01/02/2016 02/26/2016 4 week 1


Based on the research by George Molher on self-exciting point processes, I implemented his crime propagation algorithm and expectation maximization algorithm to predict homicide propagation in Chicago.


The research paper can be found here: Marked point process hotspot maps for homicide and gun crime prediction in Chicago

The data I used is available on City of Chicago

Tools Used

Use Tool
Code Python
Prediction Epidemic-Type Aftershock Sequence Model (ETAS)
Parameter Estimation Expectation-Maximization algorithm


My most important challenge was understanding all of the math equations that were used for the prediction algorithm. This meant understanding the entire research paper.

My second most important challenge was implementing the equations in Python while making sure that everything was reasonably computationally efficient. To accomplish this I used Numpy matrices which made it hard as the equations were not written on the basis of matrices.


I implemented as much as I could for the Expectation-Maximization algorithm. However I am not sure what the convergence condition is. When implementing my solution the log-likelyhood seemed to diverge more than anything.

Also, I was not able to implement a fully functional heat-map like suggested because of the computational cost of computing the intensity of many points on a grid.


I loved working on such a practical application.

It was also fascinating to dive into someone else's research and attempt to implement it.

I also got to speak with a police officer of the Chicago police department who shared with me great insight on the use of predictive technologies by the police force: the pros and cons.


I showed initiative on working on a project that was challenging for me, especially math-wise.


Although Mr. Molher did send me the links to some of the works on the subject, he never answered my other email asking for clarification points on his research. To overcome this I did research and simply assumed what I thought the answer could be.

What would I do differently

After speaking with the police officer I realized that predictive tools answered the need of police departments but not that of police officers. The men in the field are the most important asset to the Law and thus it is their need we should be answering. Should I do this again or what I will change in the future is thinking about a solution to helping the officers out with data science.