1 / 20

Dynamic Dynamical Systems

Dynamic Dynamical Systems. George Cybenko Dartmouth College gvc@dartmouth.edu IMA December 5, 2002 Data-driven Control and Optimization Workshop. Examples of Dynamic Dynamical Systems. Web Services, .NET Framework Critical Infrastructures (eg power, internet, financial, etc)

tarik-beck
Download Presentation

Dynamic Dynamical Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Dynamic Dynamical Systems George Cybenko Dartmouth College gvc@dartmouth.edu IMA December 5, 2002 Data-driven Control and Optimization Workshop

  2. Examples of Dynamic Dynamical Systems • Web Services, .NET Framework • Critical Infrastructures (eg power, internet, financial, etc) • IBM’s Autonomic Computing (self aware, self healing software applications) • DOD Command, Control, Communications, Computing, Intelligence, Surveillance, Reconnaissance (C4ISR) Systems of the future

  3. IBM Autonomic Computing While the definition of autonomic computing will likely transform as contributing technologies mature, the following list suggests eight defining characteristics of an autonomic system. • An autonomic computing system needs to "know itself" - its components must also possess a system identity. Since a "system" can exist at many levels, an autonomic system will need detailed knowledge of its components, current status, ultimate capacity, and all connections to other systems to govern itself. It will need to know the extent of its "owned" resources, those it can borrow or lend, and those that can be shared or should be isolated. • An autonomic computing system must configure and reconfigure itself under varying (and in the future, even unpredictable) conditions. System configuration or "setup" must occur automatically, as well as dynamic adjustments to that configuration to best handle changing environments. • An autonomic computing system never settles for the status quo - it always looks for ways to optimize its workings. It will monitor its constituent parts and fine-tune workflow to achieve predetermined system goals. • An autonomic computing system must perform something akin to healing - it must be able to recover from routine and extraordinary events that might cause some of its parts to malfunction. It must be able to discover problems or potential problems, then find an alternate way of using resources or reconfiguring the system to keep functioning smoothly. • A virtual world is no less dangerous than the physical one, so an autonomic computing system must be an expert in self-protection. It must detect, identify and protect itself against various types of attacks to maintain overall system security and integrity. • An autonomic computing system must know its environment and the context surrounding its activity, and act accordingly. It will find and generate rules for how best to interact with neighboring systems. It will tap available resources, even negotiate the use by other systems of its underutilized elements, changing both itself and its environment in the process -- in a word, adapting. • An autonomic computing system cannot exist in a hermetic environment. While independent in its ability to manage itself, it must function in a heterogeneous world and implement open standards -- in other words, an autonomic computing system cannot, by definition, be a proprietary solution. • An autonomic computing system will anticipate the optimized resources needed while keeping its complexity hidden. It must marshal I/T resources to shrink the gap between the business or personal goals of the user, and the I/T implementation necessary to achieve those goals -- without involving the user in that implementation.

  4. DOD Vision of C4ISR

  5. Approved for Public Release - Distribution Unlimited DARPA IXO: A Rapidly Expanding Universe of Sensors, Weapons, and Platforms

  6. Two Problems (among many) to Solve • Defining components so they can join and leave the system dynamically • Designing control strategies that are effective in such an environment

  7. <rdf:Property rdf:ID="windowType"> <rdfs:subPropertyOf rdf:resource="http://www.daml.org/services/daml-s/0.7/Process.daml#input" /> <rdfs:domain rdf:resource="#FIRFilterProcess" /> <rdfs:range rdf:resource="#WindowTypeName" /> </rdf:Property> <rdf:Property rdf:ID="lowerFreqLimit"> <rdfs:subPropertyOf rdf:resource="http://www.daml.org/services/daml-s/0.7/Process.daml#input" /> <rdfs:domain rdf:resource="#FIRFilterProcess" /> <rdfs:range rdf:resource="http://localhost/services/concepts.daml#Frequency" /> </rdf:Property> FIRFilter.daml <rdf:RDF xmlns:daml="http://www.daml.org/2001/03/daml+oil#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:service="http://www.daml.org/services/daml-s/0.7/Service.daml#" xmlns:process="http://www.daml.org/services/daml-s/0.7/Process.daml#" xmlns:profile="http://www.daml.org/services/daml-s/0.7/Profile.daml#" xmlns:grounding="http://www.daml.org/services/daml-s/0.7/Grounding.daml#" xmlns:sensorProfile="http://localhost/sensor/SensorProfileHierarchy.daml#" xmlns:dt="http://localhost/sensor/dt.xsd#" xmlns="http://localhost/sensor/FIRFilter.daml#"> <!-- Service description --> <service:Service rdf:ID="FIRFilterService"> <service:presents rdf:resource="#FIRFilterProfile" /> <service:describedBy rdf:resource="#FIRFilterProcessModel" /> <service:supports rdf:resource="#FIRFilterGrounding" /> </service:Service> <!-- Profile description --> <sensorProfile:FuseletService rdf:ID="FIRFilterProfile"> <service:isPresentedBy rdf:resource="#FIRFilterService"/> <profile:serviceName>FIR Filter</profile:serviceName> <profile:textDescription> This service is a Finite Impulse Response filter. </profile:textDescription> <profile:input> <profile:ParameterDescription rdf:ID="WindowType"> <profile:parameterName>WindowType</profile:parameterName> <profile:restrictedTo rdf:resource="#WindowTypeName"/> <profile:refersTo rdf:resource="#windowType"/> </profile:ParameterDescription> </profile:input> <profile:input> <profile:ParameterDescription rdf:ID="LowerFreqLimit"> <profile:parameterName>LowerFreqLimit</profile:parameterName> <profile:restrictedTo rdf:resource="http://localhost/services/concepts.daml#Frequency"/> <profile:refersTo rdf:resource="#lowerFreqLimit"/> </profile:ParameterDescription> </profile:input> <profile:input> <profile:ParameterDescription rdf:ID="UpperFreqLimit"> <profile:parameterName>UpperFreqLimit</profile:parameterName> <profile:restrictedTo rdf:resource="http://localhost/services/concepts.daml#Frequency"/> <profile:refersTo rdf:resource="#upperFreqLimit"/> </profile:ParameterDescription> </profile:input> <profile:input> <profile:ParameterDescription rdf:ID="SoundInput"> <profile:parameterName>SoundInput</profile:parameterName> <profile:restrictedTo rdf:resource="http://localhost/sensor/dt.daml#wav"/> <profile:refersTo rdf:resource="#soundInput"/> </profile:ParameterDescription> </profile:input> <profile:output> <profile:ParameterDescription rdf:ID="SoundOutput"> <profile:parameterName>SoundOutput</profile:parameterName> <profile:restrictedTo rdf:resource="http://localhost/sensor/dt.daml#wav"/> <profile:refersTo rdf:resource="#soundOutput"/> </profile:ParameterDescription> </profile:output> </sensorProfile:FuseletService> <!-- Process Model description --> <process:ProcessModel rdf:ID="FIRFilterProcessModel"> <service:describes rdf:resource="#FIRFilterService" /> <process:hasProcess rdf:resource="#FIRFilterProcess" /> </process:ProcessModel> <daml:Class rdf:ID="FIRFilterProcess"> <rdfs:subClassOf rdf:resource="http://www.daml.org/services/daml-s/0.7/Process.daml#AtomicProcess" /> <rdfs:subClassOf> <daml:Restriction daml:cardinality="1"> <daml:onProperty rdf:resource="#windowType" /> </daml:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <daml:Restriction daml:cardinality="1"> <daml:onProperty rdf:resource="#lowerFreqLimit" /> </daml:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <daml:Restriction daml:cardinality="1"> <daml:onProperty rdf:resource="#upperFreqLimit" /> </daml:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <daml:Restriction daml:cardinality="1"> <daml:onProperty rdf:resource="#soundInput" /> </daml:Restriction> </rdfs:subClassOf> </daml:Class> <rdf:Property rdf:ID="windowType"> <rdfs:subPropertyOf rdf:resource="http://www.daml.org/services/daml-s/0.7/Process.daml#input" /> <rdfs:domain rdf:resource="#FIRFilterProcess" /> <rdfs:range rdf:resource="#WindowTypeName" /> </rdf:Property> <rdf:Property rdf:ID="lowerFreqLimit"> <rdfs:subPropertyOf rdf:resource="http://www.daml.org/services/daml-s/0.7/Process.daml#input" /> <rdfs:domain rdf:resource="#FIRFilterProcess" /> <rdfs:range rdf:resource="http://localhost/services/concepts.daml#Frequency" /> </rdf:Property> <rdf:Property rdf:ID="upperFreqLimit"> <rdfs:subPropertyOf rdf:resource="http://www.daml.org/services/daml-s/0.7/Process.daml#input" /> <rdfs:domain rdf:resource="#FIRFilterProcess" /> <rdfs:range rdf:resource="http://localhost/services/concepts.daml#Frequency" /> </rdf:Property> <rdf:Property rdf:ID="soundInput"> <rdfs:subPropertyOf rdf:resource="http://www.daml.org/services/daml-s/0.7/Process.daml#input" /> <rdfs:domain rdf:resource="#FIRFilterProcess" /> <rdfs:range rdf:resource="http://localhost/sensor/dt.daml#wav" /> </rdf:Property> <rdf:Property rdf:ID="soundOutput"> <rdfs:subPropertyOf rdf:resource="http://www.daml.org/services/daml-s/0.7/Process.daml#output" /> <rdfs:domain rdf:resource="#FIRFilterProcess" /> <rdfs:range rdf:resource="http://localhost/sensor/dt.daml#wav" /> </rdf:Property> <!-- Grounding description --> <grounding:WsdlGrounding rdf:ID="FIRFilterGrounding"> <service:supportedBy rdf:resource="#FIRFilterProcess" /> <grounding:hasAtomicProcessGrounding rdf:resource="#FIRFilterProcessGrounding" /> </grounding:WsdlGrounding> <grounding:WsdlAtomicProcessGrounding rdf:ID="FIRFilterProcessGrounding"> <grounding:damlsProcess rdf:resource="#FIRFilterProcess"/> <grounding:wsdlOperation rdf:resource="http://localhost/sensor/FIRFilter.wsdl#Process"/> <grounding:wsdlInputMessage rdf:resource="http://localhost/sensor/FIRFilter.wsdl#ProcessRequest"/> <grounding:wsdlInputMessageParts rdf:parseType="daml:collection"> <grounding:WsdlMessageMap> <grounding:damlsParameter rdf:resource="#windowType"/> <grounding:wsdlMessagePart rdf:resource="http://localhost/sensor/FIRFilter.wsdl#WindowType"/> </grounding:WsdlMessageMap> <grounding:WsdlMessageMap> <grounding:damlsParameter rdf:resource="#lowerFreqLimit"/> <grounding:wsdlMessagePart rdf:resource="http://localhost/sensor/FIRFilter.wsdl#LowerFreqLimit"/> </grounding:WsdlMessageMap> <grounding:WsdlMessageMap> <grounding:damlsParameter rdf:resource="#upperFreqLimit"/> <grounding:wsdlMessagePart rdf:resource="http://localhost/sensor/FIRFilter.wsdl#UpperFreqLimit"/> </grounding:WsdlMessageMap> <grounding:WsdlMessageMap> <grounding:damlsParameter rdf:resource="#soundInput"/> <grounding:wsdlMessagePart rdf:resource="http://localhost/sensor/FIRFilter.wsdl#SoundInput"/> </grounding:WsdlMessageMap> </grounding:wsdlInputMessageParts> <grounding:wsdlOutputMessage rdf:resource="http://localhost/sensor/FIRFilter.wsdl#ProcessResponse"/> <grounding:wsdlOutputMessageParts rdf:parseType="daml:collection"> <grounding:WsdlMessageMap> <grounding:damlsParameter rdf:resource="#soundOutput"/> <grounding:wsdlMessagePart rdf:resource="http://localhost/sensor/FIRFilter.wsdl#SoundOutput"/> </grounding:WsdlMessageMap> </grounding:wsdlOutputMessageParts> <grounding:wsdlReference>http://www.w3.org/TR/2001/NOTE-wsdl-20010315</grounding:wsdlReference> <grounding:otherReference>http://www.w3.org/TR/2001/NOTE-wsdl-20010315 http://schemas.xmlsoap.org/wsdl/soap/ http://schemas.xmlsoap.org/soap/http/</grounding:otherReference> <grounding:wsdlDocument>http://localhost/sensor/FIRFilter.wsdl</grounding:wsdlDocument> </grounding:WsdlAtomicProcessGrounding> <daml:Class rdf:ID="WindowTypeName"> <daml:oneOf rdf:parseType="daml:collection"> <WindowTypeName rdf:ID="Rectangular"/> <WindowTypeName rdf:ID="Hanning"/> <WindowTypeName rdf:ID="Hamming"/> <WindowTypeName rdf:ID="Blackman"/> </daml:oneOf> </daml:Class> </rdf:RDF>

  8. <daml:ObjectProperty rdf:ID="SensingMode"> <rdfs:domain rdf:resource="#SensorType"/> <rdfs:range rdf:resource="#SensingModeType"/> </daml:ObjectProperty> <daml:Class rdf:ID="SensingModeType"> <daml:oneOf rdf:parseType="daml:collection"> <SensingModeType rdf:ID="Active"/> <SensingModeType rdf:ID="Passive"/> </daml:oneOf> </daml:Class> <daml:ObjectProperty rdf:ID="TriggerMode"> <rdfs:domain rdf:resource="#SensorType"/> <rdfs:range rdf:resource="#TriggerModeType"/> </daml:ObjectProperty> Sensor.daml <rdf:RDF xmlns:daml="http://www.daml.org/2001/03/daml+oil#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns="http://localhost/sensor/sensor-jpa.daml#"> <daml:Class rdf:ID="Sensor"/> <daml:ObjectProperty rdf:ID="Name"> <rdfs:domain rdf:resource="#Sensor"/> <rdfs:range rdf:resource="#SensorName"/> </daml:ObjectProperty> <daml:Class rdf:ID="SensorName"/> <daml:DatatypeProperty rdf:ID="LongName"> <rdfs:domain rdf:resource="#SensorName"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="ShortName"> <rdfs:domain rdf:resource="#SensorName"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="Description"> <rdfs:domain rdf:resource="#SensorName"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="SerialNumber"> <rdfs:domain rdf:resource="#SensorName"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:ObjectProperty rdf:ID="Type"> <rdfs:domain rdf:resource="#Sensor"/> <rdfs:range rdf:resource="#SensorType"/> </daml:ObjectProperty> <daml:Class rdf:ID="SensorType"/> <daml:ObjectProperty rdf:ID="SensingMechanism"> <rdfs:domain rdf:resource="#SensorType"/> <rdfs:range rdf:resource="#SensingMechanismType"/> </daml:ObjectProperty> <daml:Class rdf:ID="SensingMechanismType"> <daml:oneOf rdf:parseType="daml:collection"> <SensingMechanismType rdf:ID="ElectricMagnetic"/> <SensingMechanismType rdf:ID="Mechanical"/> <SensingMechanismType rdf:ID="Biological"/> <SensingMechanismType rdf:ID="Chemical"/> <SensingMechanismType rdf:ID="Radioactive"/> <SensingMechanismType rdf:ID="Cyber"/> <SensingMechanismType rdf:ID="Optical"/> <SensingMechanismType rdf:ID="OtherMechanismType"/> </daml:oneOf> </daml:Class> <daml:ObjectProperty rdf:ID="SensingMeasurement"> <rdfs:domain rdf:resource="#SensorType"/> <rdfs:range rdf:resource="#SensingMeasurementType"/> </daml:ObjectProperty> <daml:Class rdf:ID="SensingMeasurementType"> <daml:oneOf rdf:parseType="daml:collection"> <SensingMeasurementType rdf:ID="Humidity"/> <SensingMeasurementType rdf:ID="Pressure"/> <SensingMeasurementType rdf:ID="Temperature"/> <SensingMeasurementType rdf:ID="Wind"/> <SensingMeasurementType rdf:ID="Frequency"/> <SensingMeasurementType rdf:ID="Position"/> <SensingMeasurementType rdf:ID="LightIntensity"/> <SensingMeasurementType rdf:ID="SoundIntensity"/> <SensingMeasurementType rdf:ID="Radiation"/> <SensingMeasurementType rdf:ID="MechanicalVibration"/> <SensingMeasurementType rdf:ID="OtherMeasurementType"/> </daml:oneOf> </daml:Class> <daml:ObjectProperty rdf:ID="SensingMode"> <rdfs:domain rdf:resource="#SensorType"/> <rdfs:range rdf:resource="#SensingModeType"/> </daml:ObjectProperty> <daml:Class rdf:ID="SensingModeType"> <daml:oneOf rdf:parseType="daml:collection"> <SensingModeType rdf:ID="Active"/> <SensingModeType rdf:ID="Passive"/> </daml:oneOf> </daml:Class> <daml:ObjectProperty rdf:ID="TriggerMode"> <rdfs:domain rdf:resource="#SensorType"/> <rdfs:range rdf:resource="#TriggerModeType"/> </daml:ObjectProperty> <daml:Class rdf:ID="TriggerModeType"> <daml:oneOf rdf:parseType="daml:collection"> <TriggerModeType rdf:ID="Triggered"/> <TriggerModeType rdf:ID="Untriggered"/> </daml:oneOf> </daml:Class> <daml:ObjectProperty rdf:ID="Location"> <rdfs:domain rdf:resource="#Sensor"/> <rdfs:range rdf:resource="#SensorLocation"/> </daml:ObjectProperty> <daml:Class rdf:ID="SensorLocation"/> <daml:ObjectProperty rdf:ID="AddressLocation"> <rdfs:domain rdf:resource="#SensorLocation"/> <rdfs:range rdf:resource="#SensorAddress"/> </daml:ObjectProperty> <daml:Class rdf:ID="SensorAddress"/> <daml:DatatypeProperty rdf:ID="Street"> <rdfs:domain rdf:resource="#SensorAddress"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="County"> <rdfs:domain rdf:resource="#SensorAddress"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="City"> <rdfs:domain rdf:resource="#SensorAddress"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="Country"> <rdfs:domain rdf:resource="#SensorAddress"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="State"> <rdfs:domain rdf:resource="#SensorAddress"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="ZipCode"> <rdfs:domain rdf:resource="#SensorAddress"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:ObjectProperty rdf:ID="GeoLocation"> <rdfs:domain rdf:resource="#SensorLocation"/> <rdfs:range rdf:resource="#SensorGeo"/> </daml:ObjectProperty> <daml:Class rdf:ID="SensorGeo"> </daml:Class> <daml:DatatypeProperty rdf:ID="Latitude"> <rdfs:domain rdf:resource="#SensorGeo"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="Longitude"> <rdfs:domain rdf:resource="#SensorGeo"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="Altitude"> <rdfs:domain rdf:resource="#SensorGeo"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="URI"> <rdfs:domain rdf:resource="#SensorLocation"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:ObjectProperty rdf:ID="Time"> <rdfs:domain rdf:resource="#Sensor"/> <rdfs:range rdf:resource="#SensorTime"/> </daml:ObjectProperty> <daml:Class rdf:ID="SensorTime"/> <daml:ObjectProperty rdf:ID="WorkingMode"> <rdfs:domain rdf:resource="#SensorTime"/> <rdfs:range rdf:resource="#WorkingModeType"/> </daml:ObjectProperty> <daml:Class rdf:ID="WorkingModeType"> <daml:oneOf rdf:parseType="daml:collection"> <WorkingModeType rdf:ID="Instant"/> <WorkingModeType rdf:ID="Temporary"/> <WorkingModeType rdf:ID="Continuous"/> </daml:oneOf> </daml:Class> <daml:ObjectProperty rdf:ID="Data"> <rdfs:domain rdf:resource="#Sensor"/> <rdfs:range rdf:resource="#SensorData"/> </daml:ObjectProperty> <daml:Class rdf:ID="SensorData"/> <daml:ObjectProperty rdf:ID="Format"> <rdfs:domain rdf:resource="#SensorData"/> <rdfs:range rdf:resource="#FormatType"/> </daml:ObjectProperty> <daml:Class rdf:ID="FormatType"/> <FormatType rdf:ID="Binary"/> <FormatType rdf:ID="Ascii"/> <FormatType rdf:ID="Analog"/> <daml:DatatypeProperty rdf:ID="Unit"> <rdfs:domain rdf:resource="#SensorData"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:ObjectProperty rdf:ID="EncryptionMode"> <rdfs:domain rdf:resource="#SensorData"/> <rdfs:range rdf:resource="#EncryptionModeType"/> </daml:ObjectProperty> <daml:Class rdf:ID="EncryptionModeType"/> <EncryptionModeType rdf:ID="Plain"/> <daml:DatatypeProperty rdf:ID="Sample"> <rdfs:domain rdf:resource="#SensorData"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:ObjectProperty rdf:ID="Specification"> <rdfs:domain rdf:resource="#Sensor"/> <rdfs:range rdf:resource="#SensorSpecification"/> </daml:ObjectProperty> <daml:Class rdf:ID="SensorSpecification"/> <daml:ObjectProperty rdf:ID="Mobility"> <rdfs:domain rdf:resource="#SensorSpecification"/> <rdfs:range rdf:resource="#MobilityType"/> </daml:ObjectProperty> <daml:Class rdf:ID="MobilityType"> <daml:oneOf rdf:parseType="daml:collection"> <MobilityType rdf:ID="FixedMobility"/> <MobilityType rdf:ID="MobileMobility"/> </daml:oneOf> </daml:Class> <daml:ObjectProperty rdf:ID="Power"> <rdfs:domain rdf:resource="#SensorSpecification"/> <rdfs:range rdf:resource="#PowerType"/> </daml:ObjectProperty> <daml:Class rdf:ID="PowerType"> <daml:oneOf rdf:parseType="daml:collection"> <PowerType rdf:ID="Renewable"/> <PowerType rdf:ID="Fixed"/> <PowerType rdf:ID="Rechargable"/> </daml:oneOf> </daml:Class> <daml:DatatypeProperty rdf:ID="Range"> <rdfs:domain rdf:resource="#SensorSpecification"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="Resolution"> <rdfs:domain rdf:resource="#SensorSpecification"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="Accuracy"> <rdfs:domain rdf:resource="#SensorSpecification"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="ExpireTime"> <rdfs:domain rdf:resource="#SensorSpecification"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="SamplingRate"> <rdfs:domain rdf:resource="#SensorSpecification"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:ObjectProperty rdf:ID="Contact"> <rdfs:domain rdf:resource="#Sensor"/> <rdfs:range rdf:resource="#SensorContact"/> </daml:ObjectProperty> <daml:Class rdf:ID="SensorContact"/> <daml:DatatypeProperty rdf:ID="Organization"> <rdfs:domain rdf:resource="#SensorContact"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="Person"> <rdfs:domain rdf:resource="#SensorContact"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:ObjectProperty rdf:ID="Address"> <rdfs:domain rdf:resource="#SensorContact"/> <rdfs:range rdf:resource="#SensorAddress"/> </daml:ObjectProperty> <daml:DatatypeProperty rdf:ID="Email"> <rdfs:domain rdf:resource="#SensorContact"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="Phone"> <rdfs:domain rdf:resource="#SensorContact"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="Purpose"> <rdfs:domain rdf:resource="#SensorContact"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> <daml:DatatypeProperty rdf:ID="Manufacturer"> <rdfs:domain rdf:resource="#SensorContact"/> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#string"/> </daml:DatatypeProperty> </rdf:RDF>

  9. Semantic Services Testbed Composer Knowledge Base Pattern UMD Battlefield Search JessKB/ Parka-DB Feature Process Model Signal GUI Web Service Match Sensor Target DB SOAP WSDL Target Publish SML Instances Mission Sensor Publish DAML-S Instances Shooter Acoustic Sensor Query Data Tracking Application Web Service F5 SOAP WSDL Intelligence Database F2 N7 F4 N1 Other Applications Query N5 N2 N9 P2P Net JXTA Fuselet Pool Upload Fuselet

  10. matrix matrix matrix matrix How deep into the graph does one have to go to determine interoperability? sensor fusion engine tracker airborne radar acoustic sensor inputs outputs location reports location xx yy tracks reports errors errors matrix mean variance matrix matrix covariance units matrix

  11. Semantic “Depth” “C” represents explicit common formats and assumptions required for effective interoperability between parties Explicit Semantics - used for interoperability within a given domain (shallow, abstract, etc) Semantics required to communicate with Martians “A” “C” Implicit Semantics - assumed within a given domain (deep, concrete, etc) “B” C A+B+C Each circle represents semantics of a service/source and the overlap is the common semantics/terms. Examples - hard-coded routine has high implicit semantics; highly negotiated, annotated composible service has high explicit semantics, etc

  12. Deep Semantics and Markup Complexity t=0.5, levels=2 t=0.5, levels=1 Plots of reduction in complexity vs zmax and wmax

  13. Enabling Information Visibility and Fluidity Jiang, Cybenko, Hendler Uses “Small Worlds” Model and Analysis

  14. Functional Validation of Semantics (Jiang & Cybenko, Autonomous Agents to appear)

  15. Second Challenge – Control • Traditional ingredients of a control system: • State space and state estimation • Dynamics (possibly stochastic) • Cost function • Dynamic dynamical system • All these can change dynamically • Stability, convergence?

  16. q(1,1,op1) q(2,1,op3) q(1,2,op2) q(*,2,op4) q(2,2,op4) adapt to changes Content-based RoutingCybenko and Jiang, CDC Dec 2002 q(1,1,op1) & q(1,2,op2) & means downstream flow is smaller | means downstream flow is the same q(2,1,op3) | q(2,2,op4) q(1,2,op2) < q(2,2,op4) s1 c1 c2 s2 fusion nodes of different loads/power q(client,sensor,operation) links of different latencies/bw

  17. Existing Examples • Discrete diffusion (load balancing) • Time To Live (TTL) in TCP creates a certain stability on the Internet • Energy, “money” • Finite nonincreasing resources – distributed Lyapunov functions

  18. Required logic Do forever Discover system components Parse descriptions Build a system model Do for some time Estimate state Compute control Implement control Classical Validation, stability, optimality?

  19. Two Problems (among many) to Solve • Defining components so they can join and leave the system dynamically • Designing control strategies that are effective in such an environment

  20. Getting above the weeds - from “existence proofs” to new computing models and the software engineering tools to implement them Algorithms + Data Structures = Programs New Stochastic Control Logics + Semantics= Dynamic Dynamical Systems Weiner vs Turing/von Neumann?

More Related