community seismic network for early warning

101
Community Seismic Community Seismic Network for Early Network for Early Warning Warning Rishi Chandy Rishi Chandy Rita A. and Øisten Skjellum SURF Fellow Rita A. and Øisten Skjellum SURF Fellow Daniel Obenshain Daniel Obenshain Kiyo and Eiko Tomiyasu SURF Scholar Kiyo and Eiko Tomiyasu SURF Scholar Daniel Rosenberg Daniel Rosenberg Kiyo and Eiko Tomiyasu SURF Scholar Kiyo and Eiko Tomiyasu SURF Scholar Annie Tang Annie Tang Mentors: K. Mani Chandy, Robert Clayton, Mentors: K. Mani Chandy, Robert Clayton, Andreas Krause Andreas Krause California Institute of Technology California Institute of Technology

Upload: ilya

Post on 15-Jan-2016

39 views

Category:

Documents


0 download

DESCRIPTION

Community Seismic Network for Early Warning. Rishi Chandy Rita A. and Øisten Skjellum SURF Fellow Daniel Obenshain Kiyo and Eiko Tomiyasu SURF Scholar Daniel Rosenberg Kiyo and Eiko Tomiyasu SURF Scholar Annie Tang Mentors: K. Mani Chandy, Robert Clayton, Andreas Krause - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Community Seismic Network for Early Warning

Community Seismic Community Seismic Network for Early Network for Early

WarningWarning

Rishi ChandyRishi ChandyRita A. and Øisten Skjellum SURF FellowRita A. and Øisten Skjellum SURF Fellow

Daniel ObenshainDaniel ObenshainKiyo and Eiko Tomiyasu SURF ScholarKiyo and Eiko Tomiyasu SURF Scholar

Daniel RosenbergDaniel RosenbergKiyo and Eiko Tomiyasu SURF ScholarKiyo and Eiko Tomiyasu SURF Scholar

Annie TangAnnie Tang

Mentors: K. Mani Chandy, Robert Clayton, Andreas Mentors: K. Mani Chandy, Robert Clayton, Andreas KrauseKrause

California Institute of TechnologyCalifornia Institute of Technology

Page 2: Community Seismic Network for Early Warning

Who are we?Who are we?

Daniel Obenshain

Annie Tang

Rishi Chandy

Daniel Rosenberg

Page 3: Community Seismic Network for Early Warning

Our MentorsOur Mentors

Dr. K. Mani ChandyProfessor of Computer Science

Dr. Andreas KrauseAssistant Professor ofComputer Science

Dr. Rob ClaytonProfessor ofGeophysics

Michael OlsonGrad StudentComputer Science

Page 4: Community Seismic Network for Early Warning

BackgroundBackground

Earthquakes are dangerous threatsEarthquakes are dangerous threats– USGS estimates 2000 deaths and $200 billion USGS estimates 2000 deaths and $200 billion

damages from 7.8 magnitude quakedamages from 7.8 magnitude quake

Page 5: Community Seismic Network for Early Warning

BackgroundBackground

Earthquakes are dangerous threatsEarthquakes are dangerous threats– USGS estimates 2000 deaths and $200 billion USGS estimates 2000 deaths and $200 billion

damages from 7.8 magnitude quakedamages from 7.8 magnitude quake Early warning could minimize sufferingEarly warning could minimize suffering

– Activate safeguards in critical operationsActivate safeguards in critical operations

Page 6: Community Seismic Network for Early Warning

BackgroundBackground

Earthquakes are dangerous threatsEarthquakes are dangerous threats– USGS estimates 2000 deaths and $200 billion USGS estimates 2000 deaths and $200 billion

damages from 7.8 magnitude quakedamages from 7.8 magnitude quake Early warning could minimize sufferingEarly warning could minimize suffering

– Activate safeguards in critical operationsActivate safeguards in critical operations Providing early warning is an interesting Providing early warning is an interesting

problemproblem– Bayesian decision theory, geology, distributed Bayesian decision theory, geology, distributed

computingcomputing

Page 7: Community Seismic Network for Early Warning

BackgroundBackground

Earthquakes are dangerous threatsEarthquakes are dangerous threats– USGS estimates 2000 deaths and $200 billion USGS estimates 2000 deaths and $200 billion

damages from 7.8 magnitude quakedamages from 7.8 magnitude quake Early warning could minimize sufferingEarly warning could minimize suffering

– Activate safeguards in critical operationsActivate safeguards in critical operations Providing early warning is an interesting Providing early warning is an interesting

