adriana ogasawara & joshua mahaz eel6788, spring 2008

26
Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Upload: darlene-donaway

Post on 31-Mar-2015

220 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Adriana Ogasawara & Joshua MahazEEL6788, Spring 2008

Page 2: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

GoalUse YAES to implement a mobility pattern

based on an artificial immune system (AIS)Create a sensor network that contains a group

of mobile nodesNodes move towards areas of interesting

phenomenaNodes must load balance themselves

Page 3: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

What is AIS?Algorithmic process based on the vertebrate

immune systemBased on how the immune system is self-

protecting and adaptableImmune system can distinguish between self

(other white blood cells) and non-self (antigens)

Can learn to recognize and respond to new microbes and retain a memory of these microbes to facilitate future immune responses This is how vaccinations work

Page 4: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Development EnvironmentIDE: Eclipse SDK 3.31

Java 1.6 & JUnit 4 (as required by YAES)OS: Windows Vista Business EditionVersion Control: Tortoise SVN

Created a local repository on our home network

All milestone accomplishments were committed to the repository

Repository was backed up once a week

Page 5: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

AIS SinkMain purpose is to gather informationSink is stationary and located in the middle of

the area we are interested in monitoringSink receives messages when mobile sensor

nodes pass within transmission range

Page 6: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

AIS IntrudersIn this project, intruders are analogous to

pathogens that invade the bodyAIS Intruders use the ActuatorNode &

ActuatorAgent classes built into YAESIntruders are “dumb” & are not capable of creating

diversionsIntruders move randomly using the

“random_waypoint” actuator movement also integrated into YAES

Randomly placed within the sensor network world using arrangeRandomlyInARectangle() within ArrangementHelper.java

Intruders have the freedom to wander throughout the entire defined sensor network world

Page 7: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

AIS Mobile Sensor NodesCreated a mobile sensor node class that inherits

from SensorNode.java in YAESThe mobile sensor nodes are comparable to the

B-cells and T-cells in a biological immune system that destroy invading pathogens in the body

The AISMobileSensorNodeAgent class is responsible for:Message passing between sensor nodes & the sinkRandom movement of mobile sensor nodesIdentification of intruders

Page 8: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Mobile Sensor Node PlacementRandomly placed within the sensor network

world using arrangeRandomlyInARectangle() within ArrangementHelper.java

Mobile sensor nodes can only move and perceive objects within a defined portion of the sensor network world

Page 9: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Sensor Network World

Intruders move freely throughout

Mobile sensor nodes are restricted to the center portion

Page 10: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Mobile Sensor Node MovementAgent calls moveRandomly()

The method generates a random int using the random number generator

This number corresponds to one of the eight cardinal or intercardinal directions (N, S, E, W, NE, NW, SE, SW)

The mobile sensor node then moves in this direction for 100 steps until a new direction is chosen

If a mobile sensor node reaches the edges of the boundary, it declares itself “stuck” and moveRandomly() changes the direction of the node to the opposite of which it was moving before it became “stuck” Gives the appearance that the node “bounces off” the wall

Page 11: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Mobile Sensor Node MovementIf a mobile sensor node senses an intruder and does

not see another mobile sensor node following it, moveRandomly() stops and the method followTheLeader() is called once the perception is processedThe location of the intruder is passed with the

perceptionOnce an intruder is perceived, the mobile sensor

node accelerates until it catches up to the intruderfollowTheLeader() measure the distance between the

node and the intruder for each call of the agent and divides this by a speed factor which is added to its normal step to apply a slight increase in speed

Page 12: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Mobile Sensor Node MovementOnce the mobile sensor node reaches the

intruder, it places a lock on the intruder to help with load balancing so no other mobile sensor nodes begin following it

From here on out, the mobile sensor node will continuously follow the intruder around the world as long as it does not leave the defined area of interest

Page 13: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Mobile Sensor Node Load BalancingIdeally, once a mobile sensor node has locked onto an

intruder, it should try to help free mobile nodes to find the other unlocked intruders within the area

Even after a mobile sensor node locks onto an intruder, it still continues to process observations about other unlocked intruders within their rangeInformation about the intruder’s location and a time of

sighting are passed to other mobile sensor nodes within range

If an unlocked mobile sensor node receives the message, it will examine how long ago the intruder sighting occurred

If the sighting was recent, it then moves to the location received in the message

Page 14: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Mobile Sensor Node Load BalancingIf a mobile sensor node which is already

paired to an intruder receives more recent intruder location information, it will replace its own with the newly received data

From then on it will broadcast the received data until it receives newer information or spots a lone intruder itself

Only the most recent sighting will propagate through the network

Page 15: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Timer MarksAn intruder entering

the inner square triggers the start mark

The moment a lock is obtained on an intruder another mark is saved

The timer ends when the lock on the intruder terminates (when an intruder leaves the area)

Page 16: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Timer MarksTstart Time intruder enters the designated

areaTend Time intruder leaves the designated

areaTLstart Time a mobile sensor node obtains a

lock on an intruderTLend Time a mobile sensor node loses its lock

on an intruder

Page 17: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Formulas(TLend – TLstart) / (Tend –

Tstart)=percentage_coveredSum[percentage_covered]/intrusions

=average_coverageTLstart – Tstart = time_to_obtain_lockSum[time_to_obtain_lock]/successful_locks

=average_obtain_time

Page 18: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

TestingPerformed 10 runs with 5, 10, and 20

intruder/mobile node pairs respectively

Each run the “Timer Marks” were recorded and processed with our defined formulas

Page 19: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Metrics

Avg Amt of Time Intruder is Locked Onto (%)

Avg. Time for Mobile Node to Lock Onto Intruder (ms)

5 intruder/MSN pairs 58.24 356.9910 intruder/MSN pairs 67.52 292.2520 intruder/MSN pairs 75.32 208.96

Page 20: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Metrics – 5 intruder/mobile node pairs

Page 21: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Metrics – 10 intruder/mobile node pairs

Page 22: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Metrics – 20 intruder/mobile node pairs

Page 23: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

ConclusionThe project can be applied to the

development and testing of search and spy algorithmsAlready includes necessary infrastructure &

results calculationsThe developer can concentrate on creating

new and better ways to maintain coverage of a designated area

Page 24: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

ConclusionAlgorithm works best with higher numbers of

intruder and mobile sensor nodesIncreases the likelihood that a mobile sensor

node will sense an intruder within the area of interest

Also improves how well the message passing portion of our algorithm worksMore intruders present results in more recent

& accurate sightings of intruders that are passed onto to the other nodes

Page 25: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Future WorkCreate a more sophisticated random

movement algorithm Create intelligent intruders or intruders

capable of creating a diversionAllow mobile sensor nodes to recognize the

likelihood of diversions and in turn command free mobile sensor nodes to cover vulnerable areas.

Page 26: Adriana Ogasawara & Joshua Mahaz EEL6788, Spring 2008

Demo