DE69635162T2 - Hybride steuerungsarchitektur mit mehreren agenten - Google Patents

Hybride steuerungsarchitektur mit mehreren agenten Download PDF

Info

Publication number
DE69635162T2
DE69635162T2 DE69635162T DE69635162T DE69635162T2 DE 69635162 T2 DE69635162 T2 DE 69635162T2 DE 69635162 T DE69635162 T DE 69635162T DE 69635162 T DE69635162 T DE 69635162T DE 69635162 T2 DE69635162 T2 DE 69635162T2
Authority
DE
Germany
Prior art keywords
agent
knowledge base
control
agents
equation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69635162T
Other languages
English (en)
Other versions
DE69635162D1 (de
Inventor
Wolf Kohn
Anil Nerode
John James
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HYBRITHMS CORP
HYBRITHMS CORP BELLEVUE
Original Assignee
HYBRITHMS CORP
HYBRITHMS CORP BELLEVUE
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by HYBRITHMS CORP, HYBRITHMS CORP BELLEVUE filed Critical HYBRITHMS CORP
Application granted granted Critical
Publication of DE69635162D1 publication Critical patent/DE69635162D1/de
Publication of DE69635162T2 publication Critical patent/DE69635162T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4148Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by using several processors for different functions, distributed (real-time) systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/043Distributed expert systems; Blackboards
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33055Holon, agent executes task and cooperates with other, distributed control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33068CCP coordination cooperation protocol, make optimal decisions with other agents
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33073Ion control agent has communication, database, suggestion, decision, action, detect
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33277Distributed system with host as leader, host with multiple of agents
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Gebiet der Erfindung
  • Die Erfindung betrifft allgemein die kenntnisbasierte Echtzeitsteuerung sowohl kleiner als auch großer Systeme. Insbesondere betrifft die Erfindung die rechnergestützte Steuerung von Systemen, die räumlich und/oder zeitlich verteilt sind und sich zusammensetzen aus Komponenten, deren logisches (auf Einstellung beruhendes) und Evolution (Kontinuum-basiertes) Verhalten durch eine Ansammlung von sogenannten Agenten gesteuert wird. Die Erfindung schafft allgemeingültige Verfahren zur inkrementellen reaktiven Konstruktion des zusammengesetzten Systems durch Online-Generierung von Software durch jeden Agenten. Die generierte Software beherrscht das individuelle Agenten-Verhalten und schafft eine nahezu optimale Erfüllung bei deklarierten logischen sowie Evolutions-Beschränkungen bezüglich lokaler und globaler Systemziele, Sensorwerte und Leistungscharakteristika.
  • 2. Diskussion des einschlägigen Standes der Technik
  • Rechnergesteuerte Systeme sind Ansammlungen von Komponenten, die entweder dazu benutzt werden, Menschen bei der Ausführung ihrer Steuerverantwortlichkeiten zu unterstützen oder automatisch passende Steuermaßnahmen auszuführen. Rechnergestützte Systeme können auch eine Kombination sowohl aus unterstützenden als auch autonomen Komponenten aufweisen.
  • Typische Komponenten von verteilten, rechnergesteuerten Echtzeitsystemen beinhalten Computer (Rechner), Kommunikationsnetze, Software, Sensoren (Analog-Digital-Wandler) sowie Aktoren (Digital-Analog-Wandler). Gesteuert werden Systeme zu dem Zweck, angestrebte hochstehende und ereignisbasierte Ziele zu erreichen (so zum Beispiel Sicherheitsziele oder Qualitätsmerkmale), die häufig ausgedrückt werden als Regeln eines angestrebten Verhaltens, und die gesteuert werden, um gewünschte evolutions-basierte Ziele niedriger Ebene zu erreichen (so zum Beispiel die exakte Änderungsgeschwindigkeit einer Winkelstellung oder die genaue Steuerung einer Versetzungs-Geschwindigkeit), häufig in Form von Differential- oder Differenzgleichungen ausgedrückt.
  • Die derzeitigen Technikumgebungen bieten Unterstützung für die Durchführung extensiver Experimente beim Ausprobieren unterschiedlicher Steuermechanismen. Hauptanstrengungen haben sich in den vergangenen Jahrzehnten darauf konzentriert, noch genauere Statements für System-Randbedingungen und immer leistungsfähigere Simulations-Umgebungen zum Durchführen noch extensiverer Kombinationen von Experimenten zu schaffen, um Ausfall-Betriebsarten der betrachteten Steuermechanismen aufzudecken. Wenn Systeme analysiert, entworfen, implementiert und gewartet werden, so dienen diese extensiven, in der Technikumgebung ausgeführten Experimente zur Verifizierung, Bewertung und Zulassung der Modelle und Algorithmen, die von dem rechnergesteuerten System dazu eingesetzt werden, eine autonome oder halbautonome (den Menschen einbeziehende) Steuerung des verteilten Systems zu erreichen.
  • Die vorhandene technisches Vorgehensweise hat bei Systemen kleinen Umfangs großen Erfolg gehabt. Gemäß dem US-Department of Commerce verfehlen aber 70 bis 90% von Echtzeitsystemen ihre Ziele und gelangen nicht zur vollständigen Entwicklung. Darüber hinaus steigt für entwickelte Systeme der Anteil von Anfangs-Systemkosten, die auf Software zurückzuführen, ständig, was sich auf zwischen 30 und 90% der anfänglichen Aquisitionskosten beläuft. Hauptursache beim Aufbau umfangreicher verteilter Systeme ist die Schwierigkeit, Echtzeitprozesse zu synchronisieren.
  • Die beste existierende Technik basiert auf ingenieurmäßiger Erfahrung und heuristischen Methoden beim Aufbau von rechnergestützten Systemen, die logische Randbedingungen, geometrische Randbedingungen sowie evolutionäre Randbedingungen bezüglich des Systemverhaltens kombinieren. Die Verifizierung, die Erprobung und die Zulassung dieser Systeme wird erreicht durch teure und nicht beweiskräftige Entwicklungsbemühungen, die den Versuch unternehmen, Systemausfallarten aufzudecken und zu korrigieren mit Hilfe einer Folge von Simulationen und Vergleichsexperimenten, gefolgt von der Korrektur der aufgedeckten Fehlerarten. Wie oben angedeutet, schlagen häufig umfangreiche Echtzeit-Steueraufgaben fehl, und es werden Projekte aufgegeben, nachdem beträchtliche Aufwendungen getrieben wurden. Diejenigen Systeme, die erfolgreich sind, lassen sich nur schwierig aktualisieren, weil die Folge von Verifizierungs-, Bewertungs- und Zulassungsexperimenten bei jeder Systemänderung wiederholt werden muß.
  • Die Erfindung stellt eine Verbesserung gegenüber der derzeitigen Technik aufgrund der Generierung von Steuersoftware dar, die deklarierten Randbedingungen entspricht. Die Technik beruht auf strengen mathematischen Ergebnissen, die festlegen, daß die Vorgehensweise korrekt ist (kein Theorem betrifft, welches Aussagen in der Kenntnisbasis zuwiderläuft) und vollständig ist (Theoreme bestätigt, die Aktionen generieren, welche bewirken, daß der Systemzustand (innerhalb deklarierter Genauigkeitskriterien) jeden Punkt erreicht, der sich in dem Punktebereich befindet, der durch die Kenntnisbasis beschrieben wird). Dieses formale theoretische Ergebnis im Verein mit der praktischen Implementierung des Ergebnisses der Erfindung ermöglicht den inkrementellen Aufbau umfangreicher verteilter Echtzeit-Steuersysteme aus zuverlässigen Komponenten. Damit ermöglicht die Erfindung in dem Ausmaß, in welchem eine existierende Komponente ein Zuverlässigkeitsmaß erreicht hat, die Einbeziehung jener Komponente in ein größeres System, ohne die vorausgegangenen Experimente zu wiederholen. Für kleinere, gut verstandene Systeme, die aus überlieferten Produktionsanwendungen aufgebaut sind, ermöglicht die Erfindung eine zuverlässige Implementierung einer umfangreicheren Vielfalt von Systemparametern.
  • Es gibt keine Produkte, die der Mehrfachagenten-Hybridsteuerarchitektur (MAHCA; Multiple-Agent Hybrid Control Architecture) ähnlich sind. Merkmale der MAHCA beinhalten:
    • 1. MAHCA verwendet allgemeine Beschreibungen des Systemszustands, die logische und Entwicklungs-Randbedingungen bezüglich des Systemverhaltens kombinieren. Die besten kommerziellen Simulationsprodukte haben derartige kombinierte Beschreibungen des Systemverhaltens über zahlreiche Jahre hinweg unterstützt. Beispiele für kommerzielle Simulationssysteme beinhalten SIMNON und ACSL, bei denen es sich in beiden Fällen um unterstützende nicht-lineare Systembeschreibungen handelt, die Entdeckung von System-Gleichgewichtspunkten und die Linearisierung von System-Gleichgewichtsbedingungen für den Entwurf linearer Steuerungen. Der beste experimentelle Prototyp ist DSTOOL von der Cornell University, welches von einer Systembeschreibung ausgeht, die der der MAHCA am nächsten kommt. Eine jüngere Doktorarbeit von Mats Andersson vom Lund Institute of Technology diskutiert die Simulation von Hybrid-Systemen. Die Arbeit beschreibt die System-Modellsprache Omola sowie das Simulationssystem OmSim. Während diese Produkte und experimentellen Systeme die Aufdeckung des Systemverhaltens unterstützen, einschließlich der Aufdeckung von Fehlerarten, unterstützen sie nicht die Erzeugung von Steuerungen zum Kompensieren eines unerwünschten Verhaltens.
    • 2. Die logische und Entwicklungsbeschreibung des Systemverhaltens der MAHCA liefert kumulative Steuerlösungen. Kommerzielle Produkte für den Entwurf von Steuersystemen gibt es bereits, darunter einige, die einen Steuercode aus Experimenten generieren. Die besten kommerziellen Systeme sind MATLAB, MATRIX-X und BEACON. Die besten experimentellen Prototypen sind ANDECS aus Deutschland, HONEY-X von Honeywell und METL der University of Waterloo. METL kommt gedanklich der MAHCA insofern am nächsten, als METL sowohl logische als auch Entwicklungsbeschreibungen des Systemverhaltens unterstützt als auch das Schaffen von Steuerlösungen, die logischen und Entwicklungs-Randbedingungen entsprechen. Allerdings beruht METL auf der empirischen Aufdeckung von Fehlerarten und der Anwendung von ingenieurmäßiger Heuristik für den Aufbau kombinierter Lösungen, so, wie dies bei sämtlichen Steuerungs-Entwurfshilfsmitteln der Fall ist, die derzeit verfügbar sind.
    • 3. MAHCA unterstützt ein System zum Lösen sowohl linearer als auch nicht-linearer Planung von Ereignissen. Kommerzielle Produkte gibt es für die Planung diskreter Ereignisfolgen. Eine Erweiterung des G2-Produkts von GENSYM Corp. befindet sich derzeit als optimale Planungseinheit für diskrete Fertigung auf dem Markt. Dieses Produkt beruht ähnlich wie andere Planungspakete auf der Lösung einer linearen Approximation an das, was als nicht-lineares Problem bekannt ist. MAHCA löst das nicht-lineare Planungsproblem sowie dessen lineare Approximation.
    • 4. MAHCA verwendet einen allgemeinen Architekturdeskriptor. Mehrzweck-Architekturen für umfangreiche Echtzeitsysteme sind seit einiger Zeit in der Entwicklung. Die NASREM-Architektur, eine Gemeinschaftsentwicklung des National Bureau of Standards und der National Aeronautics and Space Administration, wurde als offene Norm 1989 veröffentlicht. Diese Referenz-Architektur für eine verteilte Echtzeitsteuerung wurde als Ausgangspunkt für mehrere umfangreiche Systeme ebenso verwendet wie als Ausgangspunkt für das „Next Generation Controller"-Projekt sowie den Beginn von zwei Projekten der komponenten-basierten Programmierung, unterstützt von der Advanced Research Projects Agency (ARPA) als Domain-Specific Software Architecture (DSSA). Eines dieser Projekte weist den besten experimentellen Prototyp zum Deklarieren von System-Architekturen auf, nämlich das ARDECTEKNOWLEDGE (ARTEK)-Modell. Allerdings unterstützt weder NASREM noch ARTEK die Entwicklung von Steuerprogrammen für die Systeme, die durch ihre Architektur-Syntax beschrieben werden. MAHCA kann entweder die NASREM- oder die ARTEK-Syntax zum Beschreiben von Referenz-Architekturen für umfangreiche Systeme verwenden, und kann außerdem Steuersoftware generieren, um Aktionen auszuführen, die notwendig sind, um die Entwurfsziele der Architekturanwendungen zu erreichen. Während sowohl NASREM als auch ARTEC Deklarationen von Synchronisationserfordernissen für umfangreiche verteilte Systeme unterstützen, unterstützt keines von ihnen die Konstruktion von Steuerlösungen, die die erforderliche Synchronisation erzielen.
  • MAHCA schafft eine Technologie zur flexiblen Implementierung heterogener Systeme, die sich beträchtlich auf die Fähigkeiten von Echtzeit-Steuerarchitekturen ausweiten, wie sie von dem National Institute of Standards and Technology (NIST) und der National Aeronautics and Space Administration (NASA) angesprochen werden in „NASA/NBS Standard Reference Model for Telerobot Control System Architecture (NASREM)", NIST (früher NBS) Technical Note 1235, April 1989. Die auf Experimenten basierende Architektur von NASREM stellt die am weitesten gehende logische Anordnung von Hilfsmitteln für die experimentelle Entwicklung intelligenter, im Echtzeitbetrieb arbeitender rechnergesteuerter Systeme dar. Die NASREM-Architektur war eine der am umfangreichsten implementierten Architekturen für Großmaßstab-Systeme und war der Ausgangspunkt für die Forschung auf dem Gebiet von komponenten-basierter Echtzeitsteuerung, durchgeführt von dem Department of Defense. NASREM besitzt mehrere äußerst nützliche Merkmale, so beispielsweise:
    • 1. NASREM unterstützt die Auftrennung komplexer Echtzeitsysteme in eine feste Hierarchie, basierend auf der Tatsache, daß untere Ebenen der Hierarchie in kürzeren Zeiten implementiert werden und höhere Hierarchie-Ebenen in langsamer ablaufenden Zeitrahmen implementiert werden. Nominell schwanken die Zeitmaßstäbe von einigen Stunden Beobachtung der Systementwicklung in der untersten Zeitskala bis zu einigen Millisekunden der Beobachtung der Systementwicklung in der schnellsten Zeitskala.
    • 2. NASREM unterstützt eine weitere Auftrennung komplexer Echtzeitsysteme in feste heterarchische Abschnitte auf jeder Ebene innerhalb der Hierarchie, die den Komponenten für eine feste Geschlossene-Schleife-Regelung für jede Ebene gemäß einem sogenannten „Sense-Decide-Act"-Muster entsprechen:
    • a. Erfassen (Sense) des Zustands des Systems in jeder Ebene (auf der Zeitskala) innerhalb der Hierarchie. Analog-Digital-Wandler dienen zum automatischen Erfassen und liefern Eingangsgrößen auf der untersten Ebene in der Hierarchie, während Benutzerschnittstellen dazu eingesetzt werden, Benutzeranfragen, Antworten auf Systemanfragen oder Entscheidungen auf höchsten Ebenen innerhalb der Hierarchie zu erhalten.
    • b. Entscheiden (Decide), welche Aktion oder welcher Plan implementiert werden soll. Planungsalgorithmen für sequentielle Maschinen, die für ein System mit diskreten Ereignissen verwendet werden, Schalttabellen, die experimentell erstellt wurden zur Schaffung einer Verstärkungsplanung für Regelalgorithmen, geeignet für unterschiedliche Betriebsarten, oder adaptive Steueralgorithmen zur Verwendung um gut definierte Betriebspunkte dienen zum Entscheiden, welche Aktionen auf den untersten Ebenen der Hierarchie stattfinden sollen.
    • c. Ausführen (Act) zur Umsetzung der passenden Aktion für den laufenden Systemzustand auf jeder Ebene innerhalb der Hierarchie. Da die unteren Ebenen in schnellerem zeitlichem Maßstab arbeiten als die höheren Ebenen in der Hierarchie (die unterste Ebene ist um einige Größenordnungen schneller als die höchste Ebene), werden zahlreiche Aktionen auf einer unteren Ebene für jede Aktion ausgeführt, die auf einer höheren Ebene stattfindet.
  • Jede heterarchische Unterteilung schreitet mit einer fixen Geschwindigkeit voran, um den Sense-Decide-Act-Zyklus jeder Ebene zu implementieren, die von ihr gesteuert wird. Die Geschwindigkeit kann auf der Grundlage von Leistungsanforderungen seitens der Benutzer in das System eingestellt werden, oder die Geschwindigkeit kann experimentell auf der Grundlage von baulichen Anforderungen existierender Prozesse festgelegt werden. Jede Ebene hat Zugriff auf eine globale Kenntnisbasis, die die Kenntnis des laufenden Systemzustands und Randbedingungen für Entscheidungen enthält, die für den nächsten Zyklus getroffen werden können.
    • 3. NASREM trennt Systemverhaltensweisen auf in durchzuführende logische Hauptaktivitäten, basierend auf der nominellen Unterteilung gemäß den System-Zeitmaßstäben. Dies unterstützt den bewußten Entwurf beim Hinzufügen einer höher angesiedelten logischen Funktionalität in Schichten von der einfachsten Schicht zu der höchstentwickelten Schicht, wenn das komplexe System inkrementell entworfen, als Prototyp hergestellt, zusammengebaut, geprüft und in Betrieb genommen wird.
  • NASREM sowie weitere Architekturen, die auf der Durchführung extensiver Experimente zum Implementieren komplexer umfangreicher Systeme beruhen, war eine erfolgreiche technische Vorgehensweise. In dem Zuge, in welchem Systeme allerdings in ihrer Größe und Komplexität zunehmen, wurde diese Technologie mit zunehmendem Maße weniger effizient bei der Erzielung erfolgreicher Implementierungen.
  • Weiterer Stand der Technik findet sich in KOHN ET AL: „Multiple agent autonomous hybrid control systems"; Proceedings of the 31st IEEE Conference on Decision and Control, S. 2956–66, Vol. 3, New York, US, Dezember 1992 und in XIAOLIN et al.: "Distributed intelligent control theory of hybrid systems"; Proceedings of the Fifth Annual Conference on Al, Simulation, and Planning in High Autonomy Systems. Distributed Interactive Simulation Environments, S. 12–15, Los Alamitos, US, 1994.
  • OFFENBARUNG DER ERFINDUNG
  • Ein Ziel der Erfindung ist die Schaffung einer Mehrzweckarchitektur für den inkrementellen Aufbau von beweisbar korrekten, nahezu optimalen Systemen zur Echtzeitsteuerung von Klein- und Großsystemen, die nicht-linear, zeitlich variierend und in Zeit und Raum verteilt sein können. Die vorliegende Erfindung schafft ein rechnerisch realisierbares Verfahren zum Implementieren einer nahezu optimalen, automatischen Regelschleife für nicht-lineare verteilte Echtzeitprozesse, indem zunächst bewiesen wird, daß eine nahezu optimale Lösung von Systembeschreibungen existiert, und anschließend Steuerautomatismen generiert werden, die eine nahezu optimale Leistung ungeachtet von gewissen System-Nichtlinearitäten-Störungen und Ungewißheiten sowie Änderungen im Verlauf der Zeit erzielen.
  • Ein weiteres Ziel der Erfindung ist der Aufbau einer „klausalen" Sprache, die Deklarationen sowohl logischer als auch Entwicklungs-Randbedingungen bezüglich des Verhaltens der Hybridsysteme gestattet. Diese deklarative Vorgehensweise für die Systemzusammensetzung ermöglicht das Definieren von komplexen Systemen in Begriffen der Beziehungen zwischen interagierenden Komponenten von Subsystemen.
  • Ein weiteres Ziel der Erfindung ist es, explizit den Aufbau von Deklarationen zu unterstützen, die die „ausreichend enge" Beschaffenheit nahezu optimaler Lösungstechnologie dazu nutzt, die Kosten bei der Erreichung zuverlässiger Lösungen für verteilte Systeme großen Maßstabs beträchtlich zu reduzieren. Dies geschieht durch automatische Relaxation (Abmilderung) von Randbedingungen, die Nähe-Kriterien von logischen und Entwicklungsmodellen erfüllen. Die automatische Relaxation wird erreicht durch eine syntaktische Transformation von Randbedingungen. Die Semantik der Randbedingungen wird nicht geändert.
  • Es ist ein Nebenziel der vorliegenden Erfindung, eine Menge von Entwicklungshilfsmitteln zu schaffen, die Systemingenieuren helfen, passende Klausal-Deklarationen zum Zusammenfügen von Komponenten zu Systemen sowie zum Zusammenfügen von Systemen zu definieren, deren Verhalten durch ein Agentennetz zu synchronisieren ist.
  • Ein Nebenziel der Erfindung besteht darin, daß das Netz von Agenten die Wiederverwendung von zuverlässigen Komponenten anderer Anwendungen durch deklarative Einbeziehung in neue Systemarchitekturen unterstützen. Diese deklarative Einbeziehung verringert die experimentelle Arbeit, die erforderlich ist, um eine Verifizierung, Bewertung und Zulassung von überlieferten Komponenten zu erreichen, bei denen es sich um zuverlässige Teile des neuen Systems handelt.
  • Ein Nebenziel der Erfindung besteht in der Online-Generierung von Automaten, die zu logischen und Entwicklungs-Randbedingungen für ein Systemverhalten passen und die Erzeugung sowie die Reparatur von Anlagen und Plänen gemäß deklarierten Randbedingungen und Optimierungskriterien unterstützen.
  • Diese und weitere Ziele der Erfindung werden gemäß der Technik der vorliegenden Erfindung dadurch erreicht, daß ein Software- und ein Hardware-Konstruktionshilfsmittel in der Form einer Architektur und Methodik zum Aufbau und zur Synchronisierung des Betriebs nicht-linearer Echtzeitsysteme großen Maßstabs geschaffen wird, die in Zeit oder in Raum verteilt sein können, indem eine Online-Integration von heterogenen Komponenten implementiert wird, einschließlich logische und Entwicklungs-Komponenten sowie überlieferte und neue Komponenten. Dieses Konstruktionshilfsmittel erzielt eine flexible Online-Integration von heterogenen Komponenten durch das Generieren von Automaten, die übereinstimmen mit Deklarationen bezüglich des Systemverhaltens. Diese Automaten werden ausgeführt durch logische Agenten in einem Agentennetz, um die inkrementelle Erweiterung der System-Funktionalität und die Skalierbarkeit des Systembetriebs in Raum und Zeit zu unterstützen. Dieses Konstruktions-Hilfsmittel beinhaltet eine Grundarchitektur für einen individuellen Agenten sowie eine Grundarchitektur für ein Agentennetz. Das Hilfsmittel beinhaltet einen modularen Satz von Fähigkeiten, die bereits auf eine große Vielfalt von verteilten Echtzeitanwendungen angewendet wurden, und die vorhanden sind als Anfangsmenge oder Anfangssatz von Konstruktionsmöglichkeiten für den Entwurf, die Analyse und die Implementierung von Hybrid-Systemen.
  • Damit schafft die MAHCA eine Mehrfachebenen-Architektur für den Entwurf und die Implementierung von Schichten von Agenten, Software-Anwendungen, Datenbanksystemen, großflächigen und lokalen Kommunikationsnetzen, Sensoren, Aktoren sowie physischen Netzwerkkomponenten. MAHCA schafft außerdem eine Architektur für ein logisches Mehrfachagenten-Kommunikationsnetz, welches in der Mehrschicht-Architektur arbeitet, um die Arbeitsweise verteilter Prozesse zu synchronisieren. MAHCA läßt sich so konfigurieren, daß es kooperative und nicht-kooperative Strategien des Verhaltens zwischen individuellen Komponenten und die Aggregation sowie Deaggregation von Systemverhalten unterstützt.
  • In der oberen Ebene der MAHCA befindet sich das Netz von Agenten. Dieses Agentennetz läßt sich betrachten als ein kooperatives Betriebssystem, welches reaktive Unterstützung für die Synchronisation heterogener Komponenten ermöglicht durch das reaktive Online-Generieren eines Codes, übereinstimmend mit den Beschränkungen des derzeitigen Systemzustands. Heterogene Komponenten können zeitlich verteilt sein, so daß sie in mehreren zeitlichen Maßstäben arbeiten, und sie können räumlich verteilt sein, so daß sie an mehreren Stellen arbeiten. Das Verhalten lokaler Komponenten wird durch einen lokalen Agenten gesteuert, um lokal definierte Optimierungskriterien, global definierte Opti mierungskriterien, logische Randbedingungen des lokalen Verhaltens, lokale Randbedingungen der Komponentenentwicklung, globale Randbedingungen der Kontinuität und den lokalen und globalen Systemzustand berücksichtigen wie dieser in dem Hybridsystem-Zustand für den lokalen Agenten erfaßt wird. Die Entwicklung des globalen Systemverhaltens ergibt sich aus dem Steuerverhalten lokaler Agenten und der Entwicklung von Komponenten, deren Verhalten von lokalen Agenten gesteuert wird.
  • Die nächste Ebene der MAHCA ist die Anwendungsschicht, deren auf höherer Ebene angesiedelten logischen Schnittstellen von dem Agentennetz synchronisiert werden. Ein einzelner Agent innerhalb des Netzes oder eine Ansammlung von Mehrfachagenten läßt sich so konfigurieren, daß eine Synchronisation von einem oder mehreren Entwicklungsprozessen erfolgt, wobei die Logik auf hoher Ebene für andere Prozesse in der Anwendung oder in dem Satz von Anwendungen gesteuert wird.
  • Die nächste Ebene der MAHCA ist die Datenbankschicht, deren Eingänge und Ausgänge eigentlich von der Anwendungsschicht gesteuert werden, wobei allerdings individuelle Agenten so konfiguriert werden können, daß sie direkt die Arbeitsvorgänge der Datenbank steuern.
  • Die nächste Ebene der MAHCA ist die Netzwerksteuerungs- und -Planungsebene, die die Kommunikationsprotokolle zum Übertragen von Nachrichten über das logische Kommunikationsnetzwerk implementiert.
  • Die unterste Schicht der MAHCA ist die physische Netzwerkschicht. Diese Schicht enthält die Hardware der Sende- und Empfangsanlage und die Übertragungsmedien für die örtlichen Netzwerke und die großflächigen Netzwerke. Es ist dies auch die Schicht für Sensoren und Aktoren für Echtzeit-Steueranwendungen.
  • Die Folge von Schritten, die von einem Agenten ausgeführt wird, führt zur Generierung von Software, die mit den laufenden Spezifikationen und Parameterwerten übereinstimmt. Die Schrittfolge lautet:
    • 1. Neu-Formulieren des ursprünglichen Problems als eine Analyse von Variationen eines Problems bezüglich einer Trägermannigfaltigkeit von Systemzuständen. Diese Trägermannigfaltigkeit ist das kombinierte Simulationsmodell des Netzwerks und der Simulationsmodelle an den Knoten. Zustandskurven und ihre Entwicklung ergeben sich auf dieser Trägermannigfaltigkeit. Dieses Verfahren sucht Steuerfunktionen des Zustands des Systems für die globalen und die lokalen Probleme, die eine nicht-negative Kostenfunktion bezüglich der Zustandskurven minimieren, wobei diese Minimierung in perfekter Weise sämtliche geforderten Ziele des verteilten Echtzeitsteuersystems erfüllt.
    • 2. Ersetzen der Analyse des Abweichungsproblems durch ein konvexes Problem durch Konvex-Machen der Lagrange-Funktion L(x, u) als die zu minimierende Kostenfunktion bezüglich der Zustandsgeschwindigkeit u. Das konvex-gemachte Problem besitzt eine Lösung, bei der es sich um eine Meßwert-Lösung (in einigen Fällen auch als schwache Lösung oder L. C. Young-Lösung bezeichnet) des ursprünglichen Problems handelt. Diese Lösung ist eine prellende Steuerung, die in geeigneter Weise zwischen lokalen Minima des Originalproblems prellt, um einen Wert in der Nähe des globalen Minimums bezüglich des ursprünglichen Problems zu erreichen. Allerdings ist diese Lösung lediglich abstrakt und liefert lokale und globale Steuerfunktionen in der Zeit.
    • 3. Um statt dessen Zustands-Steuerfunktionen zu erhalten, wandle man das konvex-gemachte Problem um in eine passende Hamilton-Jacobi-Bellman-Gleichung. Eine „ε-Lösung" dieser Gleichung für die geeigneten Randbedingungen liefert zulässige infinitesimale Transformationen bezüglich des Zustandsraums, der die Generatoren für die Regelung repräsentiert.
    • 4. Die Steuerfunktionen, die bei einem gegebenen Zustand möglich sind, stellen einen Kegel in der Tangentenebene dar und bewegen sich mit der Tangentialebene. Das Folgen der optimalen Steuerung unter gleichzeitiger Bewegung in dem Zustand liefert die benötigten nahezu optimalen Steuerungen. Die Steuerungen werden algebraisch dargestellt durch Christoffel-Symbole einer affinen Verbindung. Die Christoffel-Symboldarstellung liefert die Echtzeitberechnung der globalen und lokalen Automaten oder Steuerprogramme, die benötigt werden, um das Kommunikationsnetz und die Approximationen an Knoten zu beherrschen, um das vorgeschriebene Ziel zu erreichen. Das globale Programm übernimmt die Verantwortung für den Nachrichtenaustausch zwischen den Knoten; die lokalen Programme übernehmen die Verantwortung für lokale Aktualisierungen in Echtzeit. Die erforderliche Dynamik des globalen Systems wird erreicht ohne zentrale Steuerung (globalen Schiedsrichter) des verteilten Systems dadurch, daß an jedem Knoten globale Kontinuitätsbedingungen erzwungen werden.
  • Der wichtigste Vorteil, den die MAHCA gegenüber auf Experimenten basierenden Architekturen, beispielsweise NASREM, erreicht, ist die beträchtliche Verringerung von Experimenten, die benötigt werden, um eine Verifizierung, Bewertung und Zulassung neuer Komponenten innerhalb einer Implementierungsarchitektur zu erreichen. Möglich wird dies durch die Online-Generierung von Automaten zur reaktiven Synchronisation verteilter Prozesse. Diese reaktive Synchronisation wird erreicht durch einen Nachweisprozeß, der die Einhaltung deklarierten Systemverhaltens garantiert. Diese Verhaltensweisen können lokale Erklärungen beinhalten, die zu Sicherheits- und Qualitätsanforderungen gehören, ebenso wie die Entwicklungs-Erklärungen, die zu Leistungs- und Genauigkeitsanforderungen gehören. MAHCA besitzt zahlreiche äußerst nützliche Merkmale, unter anderem:
    • 1. MAHCA unterstützt die Trennung komplexer Echtzeitsysteme in nominelle Hierarchie, indem untere Stufen der Hierarchie in kürzeren Zeitmaßstäben implementiert werden und höhere Stufen der Hierarchie mit langsameren Zeitmaßstäben implementiert werden, und sie unterstützt außerdem die Online-Erzeugung von Automaten, die auf Zwischen-Zeitmaßstäb reagieren, so daß im Endeffekt eine Kontinuum-Hierarchie unterstützt wird. Die Zeitmaßstäbe variieren nominell von mehreren Stunden der Systementwicklungs-Beobachtung mit dem langsamsten Zeitmaßstab bis einige Millisekunden der Systementwicklungs-Beobachtung mit der schnellsten Zeitskala. Darüber hinaus läßt sich die MAHCA so konfigurieren, daß sie als Reaktion Links (Verknüpfungen) zwischen Schichten innerhalb der nominellen Hierarchie erzeugt, so daß die zeitlichen Randbedingungen für seltene Ereignisse zu der Zeit erfüllt werden, zu der sie auftreten.
    • 2. MAHCA unterstützt eine weitere Trennung komplexer Echtzeitsysteme in feste heterarchische Teilbereiche in jeder Schicht innerhalb der Hierarchie, die Komponenten für eine feste Regelmaßnahme jeder Schicht entsprechen, abhängig von einem „Sense-Decide-Act"-Muster ähnlich der NASRAM-Sequenz. Jeder heterarchische Teilbereich wird mit einer festen Geschwindigkeit vorangetrieben, um den „Sense-Decide-Act"-Zyklen für die Ebene zu implementieren, die er steuert. Allerdings unterstützt MAHCA auch die Online-Erzeugung von Automaten, die in Zwischen-Zeitmaßstäben reagieren, so daß im Endeffekt eine Kontinuum-Heterarchie unterstützt wird. Beispielsweise besteht eine normale Konstruktionsaktivität darin, komplexe Prozesse aufzutrennen in Zwischenschritte, um die Folge von Schritten in einem Szenario von Aktivitäten anzuordnen, die dann mit oder ohne menschliches Zutun ausgeführt werden.
  • MAHCA unterstützt die Konfiguration der inkrementellen Änderung von Szenarios von Aktivitäten als logische Ereignisse, die in hierarchischer oder heterarchischer Weise angeordnet sind. Die Geschwindigkeit der Ausführung läßt sich in ein System einbeziehen, welches auf den Leistungsanforderungen seitens der Anwender basiert, oder sie kann experimentell anhand der physischen Anforderungen existierender Prozesse bestimmt werden. Jede Schicht hat Zugriff auf eine globale Kenntnisbasis, die den laufenden Zustand des Systems ebenso enthalten kann wie Randbedingungen, welche Entscheidungen betreffen, die für den nächsten Zyklus getroffen werden können.
    • 3. MAHCA unterstützt die Auftrennung von System-Verhaltensweisen in logische Hauptaktivitäten, die basierend auf der Aufteilung gemäß den System-Zeitmaßstäben durchgeführt werden. Dies unterstützt einen gut durchdachten Entwurf des Hinzufügens auf höherer Ebene angesiedelter logischer Funktionsweisen in Schichten beginnend bei der einfachsten bis hin zu der ausgeklügeltsten, wenn das komplexe System Schritt für Schritt entworfen, als Prototyp ausgebildet, zusammengefügt, getestet und in Betrieb genommen wird. Damit ist es möglich, MAHCA in einer flexibleren Implementierung einer auf Experimenten beruhenden Architektur zu konfigurieren. Allerdings unterstützt MAHCA außerdem eine mehr allgemeine Zusammenfügung von Komponenten basierend auf dem Definieren von Agenten-Verhalten, die dann online abhängig von vorbestimmten Relaxationskriterien modifiziert werden können.
  • Ähnlich wie im Zusammenhang mit der obigen Diskussion der NASREM-Architektur läßt sich MAHCA konfigurieren zu entweder strikt mimischem Betrieb für Allgemeinzweck-Echtzeit-(oder Nicht-Echtzeit-)Architekturen oder mit dem Ziel, die eingebaute Flexibilität zur Verfügung zu haben, um fixe Architekturen schrittweise zu verbessern. Sie kann mithin überlieferte Systeme innerhalb großer Systeme beinhalten und eine inkrementelle Expansion der Funktionsfähigkeit unterstützen. Allerdings besteht die wichtigste Verbesserung darin, daß die MAHCA gegenüber existierenden Architekturen für Echtzeitsysteme die Fähigkeit besitzt, einen hochgradig betriebssicheren und garantierten Betrieb zu weniger Kosten aufgrund der Online-Erzeugung nahezu optimaler Lösungen zu erreichen, die nachweisbar korrekt sind gemäß den Hybridsystem-Modellen sowie laufender Systemeingaben.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1a zeigt die gesamte geschichtete Architektur, welche die Struktur von Komponenten auf höheren Ebenen und von Komponenten auf niedrigeren Ebenen einer Mehrfachagenten aufweisenden Hybrid-Steuerarchitektur darstellt.
  • 1b zeigt einen individuellen Agenten in dem logischen Agentennetz, welches einen Plan von infinitesimalen Aktionen ausführt, um den zu dem Agenten gehörigen Ablauf zu ändern.
  • 2 zeigt die Komponenten eines einzelnen Agenten, wodurch die Struktur der Software- und Hardwarekomponenten mit einer reaktiven Steuerung für einen Knoten in dem logischen Agentennetz dargestellt wird.
  • 3 zeigt ein Agentennetz mit einer Ansammlung von Agenten.
  • 4 zeigt die Bewertung oder Evaluierung eines Agentennetzes mit sowohl permanenten als auch Zeitagenten.
  • 5a zeigt eine Kenntnisbasis, die ausgebildet ist als eine Menge (ein Satz) von gleichungsbezogenen Klauseln, die in einer Hierarchie von Beziehungen angeordnet sind.
  • 5b zeigt ein Basiselement einer Einzelagenten-Kenntnisbasis als eine gleichungsbezogene Klausel.
  • 5c zeigt eine Fortschreibung eines Softwareprozesses.
  • 6a zeigt Aktionen, die von individuellen Agenten ausgeführt werden, um verteilte Echtzeitsysteme zu synchronisieren.
  • 6b zeigt eine Träger-Mannigfaltigkeit als mathematisches Gebilde, bei dem ein vereinheitlichtes Modell des Systemzustands konstruiert ist, und in welchem die Invarianten Transformationen, die für die Systemlösung notwendig sind, ausgeführt werden.
  • 7 zeigt das grundlegende Betriebsverfahren für die Mehrfachagenten-Hybrid-Steuerarchitektur als Ergebnis des nächsten Automaten bei gegebener derzeitiger Menge von Systemvorgaben oder -zielen, der laufenden Menge von logischen und Entwicklungs-Randbedingungen bezüglich des Systemverhaltens, der laufenden Menge von Eingaben seitens des oder der Benutzer, und der laufenden Menge von Sensorwerten.
  • 8 zeigt einen Prozeß zum Erreichen einer nahezu optimalen Lösung eines Hybrid-System-Problems i durch Prellen zwischen einzelnen Aktionen.
  • 9 zeigt eine Konzeptstruktur eines sicheren Automaten zum Beschreiben von Aktionsfolgen, die für den durch einen Rückschließer aufgebauten Automaten möglich sind.
  • 10 zeigt ein Dipol-Netz-Pendant, welches ein brauchbares Ergebnis der Formulierung der Mehrfachagenten-Hybrid-Steuerarchitektur beschreibt.
  • 11 zeigt ein Beispiel für die Anwendung der Mehrfachagenten-Hybrid-Steuerarchitektur für das Planen, die Terminierung und die Steuerung diskreter Fertigungsanlagen.
  • 12 zeigt ein Beispiel für ein Zweiagenten-Mehragentennetz für diskrete Fertigungsanwendungen.
  • 13 zeigt ein Beispiel für ein Fünfagenten-Mehragentennetz für diskrete Fertigungsanwendungen.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • 1a zeigt die gesamte geschichtete Architektur 10 eines Netzes oder der Ansammlung von Netzen, so zum Beispiel der National Information Infrastructure, was die Struktur von Komponenten höherer Schichten oder Ebenen, normalerweise in Software implementiert, und Komponenten unterer Ebenen, normalerweise in Hardware implementiert, als Verbindung der MAHCA darstellt. Die unterste Schicht der Architektur wird stets in Form von Hardware implementiert. MAHCA fungiert als Echtzeit-„Middleware", um verteilte überlieferte oder neue Anwendungen zu synchronisieren.
  • MAHCA ist eine Ansammlung von Mehrfachagenten in einem logischen Agentennetz 11, welches Systemverhalten synchronisiert, die durch eine herkömmliche mehrschichtige Struktur 12 von verteilten Anwendungen implementiert sind, so zum Beispiel Client-Server-Anwendungen für Multimedia-Prozesse, die vorzugsweise eine Anwendungsschicht, eine Multimedia-Datenbanksystemschicht, eine Netzwerksteuerung und eine Terminiererschicht sowie eine physische Kommunikationsnetzschicht enthalten. Diese flexible Struktur bildet eine offene Architektur für die Synchronisation von heterogenen verteilten Prozessen. Die mehrschichtige Struktur 12 von verteilten Anwendungen ist ein geeignetes Modell für zahlreiche verteilte Prozeßanwendungen wie beispielsweise Fertigung, Telekommunikation, Länder- und Staatsregierungen, Militärbefehlsstruktur sowie Steuerungs-, Banking- und medizinische Prozesse. Die Ansammlung von Mehrfachagenten 11 implementiert das Hybridsystem-Steuermuster, welches erlaubt, komplexe verteilte Echtzeitprozesse in geeigneter Weise zu steuern durch die Synchronisation der Aktivitäten von Systemkomponenten.
  • Das Rechenmodell, das hier sogenannte Equational Reactive Inferencing, also das ausgleichende reaktive Rückschließen, implementiert durch die MAHCA, sorgt für eine Online-Implementierung eines neuen Ablaufmusters für rechnergestützte Steuerung von Hybridsystemen, die zunächst nachweist, daß für das laufende Steuerungsproblem eine Lösung existiert und anschließend Steuerautomaten aus den Ergebnissen eines erfolgreichen Nachweisvorgangs generiert oder in der Weise reagiert, daß zunächst Ausfallarten eines nicht erfolgreichen Nachweisprozesses gemäß den zugelassenen Relaxationskriterien repariert werden.
  • Dieser Nachweisprozeß unterstützt zwei Freiheitsgrade: (1) ein logisches Freiheitsmaß, welches die Offline-Einstellung von hochrangiger Semantik des Problemstatements durch den Entwickler oder Anwender ebenso unterstützt wie die Online-Einstellung der logischen Randbedingungen durch strikt syntaktische Transformationen; und (2) ein Entwicklungs-Freiheitsmaß, welches die explizite Deklaration von Entwicklungsbeziehungen unterstützt, die sich zur Erzielung präziser Ergebnisse um fixe Betriebspunkt herum eignet. Gemäß einer bevorzugten Ausführungsform basiert die offene Architektur auf Nachrichtenaustausch zwischen Agenten in einem Mehragentennetz und der ausgleichenden reaktiven Schlußfolgerung (Equational Reactive Inferencing).
  • MAHCA ist implementiert als eine Hierarchie von Software- und Hardwarekomponenten 12, deren Topologie sich im Verlauf der Zeit ändert durch Hinzufügung neuer Komponenten und Beseitigung alter Komponenten. Das Hinzufügen und Beseitigen von Komponenten wird synchronisiert durch die Erzeugung und Entfernung von Agenten in dem logischen Agentennetz. Die Architektur unterstützt den flexiblen Aufbau von Schablonen allgemeiner Domänenmodelle und Referenz-Architekturen für Anwendungs-Produktlinien und die Spezialisierung dieser Domänenmodelle sowie Referenz-Architekturen für spezifische Domänenmodelle und Anwendungsarchitektwen für spezielle Anwendungen.
  • Das Rechenmodell erleichtert das Verifizieren, Bewerten und Freigeben von Zusammensetzungen von Systemkomponenten durch Reduzieren der Anzahl von Experimenten, die notwendig sind, um bezüglich der Systemleistung ein Vertrauensmaß zu erreichen. Diese Verringerung von Experimenten wird ermöglicht durch eine nachweisbar korrekte Erzeugung von Automaten zum Integrieren von Komponentenoperationen in der Weise, daß solche Experimente, die bereits durchgeführt wurden, um Vertrauen in einzelne Komponenten zu erlangen, für das zusammengesetzte System nicht noch einmal wiederholt werden müssen.
  • Ein Modell des in 1a gezeigten logischen Agentennetzes 11 lautet: Ai mit i = 1, ..., N(t) bezeichnet die zur laufenden Zeit t aktiven Agenten. Innerhalb des Modells nimmt t Werte in Echtzeit an. Zu jeder Zeit t ist der Status jedes Agenten innerhalb des Netzes gegeben durch einen Punkt in einer lokal differenzierbaren Mannigfaltigkeit M. Vorzugsweise besteht das Ziel des Netzes darin, eine nahezu optimale Steuerung eines Satzes von verteilten interaktiven Multimedia-Prozessen zu schaffen, wobei das Grundziel des Netzes darin besteht, nicht erfüllte Anforderungen für Multimediadienste zu minimieren. Die Anforderung an einen aktiven Agenten Ai ist durch eine stetige Funktion Di gegeben: Di : M × T → R+ (1)wobei T die Echtzeit (Zeit-Raum) und R+ die positive Echtzeit ist. Man betrachte ein logisches Agentennetz 11, welches konfiguriert ist zum Erzielen einer Synchronisation von Multimediaprozessen, die für verteilte interaktive Simulation verwendet werden. In diesem Fall wird ein Punkt p innerhalb der Mannigfaltigkeit M dargestellt durch eine Datenstruktur in folgender Form: p(id, proc(proc_data), sim(sim_data), in(synch_data), mp(mult_data)) (2)
  • Hier ist id ein Identifikator, der Werte in einer endlichen Menge ID annimmt, proc() ist eine Beziehung, welche den Status von verteilten interaktiven Simulationsprozessen (DIS) kennzeichnet, welcher abhängt von einer Liste von Parametern mit der Bezeichnung proc_data, deren Parameter die Last- und Zeitcharakteristika des betreffenden Prozesses definieren (man beachte, daß jeder existierende Simulationsprozeß normalerweise verschiedene Datenstrukturen besitzt), und sim() eine Relation ist, die Attribute des dargestellten Multimediaprozesses umfaßt, was abhängt von einer Liste von Parameter mit der Bezeichnung sim_data, die Randbedingungen für diesen Punkt des Prozesses charakterisieren, der auf einer Abstraktionsebene dargestellt wird, die mit dem logischen Agentennetz 11 kompatibel ist.
  • Auch in dem Ausdruck (2) bedeutet in() eine Relation, die Synchronisationsinformation des logischen Agentennetzes 11 in bezug auf die in 1a gezeigte hierarchische Organisation beinhaltet. Insbesondere charakterisiert der Ausdruck das Protokoll des Betriebspunkts. Dies beinhaltet Information wie die Prioritätsebene, Anschlußfähigkeit und Zeitkonstanten. Schließlich enthält im Ausdruck (2) die Relation mp() Vielfachheitsinformation, das heißt, sie repräsentiert den Pegel der Netzwerkeinsatzfähigkeit an diesem Punkt. Der dazugehörige Parameter list mult_data setzt sich zusammen aus statistischen Parametern, die die Belastung des Netzwerks wiedergeben.
  • Die Parameterlisten in der Datenstruktur der Punkte der Mannigfaltigkeit M können zusammengesetzt sein aus ganzen Zahlen (so zum Beispiel der Anzahl von Benutzern), realen Zahlen (Beispiel Verkehrsbelastung) und diskreten Werten (so zum Beispiel Prozeß-Identifikatoren oder Schalter). Sie kennzeichnen den Status des Netzwerks und der aktiven Prozesse. Das Berechnen der Entwicklung dieser Parameter im Verlauf der Zeit ist eine zentrale Aufgabe für die MAHCA.
  • Die Dynamik des logischen Agentennetzes 11 wird charakterisiert durch gewisse Kurven auf der Mannigfaltigkeit M. Diese Kurven kennzeichnen den Informationsfluß durch das Netzwerk und dessen Status. Ein Generator für die Anforderungsfunktionen ist folgendermaßen definiert: {Di(p, t)|i ∈ I(t), p ∈ M} (3)wobei I(t) die Menge aktiver Agenten zur Zeit t und der von den Agenten in der DSI-Steuerung ausgeführten Aktionen ist. Diese Aktionen sind implementiert als infinitesimale Transformationen, die in der Mannigfaltigkeit M definiert sind. Die allgemeine Struktur der Funktionen der Gleichung (3) für einen aktiven Agenten i zur Zeit t ist durch folgende Gleichung (4) gegeben: Di(p, t) = Fi(Ci u, D, αi)(p, t) (4)wobei Fi eine glatte Funktion, D der Vektor der Anforderungsfunktionen, Ci u die nicht erfüllte Anforderungsfunktion und αi die von dem i-ten Agenten ausgegebene Befehlsaktion ist.
  • Im allgemeinen ist eine Mannigfaltigkeit M ein topologischer Raum (mit der Topologie θ), zusammengesetzt aus drei Einheiten:
    • 1. Eine Menge von Punkten in der Form der Gleichung (2), homeomorph bezüglich Rk mit k als ganzer Zahl.
    • 2. Eine zählbare Familie offener Untermengen der Mannigfaltigkeit M, {Uj} derart, daß U j Uj = M
    • 3. Eine Familie glatter Funktionen {φjj : Uj → Vj}, wobei für jedes j, Vj eine offene Menge in Rk ist. Die Mengen Uj werden in der Literatur als Koordinatennachbarn oder Charts bezeichnet. Für jede Chart wird die entsprechende Funktion φi als Koordinaten-Chart bezeichnet. „Glatte" Funktionen besitzen beliebig viele stetige Ableitungen.
    • 4. Die Koordinaten-Chart-Funktionen erfüllen die folgende zusätzliche Bedingung: Wenn beliebige Charts Uj, Ui gegeben sind mit Uj ∩ Ui ≠ ∅, so ist die Funktion φi o φj –1: φj(Uj ∩ Ui)→φi(Uj ∩ Ui) glatt.
  • Im folgenden wird die allgemeine Definition der Mannigfaltigkeit M angepaßt an eine Steuersystemanwendung. Betrachtet man die zu der Mannigfaltigkeit M gehörige Topologie θ, so sieht man, daß die Punkte von M eine bestimmte Struktur besitzen (siehe den Ausdruck (2)), wobei die Struktur gekennzeichnet ist durch die Intervalle von Werten der Parameter innerhalb der Liste proc_data, sim_data, synch_data und mult_data. Die Anzahl dieser Parameter entspricht k. „Kenntnis" von diesen Parametern wird dadurch in das Modell eingebracht, daß eine Topologie Ω auf Rk definiert wird.
  • Die offenen Mengen in Ω sind aufgebaut aus den Klauseln, die bekannte Tatsachen über die Parameter kodieren. Die Topologie θ der Mannigfaltigkeit M ist definiert in Termen von Ω wie folgt: für jede offene Menge W in Ω mit W ⊆ Vj ⊆ Rk, muß die Menge φj –1(W) in θ enthalten sein. Diese Mengen bilden eine Basis für θ derart, daß U ⊂ M, wenn und nur dann, wenn für jedes p ∈ U eine Nachbarschaft dieser Form in U enthalten ist. Das heißt, es gibt W ⊆ Uj derart, daß p ∈ φj –1(W) ⊂ U, mit φj : Uj → Vj, eine Chart, die p enthält.
  • Um die durch die intelligente DIS-Steuerung der MAHCA angewiesenen Aktionen zu kennzeichnen, müssen Ableitungen der Mannigfaltigkeit M eingeführt werden. Wenn Fp der Raum glatter Funktionen f mit reellen Werten, definiert in der Nähe eines Punkts p innerhalb der Mannigfaltigkeit M ist, und wenn f und g Funktionen in Fp sind, so ist eine Ableitung v von Fp eine Abbildung v : Fp → Fp,welche folgende zwei Eigenschaften erfüllt: v(f + g)(p) = (v(f) + v(g))(p)(Linearität) v(f·g)(p) = (v(f)·g + f·v(g))(p)(Leibniz'sche Regel)
  • Ableitungen definieren Vektorfelder auf der Mannigfaltigkeit M und eine Klasse von zugehörigen Integralkurven. Angenommen, C sei eine glatte Kurve auf der Mannigfaltigkeit M, parametrisiert durch ϕ : I → M mit I als Teilintervall von R. In örtlichen Koordinaten p = (p1, ..., pk) ist C gegeben durch k glatte Funktionen ϕ(t) = (ϕ1(t), ..., ϕk(t)), deren Ableitung nach t mit ϕ(t) = (ϕ1(t), ..., ϕk(t)) bezeichnet wird. Eine Äquivalenz-Relation auf Kurven in M wird eingeführt als die Basis der Definition von Tangentenvektoren an einem Punkt innerhalb der Mannigfaltigkeit M. Es gelte p ∈ M. Zwei Kurven ϕ1(t) und ϕ2(t), die durch p laufen, werden dann als Äquivalent bei p bezeichnet (Schreibweise: ϕ12) bezeichnet, wenn sie die folgenden beiden Bedingungen erfüllen:
    Für gewisse t, τ in I ⊂ R
    ϕ1(t) = ϕ2(τ) = p und
    ϕ1(t) = ϕ2(τ)
  • Ersichtlich definiert ~ eine Äquivalenz-Relation auf der Klasse von Kurven in der Mannigfaltigkeit M, die durch p gehen. Es sei [ϕ] die ϕ enthaltende Äquivalenzklasse. Ein Tangentenvektor an [ϕ] ist eine Ableitung v|p, definiert in den örtlichen Koordinaten (p1, ..., pk) durch:
    Es sei f: M → R eine glatte Funktion, dann gilt
  • Figure 00230001
  • Die Menge von Tangentenvektoren, die zu sämtlichen der Äquivalenzklassen bei p gehört, definiert einen Vektorraum, der als Tangentenvektorraum an p mit der Bezeichnung TMp bezeichnet wird. Die Menge von Tangentenräumen in Verbindung mit der Mannigfaltigkeit M läßt sich unter Bildung einer Mannigfaltigkeit „verschweißen", die das Tangentenbündel genannt wird, bezeichnet mit TM:
  • Figure 00240001
  • Es ist wichtig, explizit zu spezifizieren, wie diese Verschweißung implementiert wird. Nach Einführen des Konzepts eines Vektorfelds und Diskutieren von dessen Relevanz innerhalb des Modells, wird die Verschweißungs- oder Verklebe-Implementierung spezifiziert.
  • In Vektorfeld auf der Mannigfaltigkeit M ist eine Zuordnung einer Ableitung v zu jedem Punkt von M : v|p ∈ TMp mit v|p, das von Punkt zu Punkt glatt schwankt. Innerhalb dieses Modells werden die Vektorfelder in lokalen Koordinaten ausgedrückt. Obschon der Tangentenvektor in Termen der gewählten örtlichen Koordinaten ausgedrückt wird, ist. diese Definition unabhängig von den gewählten lokalen Koordinaten. Wenn (p1, ..., pk) lokale Koordinaten sind, dann gilt
  • Figure 00240002
  • Ein Vergleich der Gleichungen (5) und (6) ergibt, daß, wenn p = ϕ(t) eine parametrisierte Kurve in der Mannigfaltigkeit M ist, deren Tangentenvektor an irgendeinem Punkt übereinstimmt mit dem Wert v im selben Punkt, dann gilt: ϕ(t) = v|ϕ(t) für sämtliche t. In den lokalen Koordinaten p = (ϕ1(t), ..., ϕk(t)) muß es eine Lösung des autonomen Systems der gewöhnlichen Differentialgleichungen geben:
  • Figure 00250001
  • In der verteilen interaktiven Multimedia-Simulationsanwendung wird jeder von der DIS-Steuerung ausgegebene Befehl implementiert als ein Vektorfeld in einer Mannigfaltigkeit M. Jeder Agent in der Steuerung konstruiert sein Befehlsfeld als eine Kombination aus „primitiven", vorab definierten Vektorfeldern. Da die gewählte Topologie für die Mannigfaltigkeit M, das heißt die Topologie θ, nicht metrisierbar ist, kann bei einer gegebenen Anfangsbedingung eine einheitliche Lösung der Gleichung (7) im klassischen Sinn nicht garantiert werden. Allerdings besitzen die Lösungen in der Klasse von stetigen Trajektorien in M, bezeichnet als relaxierte Kurven. Innerhalb dieser Klasse sind die Lösungen der Gleichung (7) eindeutig. Die Grundmerkmale von relaxierten Kurven in ihrer Anwendung auf die Prozeßsteuerformulierung und -implementierung werden unten erläutert. Um einige Eigenschaften von relaxierten Kurven in ihrer Beziehung zu dem DIS-Prozessormodell und der Steuerung zu beschreiben, muß das Konzept der Ströme (Flow) in M eingeführt werden.
  • Wenn v ein Vektorfeld ist, so wird jede parametrisierte Kurve ϕ(t), de durch einen Punkt p in der Mannigfaltigkeit M läuft, eine Integralkurve genannt, die zu v gehört, wenn p = ϕ(t) und in lokalen Koordinaten v|p die Gleichung (5) erfüllt. Eine zu einem Vektorfeld v gehörige Integralkurve, bezeichnet mit Ψ(t, p) wird als durch v generierter „Flow" bezeichnet, wenn sie folgende Eigenschaften aufweist: Ψ(t, Ψ(τ, p9)) = Ψ(t + τ, p)(Halbgruppen-Eigenschaft) Ψ(0, p) = p;und (Anfangsbedingung)
  • Figure 00250002
  • Um diese Konzepte an die MAHCA anzupassen, sei angenommen, daß ein Agent i in dem Kommunikationsnetz aktiv sei. Wenn Δ > 0 die Breite des laufenden Entscheidungs intervalls [t, t + Δ) ist, und Ui(p, t), p ∈ M die nicht erfüllte Anforderung zu Beginn des Intervalls ist, so besitzt der Agent i eine Menge primitiver Aktionen: [vi,j|j = 1, ..., ni, vi,j|p ∈ TMp, für jedes p ∈ M] (9)
  • Der Agent i terminiert während des Intervalls [t, t + Δ) eine oder mehrere dieser Aktionen und bestimmt den Anteil oder Bruchteil αij(p, t) von Δ, die die Aktion vij als eine Funktion der laufenden Dienstanforderung Srri(t, p) und die Anforderung der aktiven Agenten in dem logischen Agentennetz D(p, t) = [D1(p, t), ..., DN(t)(p, t)] ausführen muß.
  • 1b zeigt einen Terminplan von Aktionen, die drei Primitive umfassen. 1b zeigt einen individuellen Agenten in dem logischen Agentennetz 11 nach 1a, der einen Ablaufplan von infinitesimalen Aktionen ausführt, die den zu dem Agenten gehörigen Flow ändern. Jeder individuelle Agent ist aufgebaut, um eine in Equational Logic Language geschriebene deklarative Kenntnis (Knowledge) derart anzuwenden, daß das gesteuerte System einer stetigen Trajektorie folgt (dem Flow Ψi 13, der zu Aktionen des Agenten i gehört), die einen nahezu optimalen Weg bildet, verglichen mit dem aktuellen optimalen Weg zur Erfüllung der Systemziele. Das Format der Equational Logic Language ist lediglich eine eingeschränkte Version des allgemeinen Horn-Klauselformats.
  • Der Flow Ψi 13, der zu den Aktionen eines lokalen Agenten i gehört, ändert sich in einem Intervall Δ 18 zu Zeitpunkten nj abhängig von den Aktionen, die zu den Zeiten tnj erfolgen und ein Zeitintervall Δirj dauern. Betrachtet man das glatte Liniensegment 17 als den ε-optimalen Weg für den lokalen Agenten i, dann halten die von der MAHCA generierten Aktionen den Zustand des Systems auf einer nahezu optimalen Trajektorie innerhalb des Zeitintervalls. Eine globale Synchronisation über längere Zeitintervalle wird erreicht durch die Online-Generierung von Automaten, die auf Abweichungen von dem optimalen Zustand reagieren, um geeignete Aktionen zu unternehmen, durch die der Zustand des Systems auf den nahezu optimalen Pfad zurückgebracht wird. Dieser Online-Erzeugungsprozeß geht einher mit der Berechnung einer affinen Verbindung einer Finsler-Mannigfaltigkeit, die zu dem System gehört. Die affine Verbindung ermöglicht den parallelen Transport der globalen Endzielbedingung zurück zu dem laufenden Zustand entlang dem optimalen Weg und die Erzeugung von laufenden Aktionen, um in nahezu optimaler Weise den Systemzustand aus dem laufenden Zustand des Systems in den Endzielzustand zu bewegen.
  • Der Flow Ψi 13, der zu dem Ablauf nach 1b gehört, läßt sich aus den zu jeder der Aktionen gehörigen Flows berechnen: Ψvi,n1(τ, p) wenn t ≤ τ < t + Δi,ni Ψi(τ, p) = Ψvi,n2(τ, Ψvi,n1(t + Δi,n1, p)) wenn t + Δi,n1 < τ < t + Δi,n1 + Δi,n2 Ψvi,n3(τ, Ψvi,n2(t + Δi,n1 + Δi,n2, Ψvi,ni(t + Δi,n1, p))) wenn t + Δi,n1 + Δi,n2 ≤ τ < t + Δi,n1 + Δi,n2 + Δi,n3 mit Δi,n1 + Δi,n2 + Δi,n3 20 = Δ 18 und αi,n1 + αi,n2 + αi,n3 19 = 1 (10)
  • Der durch die Gleichung (10) gegebene Flow Ψi 13 charakterisiert die Entwicklung des Prozesses aus der Sicht des Agenten i. Das zu dem Flow Ψi 13 gehörige Vektorfeld vi|p 16 erhält man durch Differenzieren und die Flow-Erzeugungsidentität in der Gleichung (8). Dieses Vektorfeld vi|p 16 ist in Anwendung bei p 14 proportional zu vi|p 16 = [vi,ni, [vi,n2, vi,n3]] (11)wobei [.,.] die Lie-Klammer ist. Die Lie-Klammer ist folgendermaßen definiert: wenn v, w Ableitungen auf der Mannigfaltigkeit M sind, und wenn f eine beliebige glatte Funktion mit dem reellen Wert f M → R ist, so ist die Lie-Klammer von v, w die Ableitung, welche definiert ist durch [v, w](f) = v(w(f)) – w(v(f)). Damit ist die zusammengesetzte Aktion vi|p, die durch den i-ten Agenten zum Steuern des Prozesses generiert wird, eine Zusammensetzung in der Form der Gleichung (11). Darüber hinaus läßt sich aus einer Version des Ratternlemmas und der Dualität dieser Aktion ausdrücken als eine Linearkombination von für den Agenten verfügbaren primitiven Aktionen:
    Figure 00280001
    wobei die Koeffzienten γj i bestimmt werden durch den Zeitanteil αij(p, t) 19, den jede primitive Aktion vij 16 von dem Agenten i benutzt wird.
  • Der Effekt des durch die zusammengesetzte Aktion vi|p definierten Felds für jede glatte Funktion, wird berechnet, indem die rechte Seite der Gleichung (10) in eine Taylor-Reihe entwickelt wird. Insbesondere ist für den Fall der MAHCA in der Verwendung zum Steuern einer verteilten interaktiven Multimedia-Simulationsanwendung die Entwicklung der nicht erfüllten Anforderung Ci u aufgrund des Flows Ψi 13 über dem Intervall [t, t + Δ) beginnend am Punkt p 14 gegeben durch: Ci u(t + Δ, p'') = Ci u(t, Ψi(t + Δ, p)) (13)
  • Das Entwickeln der rechten Seite der Gleichung (13) in eine Taylor-Reihe um (p, t) liefert.
    Figure 00280002
    mit (vi|p(•))j = vi|p((vi|p)j-1(•))
    und (vi|p)o(•) = Identitätsoperator
  • Weil die Topologie der Mannigfaltigkeit M durch logische Klauseln generiert wird, besitzt die Reihe auf der rechten Seite der Gleichung (14) nur endlich viele von Null verschiedene Terme. Intuitiv ist dies deshalb so, weil bei der Berechnung der Potenz der Ableitungen die MAHCA lediglich unterscheiden muß zwischen unterschiedlichen Nachbarpunkten. Bei der Formulierung der Topologie θ der Mannigfaltigkeit M kann dies nur durch die Klausel-Information eingeführt werden. Da jede Kenntnisbasis eines Agenten nur endlich viele Klauseln besitzt, gibt es einen Term in der Erweiterung der Reihe, in welchem die Potenz der Ableitung gegen Null geht. Dies ist deshalb wichtig, weil es ermöglicht, die Reihe auf der rechten Seite der Gleichung (14) in effektiver Weise durch einen örtlichen endlichen Automaten zu generieren. Der Aufbau dieses Automaten wird später erweitert. Man beachte, daß bei einer gegebenen Menge primitiver Aktionen, die für jeden Agenten zur Verfügung stehen, die zusammengesetzte Aktion vi|p durch den Vektor der Bruchteilfunktionen αi bestimmt wird.
  • Nun läßt sich die spezifische Natur des im Ausdruck (4) formulierten Modells niederschreiben. Zur Zeit t und am Punkt p ∈ M ist die nicht erfüllte Anforderungsfunktion des Agenten i folgendermaßen gegeben: Ci u(p, t) = Ci u(p, t') + Sri(p, tk ) + ΣQi,k(p, t')·Dk(p, t1) (15)wobei t' der Endpunkt des vorhergehenden Aktualisierungsintervalls ist, Sri die Dienstanforderungsfunktion für den Agenten i ist und Qi,k ein Multiplikator ist, der bestimmt, wie viel von dem laufenden Bedarf des Agenten k dem Agenten i zugeordnet ist. Diese Zuordnung bestimmt sich aus der Charakteristik des Prozesses, den beide Agenten steuern, außerdem aus der Prozeßbeschreibung, die in der Kenntnisbasis des Agenten kodiert ist. Die aktuelle Dienstanforderung von dem Agenten k an den Agenten i entspricht folglich dem Term Qi,k·Dk(p, t'). Die an den Agenten i von dem Agenten k gesendete Information ist die Anforderung Dk am Ende des vorhergehenden Intervalls. Schließlich trägt der Punkt p ∈ M den laufenden Status des von den Agenten in der Gleichung (15) gesteuerten Prozesses; der Agent k steuert den Prozeß, falls Qi.k ≠ 0.
  • Das Equational Reactive Inferencing, also das ausgleichende reaktive Schlußfolgern, des MAHCA-Rechenmodells wird in jedem Agenten implementiert durch eine Menge von Standardkomponenten, die in 2 gezeigt sind. Die MAHCA ist eine Ansammlung von Agenten; 2 zeigt die Komponenten eines einzelnen Agenten. Ein einzelner Agent 20 besteht aus sechs Komponenten: einem Kenntnisbasis-Erbauer 22 (der manuelle Eingabe von Benutzern unterstützt), einen Planer 24, einen Rückschließer (Schlußfolge rer) 26, eine Kenntnisbasis 28, einen Adapter 30, einen Kenntnisdekodierer 32 (der die automatische Eingabe von anderen Agenten unterstützt). Das Rechenmodell verwendet Punkte in einer Träger-Mannigfaltigeit, um den laufenden Systemzustand einzufangen, und es erreicht nahezu optimale Ergebnisse durch Prellen (Rattern) zwischen Steuerungen im Verlauf der Systemzustand-Entwicklung. Die benötigten, nahezu optimalen Steuervorgänge werden algebraisch dargestellt durch Christoffel-Symbole in einer affinen Verbindung.
  • Der Kenntnisbasis-Erbauer 22 ist ein Hilfsmittel, welches eine Blockdiagrammdarstellung von Systemdeklarationen verwendet und die Randbedingungen in das Format der Equational Logic Language bringt. Der Planer 24 generiert ein Statement, welches für das angestrebte Verhalten des Systems steht, in Form eines existentiell quantifizierten Logikausdrucks, hier als das Verhaltens-Statement bezeichnet. Der Rückschließer 26 bestimmt, ob dieses Statement ein derzeit in der Kenntnisbasis 28 aktives Theorem ist. Die laufende Theorie ist die Menge aktiver Klauseln in der Kenntnisbasis mit deren laufenden Umschreibungen. Wenn das Verhaltens-Statement logisch aus dem laufenden Status der Kenntnisbasis 28 folgt, so generiert der Rückschließer 26 als Nebeneffekt des Beweises des Zutreffens dieses Verhaltens-Statements den laufenden Steueraktionszeitplan. Die Kenntnisbasis 28 speichert die Operationsanforderungen oder die von dem Agenten gesteuerten Prozesse. Sie kodiert außerdem System-Randbedingungen, Zwischenagenten-Protokolle sowie Randbedingungen, Sensordaten, Betriebs- und Logikprinzipien sowie eine Menge primitiver Folgerungs-Operationen, die in der Domäne von Gleichungstermen definiert sind.
  • Wenn das Verhaltens-Statement sich nicht logisch aus dem laufenden Status der Kenntnisbasis 28 ergibt, das heißt, wenn das angestrebte Verhalten nicht realisierbar ist, übermittelt der Rückschließer 26 die fehlerhaften Terme an den Adapter 30 zwecks Austausch oder Modifizierung. Schließlich übersetzt der Verhaltensdekodierer 32 die Daten von anderen Agenten und baut sie in die Kenntnisbasis 28 des Agenten ein.
  • Nunmehr auf 3 bezugnehmend, verwenden die bevorzugten Ausführungsformen eine Menge individueller Agenten, wie sie in 2 definiert sind, um ein Netzwerk aus kooperierenden Steueragenten zu bauen. Das Netzwerk läßt sich als Hierarchie anordnen, allgemeiner ist es jedoch als gerichteter Graph von Beziehungen zwischen Agenten ausgebildet. Das derzeitige Netz von kooperierenden Steueragenten enthält deklarative Steueragenten 34, Grenzsteueragenten 33 und Kommunikationswege 35. Ein Agent läßt sich als Grenzsteueragent 33 konfigurieren, der eine Schnittstelle mit Benutzern darstellt oder mit anderen Hauptkomponenten innerhalb einer komplexen Architektur, oder ein einzelner Agent läßt sich als deklarativer Steueragent 34 konfigurieren, der mit Grenzsteueragenten 33 und anderen deklarativen Steueragenten innerhalb der gesteuerten Domäne von Komponenten interagiert. Das logische Netz von Agenten übermittelt Nachrichten über eingerichtete Kommunikationswege 35.
  • 4 zeigt eine Entwicklung eines Netzwerks von Agenten mit sowohl permanenten Agenten als auch Zeitagenten (Agenten mit begrenzter Lebensdauer). Das Netzwerk kann sich über die Zeit t bist + Δ entwickeln durch die Aktivierung neuer Agenten und durch die Deaktivierung alter Agenten. Jeder individuelle Agent unternimmt lokale Aktionen nach Maßgabe globaler und lokaler Randbedingungen, lokaler Sensoreingaben und Eingaben von angeschlossenen Agenten. Ein Netz aus kooperierenden Steueragenten implementiert lokale Steueraktionen zum Errichten einer Synchronisierung globaler Ziele. Lokale Agenten implementieren lokale Optimalitätskriterien, die von gleichen Optimalitätsstrategien (Min-Max, Team, Pareto, Stakelberg oder Nash) oder von verschiedenen Optimalitätsstrategien Gebrauch machen können, allerdings sämtlich mit globalen Optimalitätskriterien sowie globalen Erhaltungsgesetzen (Ausgleichs-Randbedingungen) übereinstimmen müssen. Synchronizität wird erreicht und bewahrt durch die Verwendung individueller Agenten-Reaktionsfähigkeit zur Erhaltung der Phasen-Kohärenz für Werte gemeinsam benutzter Datenelemente, die globale Anwendung finden (das heißt, Agenten reagieren zur Erreichung von Übereinstimmung basierend auf dem Umstand, daß jeder Agent globale Erhaltungsgesetze und globale Kriterien erfüllt).
  • Das logische Agentennetz besteht aus permanenten Agenten, die andauernde Aufgaben erfüllen, außerdem aus Zeitagenten, die vorübergehende Aufgaben erfüllen, verbunden durch aktive Links 48. Die Netzwerkentwicklung besteht darin, neue Agenten 44 hervorzubringen und alte Agenten 42 zu deaktivieren und Links 46 zu deaktivieren, wie dies erforderlich ist, um die passenden Aktionen zu unternehmen, damit der mit dem laufenden Systemzustand und den laufenden Agenten-Aktionen in Verbindung stehende Flow einem nahezu optimalen Weg folgt. Zwei Ergebnisse dieses Merkmals der MAHCA sind: (1) Unterstützung des allmählichen Aufbaus und Verbesserung großer Systeme; und (2) Unterstützung der Implementierung einer Kontinuum-Hierarchie für Echtzeitsysteme, deren Konstruktionsentwurf die Aufteilung von Systemfunktionen in eine Hierarchie entsprechend Zeitmaßstäben oder Versetzungs-Maßstäben des Systems unterstützt.
  • Die Mehrfachagenten-Hybridsteuerarchitektur unterstützt die autonome Erzeugung eines neuen Agenten 44 zur Zeit t + Δ. Das Hervorbringen eines neuen Agenten unterstützt die vorübergehende Übernahme von vorübergehenden Aufgaben durch Zeitagenten oder die Änderung der Systemtopologie für eine längere Zeitspanne durch Erzeugung von permanenten Agenten. Während der Entwicklung unterstützt die Architektur das autonome Deaktivieren eines alten Agenten 42 sowie von Links 46, die von dem Agenten 40 ausgehen. Das Deaktivieren eines alten Agenten unterstützt die Systemmodifikation zum Beenden von Prozessen, die nicht weiter benötigt werden.
  • 5a zeigt Einzelheiten der in 2 gezeigten Kenntnisbasis 28, angeordnet als eine Menge von Ausgleichbeziehungsklauseln. Ausgleichsbeziehungsklauseln dienen zum Deklarieren sowohl logischer als auch Evolutions-Randbedingungen für die Systementwicklung. Die Kenntnisbasis besitzt zugrundeliegende Gesetze der Mannigfaltigkeit 45, allgemeine Steuerspezifikationen 46, Prozeßrepräsentationen 47, Zielklassenrepräsentation 48, Steuerleistungsspezifikationen 49, dynamische Steuerspezifikationen 50 und eine Modellerbauer-Realisation 51, angeordnet in einer verschachtelten Hierarchie. Diese Ausgestaltung der Definitionsbereich-Kenntnis ist das Mittel, mit welchem komplexere Beschreibungen der Systemleistungsanforderungen aus elementaren algebraischen Dekla rationen erzeugt werden. Deklarationen lassen sich schreiben als Ausgleichbeziehungsklauseln in Equational Logic Language.
  • Der Boden dieser Hierarchie enthält die Gesetze der Mannigfaltigkeit 45 in Form von Gleichungen, die die algebraischen und topologischen Strukturen der Mannigfaltigkeit M kennzeichnen. Ausgedrückt werden diese durch Terme von Beziehungsformen. Aus algebraischer Sicht modellieren sie eine algebraische Gleichungs-Mannigfaltigkeit. Das Modellieren der Mannigfaltigkeit als eine Gleichungsvielfalt umfaßt die Zustandsdynamik der Simulationen, die in einem DIS-Prozeß enthalten sind, und zwar in Begriffen von Gleichungsklauseln, die die MAHCA verarbeiten kann. Die Kenntnisbasis für jeden Agenten in der MAHCA enthält eine Kopie dieser Kenntnis; während des Betriebs allerdings befinden sich die entsprechenden Klauseln in einem anderen Momentanzustand, weil sie von Sensordaten abhängen.
  • Die allgemeinen Steuerspezifikationen 46 befinden sich zusammen mit den Prozeßdarstellungen 47 und der Zielklassendarstellung 48 auf der nächsten Ebene der Hierarchie. Die allgemeinen Steuerspezifikationen 46 sind Klauseln, die allgemein erwünschtes Verhalten des Systems ausdrücken. Sie enthalten Statements über Stabilität, Komplexität und Robustheit, die grundlegend sind für die Klasse deklarativer Beziehungssteuerungen. Allgemeine Steuerspezifikationen 46 werden aufgebaut durch Kombinieren der Gesetze der Mannigfaltigkeit in das Format der Equational Logic Language.
  • Die Prozeßdarstellung 47 ist gegeben durch Klauseln, welche das dynamische Verhalten und die Struktur des Prozesses charakterisieren, und die möglicherweise Sensoren und Aktoren beinhalten. Diese Klauseln werden geschrieben als Erhaltungsprinzipien für das dynamische Verhalten und als Invarianzprinzipien für die Struktur.
  • Die Zielklassendarstellung 48 enthält Klauseln, die Mengen gewünschter Betriebspunkte innerhalb der Domäne (den Punkten der Mannigfaltigeit M) kennzeichnet. Diese Klauseln werden ausgedrückt als weiche Randbedingungen, das sind Randbedingungen, die für endliche Zeitintervalle verletzt werden können. Sie drücken den letztlichen Zweck der Steuerung aus, nicht jedoch deren Verhalten im Verlauf der Zeit. Die Ziel-Klauseln sind agenten-abhängig. Die Zielklassendarstellungs-Klauseln sind ebenfalls aufgebaut durch Kombinieren von Gesetzen der Mannigfaltigkeit im Format der Equational Logic Language.
  • Die Steuerleistungsspezifikationen 49 enthalten Klauseln, die zum Ausdrucken problem-abhängiger und agentenabhängiger Kriterien und Randbedingungen dienen. Steuerleistungsspezifikations-Klauseln beinhalten die nächste Schicht in der hierarchisch verschachtelten Kenntnisbasis. Sie beinhalten allgemein Randbedingungen wie zum Beispiel Ansprechgeschwindigkeiten-Zeit, außerdem qualitative Eigenschaften bezüglich Zustandstrajektorien. Klauseln der Steuerleistungsspezifikationen sind ebenfalls aufgebaut durch Kombinieren von Gesetzen der Mannigfaltigkeit im Format der Equational Logic Language.
  • Die dynamischen Steuerspezifikationen 50 sind Klauseln, deren Körper als Funktion des Sensors sowie durch Zielbefehle modifiziert werden. Klauseln der dynamischen Steuerspezifikation umfassen die nächste Schicht in der Kenntnisbasis der verschachtelten Hierarchie. Die Klauseln der dynamischen Steuerspezifikationen sind aufgebaut durch Kombinieren der Gesetze der Mannigfaltigkeit in dem Format der Equational Logic Language.
  • Die Modellerbauer-Realisation 51 enthält Klauseln, die ein Rezept bilden für den Aufbau eines Prozeßmodells (eines Automaten) zum Generieren einer variablen Umschreibung und eines diese beweisenden Theorems. Die Klauseln der Modellerbauer-Realisation 51 bilden die obere Schicht innerhalb der Kenntnisbasis-Hierarchie.
  • 5b zeigt ein Grundelement einer Einzelagenten-Kenntnisbasis 28 gemäß 2 in Form einer Ausgleichs-Beziehungs-Klausel. In der Kenntnisbasis eines Agenten gespeicherte Klauseln dienen zum Generieren von Automaten, die der Menge logischer und Entwicklungs-Randbedingungen bezüglich des Systemverhaltens entsprechen. Die Ausgleichs-Beziehungs-Klausel 52 ist die elementare Einheit der das Systemverhalten betreffenden Kenntnis. Die Syntax einer elementaren Ausgleichs-Beziehungs-Klausel ist die Syntax einer Horn-Klausel. Das heißt: die Klausel hat die Syntax: Kopf 53, Implikationsfunktion (IF) 54 und Körper 56.
  • Die Kenntnisbasis besteht aus einer Menge von gleichungsähnlichen logischen Klauseln erster Ordnung mit Erweiterungen zweiter Ordnung. Die Syntax der Klauseln ähnelt jener der Sprache Prolog. Jede Klausel hat die Form: Kopf < Körper (16)wobei Kopf 53 eine funktionelle Form p(x1, ..., xn) 58 ist, die Werte der binären Menge [Wahr, Falsch] annimmt, wobei x1, x2, ..., xn Variable oder Parameter in dem Definitionsbereich D der Steuerung sind. Die in dem Klauselkopf erscheinenden Variablen werden als universal quantifiziert angenommen. Das Symbol < steht für die logische Implikationsfunktion (IF) 54.
  • Der Körper 56 einer Klausel ist eine Disjunktion 62 von Subkörpern 60, wobei jeder Subkörper eine Konjunktion 66 logischer Terme 64 ist. Jeder logische Term ist eine Gleichung 68, eine Order 70 oder ein Name 72. Die Konjunktion von Termen ei hat folgende Form: e1 ∧ e2 ∧ ... ∧ em (17)wobei n die logische Verknüpfung „und" 66 bedeutet. Jeder Term in der Gleichung (17) ist eine Beziehungsform, also eine sogenannte relationale Form. Eine solche relationale oder Beziehungsform ist eine der folgenden Formel: eine Gleichungsform, eine Ungleichungsform, eine Deckungsform oder ein Klauselkopf. Der logische Wert jeder dieser Formen ist entweder wahr oder falsch. Eine relationale Form ei ist für exakt die Menge von Tupeln von Werten Si der Domäne D, die die Variablen annehmen können, dann wahr, wenn die Beziehungsform erfüllt ist, und die Form ist falsch für das Komplement dieser Menge. Das heißt: für ei = ei (x1, ..., xn) ist Si die möglicherweise leere Teilmenge von Dn Si = {(x1, ..., xn) ∈ Dn| ei(x1, ..., xn) = wahr}so daß ei(x1, ..., xn) = falsch wenn (x1, ..., xn) ∈ Dn|S1.
  • Die allgemeine Struktur der Beziehungsform ist in Tabelle 1 angegeben.
  • Figure 00360001
    Tabelle 1. Struktur der Beziehungsform
  • In Tabelle 1 sind w und v Polynom-Formen in bezug auf eine endliche Menge von Operationen, deren Definitions- und Eigenschaftsaxiome in der Kenntnisbasis enthalten sind. Eine Polynomform v ist ein Objekt der Form: v(x1, ..., xn)ω∈Ω' = Σ(v, ω)·ωwobei Ω' der freie Monoid ist, der von den variablen Symbolen {x1, ..., xn} in Gegenüberstellung erzeugt wird. Der Term (v, ω) wird als der Koeffizient von v bei ω ∈ Ω' bezeichnet. Die Koeffizienten einer Polynomform v nehmen Werte im Definitionsbereich der Klauseln an. Dieser Definitionsbereich wird kurz beschrieben.
  • Die logische Interpretation der Gleichungen (16) und (17) bedeutet, daß der Kopf dann wahr ist, wenn die Konjunktion der Terme des Körpers gemeinsam wahr sind für Beispiele der Variablen innerhalb des Klauselkopfs. Der Definitionsbereich, in welchem die Variablen in einem Klauselkopf Werte annehmen, ist die Mannigfaltigkeit M. Die Mannigfaltigkeit M ist enthalten in dem kartesischen Produkt: M ⊆ G × S × X × A (18)wobei G der Zielraum, S der Raum der Sensordaten, X der Raum der Steuerungszustände und A der Raum der Steueraktionen ist. G, S, X und A sind ihrerseits Mannigfaltigkeiten, deren topologische Struktur definiert ist durch Spezifikationsklauseln innerhalb der Kenntnisbasis. Diese Klauseln, die anwendungsabhängig sind, kodieren die Erfordernisse an das Regelverhalten des geregelten Prozesses. Tatsächlich ist das Regelverhalten, welches weiter unten in Form einer Abweichungsformulierung definiert wird, gekennzeichnet durch stetige Kurven mit Werten innerhalb der Mannigfaltigkeit M. Diese Stetigkeitsbedingung ist deshalb zentral, weil sie äquivalent ist mit der Systemanforderung, nach Aktionen zu schauen, die das Regelverhalten dazu bringen, die Anforderungen zu erfüllen.
  • 5c zeigt einen Prozeß 74, der in eine Hybriddarstellung 76 über einen Fortsetzungsalgorithmus 75 eingebettet ist. Der Algorithmus konstruiert eine invariante Abbildung 78 von dem Definitionsbereich 77 auf die Träger-Mannigfaltigkeit 79. Die Gleichungs-Beziehungsklauseln, welche Definitionsbereiche (Kenntnisregeln) 77 sind, die die Kenntnis in dem Definitionsbereich der Kenntnisbasis deklarieren, weisen eine Eins-Zu-Eins-Abbildung 78 mit Charts (offenen Mengen) 79 in der Träger-Mannigfaltigkeit auf. Erleichtert wird dies durch einen Speicherabbildungsentwurf der ermöglicht, daß die affine Verbindung für Echtzeitprozesse implementiert wird, indem benachbarte Charts eines Atlas der Mannigfaltigkeit, durch die eine geodätische Verbindung verläuft, für raschen Speicherzugriff angeordnet werden. Der Speicherabbildungsentwurf enthält spezialisierte Datentypen, die gemäß der engen Nachbarschaft für den Speicherstellenzugriff klassifiziert sind. Für allgemeine Steuerprobleme liefert die in 1a dargestellte Organisation der Kenntnisbasis die Hierarchie von Deklarationen aus elementaren Gesetzen der Mannigfaltigkeit bis hin zu der Ebene der Definitionsmengenmodell-Erbauung. Die Kenntnisbasis-Organisation unterstützt außerdem die Fortschreibung diskreter Prozesse für die Einbeziehung in das Optimierungs-Rahmenwerk. Diese Vorgehensweise ist auch anwendbar bei allgemeinen diskreten Prozessen (zum Beispiel bei. Sortier- und Handelsvertreter-Problemen). Das Einbetten der Prozedur in Kontinuum-Darstellungen ist ein fundamentaler Schritt bei der Anwendung einer vereinheitlichten Systemzustands- Darstellung auf die Entwicklung einer Funktion, die dazu benutzt werden, den nahezu optimalen Weg zu bestimmen.
  • Die Denotations-Semantik jeder Klausel innerhalb der Kenntnisbasis gehört zu einer der folgenden: (1) ein Erhaltungsprinzip; (2) ein Invarianzprinzip; oder (3) ein Randbedingungsprinzip. Erhaltungsprinzipien sind eine oder mehrere Klauseln bezüglich des Gleichgewichts eines speziellen Prozesses in der Dynamik des Systems oder der Berechnungs-Resourcen. Erhaltungsgesetze gelten dann, wenn das gesteuerte oder geregelte physikalische oder logische Gerät seine Leistungsspezifikation erfüllt. Beispielsweise drückt die als Klausel kodierte Gleichung (15) die Erhaltung einer Anforderung in dem logischen Kommunikationsnetz aus. Zum Zweck der Veranschaulichung ist diese Regel unten angegeben. conservation_of_unsatisfied_demand (p, t, [Qt,k], Sn, [Dk], Δ, Ci u) (19)
    Figure 00380001
    Λ Ci u+ = Ci u + Sri + Σ Qi,k·Dk Kodierung der Gleichung (15))
    Λ process_evolution (p, t, p'') Kodierung der Gleichung (13)) Λt+ = t + ΔΛ conservation_of_unsatisfied_demand (p'', t+, [Qi,k], Sri, [Dk], Δ, Ci u++
  • In dem Ausdruck (19) stellt der erste Gleichungsterm die nicht erfüllte Anforderung für den Agenten I zur laufenden Zeit in Beziehung zu der nicht erfüllten Anforderung in der Vergangenheit und die laufende Nettoanforderung an den Agenten i von den anderen mit i verbundenen Agenten. Der letzte Term der Regel implementiert Rekursion.
  • Als weiteres Beispiel sei die folgende Klausel betrachtet, welche die Erhaltung von Berechnungs-Resourcen repräsentiert:
    comp(Load, Process Op_count, Limit)
    < process(process_count)
    Λ process_count·Load1 – Op_count Load
    Λ Load1 < Limit
    Λ comp(Load1, Process, Op_count, Limit)
    wobei "Load" der laufenden Rechenbelastung entspricht, gemessen in VIPS (Variable Instantiations Per Second; variable Umschreibungen pro Sekunde), „Process" ist eine Klausel, die für die Ausführung betrachtet wird, und „Op_count" ist die laufende Anzahl von Termen in Verarbeitung. Erhaltungsprinzipien beinhalten stets Rekursion, deren Umfang nicht notwendigerweise einer einzelnen Klausel entspricht, wie in dem obigen Beispiel, sondern zahlreiche Klauseln enthalten kann, die untereinander verkettet sind.
  • Invarianzprinzipien sind eine oder mehrere Klauseln, die Konstanten einer Bewegung im allgemeinen festlegen. Diese Prinzipien beinhalten Stationarität, was eine entscheidende Rolle der Formulierung von Theoremen spielt, was durch Architektur und Geodäsie bewiesen wird. Bei der Steuerung von DIS-Prozessen spezifizieren Invarianzprinzipien die Qualität von Ansprecherfordernissen. Das heißt, sie spezifizieren Ebenen der Leistungsfähigkeit als eine Funktion der Verkehrsbelastung, die das System erfüllen muß. Die Bedeutung der Invarianzprinzipien liegt in dem Bezug, den sie für den Nachweis unerwarteter Ereignisse liefern. In einem DIS-Prozeß beispielsweise ist die Aktualisierungszeit nach dem Bedienen einer Anforderung konstant unter normalen Betriebsbedingungen. Eine Gleichungsklausel, die diese Invarianz wiederspiegelt, hat eine Grundform einer Konstanten; die Abweichung von diesem Wert repräsentiert die Abweichung von der Normalität.
  • Randbedingungsprinzipien sind Klauseln, die Konstruktionsgrenzen für Aktoren oder Sensoren darstellen und, noch wichtiger, für Verhaltensstrategien. In einem DIS-Prozeß beispielsweise sind die Kennwerte für die Ansprechgeschwindigkeit von Werten, die die Eingangsstromgröße oder die Zugriffsgeschwindigkeit steuern, durch empirische Graphen gegeben (zum Beispiel Byte-Zahl abhängig von der Geschwindigkeit mit dem Verkehrsaufkommen als Parameter), gespeichert in der Systembeziehungsbasis. Ein weiteres Beispiel für diese Anwendung wird gegeben durch die Klauseln, die die Anhebungsstrategie zum Einbetten diskreter variierender Trajektorien in die Mannigfaltigkeit M definiert (Interpolationsregeln). Die Klausel „Kenntnisbasis" ist organisiert als verschachtelte hierarchische Struktur, wie in 5a bereits gezeigt wurde.
  • 6a zeigt Aktionen, die von individuellen Agenten ausgeführt werden, um verteilte Echtzeitsysteme zu synchronisieren. Aktionen werden von Automaten ausgeführt, die von jedem Agenten nach Maßgabe von Randbedingungen erzeugt werden, die in den Gleichungs-Beziehungsklauseln enthalten sind, und die von Sensoren und von anderen Agenten innerhalb des logischen Agentennetzes eingegeben werden. Ein einzelner Agent generiert Automaten durch das Ausführen von Transformationen an Punkten innerhalb einer Träger-Mannigfaltigkeit. Diese Figur zeigt den Datenfluß, der sich daraus ergibt, daß Einzelagenten-Komponenten die passenden Transformationen an Punkten innerhalb einer Träger-Mannigfaltigkeit ausführt. Das Datenflußdiagramm zeigt, wie das System in seinem Zustand jedesmal dann aktualisiert werden kann, wenn die Kenntnisbasis 80 unter Verwendung von Eingangsgrößen seitens Benutzern, Eingaben von anderen Agenten in dem logischen Agentennetz, durch den laufenden Agentenzustand 118 aus dem vorhergehenden Entscheidungszyklus oder von gemessenen Ergebnissen aus dem vorhergehenden Entscheidungszyklus ausgeführten Aktionen aktualisiert wird. Der Zustand des Systems wird in Werten eines Punkts innerhalb der Träger-Mannigfaltigkeit aufrecht erhalten, die sowohl logische als auch Entwicklungsattribute besitzt. Das Datenflußdiagramm eines einzelnen Agenten gibt an, wie Werte von Punkten innerhalb der Träger-Mannigfaltigkeit beim Extrahieren eines Automaten geändert werden, der den logischen und Entwicklungs-Randbedingungen in jedem Aktualisierungsintervall entspricht.
  • Das Datenflußdiagramm zeigt, daß die Architektur der Umschreibung eines Plans 84 durch den in 2 gezeigten Planer 24 erreicht wird durch eine Term-Vereinheitlichung 82 der laufenden Aktualisierungen 80 in der Kenntnisbasis 86 (in 1 auch unter der Bezugsnummer 28 dargestellt) mit Ausdrucksgrößen, die durch den Adapter 30 in 2 aus Fehlertermen 102 aufgebaut sind, die von dem in 2 gezeigten Rückschließer 26 empfangen werden. Aktive Beziehungen 88 sind das Ergebnis des Empfangs des Verhaltenskriteriums von dem Planer 24 nach 2 und des Anwendens von Relaxationsprinzipien zur Schaffung des Relaxationskriteriums. Die kanonische Gleichung 92 ist das Er gebnis der Anwendung des Levi-Civita-Verbindungsprinzips auf das relaxierte Kriterium (unter Verwendung der Folge Linearisieren, Ausgleichen, Schützen und Einfrieren 90), um eine dynamische Programmiergleichung aufzubauen, bei der es sich um die Aktionsgleichung handelt. Der Rückschluß-Automat wird bei 96 erstellt unter Verwendung eines Rückschluß-Blueprint-Konstruktors (Deduktions- und Evolutions-Übergangsausgänge) 94. Eine Rückschlußprozedur (ein einheitlicher Präfixschleifen-Zerlegungstrimmer) 98 dient dann zum Aufbau eines Automaten. Wenn die Rückschlußautomaten-Ausführung 100 nicht dazu führt, daß das Zielkriterium erfüllt wird, so werden die Störungsterme 102 an den in 2 gezeigten Adapter 30 gesendet, wo Syntaxregeln für die Relaxation (die Kommutatorregel-Zerlegungsrelaxation) 104 zur Durchführung der Adaption 106 angewendet werden. Die Plan-Terme werden umformuliert 110 als Potentiale unter Verwendung eines Lagrange-Konstruktors 108, und sie werden zu dem in 2 gezeigten Planer 24 gesendet zwecks Umschreibung 48 als reaktive Schleife 120, um die System-Fehlerfunktion zu korrigieren. Wenn die Ausführung 100 des konstruierten Rückschließ-Automaten die Randbedingungen des Zielkriteriums für nahezu optimalen Zustand erfüllen, so werden Befehlsaktionen bei 112 ausgegeben, bei 114 werden Zwischenagenten-Anforderungen ausgegeben, und der Systemzustand wird bei 116 aktualisiert als normale Regelschleife 118.
  • Die Menge individueller (infinitesimaler) Aktionen in einem Ausführungsintervall eines individuellen Agenten wird normalerweise durch die Ausführungsschleife (die normale Regelschleife) 118 identifiziert, ausgewählt und ausgeführt. Die Ausführungsschleife der MAHCA für einen individuellen Agenten ist das Mittel, mit dessen Hilfe eine glatte Anpassung an sowohl logische als auch Entwicklungs-Randbedingungen des Systemverhaltens für einen individuellen Agenten für örtliche Randbedingungen erreicht wird. Die Menge von Aktionen, die über einer Menge von Aktionsintervallen von den Agenten eines logischen Agentennetzes implementiert wird, ist das Hilfsmittel, mit welchem eine glatte Anpassung mit sowohl logischen als auch Evolutions-Randbedingungen der Systemverhaltensweisen für Mehrfach-Zeitmaßstäbe und Mehrfach-Versetzungsabstände für verteilte Systeme erreicht wird.
  • Im Fall eines Betriebsfehlers zum Nachweis einer Lösung des zusammengesetzten Problems werden die Klauseln der Kenntnisbasis eines individuellen Agenten bezüglich des Betriebsfehlers entsprechend den Regeln für die syntaktische Relaxation von Randbedingungen korrigiert. Dieser Relaxation von Randbedingungen folgend, wird dann eine Menge individueller (infinitesimaler) Aktionen über einem Ausführungsintervall eines individuellen Agenten identifiziert, ausgewählt und ausgeführt durch die Regelschleife zum Korrigieren des Betriebsfehlers (Fehlerschleife) 120. Die Fehlerschleife der MAHCA ist das Hilfsmittel, mit welchem eine robuste Implementierung sowohl logischer als auch Entwicklungs-Freiheitsgrade in der Architektur erreicht wird. Zulässige Relaxationskriterien für logische Randbedingungen wie zum Beispiel Sicherheit, und Qualitäts-Randbedingungen werden in einem gemeinsamen Rahmen für die Relaxation von Genauigkeits-Leistungskriterien von Evolutions-Randbedingungen unterstützt. Diese zulässigen Freiheitsgrade fungieren auf lokaler Ebene, um die robuste Steuerung individueller, nicht-linearer Prozesse zu unterstützen, und sie fungieren auf globaler Ebene, um eine robuste Steuerung für umfangreiche verteilte Systeme zu unterstützen.
  • Das Einbetten von logischen Randbedingungen in Kontinuum-Darstellungen ist ein grundlegender Schritt bei der Anwendung einer vereinheitlichten Darstellung eines Systemzustands, um eine Funktionalität zu entwickeln, die zum Bestimmen des nahezu optimalen Wegs eingesetzt werden kann. Die Träger-Mannigfaltigkeit ist das Hilfsmittel zur Erzeugung einer vereinheitlichten Deklaration des Systemzustands (Status), der sowohl logische als auch Entwicklungs-Parameter beinhaltet. Die logische Lagrange-Gleichung (Gleichung 20) das Hilfsmittel, durch welches die logischen Randbedingungen und Entwicklungs-Randbedingungen in eine Kontinuum-Darstellung des Systemverhaltens eingebettet sind. Der Kenntnisdekodierer 32 nach 2 fungiert so, daß er diskrete und Entwicklungswerte für Benutzereingaben, Sensoreingaben und Eingaben von anderen Agenten in einer Kontinuum-Darstellung plaziert, der logischen Lagrange-Gleichung.
  • 6b zeigt die Träger-Mannigfaltigkeit als mathematisches Gebilde, durch welches ein vereinheitlichtes Systemzustandsmodell konstruiert wird, und in der Invariante Transformationen ausgeführt werden, die für die Systemlösung notwendig sind. MAHCA beruht auf der Anwendung des Kalküls von Variationen in einer neuartigen Weise. Die symbolischen Formeln für Steuerungen, die von Automaten generiert werden, die ihrerseits durch individuelle Agenten konstruiert sind, lassen sich betrachten als Formeln für die Koeffizienten einer Cartan-Verbindung bezüglich einer passenden Finsler-Mannigfaltigkeit, zu der ein Parameter-Kalkül von Variationsformeln des optimalen Steuerproblems gehört. Die Träger-Mannigfaltigkeit 121 ist die MAHCA-Version der passenden Finsler-Mannigfaltigkeit. Entsprechend dem Leitfaden von Caratheodory, dargestellt in Wolf Kohn et al., Hybrid System as Finsler Manifolds: Finite State Control as Approximation to Connections (Wolf Kohn et al., Herausgeber Springer Verlag 1995) stellt die Entwicklung des Hybridsystemzustands dar als Ablauf auf einer differenzierbaren Mannigfaltigkeit, die durch die Randbedingungen definiert ist. Das Schlüsselattribut von Finsler-Mannigfaltigkeiten ist die Einführung einer metrischen Grundform zur Berechnung der Finsler-Länge, die dazu dient, eine Norm auf dem Tangentenraum an der Mannigfaltigkeit in einem gegebenen Punkt zu definieren. Diese Verwendung einer Finsler-Metrik ist der Schlüssel für die Berechnung des passenden, ε-optimalen Steuergesetzes für jedes Aktualisierungsintervall.
  • Die Träger-Mannigfaltigkeit 121 ist das grundlegende mathematische Gebilde für die Vereinheitlichung von logischen, geometrischen und Entwicklungs-Randbedingungen bezüglich des Systemverhaltens. Ein Punkt p 122 in der Träger-Mannigfaltigkeit besitzt sowohl logische als auch Entwicklungs-Parameter, wie oben in Verbindung mit dem Ausdruck (2) erläutert wurde. Während herkömmliche Systemdarstellungen Systemmodelle in logische Modelle und Entwicklungsmodelle, 123 auftrennen, unterstützt die Kohn-Nerode-Definition der Kontinuität 124 von Prozeßmodellen die Verwendung der Träger-Mannigfaltigkeit zur Erzielung einer Fusionierung logischer und Entwicklungs-Modelle in eine Kontinuum-Darstellung.
  • 7 zeigt das grundlegende Betriebsverfahren der MAHCA als Schaffung des nächstfolgenden Automaten, gegeben durch die laufende Menge von Systemvorgaben, die laufende Menge logischer und Entwicklungs-Randbedingungen bezüglich des Systemverhaltens, der laufenden Menge von Benutzereingaben und der laufenden Menge von Sensor werten. Diese Parameter sind sämtlich deklariert und erscheinen als Gleichungs-Beziehungs-Klauseln an dem in 2 gezeigten Rückschließer 26. Diese Figur zeigt die Ablauffolge von Operationen, die der Rückschließer durchführt, um einen Automaten zu generieren, der nahezu optimale Aktionen zur Erreichung von Systemvorgaben liefert und dabei logische und Entwicklungs-Randbedingungen sowie laufende System-Eingangsgrößen berücksichtigt.
  • Der Rückschließer nimmt aus dem in 2 gezeigten Planer 24 ein Theorem und erzeugt entweder einen Automaten, der nahezu optimale Aktionen ausführt, dargestellt in Form einer Kostenfunktion, oder aber Ausfallterme produziert, so daß der in 2 dargestellte Adapter 30 relaxierte Kriterien an den Planer 24 nach 2 geben kann, um ein neues Theorem herzustellen. Der Betrieb der Hybrid-Steuersystemarchitektur und des Rückschließers führt zu Generierung von Automaten, die Aktionen ausführen, um einem nahezu optimalen Weg zu folgen, auf dem das Zielkriterium erreicht wird. Das relaxierte Kriterium 126 ist das Ergebnis des Empfangs des Verhaltenskriteriums 125 von dem in 2 gezeigten Planer 24 und des Anwendens des Relaxationsprinzips 146. Die dynamische Programmiergleichung 127, bei der es sich um die Aktionsgleichung handelt, ist das Ergebnis der Anwendung des Levi-Civita-Verbindungsprinzips 144 auf das relaxierte Kriterium 126. Die kanonische Gleichung 128 wird aufgebaut aus der dynamischen Programmiergleichung 127 unter Verwendung eines Rückschließ-Blueprint-Konstruktors 142. Der Rückschließ-Automat 130 wird aufgebaut aus der kanonischen Gleichung 128 unter Verwendung eines Automaten-Konstruktors 140. Eine Rückschlußprozedur (ein einheitlicher Präfixschleifen-Zerlegungstrimmer) 98 gemäß 6a wird dann für den Aufbau eines Automaten verwendet. Wenn die Automaten-Ausführung 138 des Rückschließ-Automaten 130 es nicht schafft, das Zielkriterium 136 zu erfüllen, werden die Störfall-Terme und der Agentenstatus an den in 2 gezeigten Adapter 30 gesendet, wo Syntax-Regeln für die Relaxation zur Anpassung angewendet werden. Wenn die Ausführung 138 des Rückschließautomaten in erfolgreicher Weise bei 136 die nahezu optimalen Randbedingungen des Zielkriteriums erfüllen, so werden die Befehls-Aktionen bei 132 ausgegeben, es werden Zwischenagenten-Anforderungen ausgegeben, und es wird der Systemzustand als normale Regelschleife aktualisiert.
  • Die Funktion des Theorem-Planers 24 nach 2, die definitionsbereichsspezifisch ist, besteht darin, für jedes Aktualisierungsintervall ein symbolisches Statement des angestrebten Systemverhaltens zu generieren, wie es durch den Agenten (zum Beispiel den Agenten i) im gesamten Intervall betrachtet wird. Das Theorem-Statement, welches er generiert, besitzt die folgende Form:
    Wenn eine Menge primitiver Aktionen gegeben ist, existiert eine Steuervorschrift vi|p der Formgleichung (12) sowie eine Teilfunktionsableitung dαi(•) (1b) innerhalb des Steuerintervalls [t, t + Δ) derart, daß dαi(•) die Funktion ∫Lii(τ, p), vi|p(Gi(τ, p)))·dαi(p, dτ) (20)minimiert, wobei folgende Randbedingungen gegeben sind: Gi(Si Ψi, (t + Δ, p)) = G(t, Xi)(lokale Vorgabe für das Intervall), Qi,m(p, t)·Dm(p, t) = Vi(p, t) (21)(Zwischenagenten-Randbedingung) und ∫dαi(p, dτ) = 1''(t, t + Δ)
  • In der Gleichung (20) wird Li als lokale relaxierte Lagrange-Beziehung des Systems aus der Sicht des Agenten i für das laufende Steuerintervall (t, t + Δ) bezeichnet. Diese Funktion, die das kartesische Produkt des Zustands sowie Steuerräume abbildet auf die reale Achse mit der durch die Klauseln der Kenntnisbasis definierten Topologie, umfaßt die Dynamik, die Randbedingungen und die Anforderungen des Systems aus der Sicht des Agenten i. Die relaxierte Lagrange-Funktion Li ist eine stetige Projektion in der Topologie, die durch die Kenntnisbasis in den Koordinaten des i-ten Agenten der globalen Lagrange-Funktion L definiert ist, welche das System insgesamt charakterisiert.
  • In der Gleichung (21), die aus der Gleichung (15) abgeleitet ist, bedeutet p ∈ M den Zustand des gesteuerten Prozesses aus der Sicht des Agenten, und Gi ist der Parallel-Transportoperator, der die Vorgabe in das laufende Intervall bringt. Der Operator Gi wird aufgebaut durch Erheben eines zusammengesetzten Flows (vergleiche Gleichung (10)) in die Mannigfaltigkeit. Der zusammengesetzte Flow und die Aktionsplanung sind bestimmt, wenn erst einmal die Teilfunktion (das Maß) αi bekannt ist, und diese Funktion ist das Ergebnis der Optimierungsgleichungen (20) und (21). Insbesondere wird der Aktionsablauf aufgebaut als Linearkombination primitiver Aktionen (vergleiche Gleichung (12)).
  • Die Ausdrücke in der Gleichung (21) bilden die drei Randbedingungen, die in dem von dem Agenten gelösten relaxierten Optimierungsproblem gelten. Die erste Bedingung ist die lokale Vorgabe-Randbedingung, die den allgemeinen Wert des Zustands am Ende des laufenden Intervalls ausdrückt. Die zweite Randbedingung entspricht den Randbedingungen, die dem Agenten von den anderen Agenten innerhalb des Netzwerks auferlegt werden. Schließlich kennzeichnet die dritte Randbedingung, daß dαi(•) ein Wahrscheinlichkeitsmaß ist.
  • Bei Relaxation und bei passender Auswahl des Definitionsbereichs ist das durch die Gleichungen (20) und (21) dargestellte Optimierungsproblem ein konvexes Optimierungsproblem. Dies ist deshalb wichtig, weil es garantiert, daß bei Existenz einer Lösung diese eindeutig ist, und außerdem die Berechnungseffizienz bei dem Rückschließverfahren garantiert wird, die der Agent zum Beweis des Theorems verwendet.
  • Der Term dαi(•) in der Gleichung (20) ist ein Radon-Wahrscheinlichkeitsmaß bezüglich der Menge primitiver Befehls- oder Steueraktionen, die der Agent für das Intervall [t, t + Δ) ausführen kann. Es bemißt für das Intervall den Prozentsatz der Zeit, die für jede der primitiven Aktionen aufzuwenden ist. Die zentrale Funktion des Steueragenten besteht darin, dieses Gemisch von Aktionen für jedes Steuerintervall festzulegen. Ausgeführt wird diese Funktion von jedem Agenten dadurch, daß von dem laufenden Status der Kenntnisbasis geschlußfolgert wird, ob eine Lösung des durch das laufende Theorem umrissenen Opti mierungsproblems existiert, um, falls ja, entsprechende Aktionen und Zustands-Aktualisierungen vorzunehmen.
  • Der Aufbau des Theorem-Statements entsprechend den Gleichungen (20) und (21) ist die Kernaufgabe, die in dem Planer 24 nach 2 ausgeführt wird. Er kennzeichnet das gewünschte Verhalten des Prozesses aus der Sicht des Agenten im laufenden Intervall, demzufolge dessen Anforderungen erfüllt werden und sich das System in Richtung der Vorgabe in optimaler Weise „bewegt".
  • Die Funktion unter dem Integral in der Gleichung (20) enthält einen als „Catch-All"-Potential bezeichneten Term, der mit keiner Klausel in der in 2 gezeigten Kenntnisbasis 28 in Verbindung steht. Seine Funktion besteht darin, nicht-modellierte dynamische Ereignisse zu messen. Diese Überwachungsfunktion wird von dem in 2 gezeigten Adapter 30 ausgeführt, der ein allgemeines Kommutatorprinzip implementiert, ähnlich der oben diskutierten Lie-Klammer. Wenn unter diesem Prinzip der Wert des Catch-All-Potentials leer ist, so modelliert das laufende Theorem-Statement in angemessener Weise den Status des Systems. Wenn andererseits das Theorem versagt, was bedeutet, daß es eine Fehlanpassung gibt zwischen dem laufenden Statement des Theorems und dem Systemstatus, so führt das Catch-All-Potential die Gleichungsterme des Theorems ein, welches den Fehlerzustand verursacht hat. Diese Terme werden von dem in 2 gezeigten Rückschließer 26 negiert und miteinander verknüpft entsprechend dem Kommutationsprinzip (welches seinerseits definiert ist durch die Gleichungs-Klauseln in der in 2 gezeigten Kenntnisbasis 28), und werden als Adaptions-Dynamikklausel in der Kenntnisbasis abgespeichert. Dann generiert der in 2 gezeigte Adapter ein Potential-Symbol, welches gekennzeichnet ist durch die Anpassungsklausel und entsprechende Abstimmungs-Randbedingungen. Dieses Potential wird auf das Kriterium für das das Intervall kennzeichnende Theorem addiert.
  • Das neue Potentialsymbol und die Abstimmungs-Randbedingungen werden an den in 2 gezeigten Planer 24 gesendet, der ein modifiziertes lokales Kriterium und Vorgaben-Randbedingungen generiert. Das so konstruierte neue Theorem repräsentiert ein an gepaßtes Verhalten des Systems. Es ist dies die Essenz der reaktiven Struktur-Anpassung innerhalb dieses Modells.
  • Synchronisation wird erreicht durch Erzeugung von Automaten, deren Aktionen folgende Anwendungen haben: (1) die Kohn-Nerode-Definition der Kontinuität für Hybridsysteme, welche die Grundlage für die Erzeugung eines vereinheitlichten Statements des Hybridsystemzustands ist und dazu dient, festzustellen, wann die Entwicklung des Systemzustands topologische Kontinuitäts-Randbedingungen verletzt, wodurch die Verifizierungs-Prozedur versagt und eine Reaktion zur Wiederherstellung der Kontinuität fordert, und (2) das Kohn-Nerode-James-Optimalitätsergebnis zum Auswählen geeigneter Ratter-Kombination von individuellen (infinitesimalen) Aktionen zur Erzielung nahezu optimaler Leistung. Die glatte und nahezu optimale Synchronisation von Aktionen zum Steuern verteilter Prozesse, die sowohl logische als auch Entwicklungs-Randbedingungen berücksichtigen muß, um eine Erfüllung globaler und lokaler Ziele zu erreichen, ist das Hauptergebnis bei der Anwendung der hybriden Steuerarchitektur. Da die MAHCA wirksam ist für die nahezu optimale Steuerung dynamischer verteilter Prozesse, eignet sie sich auch für die nahezu optimale Lösung statischer Systeme.
  • 8 zeigt einen Prozeß zur Erzielung einer nahezu optimalen Lösung eines Hybridsystem-Problems i 156 durch Prellen oder Rattern zwischen individuellen Aktionen. 8 veranschaulicht die Beziehungen zwischen den primitiven Aktionen vi 146 und der Fraktion Δi 152 von Δ 150, für die sie innerhalb des Intervalls [t, t + Δ) 148, 154 aktiv sind. Der Begriff Prellen oder Rattern bezieht sich hier auf das Umschalten oder Springen infinitesimalen Steueraktionen vi 146 in Subintervallen Δi 152 des Aktualisierungsintervalls Δ 150. Agentenaktionen werden in einem endlichen Zeitintervall Δ 150 ausgeführt, passend für jeden Agenten. Die Automaten, die nahezu optimale Aktionen ausführen, werden für jedes Intervall aktualisiert.
  • An dieser Stelle sollte die Frage der Robustheit angesprochen werden. Der in 2 gezeigte Adapter 30 jedes Steuerungsagenten liefert an das System in starkem Ausmaß allgemeine und recheneffiziente Mittel, mit denen sich das System von Betriebsfehlern oder unvorhersehbaren Ereignissen erholt. Theorem-Fehler sind Symptome von Nicht-Übereinstimmungen zwischen dem, wie sich das System nach Auffassung des Agenten verhält, und dem, wie es sich wirklich verhält. Die Adaptions-Klausel baut in die eine Erholungsstrategie repräsentierende Kenntnisbasis des Agenten Kenntnis ein. Der Rückschließer, der im folgenden diskutiert wird, vollzieht diese Strategie als Bestandteil seines normalen Betriebsablaufs.
  • Der in 2 gezeigte Rückschließer 26 ist ein Online-Bestätiger für das Gleichungstheorem. Die Klasse von Theoremen, die er beweisen kann, wird dargestellt durch Statements in der Form der Gleichungen (20) und (21), ausgedrückt durch eine im wesentlichen quantifizierte Verbindung von Gleichungstermen folgender Form: ∃Z|W1(Z, p)rel1V1(Z, p) Λ ... Λ Wn(Z, p)relnVn(Z, p) (22)wobei Z ein Tupel von Variablen ist, die jeweils Werte im Definitionsbereich D annehmen, p eine Liste von Parametern in D = G × S × X × A (das heißt ein Punkt in der Mannigfaltigkeit M) ist, und {Wi, Vi} Polynome in der Halbring-Polynomalgebra sind D〈Ω〉 (23)wobei D = {D, 〈+, •, 1, 0〉} eine Halbring-Algebra mit einem additiven Element 0 und einem multiplikativen Element 1 ist.
  • In der Gleichung (22) sind reli, i = 1, ..., n binäre Beziehungen der Polynomalgebra. Jedes reli kann entweder eine Gleichungsbeziehung (≈), eine Ungleichungsbeziehung (≠) oder eine Teilfolgenrelation sein. In einem gegebenen Theorem können mehr als eine Teilfolgenrelation auftreten. Innerhalb jedes Theorems ist zumindest einer der Terme eine Teilfolgenrelation, die ein vollständiges Gitter auf der Algebra definiert, welches dem Optimierungsproblem entspricht. Dieses Gitter besitzt ein Minimum-Element, wenn das Optimierungsproblem ein Minimum besitzt.
  • Wenn ein Theorem-Statement der Gleichungsform (22) und eine Kenntnisbasis von Gleichungsklauseln gegeben sind, bestimmt der Rückschließer, ob das Statement logisch aus den Klauseln innerhalb der Kenntnisbasis folgt, und falls dies so ist, erzeugt er als Nebeneffekt des Beweises eine nicht leere Untermenge von Tupeln mit Einträgen in D, was Werte für Z ergibt. Diese Einträge bestimmen die Aktionen des Agenten. Auf diese Weise ist der Nebeneffekt die Umschreibung der Entscheidungsvariablen des Agenten. In der Gleichung (23) ist Ω eine Menge von primitiven monadischen Operationen {vi}. Jedes vi bildet die Halbring-Algebra, deren Elemente Potenzreihen sind, die die Komposition von Operatoren von Z auf sich selbst ab. vi: D〈〈Z〉〉 → D〈〈Z〉〉 (24)
  • Diese Operatoren sind gekennzeichnet durch Axiome innerhalb der Kenntnisbasis und sind prozeßabhängig. In der formalen Logik läßt sich das implementierte Schlußfolgerungsprinzip wie folgt angeben: es sei Σ die Menge von Klauseln in der Kenntnisbasis. Das Symbol → repräsentiert die Implikation. Das Beweisen des Theorems bedeutet den Nachweis, daß es logisch aus Σ folgt, das heißt Σ → Theorem (25)
  • Der Beweis erfolgt durch Sequenzen von Anwendungen der nachstehenden Rückschluß-Axiome:
    • – Gleichheits-Axiome
    • – Ungleichheits-Axiom
    • – Teilfolgen-Axiome
    • – Kompatibilitäts-Axiome
    • – Konvergenzaxiome
    • – Kenntnisbasis-Axiome
    • – Grenzaxiome
  • Jedes der Schlußfolgerungsprinzipien läßt sich ausdrücken als ein Operator des kartesischen Produkts: D〈〈W〉〉 × D〈〈w〉〉 (26)
  • Jeder Schlußfolgerungsoperator transformiert einen Beziehungsterm in einen anderen Beziehungsterm. Der Rückschließer (Schlußfolgerer) wendet Sequenzen von Schlußfolgerungsoperatoren auf die Gleichungsterme des Theorems solange an, bis diese Terme reduziert sind auf entweder eine Menge von Grundgleichungen in der Form der Gleichung (27), oder er stellt fest, daß keine derartige Grundform existiert.
  • Der Mechanismus, mit welchem der Rückschließer die oben beschriebene Prozedur ausführt, ist das Erbauen oder Erstellen einer Prozedur für variable Zielumschreibung: ein lokal endlicher Automat (bezeichnet als Beweis-Automat). Dieses wichtige Merkmal ist für unsere Vorgehensweise einzigartig. Die Beweisprozedur wird angepaßt an das spezielle Theorem-Statement und die Kenntnisbasis-Instanz, die sie gerade bearbeitet.
  • 9 zeigt den Konzept-Aufbau eines Beweis-Automaten, welcher Sequenzen von Aktionen beschreibt, die für den durch den in 2 gezeigten und in 7 detaillierter dargestellten Rückschließer 26 aufgebauten Automaten möglich sind. Agenten erreichen eine optimale Steuerung in einem Intervall durch Prellen oder Rattern zwischen infinitesimalen Aktionen, die aus einer endlichen Menge von Alternativen ausgewählt sind. Infinitesimale Aktionen laufen in Unterintervallen des Aktions-Aktualisierungsintervalls Δ 150 gemäß 8 ab. Aktionen werden implementiert durch Beweis-Automaten, die erzeugt werden als Nebenprodukt des Beweises, daß eine nahezu optimale Lösung des Steuerproblems erreichbar ist.
  • Die Struktur des von dem Rückschließer generierten Beweis-Automaten ist in 9 dargestellt. In 9 repräsentiert der Anfangszustand 160 die mit dem Theorem in Verbindung stehenden Gleichungen 158. Allgemein entspricht jeder Folgezustand 162, 164 einer abgeleiteten Gleichungsform des Theorems durch Anwenden einer Folge von Folgerungsregeln oder Rückschlußregeln ai, bi, ci, di, ei hin zum Anfangszustand, dargestellt durch den Pfad
  • Figure 00520001
  • Jeder Rand in dem Automaten entspricht einem von den möglichen Rückschlüssen. Ein Zustand ist dann ein Endzustand, wenn seine Gleichungsform eine Tautologie ist, oder wenn er einer kanonischen Form entspricht, dessen Lösungsform in der Kenntnisbasis gespeichert ist.
  • Wenn man durch den Automaten-Zustandsgraphen geht, werden den Variablen Werte oder Ausdrücke zugewiesen. In einem Endzustand sind die Gleichungsterme sämtlich Grundzustände (vergleiche Gleichung (27)). Wenn der Automat mindestens einen Pfad enthält, der im Anfangszustand beginnt und in einem Endzustand endet, so ist das Theorem in Bezug auf die gegebene Kenntnisbasis wahr, und die resultierende Variablen-Umschreibung ist zulässig. Wenn dies nicht der Fall ist, so ist das Theorem falsch.
  • Die Funktion des vollständigen Teilfolgenterms, die in dem Zusammenhang jedes von dem Rückschließer beweisbaren Theorems vorhanden ist, besteht darin, eine Anleitung zu bilden für den Aufbau des Beweis-Automaten. Dies geschieht durch Transformieren der Gleichungsterme des Theorems in eine kanonische feste Punktgleichung, bezeichnet als Kleene-Schutzenberger-Gleichung (KSE), die eine Blaupause für den Aufbau des Beweis-Automaten darstellt. Dieser feste Punkt stimmt überein mit der Lösung des Optimierungsproblems, welches durch die Gleichungen (20) und (21) formuliert wird, wenn es eine Lösung gibt. Die allgemeine Form der KSE lautet: Z ≈ E(p)·Z + T(p) (28)
  • In der Gleichung (28) ist E eine quadratische Matrix, wobei jeder Eintritt eine rationale Form ist, aufgebaut aus der Basis von Rückschlußoperatoren, die oben beschrieben wurden, und T ein Vektor von Gleichungsformen aus der Kenntnisbasis ist. Jeder nicht-leere Eintrag Eij in E entspricht dem Rand des Beweis-Automaten, der die Zustände i und j verbindet. Der Binäroperator zwischen E(p) und Z repräsentiert den Operator „Anwenden der Schlußfolgerung auf. Endzustände werden bestimmt durch die nicht-leeren Terme von T.
  • Die p-Terme sind übliche Parameterwerte in den Rückschlußoperatortermen in E(•). Eine Zusammenfassung der von dem Rückschließer ausgeführten Prozedur ist in 7 dargestellt.
  • Der Aufbau des Automaten erfolgt aus der kanonischen Gleichung und nicht aus der nicht-deterministischen Anwendung der Rückschlußregeln. Diese Vorgehensweise reduziert die Rechenkomplexität der kanonischen Gleichung (niederes Polynom) und ist bedeutend besser als das Anwenden von Rückschlußregeln in direkter Weise (exponentiell). Der Automat wird simuliert, um Bespiele für die Zustands-, Aktions- und Bewertungsvariablen unter Verwendung der Automaten-Zerlegungsprozedur zu generieren, was n log2 n Zeit erfordert, wobei n ≈ Anzahl der Zustände des Automaten. Diese Prozedur „Teile und Herrsche" implementiert die rekursive Zerlegung des Automaten in eine Kaskade von parallelen Einheitsautomaten (ein Anfangszustand und ein Endzustand). Jeder dieser aus der Zerlegung resultierenden Automaten wird unabhängig von den anderen ausgeführt. Das Verhalten des resultierenden Automatennetzes ist identisch mit dem Verhalten, welches man aus dem ursprünglichen Automaten erhält, allerdings mit durchführbarer zeitlicher Komplexität.
  • Der Rückschließer 26 nach 2 für jede Steuerung erfüllt zwei Funktionen: Erzeugen eines Beweises für das Systemverhalten-Theorem jedes Agenten, welches von dem Planer (Gleichungen (20) und (21)) generiert wird, und Fungieren als zentrales Element in dem Kenntnisdekodierer. Seine Funktion des Beweisens des Verhaltenstheorems wird im folgenden beschrieben. Später dann wird seine Funktion als Bestandteil des Kenntnisdekodierers dargestellt.
  • Um zu zeigen, wie der Rückschließer dazu eingesetzt wird, das Planertheorem zu beweisen, Gleichungen (20) und (21), wird dieses Theorem als erstes in ein Muster der Gleichungsform (22) transformiert. Da die Gleichungen (20) und (21) ein konvexes Optimierungsproblem beschreiben, wird eine notwendige und hinreichende Bedingung für die Optimalität durch folgende dynamische Programmierformulierung gebildet:
    Figure 00540001
    Y(t) = p
    τ ∈ [t, t + Δ]
  • In dem Ausdruck (29) kennzeichnet die als optimale Machbarkeitskostenfunktion bezeichnete Funktion Vi die kleinste Größe beim Starten von einem beliebigen Punkt innerhalb des laufenden Intervalls. Die zweite Gleichung ist die entsprechende Hamilton-Jacobi-Bellman-Gleichung für das durch die Gleichungen (20) und (21) angegebene Problem, wobei H der Hamiltonwert für das relaxierte Problem ist. Diese Formulierung liefert die formale Verbindung zwischen dem deduktiven Theorembeweis und der optimalen Steuertheorie. Der Rückschließer ermöglicht eine optimale Echtzeitlösung des formalen Steuerproblems, resultierend in einer intelligenten Verteilten Echtzeitsteuerung des Mehrfachagentensystems. Die zentrale Idee des Schlußfolgerns einer Lösung zu der Gleichung (29) besteht darin, die obige Kostenfunktion V(.,.) zu erweitern in eine rationale Potenzfolge V in der Algebra D〈〈(Y, τ)〉〉 (30)
  • Das Ersetzen von Vi durch V in der zweiten Gleichung des Ausdrucks (29) liefert zwei Größen: eine Menge von Polynomgleichungen für die Koeffizienten von V und ein Teilfolgenausdruck zur Darstellung der Optimalität. Wegen der Konvexität und der Rationalität von V ist die Anzahl der zum Charakterisieren der Koeffizienten von V benötigten Gleichungen endlich. Die resultierende Kette von Konjunktionen von Koeffizientengleichungen und der Optimalitäts-Teilfolgenausdruck haben die Gleichungsform (22).
  • Zusammengefaßt: für jeden Agenten arbeitet der in 2 gezeigte Rückschließer 26 gemäß folgender Prozedur:
    Schritt 1: Laden der laufenden Theoremgleichungen (20) und (21);
    Schritt 2: Transformieren des Theorems in Gleichungsform (22) über die Gleichung (29); und
    Schritt 3: Ausführen des Beweises gemäß dem in 7 dargestellten Ablauf, der oben bereits beschrieben wurde.
  • Wenn das Theorem logisch aus der Kenntnisbasis folgt (das heißt, es ist wahr), endet die Rückschließprozedur im Schritt 3 mit den Aktionen αi(). Wenn das Theorem nicht logisch aus der Kenntnisbasis folgt, wird der in 2 gezeigte Adapter 30 aktiviert, und das Theorem wird von dem Theoremplaner 24 nach 2 entsprechend der oben dargelegten Strategie modifiziert. Dieser Mechanismus ist die Essenz der Reaktivität innerhalb des Agenten. Wegen der Relaxation und der Konvexität garantiert dieser Mechanismus, daß die steuerbare Menge des Definitionsbereichs strikt größer ist als der Mechanismus ohne diese Korrekturstrategie.
  • Der in 2 gezeigte Kenntnisdekodierer 32 setzt die Kenntnisdaten aus dem Netzwerk um in die Agenten-Kenntnisbasis, indem er die Zwischenagenten-Spezifikationsklauseln der Kenntnisbasis aktualisiert. Diese Klauseln kennzeichnen die zweite Randbedingung in dem Ausdruck (29). Insbesondere drücken sie die Randbedingungen aus, die durch den Rest des Netzwerks jedem Agenten auferlegt werden. Außerdem kennzeichnen sie global-lokale Transformationen. Schließlich liefern sie die Regeln für den Aufbau verallgemeinerter Multiplizierer zum Einbeziehen der Zwischenagenten-Randbedingungen in ein vollständiges unbeschränktes Kriterium, welches dann dazu dient, die Kostenfunktion für das nicht-lineare Optimierungsproblem in der ersten Gleichung des Ausdrucks (29) zu erstellen. Ein verallgemeinerter Multiplizierer ist ein Operator, der eine Randbedingung in einen Potentialterm transformiert. Dieses Potential wird dann in die ursprüngliche Lagrange-Beziehung einbezogen, die nun die Explizität für die Randbedingung begründet.
  • Der in 2 gezeigte Kenntnisdekodierer 32 besitzt einen eingebauten Rückschließer, der dazu dient, die Struktur des Multiplizierers und Transformationen folgern mit Hilfe einer Prozedur, die derjenigen ähnlich ist, die oben für die Gleichung (14) beschrieben wurde. Insbesondere werden der Multiplizierer und die Transformationen erweitert zu einer rationalen Potenzfolge in der die Gleichung (30) definierten Algebra. Dann dienen die notwendigen Bedingungen für die Dualität dazu, die Konjunktionen der Gleichungsformen und einen Teilfolgenausdruck zu bestimmen, die benötigt werden, um ein Theorem der Form der Gleichung (22) zu erstellen, dessen Beweis einen Multiplizierer zum Hinzufügen der Randbedingung zu der Lagrange-Bedingung des Agenten als weiteres Potential erzeugt.
  • Die Verknüpfung von Gleichungsformen für jede global-lokale Transformation wird erstellt durch Anwenden des folgenden invarianten Einbettungsprinzips. Für jeden Agenten sind die zu einem gegebenen Zeitpunkt t im laufenden Intervall gegebenen Aktionen, wie sie gemäß Gleichung (29) berechnet werden, die gleichen Aktionen, die für t berechnet werden, wenn die Formulierung so erweitert wird, daß sie das vorhergehende, das laufende und das nächste Intervall beinhaltet.
  • Durch die Transivität und Konvexität des Kriteriums läßt sich das Prinzip analytisch auf den gesamten Horizont erweitern. Die invariante Einbettungsgleichung hat den gleichen Aufbau wie die in der Gleichung (29) gegebene dynamische Programmiergleichung, allerdings unter Verwendung des globalen Kriteriums und der globalen Hamilton-Größe anstelle der entsprechenden lokalen Größen.
  • Die lokal-globalen Transformationen werden gewonnen durch Invertieren der global-lokalen Transformationen, die erhalten werden durch Ausdrücken der invarianten Einbettungsgleichung als Gleichungstheorem in der Form der Gleichung (22). Diese Traversen existieren aufgrund der Komplexität der relaxierten Lagrange-Beziehung und der Rationalität der Potenzreihen.
  • 10 zeigt die Funktionalität des Kenntnisdekodierers 32 nach 2 für jeden Agenten in Ausdrücken von dem, was er tut. Der oben beschriebne Multiplizierer hat den Effekt, den Rest des Systems und die übrigen Agenten in ein äquivalentes Partnersystem 167 und Partneragenten 168 zu vereinen durch System-Interaktion bzw. Agenteninteraktion 169, betrachtet aus der Sicht des laufenden Agenten 165. Das in 10 dargestellte Aggregationsmodell beschreibt, wie jeder Agent 166 den Rest des Netzwerks wahrnimmt. Dieses einzigartige Merkmal ermöglicht die Kennzeichnung der Skalierbarkeit der Architektur in einzigartiger Weise. Um nämlich die Rechenkomplexität einer Anwendung zu ermitteln, sei lediglich der Agent 166 mit der höchsten Komplexität (das ist der lokale Agent mit dem komplexesten Kriterium) sowie dessen Partner 168 betrachtet.
  • 11 zeigt ein Beispiel für die Anwendung der MAHCA auf das Planen, die Terminplanung und die Steuerung einer diskreten Fertigungsanlage 172. Ein logisches Agentennetz 11, wie es in 1 dargestellt ist, kann die logische Operation von ereignisbasierten Komponenten synchronisieren mit der Entwicklung von kontinuum-basierten Komponenten in der Weise, daß nicht funktionierende Terminpläne 180 derart repariert werden, daß die Ausführung der Ausgabe von diskreten Fertigungs-Planungsfunktionen 178 auf hoher Ebene synchronisiert wird, um nahezu optimale Terminpläne für auszuführende Aktionen durch programmierbare Logiksteuerungen (PLCs) 182 erreicht werden. Die von den PLC-Komponenten angeforderten Aktionen müssen mit Entwicklungs-Randbedingungen in Einklang stehen. Ein solches System kann implementiert werden mit dem Terminplaner 180 als Einzelagenten, der als der Hybridsystem-Terminplaner den „Klebstoff" zwischen dem auf hohem Niveau arbeitenden Planer 178 und der auf niedrigem Niveau arbeitenden Steuerung 182 wirkt, implementiert unter Verwendung herkömmlicher handelsüblicher Planungssoftware sowie handelsüblicher programmierbarer Logiksteuerungen, oder aber als Mehrfachagenten-System mit dem Planer, dem Terminplaner und der Steuerung, die als Agenten implementiert sind. Die Steuerung 182 bildet eine Schnittstelle für den Eingang in die bauliche Anlage über Lesen-/Test-Komponenten 176, die den Zustand der Anlage 172, die Eingänge 170 und die Produkte 174 erfassen. Die Steuerung lenkt den Betrieb der Anlage über Steueraktionen 183.
  • 12 zeigt ein Beispiel eines Zwei-Agenten-Mehrfachagenten-Netzes für eine diskrete Fertigungsanlage, wie sie in 11 gezeigt ist. Ein Produzent 190, ein Knotensteuerungsagent 196 sowie ein Verbraucher 192 mit einem Steuerungsagenten 200 können dazu eingesetzt werden, nahezu optimale Terminpläne für die Arbeit von Zellenaktionen zu erzeugen und zu reparieren, um so die Ausführung von Produktionsanforderungen nach Maßgabe erstellter Prioritäten und Produktions-Randbedingungen zu synchronisieren. Erreicht wird diese Synchronisation dadurch, daß die System-Zielvorgabe in den Verbraucher-Knotensteuerungsagenten 200 eingegeben, der Nachrichten über eine Agentenkommunikation 198 zu dem Produzenten-Knotensteueragenten 196 weiterleitet. Agenten ermitteln den Zustand des Produzenten 190 und des Verbrauchers 192 mit Hilfe von Sensoren 202, und sie ändern den Systemzustand unter Verwendung von angewiesenen Aktionen 204. Produzenten- und Konsumenten-Interaktionen werden begrenzt durch physische Interaktionen 194. Aktionen, die von dem Zwei-Agenten-Mehrfachagenten-Netz produziert werden, synchronisieren den Betrieb der Anlage.
  • 13 zeigt ein Beispiel für ein Fünf-Agenten-Mehrfachagenten-Netz für eine diskrete Fertigungsanwendung, wie sie in 11 gezeigt ist. Ein Mehragentennetz (wie es in 1 und 7 dargestellt ist) kann so konfiguriert werden, daß es fünf Zellen für eine Steuerung einer diskreten Fertigungsanlage konfiguriert. 13 veranschaulicht die MAHCA mit fünf permanenten Agenten, die einen Fertigungsprozeß zum Erzeugen von Kunststofformteilen steuern. Die Anlage setzt sich aus fünf funktionellen Zellen zusammen:
    Zelle 1 210 führt die Versand- und Empfangsfunktionen aus und enthält außerdem einen automatisierten Hubstapler 120, der Werkstoffe und Produkte durch die Fabrik transportieren kann. Die Funktionen der Zelle 1 werden gesteuert und terminlich geplant durch den Versand- und Empfangs-MAHCA-Agenten 221. Man beachte, daß der Agent in dieser Zelle mit einem menschlichen Bediener 222 interagiert (die MAHCA kann halbautomatische Aufgaben ausführen).
  • Zelle 2 212, der Abrechnungsagent, führt die Abrechnungs- und Anlagenkoordinationsfunktionen durch. Dieser Agent führt außerdem Inventar- und Steuerfunktionen für das Element der Zelle 3, ein automatisiertes Warenregal 213, aus.
  • Zelle 3 214 setzt sich zusammen aus einem Mischer 230, der die Rohstoffe mischt und das Kunstharzgemisch erzeugt, welches für die Endprodukte verwendet wird. Der Mischer wird von dem Mischer-Steueragenten 224 gesteuert.
  • Zelle 4 216 setzt sich zusammen aus einem Former 226 und einem Former-Steueragenten 228. Dieser Agent 228 führt außerdem Steuerfunktionen für die Prozeßkomponente der Zelle 5 aus.
  • Zelle 5 218, die die Verpackungseinheit 234 enthält, wird ebenfalls von dem Verpackungssteueragenten 232 der MAHCA gesteuert.
  • Darüber hinaus steht das MAHCA-Rahmenwerk zur Verfügung, um herkömmliche Prozeduren zu veranlassen, mit deren Hilfe die Transformation, das heißt Umsetzung jener Funktionen in Darstellungen beschleunigt wird, die für eine parallele Lösung geeignet sind. Erreicht wird dies durch eine Fortschreibung, bei der es sich um einen symbolischen Algorithmus zum Transformieren eines diskreten Prozesses mit einer Differentialgleichung handelt, deren Lösung die von dem Prozeß errechneten Werte enthält. Die Fortschreibung ist eine allgemeine Prozedur, die eine Ausführung einer Prozedur für einen Computer mit verringertem Befehlssatz (RISC) ersetzt durch das Lösen einer Differentialgleichung, deren Lösung an ausgewählten Abtastpunkten übereinstimmt mit den Ausgangswerten der Prozeduren. Das Schlüsselelement des Algorithmus besteht in einem allgemeinen Verfahren zum Kodieren einer Rekursion in die Entwicklung gewöhnlicher Differentialgleichungen. Der zweite Schlüssel betrifft das Programm als Menge von Randbedingungen, außerdem die Ausführung des Programms bis hin zur Beendigung, indem eine nahezu optimale Lösung für ein entsprechendes Lagrange-Problem in einer Finsler-Mannigfaltigkeit aufgefunden wird, die durch die Randbedingungen bestimmt wird.
  • Beim Online-Lösen der entsprechenden Hamilton-Jacobi-Bellman-Gleichungen für dieses Problem fungiert jeder individuelle digitale Befehl des ursprünglichen Programms als infinitesimaler Generator eines Vektorfelds auf der Mannigfaltigkeit. Die nahezu optimale Prell-Lösung, die die digitale Lösung ergibt, ist eine Prell- oder Ratterkombination dieser Vektorfelder. Dieses Rattern kann in beliebiger Reihenfolge geschehen, was bedeutet, daß jedes digitale Befehls-Vektorfeld während eines gewissen Teils des Prellvorgangs behandelt wird, dabei die Reihenfolge aber keine Rolle spielt. Es ist dies die Quelle für eine ausgeprägte Parallelität in dieser stetigen Ausführung digitaler Programme. Die Prellvorgänge werden aufgefunden über die Verbindungskoeffizienten der Cartan-Verbindung der Mannigfaltigkeit. Dies kann dazu genutzt werden, nahezu jedes digitale Programm zu beschleunigen, und findet außerdem Anwendung bei andauernden Prozessen mit geringfügigen Modifikationen. Bei dieser alternativen Anwendung der MAHCA ist die Lagrange-Problem-Formulierung die MAHCA-Formulierung, der Finsler-Raum ist die MAHCA-Trägermannigfaltigkeit, und die Infinitesimalwerte werden wie in der MAHCA berechnet. Jeder MAHCA-Agent kann eine individuelle Prozedur beschleunigen, und ein Agentennetz kann eine Gruppe von Prozeduren beschleunigen.
  • Damit läßt sich die Mehrfachagenten-Hybridsteuerarchitektur verwenden für intelligente Echtzeitsteuerung von verteilten, nicht-linearen Prozessen sowie Echtzeitsteuerung herkömmlicher Funktionen.