problemproblem– Bayesian decision theory, geology, distributed Bayesian decision theory, geology, distributed

computingcomputing Current seismic network is too sparseCurrent seismic network is too sparse

– Can’t provide enough early warningCan’t provide enough early warning

Page 8: Community Seismic Network for Early Warning

Sensor Network is too Sensor Network is too SparseSparse

A sensor network of one hundred sensors.

A sensor network of one thousand sensors.

SCSN (Southern California Seismic Network) has ~350 sensors right now.

Page 9: Community Seismic Network for Early Warning

Sensor Network is too Sensor Network is too SparseSparse

Ten thousand sensors! Both a 3 second wave and a 1 second wave.

Page 10: Community Seismic Network for Early Warning

Early Warning Can HelpEarly Warning Can Help

Slow trains

Page 11: Community Seismic Network for Early Warning

Early Warning Can HelpEarly Warning Can Help

Slow trains

Stop elevators

Page 12: Community Seismic Network for Early Warning

Early Warning Can HelpEarly Warning Can Help

Slow trains

Stop elevators

Open fire station doors

Page 13: Community Seismic Network for Early Warning

Early Warning Can HelpEarly Warning Can Help

The information The information can also help the can also help the electrical grid.electrical grid.

Southern California Edison Territory

Page 14: Community Seismic Network for Early Warning

Early Warning Can HelpEarly Warning Can Help

The information The information can also help the can also help the electrical grid.electrical grid.

The grid can be The grid can be shut down and shut down and made safe prior to made safe prior to severe shaking.severe shaking.

Southern California Edison Territory

Page 15: Community Seismic Network for Early Warning

Early Warning Can HelpEarly Warning Can Help

The information The information can also help the can also help the electrical grid.electrical grid.

The grid can be The grid can be shut down and shut down and made safe prior to made safe prior to severe shaking.severe shaking.

Power back in a Power back in a day, not weeks day, not weeks after earthquake.after earthquake.

Southern California Edison Territory

Page 16: Community Seismic Network for Early Warning

BenefitsBenefits

Provide Early WarningProvide Early Warning Easy deployment in areas without Easy deployment in areas without

existing seismic networksexisting seismic networks– Peru and IndonesiaPeru and Indonesia

Cell phones are prevalentCell phones are prevalent

Identify hard-hit areas quicklyIdentify hard-hit areas quickly– Direct first respondersDirect first responders

Page 17: Community Seismic Network for Early Warning

That’s why we’re That’s why we’re doing it.doing it.

What about how What about how we’re doing it?we’re doing it?

Page 18: Community Seismic Network for Early Warning

Expand the NetworkExpand the Network

We want to add more data.We want to add more data.

Page 19: Community Seismic Network for Early Warning

Expand the NetworkExpand the Network

We want to add more data.We want to add more data. Why not get data from as many Why not get data from as many

sources as possible?sources as possible?

Page 20: Community Seismic Network for Early Warning

Expand the NetworkExpand the Network

We want to add more data.We want to add more data. Why not get data from as many Why not get data from as many

sources as possible?sources as possible? Add in acceleration devices of Add in acceleration devices of

different types, cell phones, laptops, different types, cell phones, laptops, etc.etc.

Page 21: Community Seismic Network for Early Warning

Expand the NetworkExpand the Network

We want to add more data.We want to add more data. Why not get data from as many Why not get data from as many

sources as possible?sources as possible? Add in acceleration devices of Add in acceleration devices of

different types, cell phones, laptops, different types, cell phones, laptops, etc.etc.

The User installs some client software The User installs some client software and his or her acceleration data and his or her acceleration data becomes part of the network.becomes part of the network.

Page 22: Community Seismic Network for Early Warning

The ClientThe Client

Registration

Handler

SensorHandler

ServerRegistration

Handler

Error, NoUpdate, orHandlers

Calculation

Handler

Alert Handler

Controller

Registration handler invoked on first run

Returns Proceed, Error, or New Handlers

Handlers and Queues managed

Core

pro

cessin

g

ServerAlert

Listener

Page 23: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

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

Page 24: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

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

Only when significant shaking is Only when significant shaking is occurring.occurring.

Page 25: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

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

Only when significant shaking is Only when significant shaking is occurring.occurring.

How does the client know?How does the client know?

Page 26: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

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

Only when significant shaking is Only when significant shaking is occurring.occurring.

How does the client know?How does the client know? It performs a simple calculation on It performs a simple calculation on

