|  |   | Mission Statement:
      The Distributed Systems Laboratory (DSL) has been devoted to
      research, development, and practical use of mobile agents. These
      agents are programs that can carry their live data with them and
      autonomously migrate over network. To execute mobile agents,
      each computing node runs a mobile-agent execution engine that
      receives agents from other nodes, schedules their execution, and
      transfers them to their next destination.
       
      We have developed execution platforms for two types of agents:
      (1) cognitive mobile agents and (2) reactive multi-agents. The
      former is instantiated as a coarse-grained computing entity such
      as a process or a thread, containing intelligence to decide
      where to go and what to do, and thereafore working on network
      tasks and job coordination.  The latter is instantiated as a
      fine-graind computation entity such as a user-level thread or a
      mobile object, including minimum rules to react to the
      computation environment within a huge group of other agents, and
      used for multi-agent or entity-based simulations. The following
      summarized our agent platforms:
       
      
      | Platforms | Type | Features |  
      | UWAgents | Cognitive mobile agents | Java-based agents intended for job management in grid computing |  
      | MASS | Reactive multi-agents | Java/C++/Cuda implementations of multi-agent spatial simulation library |  
      | M++ | Ractive multi-agents | C++ based self-migrating threads |   
       
      Related to UWAgents, MASS, and M++, our research focus includes the
      following four topics:
       
      
       Parallelizing Library for
      Multi-Agent Spatial Simulation This project originally
      started as a part of our sensor-cloud integration project. After
      having implemented a Java-based MASS library, we are now
      extending it to C++ and Cuda as well as applying it to both
      computation- and data-intensive applications such as:
      temparature prediction and data provenance.
      
      Sensor Cloud Integration: (funded by UW Provost
      Internationl Grant 2010)(also in search for further funding opportunities)
 This project intends to construct a grid-computing environment
      across multi campuses, (particularly UW Bothell and Shizuoka
      University, Japan), each provided with sensor network and server
      computers, where various types of sensor data will be optimally
      forwarded to applications in need for on-the-fly analysis and
      mining, which thus requires dynamic program execution over these
      campuses.
 
      AgentTeamwork:
      (funded by NSF SCI #0438193, Jan 05 - Dec 07)This is a mobile-agent-based middleware that benefits remote
      computer users who hope to mutually offer their desktop
      computing resource to Internet group members while their
      computer is left unattended. Key to this grid is the use of
      mobile agents. Each agent represents a client user, carries
      his/her job request, searches for resources available for the
      request, executes the job at suitable computers, and migrates it
      to others when the current one has become unavailable for
      use. All the features of job migration will be encapsulated in a
      user program wrapper that is implemented on a Java layer between
      a mobile agent and the corresponding user program. The wrapper
      maintains all execution state of the user program, is carried by
      the mobile agent upon a job migration, and restores its user
      program at a destination. For this purpose, a user program must
      be preprocessed with ANTLR to include check-pointing functions
      before its execution. These functions periodically save the
      execution state of a user program into its corresponding program
      wrapper that can be thus smoothly carried by an agent.
 
      M++ Applications:
      (funded by JSPS #11780187, Apr 99 - Mar 01 )M++ self-migrating threads are C++ compiled objects, capable of
      constructing computational networks and autonomously migrating
      themselves over a cluster system. The main goal of M++ is to
      provide a cluster computing paradigm for multi-agent simulation
      that has gained popularity in the areas of artificial life
      ecological simulations, and biological modeling. This type of
      simulation usually requires autonomous objects, each having its
      own goals and behaviors, to interact with each other in a
      synthetic world. The M++ self-migrating threads match the
      characteristics of such objects in multi-agent simulations, and
      can thus describe them with a narrow semantics gap. Fine
      granularity and large scalability are two fundamental
      characteristics of this type of simulations that require fast
      thread context switch and migration. With the scheduling policy
      we have designed, M++ manages its threads in pin-downed pages,
      so that Myrinet's network interface card can directly access and
      transfer those threads without unnecessary coping operations. We
      have completed the M++ system, and have programmed applications
      with M++ such as ant farm, growing neural network, and remote
      planet exploration.
 Facilities:
      The DSL has dedicated laboratory space within the UW Bothell
      Computing & Software Systems (CSS) Program's 11550 square-foot
      Center for Integrated Teaching, Learning, and Scholarship (CITLS,
      http://depts.washington.edu/csscts/). The DSL includes two
      Linux cluster systems: (1) a Myrinet-2000 cluster of eight DELL
      machines, each with 2.8GHz Pentium-4 CPU and 512MB memory, and
      (2) a Giga Ethernet cluster of 24 DELL computing nodes, each
      with 3.2GHz Pentium-4 CPU and 512MB memory. Both the clusters
      are connected to a dual-processor NFS server.
       
      All computers within the CITLS are connected to gigabit Ethernet
      within the laboratory and via 100Mbps Ethernet to the UWB campus
      backbone and the Internet.
       Contact:
      Mail:Munehiro Fukuda, Ph.D.
 University of Washington, Bothell
 Computing and Software Systems, Box 358534
 18115 Campus Way N.E.
 Bothell, WA 98011-8246
 
 
      E-mail address:
      mfukuda@u.washington.eduPh:  +1-425-352-3459,  
      Fax: +1-425-352-5216
 
 |