Claims (7)

  1. Agent (20) zum Steuern eines lokalen Prozesses eines verteilten Hybrid-Systems, umfassend: eine Kenntnisbasis (28) zum Speichern von Erfordernissen eines lokalen Prozesses; einen an die Kenntnisbasis (28) angeschlossenen Kenntnisbasiserbauer (22) zum Aquirieren von System-Randbedingsinformationen; einen Kenntnisdecodierer zum Einfügen von Information von anderen Agenten in die Kenntnisbasis (28); einen Planer (24) zum Generieren einer Beschreibung, die ein gewünschtes Verhalten des Systems als existent quantifizierter logischer Ausdruck repräsentiert; einen Rückschließer (26) zum Bestimmen, ob die Beschreibung derzeitig in der Kenntnisbasis (28) aktiv ist; und einen Adapter (30), der an den Rückschließer angeschlossen ist, um die Beschreibung dann zu modifizieren, wenn die Beschreibung derzeit in der Kenntnisbasis (28) nicht aktiv ist, dadurch gekennzeichnet, dass die Kenntnisbasis Kenntnis in den Eigenschaftsausdrücken erster oder höherer Ordnung codiert und der Rückschließer Logikregeln anwendet, um ein Theorem zu beweisen, welches aus aktiven Klauseln in der Kenntnisbasis besteht, um einen laufenden Aktionsplan zu bestimmen.
  2. Agent nach Anspruch 1, bei dem die Kenntnisbasis beinhaltet: eine Menge deklarativer Klauseln, geschrieben in einer Sprache, die sowohl logische als auch Evolutions-Randbedingungen über das Systemverhalten unterstützt.
  3. Agent nach Anspruch 1, bei dem die System-Randbedingungsinformation eine lokale Randbedingung aufweist.
  4. Agent nach Anspruch 1, bei dem die System-Randbedingungsinformation eine globale Randbedingung aufweist.
  5. Agent nach Anspruch 1, bei dem der Kenntniserbauer aufweist: eine Schnittstelle für einen Benutzer zum Empfangen von Systemanforderungsinformation.
  6. Agent nach Anspruch 5, bei dem die Schnittstelle Systemanforderungsinformation offline akzeptiert.
  7. Agent nach Anspruch 5, bei dem die Schnittstelle Systemanforderungsinformation online akzeptiert.
