Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Using AI to Predict Earthquakes

DZone's Guide to

Using AI to Predict Earthquakes

This is a lengthy and complex endeavor, so we might not see results imminently — but it’s a fascinating project to keep tabs on.

· Big Data Zone
Free Resource

Access NoSQL and Big Data through SQL using standard drivers (ODBC, JDBC, ADO.NET). Free Download 

Towards the end of last year, I wrote about an interesting study at MIT that was monitoring vibrations to test the structural health of buildings. They suggest that the movement of traffic next to buildings send ambient vibrations through the length of the building, which can be used to monitor the stability of the structure.

“The broader implication is, after an event like an earthquake, we would see immediately the changes of these features, and if and where there is damage in the system,” the authors say. “This provides continuous monitoring and a database that would be like a health book for the building, as a function of time, much like a person’s changing blood pressure with age.”

Predicting Earthquakes

A team from Los Alamos National Laboratory have run with this general theory and has used Machine Learning to predict when an earthquake will occur, albeit in a lab environment, all from the sounds emitted by the earth under strain.

Currently, earthquakes are predicted based upon past movements of a fault, with the margin for error of such an approach measured in years. In other words, they're little of practical use in actually predicting the next quake.

The study done at Los Alamos suggests improvements are possible. They created a number of artificial earthquakes in their lab by creating friction between one block that was sandwiched between a couple of others. The idea was to simulate the kind of properties found in real faults.

The processes at play as a quake approaches are fairly well understood, with gouge material located in the fault failing and emitting a range of groans and cracks. The team is confident that the artificial system is a realistic enough representation of real earthquakes to give their prediction system merit.

Ears to the Ground

Whilst monitoring the sounds produced prior to earthquakes is doable, it’s much harder to actually derive insights and detect patterns in the noise. The Los Alamos team used Machine Learning to help do this and believe it’s made a real difference.

When the algorithm was put through its paces, it was very good at detecting an imminent earthquake, albeit in the lab environment.

“We show that by listening to the acoustic signal emitted by a laboratory fault, machine learning can predict the time remaining before it fails with great accuracy,” the authors say.

The researchers suggest that the algorithm is capable of spotting crucial trends in the data that are often missed by recordings in the real world.  In other words, the algorithm has picked up completely new signals that are accurate predictors of when a quake might occur.

The team urges a degree of caution, however, as whilst the results are indeed exciting, detecting ‘quakes’ in a lab environment is very different to doing so in the real world. The stresses experienced in real quakes are significantly larger, whilst the temperature in the rocks is also very different.

The team hopes to put the algorithm to the test in real quakes, however, to see just how useful it might be in predicting when quakes might occur. Suffice to say, this is a lengthy and complex endeavor, so we might not see results imminently — but it’s a fascinating project to keep tabs on.

The fastest databases need the fastest drivers - learn how you can leverage CData Drivers for high performance NoSQL & Big Data Access.

Topics:
big data ,artificial intelligence ,machine learning ,predictive analytics

Published at DZone with permission of Adi Gaskell, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}