the incoming data stream.the incoming data stream.

Page 27: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

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

Only when significant shaking is Only when significant shaking is occurring.occurring.

How does the client know?How does the client know? It performs a simple calculation on It performs a simple calculation on

the incoming data stream.the incoming data stream. We call this the “Picking Algorithm.”We call this the “Picking Algorithm.”

Page 28: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

STA/LTA > trigger

Page 29: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

STA – Short Term Average : the STA – Short Term Average : the average acceleration over the past average acceleration over the past several data pointsseveral data points

STA/LTA > trigger

Page 30: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

STA – Short Term Average : the STA – Short Term Average : the average acceleration over the past average acceleration over the past several data pointsseveral data points

LTA – Long Term Average : the LTA – Long Term Average : the average acceleration over more data average acceleration over more data pointspoints

STA/LTA > trigger

Page 31: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

STA – Short Term Average : the STA – Short Term Average : the average acceleration over the past average acceleration over the past several data pointsseveral data points

LTA – Long Term Average : the LTA – Long Term Average : the average acceleration over more data average acceleration over more data pointspoints

trigger – a thresholdtrigger – a threshold

STA/LTA > trigger

Page 32: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

Accelerometer

Long Term Average

Short Term Average

Page 33: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

Accelerometer

New DataLong Term Average

Short Term Average

Page 34: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

Accelerometer

Short Term Average

Long Term Average

Page 35: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

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

Page 36: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

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

The algorithm then waits a little bit The algorithm then waits a little bit before sending a message to the before sending a message to the server.server.

Page 37: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

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

The algorithm then waits a little bit The algorithm then waits a little bit before sending a message to the before sending a message to the server.server.

This is to make sure it sends data This is to make sure it sends data from the peak of the wave.from the peak of the wave.

Page 38: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

Pause for this length of time beforesending a message to the server.

1 2 3

1. Detected significant shaking2. Maximum shaking3. Sent message to server

Page 39: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

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

Page 40: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

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

This is to stop the client from picking This is to stop the client from picking multiple times for the same shaking.multiple times for the same shaking.

Page 41: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

Delay for this length of timebefore picking again.

1

1. Last message sent to server2. The coda of the earthquake,

where we don’t want to pick

2

Page 42: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

Five tunable parameters.Five tunable parameters.

Page 43: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

Five tunable parameters.Five tunable parameters.– Length of STALength of STA

Page 44: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

Five tunable parameters.Five tunable parameters.– Length of STALength of STA– Length of LTALength of LTA

Page 45: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

Five tunable parameters.Five tunable parameters.– Length of STALength of STA– Length of LTALength of LTA– Value of triggerValue of trigger

Page 46: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

Five tunable parameters.Five tunable parameters.– Length of STALength of STA– Length of LTALength of LTA– Value of triggerValue of trigger– How long to wait after picking before How long to wait after picking before

sending a message to the serversending a message to the server

Page 47: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

Five tunable parameters.Five tunable parameters.– Length of STALength of STA– Length of LTALength of LTA– Value of triggerValue of trigger– How long to wait after picking before How long to wait after picking before

sending a message to the serversending a message to the server– How long to wait between messagesHow long to wait between messages

Page 48: Community Seismic Network for Early Warning

Picking AlgorithmPicking Algorithm

Five tunable parameters.Five tunable parameters.– Length of STALength of STA– Length of LTALength of LTA– Value of triggerValue of trigger– How long to wait after picking before How long to wait after picking before

sending a message to the serversending a message to the server– How long to wait between messagesHow long to wait between messages

They can all be tuned by the server, They can all be tuned by the server, on a client-by-client basis.on a client-by-client basis.

Page 49: Community Seismic Network for Early Warning

GUIGUI

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

Page 50: Community Seismic Network for Early Warning

GUIGUI

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

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

Page 51: Community Seismic Network for Early Warning

GUIGUI

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

Promotes use of the software.Promotes use of the software. Can be used in science classrooms to Can be used in science classrooms to

explain project.explain project.

Page 52: Community Seismic Network for Early Warning

GUIGUI

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

Promotes use of the software.Promotes use of the software. Can be used in science classrooms to Can be used in science classrooms to

explain project.explain project. Each message to the server marked Each message to the server marked

by a red line.by a red line.

Page 53: Community Seismic Network for Early Warning

GUIGUI

3 Axes3 Axes

Page 54: Community Seismic Network for Early Warning

GUIGUI

3 Axes3 Axes Data streams from Data streams from

the rightthe right

