var root_url = "/ESP";
var css_path = root_url + "/main.css";

function pageHeader(title)
{
  var nav_menu = getNavMenu();

  document.write("<HTML><HEAD>" +
             "<TITLE>ESP MURI: " + title + "</TITLE>" +
             "<LINK REL='stylesheet' TYPE='text/css' HREF='" + css_path + "'>" +
           "</HEAD>" +
         "<BODY>" +
           "<TABLE CLASS='Contents'>" +
             "<TR VALIGN='top'>" +
               "<TH>" +
                 nav_menu +
               "</TH>" +
               "<TD WIDTH='100%'>");
}


function pageFooter()
{
  var nav_footer = getNavFooter();
  var content_footer = getContentFooter();
  document.write("      </TD>" +
             "</TR>" +
             "<TR VALIGN='bottom'>" +
               "<TH>" +
                 nav_footer +
               "</TH>" +
               "<TD>" +
                 content_footer +
               "</TD>" +
             "</TR>" +
           "</TABLE>" +
         "</BODY>" +
         "</HTML>");
}

function getNavMenu()
{
  return "<center><h1>ESP MURI</h1></center>" +
         "<IMG SRC='" + root_url + "/nav_spacer.gif' width='200' height='0'>" +
         "<table class='NavMenu'>" +
         "<tr><th><a href='" + root_url + "/index.html'>Home</a></th></tr>" +
		 "<tr><th><a href='" + root_url + "/overview.html'>Project Overview</a></th></tr>" +
         "<tr><th><a href='" + root_url + "/abstract.html'>Abstract</a></th></tr>" +
         "<tr><th><a href='" + root_url + "/members.html'>Project Personnel</a></th></tr>" +
         "<tr><th><a href='" + root_url + "/kickoff.html'>Kickoff Meeting</a></th></tr>" +
         "<tr><th><a href='" + root_url + "/review1.html'>First Annual Review</a></th></tr>" +
         "<tr><th><a href='" + root_url + "/thrusts.html?t=0'>Research Thrusts</a></th></tr>" +
         "<tr><th><a href='" + root_url + "/testbed.html'>Testbed Implementation</a></th></tr>" +
         "<tr><th><a href='" + root_url + "/papers.html'>Published Papers</a></th></tr>" +
         "<tr><th><a href='" + root_url + "/software.html'>Software Tools</a></th></tr>" +
         "<tr><th><a href='" + root_url + "/data.html'>Data Repository</a></th></tr>" +
         "<tr><th><a href='" + root_url + "/techtrans.html'>Technology Transition</a></th></tr>" +
         "<tr><th><a href='" + root_url + "/refs.html'>Bibliography</a></th></tr>" +
         "<tr><th><a href='" + root_url + "/links.html'>Related Links</a></th></tr>" +
         "</table>" +
		 "<table class='NavLogo'><tr><td>" +
		 "<center>" +
         "<a href='http://www.arl.psu.edu' target='_blank'><img src='" + root_url + "/arl_logo.jpg' border='0'></a>" +
		 "<br>" +
		 "<br>" +
		 "<a href='http://www.darpa.mil' target='_blank'><img src='" + root_url + "/darpa_logo.jpg' width='150' border='0' alt='DARPA'></a>" +
         "<br>" +
         "<br>" +
		 "<a href='http://www.aro.army.mil' target='_blank'><img src='" + root_url + "/aro.gif' border='0' alt='Army Research Office'>" +
		 "</center>" +
		 "</td></tr></table>";
}

function getNavFooter()
{
  return "&nbsp;";
}

function getContentFooter()
{
  return "<hr width='95%' height='2' align='center' noshade>" +
          "<table class='Footer'>" +
            "<tr>" +
              "<th>" +
                "Copyright &copy; 2001 Applied Research Laboratory, The Pennsylvania State University" +
              "</th>" +
	          "<td>" +
	            "<a href='mailto:jkdoug@psu.edu?subject=[ESP MURI] Site Comments'>Contact Webmaster</a>" +
	          "</td>" +
            "</tr>" +
          "</table>";
}