DE69635162T 1995-11-29 1996-11-27 Hybride steuerungsarchitektur mit mehreren agenten Expired - Fee Related DE69635162T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US564008 1995-11-29
US08/564,008 US6088689A (en) 1995-11-29 1995-11-29 Multiple-agent hybrid control architecture for intelligent real-time control of distributed nonlinear processes
PCT/US1996/019073 WO1997020258A1 (en) 1995-11-29 1996-11-27 Multiple-agent hybrid control architecture

Publications (2)

Publication Number Publication Date
DE69635162D1 DE69635162D1 (de) 2005-10-13
DE69635162T2 true DE69635162T2 (de) 2006-06-29

Family

ID=24252795

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69635162T Expired - Fee Related DE69635162T2 (de) 1995-11-29 1996-11-27 Hybride steuerungsarchitektur mit mehreren agenten

Country Status (8)

Country Link
US (1) US6088689A (de)
EP (2) EP1600829A3 (de)
JP (1) JP2000501531A (de)
KR (1) KR19990071859A (de)
AT (1) ATE304188T1 (de)
AU (1) AU717675B2 (de)
DE (1) DE69635162T2 (de)
WO (1) WO1997020258A1 (de)

Families Citing this family (131)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6023694A (en) * 1996-01-02 2000-02-08 Timeline, Inc. Data retrieval method and apparatus with multiple source capability
US5802511A (en) * 1996-01-02 1998-09-01 Timeline, Inc. Data retrieval method and apparatus with multiple source capability
US6631382B1 (en) 1996-01-02 2003-10-07 Timeline, Inc. Data retrieval method and apparatus with multiple source capability
WO1997036247A1 (en) * 1996-03-25 1997-10-02 Stoneman Martin L Autonomous decision systems
US7885912B1 (en) 1996-03-25 2011-02-08 Stoneman Martin L Humanoid machine systems, methods, and ontologies
US8983889B1 (en) 1996-03-25 2015-03-17 Martin L. Stoneman Autonomous humanoid cognitive systems
US6230066B1 (en) * 1998-09-08 2001-05-08 Ford Global Technologies, Inc. Simultaneous manufacturing and product engineering integrated with knowledge networking
US6747675B1 (en) * 1998-12-18 2004-06-08 Tangis Corporation Mediating conflicts in computer user's context data
US7231439B1 (en) 2000-04-02 2007-06-12 Tangis Corporation Dynamically swapping modules for determining a computer user's context
US7046263B1 (en) 1998-12-18 2006-05-16 Tangis Corporation Requesting computer user's context data
US8225214B2 (en) 1998-12-18 2012-07-17 Microsoft Corporation Supplying enhanced computer user's context data
US6920616B1 (en) 1998-12-18 2005-07-19 Tangis Corporation Interface for exchanging context data
US6968333B2 (en) 2000-04-02 2005-11-22 Tangis Corporation Soliciting information based on a computer user's context
US6791580B1 (en) 1998-12-18 2004-09-14 Tangis Corporation Supplying notifications related to supply and consumption of user context data
US8181113B2 (en) 1998-12-18 2012-05-15 Microsoft Corporation Mediating conflicts in computer users context data
US7779015B2 (en) 1998-12-18 2010-08-17 Microsoft Corporation Logging and analyzing context attributes
US7107539B2 (en) 1998-12-18 2006-09-12 Tangis Corporation Thematic response to a computer user's context, such as by a wearable personal computer
US7225229B1 (en) 1998-12-18 2007-05-29 Tangis Corporation Automated pushing of computer user's context data to clients
US9183306B2 (en) 1998-12-18 2015-11-10 Microsoft Technology Licensing, Llc Automated selection of appropriate information based on a computer user's context
US6842877B2 (en) 1998-12-18 2005-01-11 Tangis Corporation Contextual responses based on automated learning techniques
US6513046B1 (en) 1999-12-15 2003-01-28 Tangis Corporation Storing and recalling information to augment human memories
US6801223B1 (en) 1998-12-18 2004-10-05 Tangis Corporation Managing interactions between computer users' context models
EP1045304A1 (de) * 1999-04-16 2000-10-18 Martine Naillon Verfahren zur Steuerung eines zielnachstrebenden Entscheidungsprozesses in einem bestimmten Gebiet, so wie wirtschaftlich, technisch, organisatorisch oder dergleichen und System zur Ausführung des Verfahrens
US6789054B1 (en) * 1999-04-25 2004-09-07 Mahmoud A. Makhlouf Geometric display tools and methods for the visual specification, design automation, and control of adaptive real systems
US6556211B2 (en) 1999-06-02 2003-04-29 Punch Software, Llc Method for constructing architectural models including scaled surface textures
US6404424B1 (en) * 1999-06-02 2002-06-11 Punch Software, Llc Method for constructing architectural models including scaled surface textures
DE19935318A1 (de) * 1999-07-28 2001-02-08 Schneider Automation Gmbh Produktionssystem
US6826518B1 (en) * 1999-09-20 2004-11-30 Ut-Battelle, Llc Method for distributed agent-based non-expert simulation of manufacturing process behavior
US20020046157A1 (en) * 1999-11-01 2002-04-18 Neal Solomon System, method and apparatus for demand-initiated intelligent negotiation agents in a distributed network
US20020069134A1 (en) * 1999-11-01 2002-06-06 Neal Solomon System, method and apparatus for aggregation of cooperative intelligent agents for procurement in a distributed network
US20030074301A1 (en) * 1999-11-01 2003-04-17 Neal Solomon System, method, and apparatus for an intelligent search agent to access data in a distributed network
US20020055903A1 (en) * 1999-11-01 2002-05-09 Neal Solomon System, method, and apparatus for a cooperative communications network
AU2001234620A1 (en) * 2000-01-28 2001-08-07 Ibeam Broadcasting Corporation Method and apparatus for client-side authentication and stream selection in a content distribution system
US6587844B1 (en) * 2000-02-01 2003-07-01 At&T Corp. System and methods for optimizing networks of weighted unweighted directed graphs
US7464153B1 (en) 2000-04-02 2008-12-09 Microsoft Corporation Generating and supplying user context data
US6947917B1 (en) * 2000-04-14 2005-09-20 Honeywell International Inc. Advanced recipe—a knowledge based information system for production processes
DE60102242T2 (de) * 2000-06-29 2005-01-27 Aspen Technology, Inc., Cambridge Rechnerverfahren und gerät zur beschränkung einer nicht-linearen gleichungsnäherung eines empirischen prozesses
US6782372B1 (en) * 2000-09-28 2004-08-24 Sandia Corporation Latent effects decision analysis
US20020054130A1 (en) 2000-10-16 2002-05-09 Abbott Kenneth H. Dynamically displaying current status of tasks
EP1199678A1 (de) * 2000-10-17 2002-04-24 Martine Naillon Verfahren zur Steuerung eines zielnachstrebenden Entscheidungsprozesses in einem bestimmten Gebiet, so wie wirtschaftlich, technisch, organisatorisch oder dergleichen
DE60037429T2 (de) * 2000-10-30 2008-11-27 Siemens Ag Verfahren zur Reduzierung von endlichen Steuerautomaten sowie entsprechendes rechnerlesbares Medium
US7277832B2 (en) * 2001-05-04 2007-10-02 Bigwood Technology, Inc. Dynamical method for obtaining global optimal solution of general nonlinear programming problems
DE10125610A1 (de) * 2001-05-25 2002-12-12 Siemens Ag Verfahren und Computersystem zur Durchführung einer Simulation
US7009610B1 (en) 2001-10-25 2006-03-07 Keeley Thomas M Computer program and related data processing methods for use in knowledge enhanced electronic logic
US7159208B2 (en) * 2001-10-25 2007-01-02 Keeley Thomas M Programming toolkit for use in the development of knowledge enhanced electronic logic programs
US7039623B1 (en) 2001-10-25 2006-05-02 Keeley Thomas M Computer program and data structure for use in knowledge enhance electronic logic
US7275048B2 (en) * 2001-10-30 2007-09-25 International Business Machines Corporation Product support of computer-related products using intelligent agents
GB2384580A (en) * 2001-12-14 2003-07-30 Empiricom Technologies Ltd Knowledge acquisition in expert systems
US20030188040A1 (en) * 2002-03-29 2003-10-02 International Business Machines Corporation Software agent hosting environment with extensible middleware integration
US20040028023A1 (en) * 2002-04-18 2004-02-12 Sarnoff Corporation Method and apparatus for providing ad-hoc networked sensors and protocols
US6839660B2 (en) * 2002-04-22 2005-01-04 Csi Technology, Inc. On-line rotating equipment monitoring device
US7370072B2 (en) * 2002-07-08 2008-05-06 Electronic Evidence Discovery, Inc. System and method for collecting electronic evidence data
US7475107B2 (en) * 2002-07-08 2009-01-06 Electronic Evidence Discovery, Inc. System and method for managing distributed computer processes
TWI233008B (en) * 2002-09-30 2005-05-21 Tokyo Electron Ltd Method and apparatus for the monitoring and control of a semiconductor manufacturing process
US7437703B2 (en) * 2002-10-25 2008-10-14 Sap Ag Enterprise multi-agent software system with services able to call multiple engines and scheduling capability
US7266426B2 (en) * 2002-12-16 2007-09-04 Rockwell Automation Technologies, Inc. Autonomous control unit-based control system capable of active diagnostics
US7228187B2 (en) * 2002-12-16 2007-06-05 Rockwell Automation Technologies, Inc. System and method for interfacing multi-agent system
US7640291B2 (en) * 2002-12-16 2009-12-29 Rockwell Automation Technologies, Inc. Agent-equipped controller having data table interface between agent-type programming and non-agent-type programming
US7721218B2 (en) * 2003-03-31 2010-05-18 International Business Machines Corporation Mechanism for intelligent user interface presentation of a software agent
US7124119B2 (en) * 2003-03-31 2006-10-17 International Business Machines Corporation Communication between intelligent agents and humans in a distributed system environment
US7925984B2 (en) * 2003-03-31 2011-04-12 International Business Machines Corporation Remote configuration of intelligent software agents
US7647327B2 (en) 2003-09-24 2010-01-12 Hewlett-Packard Development Company, L.P. Method and system for implementing storage strategies of a file autonomously of a user
US7512581B2 (en) * 2003-10-09 2009-03-31 Keeley Thomas M Electronic circuit implementing knowledge enhanced electronic logic solutions
DE102004016580B4 (de) * 2004-03-31 2008-11-20 Nec Europe Ltd. Verfahren zur Übertragung von Daten in einem Ad Hoc Netzwerk oder einem Sensornetzwerk
US20050234696A1 (en) * 2004-04-15 2005-10-20 The University Of Chicago Automated agent-based method for identifying infrastructure interdependencies
KR100559251B1 (ko) * 2004-05-12 2006-03-15 한국생산기술연구원 개방형 인터넷망 기반의 로봇 개발을 위한 분산소프트웨어 통합서비스방법
KR100607141B1 (ko) * 2004-05-12 2006-08-01 한국생산기술연구원 개방형 분산처리구조의 로봇 제어 시스템
US7440933B2 (en) * 2004-06-18 2008-10-21 International Business Machines Corporation Method for facilitating problem resolution
US7823169B1 (en) 2004-10-28 2010-10-26 Wheeler Thomas T Performing operations by a first functionality within a second functionality in a same or in a different programming language
US7774789B1 (en) 2004-10-28 2010-08-10 Wheeler Thomas T Creating a proxy object and providing information related to a proxy object
US8266631B1 (en) 2004-10-28 2012-09-11 Curen Software Enterprises, L.L.C. Calling a second functionality by a first functionality
KR100757906B1 (ko) * 2004-11-26 2007-09-11 한국전자통신연구원 네트워크 기반 로봇 시스템 및 그 실행 방법
US7861212B1 (en) 2005-03-22 2010-12-28 Dubagunta Saikumar V System, method, and computer readable medium for integrating an original application with a remote application
US8578349B1 (en) 2005-03-23 2013-11-05 Curen Software Enterprises, L.L.C. System, method, and computer readable medium for integrating an original language application with a target language application
US7685528B2 (en) * 2005-06-08 2010-03-23 Keeley Thomas M Programming toolkit with aligning clipper windows for use in the development of knowledge enhanced electronic programs
US7644048B2 (en) * 2005-10-28 2010-01-05 General Dynamics Advanced Information Systems, Inc. System, method and software for cognitive automation
EP1793243A1 (de) * 2005-12-05 2007-06-06 Leica Geosystems AG Verfahren zur Auflösung einer Phasenmehrdeutigkeit
US7810140B1 (en) 2006-05-23 2010-10-05 Lipari Paul A System, method, and computer readable medium for processing a message in a transport
US7844759B1 (en) 2006-07-28 2010-11-30 Cowin Gregory L System, method, and computer readable medium for processing a message queue
US7965758B2 (en) 2006-09-15 2011-06-21 Itron, Inc. Cell isolation through quasi-orthogonal sequences in a frequency hopping network
US8787210B2 (en) 2006-09-15 2014-07-22 Itron, Inc. Firmware download with adaptive lost packet recovery
US9131117B2 (en) * 2006-09-18 2015-09-08 Telcordia Technologies, Inc. Optimal content distribution in video-on-demand tree networks
US7702602B1 (en) * 2006-12-22 2010-04-20 Hauser Robert R Moving and agent with a canonical rule from one device to a second device
US8132179B1 (en) 2006-12-22 2012-03-06 Curen Software Enterprises, L.L.C. Web service interface for mobile agents
US8200603B1 (en) 2006-12-22 2012-06-12 Curen Software Enterprises, L.L.C. Construction of an agent that utilizes as-needed canonical rules
US7970724B1 (en) 2006-12-22 2011-06-28 Curen Software Enterprises, L.L.C. Execution of a canonical rules based agent
US7949626B1 (en) 2006-12-22 2011-05-24 Curen Software Enterprises, L.L.C. Movement of an agent that utilizes a compiled set of canonical rules
US7664721B1 (en) * 2006-12-22 2010-02-16 Hauser Robert R Moving an agent from a first execution environment to a second execution environment using supplied and resident rules
US7660777B1 (en) * 2006-12-22 2010-02-09 Hauser Robert R Using data narrowing rule for data packaging requirement of an agent
US7860517B1 (en) 2006-12-22 2010-12-28 Patoskie John P Mobile device tracking using mobile agent location breadcrumbs
US8423496B1 (en) 2006-12-22 2013-04-16 Curen Software Enterprises, L.L.C. Dynamic determination of needed agent rules
US7702604B1 (en) * 2006-12-22 2010-04-20 Hauser Robert R Constructing an agent that utilizes supplied rules and rules resident in an execution environment
US7702603B1 (en) * 2006-12-22 2010-04-20 Hauser Robert R Constructing an agent that utilizes a compiled set of canonical rules
US7660780B1 (en) 2006-12-22 2010-02-09 Patoskie John P Moving an agent from a first execution environment to a second execution environment
US9311141B2 (en) 2006-12-22 2016-04-12 Callahan Cellular L.L.C. Survival rule usage by software agents
US7698243B1 (en) * 2006-12-22 2010-04-13 Hauser Robert R Constructing an agent in a first execution environment using canonical rules
US20090089031A1 (en) * 2007-09-28 2009-04-02 Rockwell Automation Technologies, Inc. Integrated simulation of controllers and devices
US7801710B2 (en) * 2007-09-28 2010-09-21 Rockwell Automation Technologies, Inc. Simulation controls for model variability and randomness
US20090089029A1 (en) * 2007-09-28 2009-04-02 Rockwell Automation Technologies, Inc. Enhanced execution speed to improve simulation performance
US8069021B2 (en) * 2007-09-28 2011-11-29 Rockwell Automation Technologies, Inc. Distributed simulation and synchronization
US20090089234A1 (en) * 2007-09-28 2009-04-02 Rockwell Automation Technologies, Inc. Automated code generation for simulators
US8548777B2 (en) * 2007-09-28 2013-10-01 Rockwell Automation Technologies, Inc. Automated recommendations from simulation
US8146899B2 (en) 2008-01-22 2012-04-03 Exmark Manufacturing Company, Incorporated Isolation system for a seat or the like, and vehicle incorporating same
US8538901B2 (en) 2010-02-05 2013-09-17 Toyota Motor Engineering & Manufacturing North America, Inc. Method for approximation of optimal control for nonlinear discrete time systems
US8655461B2 (en) * 2010-05-25 2014-02-18 Siemens Product Lifecycle Management Software Inc. Method, system, and non-transitory computer readable storage medium for generating code for a closed-loop controller
RU2485583C1 (ru) * 2012-01-25 2013-06-20 Федеральное государственное военное образовательное учреждение высшего профессионального образования Военная академия Ракетных войск стратегического назначения имени Петра Великого МО РФ Устройство для моделирования многоканальных преобразователей
US9342695B2 (en) * 2012-10-02 2016-05-17 Mordecai Barkan Secured automated or semi-automated systems
US11188652B2 (en) 2012-10-02 2021-11-30 Mordecai Barkan Access management and credential protection
US8898218B2 (en) * 2013-02-01 2014-11-25 Introspective Power, Inc. Generic distributed processing for multi-agent systems
US9843631B2 (en) * 2013-06-26 2017-12-12 Amazon Technologies, Inc. Producer system selection
US10082778B2 (en) 2014-06-20 2018-09-25 Veritone Alpha, Inc. Managing coordinated control by multiple decision modules
US20170271984A1 (en) 2016-03-04 2017-09-21 Atigeo Corp. Using battery dc characteristics to control power output
JP7222883B2 (ja) 2016-04-28 2023-02-15 ヴェリトーン アルファ インコーポレイテッド 予測を使用してターゲットシステムを制御すること
US10303131B2 (en) 2016-05-13 2019-05-28 Veritone Alpha, Inc. Using sensor data to assist in controlling a target system by modeling the functionality of the target system
US10394205B2 (en) 2016-11-29 2019-08-27 Virtual Peaker, Inc. Systems and methods for real-time control
CN108536972B (zh) * 2018-04-13 2022-02-01 中国人民解放军陆军装甲兵学院 基于自适应智能体的复杂系统可靠性仿真方法及系统
US10833799B2 (en) 2018-05-31 2020-11-10 Itron Global Sarl Message correction and dynamic correction adjustment for communication systems
US10666076B1 (en) 2018-08-14 2020-05-26 Veritone Alpha, Inc. Using battery state excitation to control battery operations
CN109271371B (zh) * 2018-08-21 2022-02-11 广东工业大学 一种基于Spark的分布式多层大数据分析处理模型
US10452045B1 (en) 2018-11-30 2019-10-22 Veritone Alpha, Inc. Controlling ongoing battery system usage while repeatedly reducing power dissipation
US10816949B1 (en) 2019-01-22 2020-10-27 Veritone Alpha, Inc. Managing coordinated improvement of control operations for multiple electrical devices to reduce power dissipation
US11097633B1 (en) 2019-01-24 2021-08-24 Veritone Alpha, Inc. Using battery state excitation to model and control battery operations
US11644806B1 (en) 2019-01-24 2023-05-09 Veritone Alpha, Inc. Using active non-destructive state excitation of a physical system to model and control operations of the physical system
US11069926B1 (en) * 2019-02-14 2021-07-20 Vcritonc Alpha, Inc. Controlling ongoing battery system usage via parametric linear approximation
US11407327B1 (en) 2019-10-17 2022-08-09 Veritone Alpha, Inc. Controlling ongoing usage of a battery cell having one or more internal supercapacitors and an internal battery
CN110738377B (zh) * 2019-10-25 2021-11-30 中国南方电网有限责任公司 含风电竞标的日前市场出清方法、装置、计算机设备
US11321104B2 (en) 2020-03-30 2022-05-03 Bank Of America Corporation Cognitive automation platform for customized interface generation
CN112637120B (zh) * 2020-11-16 2022-04-19 鹏城实验室 一种多智能体系统一致性控制方法、终端及存储介质
US11478927B1 (en) * 2021-04-01 2022-10-25 Giant.Ai, Inc. Hybrid computing architectures with specialized processors to encode/decode latent representations for controlling dynamic mechanical systems
US11892809B2 (en) 2021-07-26 2024-02-06 Veritone, Inc. Controlling operation of an electrical grid using reinforcement learning and multi-particle modeling
CN114995301A (zh) * 2022-04-24 2022-09-02 西安交通大学 一种基于分派规则的产线分布式调度方法及系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4803641A (en) * 1984-06-06 1989-02-07 Tecknowledge, Inc. Basic expert system tool
US4658370A (en) * 1984-06-07 1987-04-14 Teknowledge, Inc. Knowledge engineering tool
US5659668A (en) * 1993-09-30 1997-08-19 Sanyo Electric Co., Ltd. Knowledge base constructing system
CA2119085C (en) * 1994-03-15 2002-01-15 Deborah L. Pinard Adaptive communication system
US5612866A (en) * 1994-06-24 1997-03-18 Integrated Systems, Inc. Code generation system to construct an asynchronous real-time controller for a real-time system
US5831853A (en) * 1995-06-07 1998-11-03 Xerox Corporation Automatic construction of digital controllers/device drivers for electro-mechanical systems using component models