Page 55: Community Seismic Network for Early Warning

GUIGUI

3 Axes3 Axes Data streams from Data streams from

the rightthe right The red line The red line

represents a represents a message to the message to the serverserver

Page 56: Community Seismic Network for Early Warning

Sensor ValidationSensor Validation

Tested our sensor with artificial Tested our sensor with artificial event.event.

Page 57: Community Seismic Network for Early Warning

Sensor ValidationSensor Validation

Tested our sensor with artificial Tested our sensor with artificial event.event.

Compared our sensor to the SCSN Compared our sensor to the SCSN (Southern California Seismic (Southern California Seismic Network) sensor in the basement of Network) sensor in the basement of Millikan Library.Millikan Library.

Page 58: Community Seismic Network for Early Warning

Sensor ValidationSensor Validation

Tested our sensor with artificial Tested our sensor with artificial event.event.

Compared our sensor to the SCSN Compared our sensor to the SCSN (Southern California Seismic (Southern California Seismic Network) sensor in the basement of Network) sensor in the basement of Millikan Library.Millikan Library.

Caused seismic activity with a Caused seismic activity with a sledgehammer.sledgehammer.

Page 59: Community Seismic Network for Early Warning

Sensor ValidationSensor Validation

Page 60: Community Seismic Network for Early Warning

Sensor ValidationSensor Validation

We have since switched to better noise We have since switched to better noise filtering and a better sensorfiltering and a better sensor

Still, the correlation is visibleStill, the correlation is visible

Page 61: Community Seismic Network for Early Warning

Client Side OverviewClient Side Overview

RegistrationRegistration– Keys, location, sensor type, address Keys, location, sensor type, address

(optional)(optional)– Client IDClient ID

Data StorageData Storage– SAC file, ring bufferSAC file, ring buffer

HeartbeatHeartbeat– Sensor “check in”, log request, playback Sensor “check in”, log request, playback

requestrequest

Page 62: Community Seismic Network for Early Warning

RegistrationRegistration

TCP Message:TCP Message:– Keys, location, sensor type, address Keys, location, sensor type, address

(optional)(optional)– Client IDClient ID

Key Generator:Key Generator:– Key pair: public key & private keyKey pair: public key & private key– DSADSA

Page 63: Community Seismic Network for Early Warning

RegistrationRegistration

SkyhookSkyhook– Software only Hybrid Positioning System Software only Hybrid Positioning System

(XPS)(XPS) Combine WPS, GPS, and Cellular TowersCombine WPS, GPS, and Cellular Towers

– Accuracy: 10 to 20 metersAccuracy: 10 to 20 meters– Latitude, longitude, addressLatitude, longitude, address– Reasons to choose Skyhook:Reasons to choose Skyhook:

GPS signal is not always availableGPS signal is not always available Fast and accurateFast and accurate Cons: needs Wi-FiCons: needs Wi-Fi

– IP AddressIP Address

Page 64: Community Seismic Network for Early Warning

Data StorageData Storage

Ring BufferRing Buffer– New data is pushed inNew data is pushed in– Oldest data is deletedOldest data is deleted– Keep STA/LTAKeep STA/LTA

SAC FileSAC File– Seismic Analysis CodeSeismic Analysis Code– Analyze data in time seriesAnalyze data in time series

Page 65: Community Seismic Network for Early Warning

Data StorageData Storage

SAC File (continue)SAC File (continue)– HeaderHeader

Sampling interval, start time, length, station Sampling interval, start time, length, station location, etc.location, etc.

– LogsLogs

Page 66: Community Seismic Network for Early Warning

HeartbeatHeartbeat

TCP MessageTCP Message– Time, location, Client IDTime, location, Client ID– Log Request, Playback Request, UpdatesLog Request, Playback Request, Updates

Purpose Purpose – Active SensorsActive Sensors– Current LocationsCurrent Locations– Communication between client and Communication between client and

serverserver– CalibrationCalibration

Page 67: Community Seismic Network for Early Warning

DataData

Page 68: Community Seismic Network for Early Warning

DataDataWe have lots of it.We have lots of it.

Page 69: Community Seismic Network for Early Warning

ServerServer

Four main tasksFour main tasks– Handle new user registrationHandle new user registration

Page 70: Community Seismic Network for Early Warning

ServerServer

Four main tasksFour main tasks– Handle new user registrationHandle new user registration– Listen for pick messagesListen for pick messages

Page 71: Community Seismic Network for Early Warning

ServerServer