var thrusts = new Array("Emergent Collaboration",
                        "Real-time Execution",
                        "Collaborative Sensing",
                        "Mathematical Modeling");
						
var leaders = new Array("Dr. R. Brooks",
                        "Dr. K. Chakrabarty",
						"Dr. K. Yao",
						"Dr. S. Phoha");
						
var leader_bookmarks = new Array("brooks_r",
                                 "chakrabarty_k",
								 "yao_k",
								 "phoha_s");

function researchThrusts()
{
  document.write("<ul>");
  document.write("<li><a href='" + root_url + "/thrusts.html?t=0'>Research Overview and Approach</a>");

  for (i = 0; i < thrusts.length; i++)
  {
    document.write("<li>");
    document.write("<a href='" + root_url + "/thrusts.html?t=" + parseInt(i+1) + "'>");
    document.write(thrusts[i] + " (" + leaders[i] + ")");
    document.write("</a>");
  }

  document.write("</ul><br>");
}

function displayThrust(t)
{
    if (t > 0)
	{
       document.write("<h3>" + thrusts[t-1] + "&nbsp;&nbsp;");
	   document.write("<a href='" + root_url + "/members.html#" + leader_bookmarks[t-1] + "'>" + leaders[t-1] + "</a></h3>");
	}
	else
	{
	   document.write("<h3>Research Overview and Approach</h3>");
	}
       
    switch (t)
    {
        case 0: // Main Page
		document.write("<p>Sensors require physical interaction with the sensed phenomenon. Proximity to the phenomenon increases accuracy, but may place sensor nodes in danger. Physical interactions are subject to a number of noise factors. The best way to counteract this is by combining multiple measurements [<a href='refs.html#Brooks_1998'>Brooks 1998</a>]. Basic tradeoffs exist between energy and information sharing in cooperative networks of sensors and robots. Radically increased costs result when going from sensing and signal processing to radio communications and mobility [<a href='refs.html#Pottie_1998'>Pottie 1998</a>]. This supports the idea that much processing should be done locally in each sensor node. This requires both low-level sensing and high-level tasking cooperation. To increase system adaptability, self-configuring networks have been proposed. The network must be able to configure, and re-configure, itself to successfully perform surveillance missions in dynamically changing environments. This is especially important for urban and indoor terrains, where obstacles occlude sensor views and cause multi-path fading for radio communications. Adaptability is the unifying goal and challenge of this MURI proposal. Our approach views self-configuring surveillance networks as systems requiring multiple levels of adaptation.");
		document.write("<ul>");
		document.write("<li>Individual nodes adapt their mode of operation to conserve resources, but respond in real-time when necessary.");
		document.write("<li>Information coding adapts to provide redundancy when communications are poor, and data compression when communications are error-free.");
		document.write("<li>Sensing modes adapt to environmental conditions and target types.");
		document.write("<li>The geometric configuration of the network adapts to establish and maintain sensor coverage and network connectivity.");
		document.write("<li>Roles of individual nodes change as nodes fail and network topology changes.");
		document.write("<li>Network tasking adapts to user needs and environmental changes.");
		document.write("</ul></p>");
		document.write("<p>A new level of adaptation is achieved through cooperative sensing and tasking. Cooperation among autonomous systems is poorly understood and even more challenging in distributed real-time systems [<a href='refs.html#Parker_2000'>Parker 2000</a>]. Verification of operational ability requires rigorous mathematical modeling. This proposal describes four key research and technology topics needed for autonomous surveillance network implementation:");
		document.write("<ol>");
		document.write("<li>Emergent collaboration");
		document.write("<li>Real-time execution");
		document.write("<li>Cooperative sensing");
		document.write("<li>Mathematical models");
		document.write("</ol></p>");
		document.write("<p>The figure below shows interactions between tasks. Although the tasks are listed separately, a number of common threads require interaction between them, notably: real-time execution is an enabling technology for collaboration and sensing, and several  topics have common modeling requirements in dealing with non-linear interactions in resource constrained environments.</p>"); 
		document.write("<center><img src='slides/4thrusts.png'></center>");
		document.write("<p>To perform the agenda outlined in this proposal, we have assembled a distinguished multi-disciplinary team of renowned researchers in Information Technology, Electrical Engineering, Industrial Engineering, Computer Science, and Biology. Many participants have spent several years researching collaborative sensing, and are currently active in DoD sponsored research in the field. This MURI will synergize current efforts and create enabling technologies for many military and civilian applications.</p>");
		document.write("<strong>ESP Modeling</strong><ul>" +
					   "<li>Networks of Interacting State Machines" +
					   "<li>Self-organizing Network Control" +
					   "<li>Dynamic Behavior Aggregation/Adaptation" +
					   "<li>Adaptive Clustering Models" +
					   "<li>Geometric and Constrained Optimization" +
					   "<li>Turbocoding" +
					   "</ul>" +
					   "<strong>Emergent Collaboration</strong><ul>" +
					   "<li>Multi-agent Systems" +
					   "<li>Ill-posed System Specifications" +
					   "<li>Top-down Task Decomposition" +
					   "<li>Low-level Sensor Feedback for Behavior Adaptation" +
					   "<li>Forward/Backward Problems of Behavior Control" +
					   "</ul>" +
					   "<strong>Real-time Execution</strong><ul>" +
					   "<li>Individual Node Management" +
					   "<li>RT Linux-Based RTOS" +
					   "<li>Wireless Networking Management" +
					   "<li>Signal Propagation" +
					   "<li>QoS Issues" +
					   "</ul>" +
					   "<strong>Collaborative Sensing</strong><ul>" +
					   "<li>Adaptive Beamforming" +
					   "<li>Collaborative Target Localization" +
					   "<li>Artificial Life Adaptive Sensing" +
					   "</ul>");
        break;
        
        case 1: // Emergent Collaboration
		document.write("<p>Adaptation to chaotic conditions, such as those faced by autonomous sensor networks, is best performed by self-organizing systems [<a href='refs.html#Haken_1983'>Haken 1983</a>, <a href='refs.html#Bonabeau_1997'>Bonabeau 1997</a>, <a href='refs.html#Kaufmann_1993'>Kaufmann 1993</a>].  A major drawback of those systems is their lack of top-down control.  Users have no way to steer the autonomous system .  In this thrust, we explore the integration of hierarchical dynamic systems control with complex adaptive systems [<a href='Haken_1983'>Haken 1983</a>].</p>");
		document.write("<p><img src='slides/collaboration/slide1.png'><br>" +
		               "<b>Figure 1.</b> <i>Self-organization to support stability in a chaotic battlespace</i></p>");
		document.write("<p>Surveillance networks can be viewed at many levels of abstraction. Effective systems must adapt at each level. These networks will be composed of a large number of autonomous, possibly heterogeneous, devices. At the highest level of abstraction, all devices must work in a coordinated manner as if they were a single entity. User interests vary dynamically. Top-down control is needed to insure that tasks performed by the network fulfill operational requirements. Specific regions and/or target types will be of interest sometimes, but not at others. Connectivity maintenance requires high-level coordination.</p>"); 
		document.write("<p><img src='slides/collaboration/slide2.png'><br>" +
			           "<b>Figure 2.</b> <i>Example of a CA traffic model. (Space in the x dimension; Time in the y dimension; Lightness is the traffic density)</i></p>");
		document.write("<p>Bottom-up self-organization is necessary to guarantee the system's ability to adapt to unforeseen events. The environment varies dynamically. Weather, wind direction, and ambient noise change effective sensing ranges [<a href='refs.html#Swanson_2000'>Swanson 2000</a>]. All nodes have finite energy resources and eventually cease to function. Radio communications can be jammed. These factors require bottom-up reaction and reconfiguration in a fully autonomous mode.</p>");
		document.write("<p><table>" +
			           "<tr><td valign='center'><img src='slides/collaboration/slide3a.png'></td><td valign='center'>Stable – all elements reach the same state</td></tr>" +
			           "<tr><td valign='center'><img src='slides/collaboration/slide3b.png'></td><td valign='center'>Regular – all elements reach a permanent state</td></tr>" +
			           "<tr><td valign='center'><img src='slides/collaboration/slide3c.png'></td><td valign='center'>Chaotic – element states never converge</td></tr>" +
			           "<tr><td valign='center'><img src='slides/collaboration/slide3d.png'></td><td valign='center'>\"Interesting\" – local stability, complex patterns evolve over long periods of time</td></tr>" +
					   "</table><br>" +
					   "<b>Figure 3.</b> <i>Wolfram established four CA complexity classes</i></p>");
		document.write("<p>Surveillance networks are distributed amorphous computing environments, consisting of a large number of nodes and communications links, subject to intermittent failure, likely destruction, and limited power resources [<a href='refs.html#Brooks_1998'>Brooks 1998</a>]. Human configuration and control of the entire system is futile. Humans steer the network by declaring general interests. Translating higher-level tactical objectives into low-level activities is an ill-posed problem. Efficient resolution of this problem in a chaotic network of failure prone nodes will require bottom-up emergent control push interacting with the user's pull.</p>");
		document.write("<p><img src='slides/collaboration/slide4.png'><br>" +
		               "<b>Figure 4.</b> <i>Petri-net plant model for wireless connectivity of network</i></p>");
		document.write("<h4>Implementation in Three Phases:</h4>" +
	                   "<p>1. Abstract evaluation using cellular automata<br>" +
					   "<table><tr>" +
					   "<td><img src='slides/collaboration/slide5a.png'></td>" +
					   "<td><img src='slides/collaboration/slide5b.png'></td></tr>" +
					   "<tr>" +
					   "<td><b>Figure 5a.</b> <i>3D CA Visualization (high opacity)</i></td>" +
					   "<td><b>Figure 5b.</b> <i>3D CA Visualization (low opacity)</i></td>" +
					   "</tr></table>" +
		               "</p>" +
					   "<p>2. Port automata logic to realistic simulations<br>" +
					   "<img src='slides/collaboration/slide6.png'><br>" +
					   "<b>Figure 6.</b> <i>Distributed Sensor Coverage</i>" +
					   "</p>" +
					   "<p>3. Uses distributed sensing testbed at PSU/ARL<br>" +
					   "<img src='slides/collaboration/slide7.png'><br>" +
					   "<b>Figure 7.</b>  <i>Testbed Floor Plan and Equipment</i>" +
					   "</p>");
        break;

        case 2: // Real-time Execution
        document.write("<p>At a lower level of abstraction, individual nodes and network links must adapt to environmental conditions and their current role in the system. To increase system lifetime, low power modes should be used when possible. To fulfill user requirements, it is sometimes necessary to expend more power to fully exploit computational, sensing, and communications capabilities. Feedback loops between levels are needed to control this trade-off rationally. This includes feedback with the command hierarchy and sensing hardware. This task explores real-time functionality for individual nodes and network links in resource-constrained environments, while still maintaining quality of service for the system as a whole.</p>");
		document.write("<p>A typical sensor platform in a surveillance network has a reconfigurable set of heterogeneous sensors. The use of battery power imposes severe power constraints. Nodes need lightweight, power-aware operating systems with real-time processing ability. Unfortunately, most proprietary real-time operating systems are non-interoperable and do not directly address power issues. Moreover, the large footprint of many Real-Time OS (RTOS) makes them unsuitable for sensor computing nodes.</p>");
        document.write("<p>Real-time information exchange between sensor devices is needed for most computations in sensor networks. The problem, however, is that the nodes must communicate over wireless links in harsh environments. A key issue is efficient information exchange over the underlying wireless ad hoc network. A major challenge is concurrently meeting the quality of service needs of multiple real-time interactions between sensor nodes [<a href='refs.html#Ramanathan_1999'>Ramanathan 1999</a>]. This is especially difficult in urban areas due to signal propagation effects for both wireless communications and sensor inputs. These effects are difficult to model deterministically and unpredictable in dynamic situations where jamming may be used. They are best overcome with dynamic adaptation within the network as coordinated by emergent collaboration.</p>");
        document.write("<p>In this thrust, we will"); 
		document.write("<ul>");
        document.write("<li>construct feedback loops that allow all resource allocations to adapt to needs expressed by emergent control and collaborative sensing;");
        document.write("<li>create a real-time OS that supports resource aware operation, sensing, and actuation;");
        document.write("<li>make wireless communications protocols that allow feedback between layers of the OSI hierarchy; and");
        document.write("<li>use coding techniques from the mathematical modeling task to detect wireless communications errors, and find methods to overcome propagation errors.");
		document.write("</ul></p>");
        break;

        case 3: // Collaborative Sensing
        document.write("<p>Surveillance networks exist to extract information from the environment and relay it to users that have expressed interest. Distributed sensing has a number of advantages, including robustness and increased accuracy [<a href='refs.html#Brooks_1998'>Brooks 1998</a>]. Techniques such as beamforming provide information that would be impossible to glean from a single information source, but require more energy to perform. This task looks at adaptive sensing methodologies for multiple sensors and sensing modalities. Emergent collaboration constrains node behavior from an operational perspective. Collaborative sensing constrains node behavior from an applications perspective.</p>");
		document.write("<p><img src='slides/sensing/slide1.png'><br>" +
		               "<b>Figure 1.</b> <i>A generic urban/indoor collaborative sensing scenario where friendly forces are shown in orange, and enemy forces in blue.  The black squares, ellipses, and circles represent various types of sensors.</i></p>");
        document.write("<p>It is necessary to find the theoretical and practical performance limitations of self-configuring heterogeneous surveillance networks as a function of the sensor deployments [<a href='refs.html#Pottie_1998'>Pottie 1998</a>]. Low-powered, low-cost acoustic, seismic, IR, and low-resolution camera sensors exist. They can be used individually but are more effective when networked to detect, track, and display footsteps, human speakers, body heat, wheeled and tracked vehicles. They can be deployed by: controlled placements at strategic entries to buildings/halls/sewer manholes; semi-random placements by robots, animals (such as dogs or mice), or soldiers; or random placements from the air. It is essential to identify sensor locations in a 2-D or 3-D coordinate system. GPS can be used on some sensor nodes to fix their location, but this is problematic in urban settings. Active and passive methods based on acoustic/seismic/RF radiation exist for localization of small sensor nodes with finer spatial resolutions relative to known nodes or dominant physical features such as doorways.</p>"); 
        document.write("<p>Optimization of network performance in terms of sensor density can be formulated. Generalized least-squares estimation techniques for sensor calibration, source localization and tracking, and signal enhancement for target classification are needed. These will expand blind beamforming techniques for acoustic/seismic sensors that tackle instances of these problems [<a href='refs.html#Pottie_1998'>Pottie 1998</a>]. Recent techniques in multiple transmit/multiple receive space-time communication techniques can be used effectively to cooperatively transmit the desired target information in a covert manner. Finding the proper mix of available sensors and network configurations to attain desired system goals within constrained energy, computation, and time-delays imposes theoretical and practical challenges. Optimization of various measures of system");  
		document.write("performance in terms of sufficient sensor density can be formulated. Now, we review basic aspects of beamforming illustrating the cooperative operations of all the sensors.</p>"); 
        document.write("<p>In this thrust, we will");
		document.write("<ul>");
		document.write("<li>create an adaptive framework for blind beamforming that allows nodes to self-organize into collaborative sensing clusters as a function of priorities and resources;");
		document.write("<li>develop geometric methods for target localization that exploit coding techniques developed in the mathematical modeling thrust;");
		document.write("<li>derive general collaborative signal processing using language acquisition theories; and");
		document.write("<li>establish a DEDS control language that reflects events needed for inter-node collaboration in lower level sensing.");
		document.write("</ul></p>");
		document.write("<p><img src='slides/sensing/slide2.png'><br>" +
					   "<b>Figure 2.</b> <i>Events in a sensor network can be described by a formal language.  The diagram above shows how this can be transformed in an English-like interface for users.</i></p>");
	    document.write("<p>There are many aspects to the performance of a sensor network which result in trade-offs in network design, including:" +
	                   "<ul>" +
					   "<li>Optimize sensor placement" +
					   "<li>Effective in inhomogeneous propagation media" +
					   "<li>Track single or multiple targets" +
					   "<li>Compensate for sensor calibration problems" +
					   "<li>Achieve robustness" +
					   "<li>Adapt to unknown or unexpected events" +
					   "<li>Self-configure on deployment and reconfigure in response to equipment loss" +
					   "</ul>" +
		               "</p>");
        break;

        case 4: // Mathematical Modeling
		document.write("<p>The following tasks will support the design of self-configuring surveillance networks by creating technologies for adaptation and cooperation: (<i>i</i>) adaptive system control, (<i>ii</i>) adaptation of individual nodes and data links to system needs, and (<i>iii</i>) improved sensing through inter-node collaboration. In many respects they research the same problem at different layers of abstraction. It is not surprising that they require similar tools. In this task, we develop tools for exploring:");
		document.write("<ul>");
		document.write("<li>Collaborating automata - Cellular automata abstractions help determine global consequences of local decisions. This is needed for collaboration between nodes in task distribution, network routing, and collaborative sensing.");
		document.write("<p><img src='slides/modeling/slide1.png'><br>" +
		               "<b>Figure 1.</b> <i>NS: The Network Simulator</i></p>");
		document.write("<li>Geometric Modeling - Nodes interact with a dynamically changing environment. Sensing requires geometry to determine occlusion, and differing perspectives. Tasking determines the roles of nodes based on geometric constraints. Network connectivity depends directly on the relative positions of nodes.");
		document.write("<table><tr>");
		document.write("<td><p><img src='slides/modeling/slide2a.png'><br>" +
		               "<b>Figure 2a.</b> <i>Robot Navigation Visibility Graph</i></p></td>");
		document.write("<td><p><img src='slides/modeling/slide2b.png'><br>" +
		               "<b>Figure 2b.</b> <i>Robot Navigation Generated Random Graph</i></p></td>");
		document.write("</tr></table>");
		document.write("<li>Resource bounded optimization - Interaction with the real world provides tasks with hard time constraints. Constraints cannot be known a priori. Resource bounded optimization, with meta-computation to re-phrase problems as necessary, enable imperfect solutions to be used when time is not available to find perfect solutions.");
		document.write("<p><img src='slides/modeling/slide3.png'><br>" +
		               "<b>Figure 3.</b> <i>Petri Net Controller</i></p>");
		document.write("<li>Information coding - All tasks require reliable information exchange between nodes. Coding techniques ease the task of labeling data, disambiguating information, and insuring the robustness of results.");
		document.write("<p><a href='slides/modeling/slide4.png'><img src='slides/modeling/slide4.png' width='500' border='0'></a><br>" +
		               "<b>Figure 4.</b> <i>Discrete Event Controller</i></p>");
		document.write("</ul></p>");
        break;
    }
}
