16
3/12/2003 - Rev 3 Information Technologies Group Application of Jini technology to a Swarm of Autonomous Vehicles March 2004 Chad Hawthorne Todd Neighoff Dave Patrone Dennis Patrone

Information Technologies Group Application of Jini

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

3/12/2003 - Rev 3

Information Technologies Group

Application of Jini technology to a Swarm of Autonomous

Vehicles

March 2004

Chad Hawthorne

Todd Neighoff

Dave Patrone

Dennis Patrone

3/12/20032

Information Technologies Group

Applied Physics Laboratory

• University-Based Applied Research and Development Laboratory

• Focus on National Security

• Major Effort in Space Science and Technology

• Partner in Johns Hopkins Commitment to Education and Medicine

• ~3,350 Staff

• ~$590M Annual Revenues

APL at a GlanceCLO_0063 04_2003

3/12/20033

Information Technologies Group

Jini Applications

Swarm of Heterogeneous Robots Autonomous Surveillance Application

• Jini Lookup-Service used to discover new platforms at run-time

• Allows for a fault-tolerant, self-healing network of sensors and robots

• Jini used for knowledge propagation between agents in swarm

3/12/20034

Information Technologies Group

Autonomous Sensor Networks

• Allow sensor networks to truly operate autonomously– Long-term, unmanned surveillance

• In this domain, Jini can provide:– Introduction of sensor upgrades and new capability to

deployed systems

– Intelligent fault-tolerance and re-distribution of resources

• Prototype Services:– ImageService interface

• Provides images from camera-like devices

– AcousticService interface• Provides acoustic data from microphone/geophone devices

3/12/20035

Information Technologies Group

Sensor Network Prototype

ImageService

ImageServiceProxy

ImageServiceProxy

Full Resolution

Image

Scaled Image

• Wireless network provided to distributed sensors via air vehicle

• ImageService proxy scales image query to conserve network bandwidth and client resources based on platform it lands within (e.g. laptop, handheld, etc.)

3/12/20036

Information Technologies Group

Sensor Network Prototype

– ImageServices allow for manual image retrieval

– AcousticServices report acoustic activity

– If both available, AcousticServices automatically trigger ImageServices when activity is detected

• Client surveillance application reconfigures based on current services available

3/12/20037

Information Technologies Group

Swarming• Modeled after insect behavior

– Knowledge about the world is translated into beliefs (pheromones)

– Shared beliefs between agents dictate behavior

• Heterogeneous Swarm of Vehicles– Emergent behavior

– Self-organizing, Self-regulating

• Communication is critical– Jini is an excellent solution for

application layer communications

– Discovery of agents at run-time

– Propagation of new knowledge types and behavior

3/12/20038

Information Technologies Group

Test Case

• Problem: Area Search– Robots are attracted to goal

areas• Attracted-ness decreases as

area becomes searched

– Repelled from obstacles and each other

• Agents share and propagate beliefs (pheromones).– Beliefs are searchedness,

search goal, robot location(s).

3/12/20039

Information Technologies Group

Robot Specs

• Robot Processor– Pentium II

– 20 GB hard disk drive

– video frame grabber

– Serial Port board

– iRobot Mobility software

• Sensors:– Multi-element Sonar array

– V TC Camera

– Laser Range Finder

– GPS receiver

– Compass / tilt module

3/12/200310

Information Technologies Group

Software Architecture

Belief

Behavior

Action

• Variation on classic AI paradigm of: Sense, Plan, Act– Sensor-based Observations are used

to generate…

– Belief about the current state of the world which in turn is used to devise an appropriate...

– Behaviors to satisfy group goals and objectives. Behaviors are then used to generate…

– Actions which translate into real world movements of the robot.

• Jini currently being used for transmission of beliefs between agents.

Observation

3/12/200311

Information Technologies Group

Jini Benefits

• Java ideal platform for heterogeneous swarm.– UGV, UAV, Windows Laptop, Handheld

– Future embedded devices….

• Deployment– Run-time discovery of new platforms, beliefs, behaviors

• Robust in an unreliable network

3/12/200312

Information Technologies Group

Jini based Beliefs

• New beliefs (pheromones) can be discovered and propagated. – Robot does not need to use new belief, can merely propagate it.

• Proxy provides a simple “put” interface.

• New classes are loaded with a custom ClasspathServer

• Beliefs shared using RMI

+serviceAdded(in event : ServiceDiscoveryEvent)+serviceRemoved(in event : ServiceDiscoveryEvent)

BeliefManagerClient

public void run(){ while(proxyIterator.hasNext()){ BeliefManagerService service = (BeliefManagerService)managerIterator.next(); service.put(belief); }}

+put(in b : Belief)+getName() : String

«interface»BeliefManagerService

3/12/200313

Information Technologies Group

Jini based Beliefs

• Beliefs have behavior associated with their state– Know how to perform “add” operation. May differ

depending on belief type.

– Can degrade quality based on elapsed time and belief type.

+addBelief(in b : Belief)+update()

Belief

PositionBelief GoalBelief SearchedBelief

3/12/200314

Information Technologies Group

Behavior Propagation

• Beliefs are useless without a behavior– Ant pheromone for food-source useless without ability to gather

food

• Each platform should have both a belief and associated behavior

• Seismic sensor can send belief of its location

• Behavior will keep noisy ground vehicles away

RobotSearchGoal

SeismicSensor

attractrepel

result

3/12/200315

Information Technologies Group

Implementation Challenges

• Network is unreliable – Can experience flood of TCP/IP rebroadcasts at edge of

communication range• RMI communication breaks down at edge of wireless range

– UDP multicast is more desirable for belief transmission

• Modifications required for UDP based communications– Implement a UDP based lookup-service

– Implement a UDP based class-loader

– Re-implement Proxy without RMI interface

3/12/200316

Information Technologies Group

Future work

• Jini-based behaviors

• Merge Jini-based sensors with robots

• Interface standardization

• Scalability

• Integrate connectionless class-loader