Four main tasksFour main tasks– Handle new user registrationHandle new user registration– Listen for pick messagesListen for pick messages– Handle heartbeat messagesHandle heartbeat messages

Page 72: Community Seismic Network for Early Warning

ServerServer

Four main tasksFour main tasks– Handle new user registrationHandle new user registration– Listen for pick messagesListen for pick messages– Handle heartbeat messagesHandle heartbeat messages– Analyze dataAnalyze data

Main techMain tech– Java, PHP, Javascript, XMLJava, PHP, Javascript, XML– MySQLMySQL– Apache Java LibrariesApache Java Libraries

Page 73: Community Seismic Network for Early Warning

ServerServer

Registration Handler

Pick Handler

Heartbeat Handler

Database Associator

Page 74: Community Seismic Network for Early Warning

MessagingMessaging

Open and extensible XML schemaOpen and extensible XML schema– Allows others to join the networkAllows others to join the network

We use TCP and UDPWe use TCP and UDP

Page 75: Community Seismic Network for Early Warning

UDP vs TCPUDP vs TCP

We send messages using two different We send messages using two different protocols.protocols.

TCP (Transmission Control Protocol)TCP (Transmission Control Protocol)– Handshake delayHandshake delay– Error correctionError correction

Page 76: Community Seismic Network for Early Warning

UDP vs TCPUDP vs TCP

We send messages using two different We send messages using two different protocols.protocols.

TCP (Transmission Control Protocol)TCP (Transmission Control Protocol)– Handshake delayHandshake delay– Error correctionError correction

UDP (User Datagram Protocol)UDP (User Datagram Protocol)– FastFast– UnreliableUnreliable

Page 77: Community Seismic Network for Early Warning

Pick Message HandlerPick Message Handler

Pick messages are sent using UDP Pick messages are sent using UDP packets.packets.

Reasons:Reasons:– Unsure of condition of networkUnsure of condition of network– Speed is importantSpeed is important

Page 78: Community Seismic Network for Early Warning

Pick Message HandlerPick Message Handler

Listen for incoming picksListen for incoming picks

Page 79: Community Seismic Network for Early Warning

Pick Message HandlerPick Message Handler

Listen for incoming picksListen for incoming picks– Parse messageParse message

Page 80: Community Seismic Network for Early Warning

Pick Message HandlerPick Message Handler

Listen for incoming picksListen for incoming picks– Parse messageParse message– Check signatureCheck signature

Page 81: Community Seismic Network for Early Warning

Pick Message HandlerPick Message Handler

Listen for incoming picksListen for incoming picks– Parse messageParse message– Check signatureCheck signature– Check for playback flagCheck for playback flag

If the flag is not present, the pick is stored in If the flag is not present, the pick is stored in the database.the database.

If the message is flagged as playback, it is If the message is flagged as playback, it is written to a separate table in the database.written to a separate table in the database.

Page 82: Community Seismic Network for Early Warning

SecuritySecurity

All messages from the client are All messages from the client are verified using XML signatures.verified using XML signatures.

Page 83: Community Seismic Network for Early Warning

SecuritySecurity

All messages from the client are All messages from the client are verified using XML signatures.verified using XML signatures.– Client has private key, Server knows Client has private key, Server knows

public keypublic key

Page 84: Community Seismic Network for Early Warning

SecuritySecurity

All messages from the client are All messages from the client are verified using XML signatures.verified using XML signatures.– Client has private key, Server knows Client has private key, Server knows

public keypublic key– Client signs messages using its private Client signs messages using its private

keykey

Page 85: Community Seismic Network for Early Warning

SecuritySecurity

All messages from the client are All messages from the client are verified using XML signatures.verified using XML signatures.– Client has private key, Server knows Client has private key, Server knows

public keypublic key– Client signs messages using its private Client signs messages using its private

keykey– Server verifies messages using the Server verifies messages using the

stored public keystored public key

Page 86: Community Seismic Network for Early Warning

SecuritySecurity

All messages from the client are verified All messages from the client are verified using XML signatures.using XML signatures.– Client has private key, Server knows public Client has private key, Server knows public

keykey– Client signs messages using its private keyClient signs messages using its private key– Server verifies messages using the stored Server verifies messages using the stored

public keypublic key This prevents any message interception This prevents any message interception

attacksattacks We can control valid clientIDsWe can control valid clientIDs

Page 87: Community Seismic Network for Early Warning

Server-side ChallengesServer-side Challenges

Incoming messages from a vast Incoming messages from a vast networknetwork– Can’t get overwhelmedCan’t get overwhelmed– Want to grab as much data as we canWant to grab as much data as we can– Application must be scalableApplication must be scalable

Response time is criticalResponse time is critical– Excessive latency is unacceptableExcessive latency is unacceptable– Indiana Jones effectIndiana Jones effect

Methods must be accurate and preciseMethods must be accurate and precise– EW is useless otherwiseEW is useless otherwise

Page 88: Community Seismic Network for Early Warning

RegistrationRegistration

Clients sends XMLClients sends XML– Latitude, LongitudeLatitude, Longitude– Public KeyPublic Key

Server returns XMLServer returns XML– Unique clientIDUnique clientID

Page 89: Community Seismic Network for Early Warning

Example Registration XMLExample Registration XML

<registration><publicKey>349oi3j4oij32ui23</publicKey><location>

<latitude>40.779761</latitude><longitude>-74.0310</longitude>

</location><locationDescription>

1200 E California Blvd Pasadena, CA 91125</locationDescription><sensor>usb:deviceID</sensor>

</registration>

Page 90: Community Seismic Network for Early Warning

HeartbeatHeartbeat

Clients update us on their statusClients update us on their status– locationlocation

Server returns:Server returns:– Software updatesSoftware updates– Tunable parametersTunable parameters– Playback waveformsPlayback waveforms– Log RequestsLog Requests

Location is updated in DBLocation is updated in DB

Page 91: Community Seismic Network for Early Warning

Playback OperationPlayback Operation

We can distribute waveforms for We can distribute waveforms for clients to simulateclients to simulate

Page 92: Community Seismic Network for Early Warning

Playback OperationPlayback Operation

We can distribute waveforms for We can distribute waveforms for clients to simulateclients to simulate

Stress-test the networkStress-test the network Evaluate new algorithmsEvaluate new algorithms Determine network latenciesDetermine network latencies

Page 93: Community Seismic Network for Early Warning

Log RequestsLog Requests

Clients send Pick Messages using Clients send Pick Messages using UDPUDP– Sufficient for early warning calculationSufficient for early warning calculation

Page 94: Community Seismic Network for Early Warning

Log RequestsLog Requests

Clients send Pick Messages using Clients send Pick Messages using UDPUDP– Sufficient for early warning calculationSufficient for early warning calculation– Insufficient for later analysisInsufficient for later analysis

After an earthquake, server requests After an earthquake, server requests logs during Heartbeatlogs during Heartbeat

Page 95: Community Seismic Network for Early Warning

Server OperationServer Operation

Registration

Listener

Alert Listener

Clients’Registration

Handlers

SignedRegstrMesg

Error, NoUpdate, orHandlers

Calculation

Handler

WarningHandler

ControllerServer’s Registration Listener is self-contained

Handlers and Queues managed

Core

pro

cessin

g

Clients’Registration

Handlers

Clients’Registration

Handlers

Clients’Registration

Handlers

Equipment, devices,notification systems

Clients’Registration

Handlers

Clients’Registration

Handlers

Clients’Registration

Handlers

Clients’Alert Handlers

Page 96: Community Seismic Network for Early Warning

Server-side AnalysisServer-side Analysis

Bayesian decision-makingBayesian decision-making

Page 97: Community Seismic Network for Early Warning

Server-side AnalysisServer-side Analysis

Bayesian decision-makingBayesian decision-making

Once posterior is sufficient, we send Once posterior is sufficient, we send EWEW

Page 98: Community Seismic Network for Early Warning
Page 99: Community Seismic Network for Early Warning

Next StepsNext Steps

Cell phones w/ Cell phones w/ accelerometersaccelerometers– AndroidAndroid

Laptops w/ Laptops w/ accelerometersaccelerometers

Google App EngineGoogle App Engine– Robust, scalableRobust, scalable

Page 100: Community Seismic Network for Early Warning

AcknowledgementsAcknowledgements

Thanks to Professors K. Mani Chandy, Thanks to Professors K. Mani Chandy, Rob Clayton, Andreas Krause, and Rob Clayton, Andreas Krause, and Michael Olson for their mentorship Michael Olson for their mentorship and guidanceand guidance

Our generous SURF sponsorsOur generous SURF sponsors– Rita A. and Øisten SkjellumRita A. and Øisten Skjellum– Kiyo and Eiko TomiyasuKiyo and Eiko Tomiyasu

Page 101: Community Seismic Network for Early Warning

Thank YouThank You

Q&A SessionQ&A Session