Also Published As

Publication number Publication date
EP1600829A3 (de) 2008-03-12
ATE304188T1 (de) 2005-09-15
EP1600829A2 (de) 2005-11-30
EP0864120B1 (de) 2005-09-07
DE69635162D1 (de) 2005-10-13
KR19990071859A (ko) 1999-09-27
EP0864120A4 (de) 2000-08-09
US6088689A (en) 2000-07-11
WO1997020258A1 (en) 1997-06-05
JP2000501531A (ja) 2000-02-08
AU1125897A (en) 1997-06-19
AU717675B2 (en) 2000-03-30
EP0864120A1 (de) 1998-09-16

Similar Documents

Publication Publication Date Title
DE69635162T2 (de) Hybride steuerungsarchitektur mit mehreren agenten
AU762880B2 (en) Multiple-agent hybrid control architecture for intelligent real-time control of distributed nonlinear processes
Jennings et al. Transforming standalone expert systems into a community of cooperating agents
Oztemel Intelligent manufacturing systems
CN111722539B (zh) 一种基于时间自动机的数字孪生制造单元行为建模方法
Jennings The ARCHON system and its applications
DE102010004473A1 (de) System aus Entwicklungsumgebungen und Maschinensteuerungen
Hustiu et al. Distributed path planning of mobile robots with ltl specifications
DE102020209511B3 (de) Verfahren und System zur Bestimmung von optimierten Programmparametern für ein Roboterprogramm
dos Santos Soares et al. Real-time scheduling of batch systems using Petri nets and linear logic
WO2022073913A1 (de) Planen eines technischen prozesses aufweisend hierarchisch gegliederte aufgaben und parallelisierungsoptionen
AU739208B2 (en) Multiple-agent hybrid control architecture
AU744460B2 (en) Multiple-agent hybrid control architecture
CA2235973C (en) Multiple-agent hybrid control architecture
Kohn et al. A hybrid systems approach to computer-aided control engineering
Xin et al. Knowledge transfer between multi-granularity models for reinforcement learning
Khranilov et al. The Intelligent Systems to Support the Automated Systems During Life Cycle
Sanz et al. Computational intelligence in process control
Kreuziger et al. A new system architecture for applying symbolic learning techniques to robot manipulation tasks
De Giacomo et al. Domain-independent reward machines for modular integration of planning and learning
Dimirovski et al. Fuzzy-Petri-Networks in Supervisory Control of Markov Processes in Robotized FMS and Robotic Systems
Yang et al. Multi-Agent Robust Control Synthesis from Global Temporal Logic Tasks
Rao et al. Integration strategy for distributed intelligent systems
Yasuda A Decentralized Control Architecture to Achieve Synchronized Task Behaviors in Autonomous Cooperative Multi-Robot Systems
Sawa et al. A study on evaluation of eligibility trace in instruction method for fuzzy Q-learning agent

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee