Community Seismic Network Daniel Obenshain along with K. Mani Chandy, Robert Clayton, Andreas Krause, Michael Olson, Matthew Faulkner, Leif Strand, Rishi.

Slides:



Advertisements
Similar presentations
Internet for multimedia content Yogendra Pal Chief Engineer, All India Radio.
Advertisements

Categories of I/O Devices
Staying in Sync with Cloud 2 Device Messaging. About Me Chris Risner Twitter: chrisrisner.
theory and practice collide The Next Big One: Detecting Earthquakes and Other Rare Events from Community Sensors Matthew Faulkner,
Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
IS333, Ch. 26: TCP Victor Norman Calvin College 1.
Rapid Detection of Rare Geospatial Events: Earthquake Warning Applications A Review by Zahid Mian WPI CS525D September 10, 2012.
Tom Heaton Caltech Geophysics and Civil Engineering.
TDC365 Spring 2001John Kristoff - DePaul University1 Internetworking Technologies Transmission Control Protocol (TCP)
UDP - User Datagram Protocol UDP – User Datagram Protocol Author : Nir Shafrir Reference The TCP/IP Guide - ( Version Version.
A CHAT CLIENT-SERVER MODULE IN JAVA BY MAHTAB M HUSSAIN MAYANK MOHAN ISE 582 FALL 2003 PROJECT.
802.11n MAC layer simulation Submitted by: Niv Tokman Aya Mire Oren Gur-Arie.
Community Seismic Network for Early Warning Rishi Chandy Rita A. and Øisten Skjellum SURF Fellow Daniel Obenshain Kiyo and Eiko Tomiyasu SURF Scholar Daniel.
Portable Image File Viewer ENEE 408G: Multimedia Signal Processing Seun Fabayo John Glancy Gordon Krauthamer.
Performed by: Yair Sommer Rea Yeheskel Instructor: Idan Katz Cooperated with:Motorola הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel.
(NHA) The Laboratory of Computer Communication and Networking Network Host Analyzer.
TCP: Software for Reliable Communication. Spring 2002Computer Networks Applications Internet: a Collection of Disparate Networks Different goals: Speed,
Term 2, 2011 Week 1. CONTENTS Network communications standards – Ethernet – TCP/IP Other network protocols – The standard – Wireless application.
Fundamentals of Python: From First Programs Through Data Structures
Gursharan Singh Tatla Transport Layer 16-May
McGraw-Hill The McGraw-Hill Companies, Inc., 2000 SNMP Simple Network Management Protocol.
Layer 2 Switch  Layer 2 Switching is hardware based.  Uses the host's Media Access Control (MAC) address.  Uses Application Specific Integrated Circuits.
FIREWALL TECHNOLOGIES Tahani al jehani. Firewall benefits  A firewall functions as a choke point – all traffic in and out must pass through this single.
Mobile Sensor Application Group 4. Introduction Modern smartphones are often equipped with quite a large number of sensors. The sensors data can be used.
Hjemmeeksamen 1 INF3190. Oppgave Develop a monitoring/administration tool which allows an administrator to use a client to monitor all processes running.
Finding Nearby Wireless Hotspots CSE 403 LCA Presentation Team Members: Chris Scoville Tessa MacDuff Matt Mohebbi Aiman Erbad Khalil El Haitami.
Process-to-Process Delivery:
TRANSPORT LAYER T.Najah Al-Subaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
Mapping Internet Addresses to Physical Addresses (ARP)
By: Joel Rodriguez.  International student from Mexico  Delicias, Chihuahua Mexico  Spanish  Sports and Music.
TCP/IP protocols Communication over Internet is mostly TCP/IP (Transmission Control Protocol over Internet Protocol) TCP/IP "stack" is software which allows.
Transparent Bridging. Chapter Goals Understand transparent bridge processes of learning, filtering, forwarding, and flooding. Explain the purpose of the.
CS448 Computer Networking Chapter 1 Introduction to Computer Networks Instructor: Li Ma Office: NBC 126 Phone: (713)
Presentation on Osi & TCP/IP MODEL
Daniel Johnson. Playing a media file stored on a remote server on a local client.
Acceleration Based Pedometer
Institute of Computer and Communication Network Engineering OFC/NFOEC, 6-10 March 2011, Los Angeles, CA Lessons Learned From Implementing a Path Computation.
Copyright © 2002 Pearson Education, Inc. Slide 3-1 CHAPTER 3 Created by, David Zolzer, Northwestern State University—Louisiana The Internet and World Wide.
Personal Alert and Safety System CS 410 Blue Group Ray Bland, Daniel Cox, Brittany Dufort, Braden Gibson, Marcus Henry, Jon Szewczak.
Mukesh N. Tekwani Elphinstone College Mumbai
Module 10: Monitoring ISA Server Overview Monitoring Overview Configuring Alerts Configuring Session Monitoring Configuring Logging Configuring.

1 The Internet and Networked Multimedia. 2 Layering  Internet protocols are designed to work in layers, with each layer building on the facilities provided.
(Business) Process Centric Exchanges
CCNA 3 Week 4 Switching Concepts. Copyright © 2005 University of Bolton Introduction Lan design has moved away from using shared media, hubs and repeaters.
03/11/2015 Michael Chai; Behrouz Forouzan Staffordshire University School of Computing Streaming 1.
Prepared by: Azara Prakash L.. Contents:-  Data Transmission  Introduction  Socket Description  Data Flow Diagram  Module Design Specification.
Client-Server Model of Interaction Chapter 20. We have looked at the details of TCP/IP Protocols Protocols Router architecture Router architecture Now.
Quake Data Distribution System Alan Jones Stephen Jacobs David Oppenheimer.
CSC 600 Internetworking with TCP/IP Unit 5: IP, IP Routing, and ICMP (ch. 7, ch. 8, ch. 9, ch. 10) Dr. Cheer-Sun Yang Spring 2001.
Today’s topic: UDP Reliable communication over UDP.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
4343 X2 – The Transport Layer Tanenbaum Ch.6.
Michael G. Williams, Jeremey Barrett 1 Intro to Mobi-D Host based mobility.
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
IShake System: Earthquake Detection with Smartphones Presenter: Jize Zhang Da Huo Original Paper:Reilly, Jack, et al. "Mobile phones as seismologic sensors:
Process-to-Process Delivery:
Chapter 3 TCP and IP Chapter 3 TCP and IP.
PART 5 Transport Layer Computer Networks.
Ch > 28.4.
Transport Layer Unit 5.
Faulkner, Matthew, Michael Olson, Rishi Chandy, Jonathan Krause, K
Network Core and QoS.
Process-to-Process Delivery:
CS4470 Computer Networking Protocols
Process-to-Process Delivery: UDP, TCP
Computer Networks Protocols
Transport Layer 9/22/2019.
Network Core and QoS.
Presentation transcript:

Community Seismic Network Daniel Obenshain along with K. Mani Chandy, Robert Clayton, Andreas Krause, Michael Olson, Matthew Faulkner, Leif Strand, Rishi Chandy, Daniel Rosenberg, Annie Tang, and others California Institute of Technology

XKCD Image by Randall Munroe of xkcd.com, Creative Commons Attribution-Noncommercial 2.5 License

Internet and Earthquakes In the comic: In the comic: –The tweets travel faster than the earthquake –Other users get quake information before it hits –They are too slow to do anything about it.

Background Earthquakes are dangerous threats Earthquakes are dangerous threats –USGS estimates 2000 deaths and $200 billion damages from 7.8 magnitude quake

Background Earthquakes are dangerous threats Earthquakes are dangerous threats –USGS estimates 2000 deaths and $200 billion damages from 7.8 magnitude quake Early warning could minimize suffering Early warning could minimize suffering –Activate safeguards in critical operations

Background Earthquakes are dangerous threats Earthquakes are dangerous threats –USGS estimates 2000 deaths and $200 billion damages from 7.8 magnitude quake Early warning could minimize suffering Early warning could minimize suffering –Activate safeguards in critical operations Providing early warning is an interesting problem Providing early warning is an interesting problem –Bayesian decision theory, geology, distributed computing

Background Earthquakes are dangerous threats Earthquakes are dangerous threats –USGS estimates 2000 deaths and $200 billion damages from 7.8 magnitude quake Early warning could minimize suffering Early warning could minimize suffering –Activate safeguards in critical operations Providing early warning is an interesting problem Providing early warning is an interesting problem –Bayesian decision theory, geology, distributed computing Current seismic network is too sparse Current seismic network is too sparse –Can’t provide enough early warning

Sensor Network is too Sparse A sensor network of one hundred sensors. A sensor network of one thousand sensors. SCSN (Southern California Seismic Network) has ~350 sensors right now.

Pause for Example

Sensor Network is too Sparse Ten thousand sensors! Both a 3 second wave and a 1 second wave.

Early Warning Can Help Slow trains

Early Warning Can Help Slow trains Stop elevators

Early Warning Can Help Slow trains Stop elevators Open fire station doors

Early Warning Can Help The information can also help the electrical grid. The information can also help the electrical grid. Southern California Edison Territory

Early Warning Can Help The information can also help the electrical grid. The information can also help the electrical grid. The grid can be shut down and made safe prior to severe shaking. The grid can be shut down and made safe prior to severe shaking. Southern California Edison Territory

Early Warning Can Help The information can also help the electrical grid. The information can also help the electrical grid. The grid can be shut down and made safe prior to severe shaking. The grid can be shut down and made safe prior to severe shaking. Power back in a day, not weeks after earthquake. Power back in a day, not weeks after earthquake. Southern California Edison Territory

Benefits Provide Early Warning Provide Early Warning Easy deployment in areas without existing seismic networks Easy deployment in areas without existing seismic networks –Peru and Indonesia  Cell phones are prevalent Identify hard-hit areas quickly Identify hard-hit areas quickly –Direct first responders

That’s why we’re doing it. What about how we’re doing it?

Expand the Network We want to add more data. We want to add more data.

Expand the Network We want to add more data. We want to add more data. Why not get data from as many sources as possible? Why not get data from as many sources as possible?

Expand the Network We want to add more data. We want to add more data. Why not get data from as many sources as possible? Why not get data from as many sources as possible? Add in acceleration devices of different types, cell phones, laptops, etc. Add in acceleration devices of different types, cell phones, laptops, etc.

Expand the Network We want to add more data. We want to add more data. Why not get data from as many sources as possible? Why not get data from as many sources as possible? Add in acceleration devices of different types, cell phones, laptops, etc. Add in acceleration devices of different types, cell phones, laptops, etc. The User installs some client software and his or her acceleration data becomes part of the network. The User installs some client software and his or her acceleration data becomes part of the network.

The Client Registration Handler Registration Handler Sensor Handler Sensor Handler Server Registration Handler Server Registration Handler Error, No Update, or Handlers Calculation Handler Calculation Handler Alert Handler Controller Registration handler invoked on first run Returns Proceed, Error, or New Handlers Handlers and Queues managed Core processing Server Alert Listener Server Alert Listener

Example Client – Cell Phone Measures 3-D acceleration Measures 3-D acceleration Program runs in background Program runs in background Especially good while charging Especially good while charging

Example Client – Cell Phone Martin Lukac (of UCLA) recorded a minor seismic event on a Nokia phone, with different software. Martin Lukac (of UCLA) recorded a minor seismic event on a Nokia phone, with different software.

Pause for Example

Picking Algorithm How often should the client send data to the server? How often should the client send data to the server?

Picking Algorithm How often should the client send data to the server? How often should the client send data to the server? Only when significant shaking is occurring. Only when significant shaking is occurring.

Picking Algorithm How often should the client send data to the server? How often should the client send data to the server? Only when significant shaking is occurring. Only when significant shaking is occurring. How does the client know? How does the client know?

Picking Algorithm How often should the client send data to the server? How often should the client send data to the server? Only when significant shaking is occurring. Only when significant shaking is occurring. How does the client know? How does the client know? It performs a simple calculation on the incoming data stream. It performs a simple calculation on the incoming data stream.

Picking Algorithm How often should the client send data to the server? How often should the client send data to the server? Only when significant shaking is occurring. Only when significant shaking is occurring. How does the client know? How does the client know? It performs a simple calculation on the incoming data stream. It performs a simple calculation on the incoming data stream. We call this the “Picking Algorithm.” We call this the “Picking Algorithm.”

Picking Algorithm STA/LTA > trigger

Picking Algorithm STA – Short Term Average : the average acceleration over the past several data points STA – Short Term Average : the average acceleration over the past several data points STA/LTA > trigger

Picking Algorithm STA – Short Term Average : the average acceleration over the past several data points STA – Short Term Average : the average acceleration over the past several data points LTA – Long Term Average : the average acceleration over more data points LTA – Long Term Average : the average acceleration over more data points STA/LTA > trigger

Picking Algorithm STA – Short Term Average : the average acceleration over the past several data points STA – Short Term Average : the average acceleration over the past several data points LTA – Long Term Average : the average acceleration over more data points LTA – Long Term Average : the average acceleration over more data points trigger – a threshold trigger – a threshold STA/LTA > trigger

Picking Algorithm Accelerometer Long Term Average Short Term Average

Picking Algorithm Accelerometer New Data Long Term Average Short Term Average

Picking Algorithm Accelerometer Short Term Average Long Term Average

Picking Algorithm If STA/LTA > trigger is true, then we have “picked.” If STA/LTA > trigger is true, then we have “picked.”

Picking Algorithm If STA/LTA > trigger is true, then we have “picked.” If STA/LTA > trigger is true, then we have “picked.” The algorithm then waits a little bit before sending a message to the server. The algorithm then waits a little bit before sending a message to the server.

Picking Algorithm If STA/LTA > trigger is true, then we have “picked.” If STA/LTA > trigger is true, then we have “picked.” The algorithm then waits a little bit before sending a message to the server. The algorithm then waits a little bit before sending a message to the server. This is to make sure it sends data from the peak of the wave. This is to make sure it sends data from the peak of the wave.

Picking Algorithm Pause for this length of time before sending a message to the server Detected significant shaking 2.Maximum shaking 3.Sent message to server

Picking Algorithm After sending a message to the server, the client will wait a while before picking again. After sending a message to the server, the client will wait a while before picking again.

Picking Algorithm After sending a message to the server, the client will wait a while before picking again. After sending a message to the server, the client will wait a while before picking again. This is to stop the client from picking multiple times for the same shaking. This is to stop the client from picking multiple times for the same shaking.

Picking Algorithm Delay for this length of time before picking again. 1 1.Last message sent to server 2.The coda of the earthquake, where we don’t want to pick 2

Picking Algorithm Five tunable parameters. Five tunable parameters.

Picking Algorithm Five tunable parameters. Five tunable parameters. –Length of STA

Picking Algorithm Five tunable parameters. Five tunable parameters. –Length of STA –Length of LTA

Picking Algorithm Five tunable parameters. Five tunable parameters. –Length of STA –Length of LTA –Value of trigger

Picking Algorithm Five tunable parameters. Five tunable parameters. –Length of STA –Length of LTA –Value of trigger –How long to wait after picking before sending a message to the server

Picking Algorithm Five tunable parameters. Five tunable parameters. –Length of STA –Length of LTA –Value of trigger –How long to wait after picking before sending a message to the server –How long to wait between messages

Picking Algorithm Five tunable parameters. Five tunable parameters. –Length of STA –Length of LTA –Value of trigger –How long to wait after picking before sending a message to the server –How long to wait between messages They can all be tuned by the server, on a client-by-client basis. They can all be tuned by the server, on a client-by-client basis.

GUI Acceleration data is displayed in real time on the user’s screen. Acceleration data is displayed in real time on the user’s screen.

GUI Promotes use of the software. Promotes use of the software.

GUI Acceleration data is displayed in real time on the user’s screen. Acceleration data is displayed in real time on the user’s screen. Promotes use of the software. Promotes use of the software. Can be used in science classrooms to explain project. Can be used in science classrooms to explain project.

GUI Acceleration data is displayed in real time on the user’s screen. Acceleration data is displayed in real time on the user’s screen. Promotes use of the software. Promotes use of the software. Can be used in science classrooms to explain project. Can be used in science classrooms to explain project. Each message to the server marked by a red line. Each message to the server marked by a red line.

GUI 3 Axes 3 Axes

GUI Data streams from the right Data streams from the right

GUI 3 Axes 3 Axes Data streams from the right Data streams from the right The red line represents a message to the server The red line represents a message to the server

Pause for Example

Client-server messages Registration Registration Picks Picks Heartbeat Heartbeat

Client-server messages Registration Registration –Location (or an approximation) –Given a client id Picks Picks Heartbeat Heartbeat

Client-server messages Registration Registration Picks Picks –Short UDP message –Location, time, and acceleration experienced –Can be a playback message! Heartbeat Heartbeat

Client-server messages Registration Registration Picks Picks Heartbeat Heartbeat –Check in with server –Get any updates, playback info –For security, server will never push updates. Client must call in to get updates.

Client-server messages Registration Registration Picks Picks Heartbeat Heartbeat All are in XML format. All are in XML format. –Human readable –Easily extended –Can easily interface with other, similar projects

Sensor Validation Tested our sensor with artificial event. Tested our sensor with artificial event.

Sensor Validation Tested our sensor with artificial event. Tested our sensor with artificial event. Compared our sensor to the SCSN (Southern California Seismic Network) sensor in the basement of Millikan Library. Compared our sensor to the SCSN (Southern California Seismic Network) sensor in the basement of Millikan Library.

Sensor Validation Tested our sensor with artificial event. Tested our sensor with artificial event. Compared our sensor to the SCSN (Southern California Seismic Network) sensor in the basement of Millikan Library. Compared our sensor to the SCSN (Southern California Seismic Network) sensor in the basement of Millikan Library. Caused seismic activity with a sledgehammer. Caused seismic activity with a sledgehammer.

Sensor Validation

We have since switched to better noise filtering and a better sensor We have since switched to better noise filtering and a better sensor Still, the correlation is visible Still, the correlation is visible

Server Four main tasks Four main tasks –Handle new user registration

Server Four main tasks Four main tasks –Handle new user registration –Listen for pick messages

Server Four main tasks Four main tasks –Handle new user registration –Listen for pick messages –Handle heartbeat messages

Server Four main tasks Four main tasks –Handle new user registration –Listen for pick messages –Handle heartbeat messages –Analyze data

Server Registration Handler Pick Handler Heartbeat Handler DatabaseAssociator

UDP vs TCP We send messages using two different protocols. TCP (Transmission Control Protocol) TCP (Transmission Control Protocol) –Handshake delay –Error correction

UDP vs TCP We send messages using two different protocols. TCP (Transmission Control Protocol) TCP (Transmission Control Protocol) –Handshake delay –Error correction UDP (User Datagram Protocol) UDP (User Datagram Protocol) –Fast –Unreliable

Pick Message Handler Pick messages are sent using UDP packets. Reasons: Reasons: –Unsure of condition of network –Speed is important

Indiana Jones Effect From Indiana Jones and the Raiders of the Lost Ark.

Pick Message Handler Listen for incoming picks Listen for incoming picks

Pick Message Handler Listen for incoming picks Listen for incoming picks –Parse message

Pick Message Handler Listen for incoming picks Listen for incoming picks –Parse message –Check for playback flag  If the flag is not present, the pick is stored in the database.  If the message is flagged as playback, it is written to a separate table in the database.

Server Operation Registration Listener Registration Listener Alert Listener Calculation Handler Calculation Handler Warning Handler Warning Handler Controller Core processing Equipment, devices, notification systems Heartbeat Listener Heartbeat Listener Clients

Server-side Analysis Bayesian decision-making Bayesian decision-making

Server-side Analysis Bayesian decision-making Bayesian decision-making Once posterior is sufficient, we send Early Warning Once posterior is sufficient, we send Early Warning

Tested on Fake Data Priors from Gutenberg-Richter law (mag vs. num) Priors from Gutenberg-Richter law (mag vs. num) Fake data stream with errors in it Fake data stream with errors in it Located epicenter to within 25 km Located epicenter to within 25 km Located epicenter in 10 seconds Located epicenter in 10 seconds

Display data Heat map Heat map Hotter colors = higher magnitude picks Hotter colors = higher magnitude picks

Pause for Example

Google App Engine Server implemented on Google App Engine Server implemented on Google App Engine Our data is sent to and stored there Our data is sent to and stored there Robust, scalable Robust, scalable

Machine Learning Feedback loop Feedback loop Five parameters (or more!) per client Five parameters (or more!) per client If a client picks more often than normal, tune it down If a client picks more often than normal, tune it down If a client picks less often than normal, tune it up If a client picks less often than normal, tune it up

Machine Learning A client next to construction A client next to construction Not useful for small seismic events Not useful for small seismic events Still useful for big ones! Still useful for big ones! Set the threshold higher. Set the threshold higher.

Thank You Q&A Session