Multiagentensysteme: Aufbau, Konstruktionsprinzipien, Anwendung. Künstliche Intelligenz

Inhaltsverzeichnis:

Multiagentensysteme: Aufbau, Konstruktionsprinzipien, Anwendung. Künstliche Intelligenz
Multiagentensysteme: Aufbau, Konstruktionsprinzipien, Anwendung. Künstliche Intelligenz
Anonim

Mehragentensysteme (MAS) dienen dazu, voneinander unabhängige Prozesse zu koordinieren. Ein Agent ist eine Computereinheit in Form eines Programms oder eines Roboters. Ein Agent kann als autonom betrachtet werden, weil er in der Lage ist, sich anzupassen, wenn sich seine Umgebung ändert. Ein MAC besteht aus einer Reihe von Computerprozessen, die gleichzeitig ablaufen und gleichzeitig existieren, gemeinsame Ressourcen teilen und miteinander kommunizieren. Das Hauptproblem im MAC ist die Formalisierung der Koordination zwischen Agenten.

Multiagentensysteme definieren

Definition von Multiagentensystemen
Definition von Multiagentensystemen

MAC ist ein zukunftsweisender Ansatz zur Softwareentwicklung für Anwendungen in komplexen Domänen, in denen interagierende Anwendungskomponenten autonom und verteilt sind, in dynamischen und unsicheren Umgebungen arbeiten, einige organisatorische Regeln und Gesetze einh alten müssen und beitreten und gehen können ein Multiagentensystem zur Laufzeit.

Beispiele für solche Anwendungen sind Systeme, dieSteuerung und Optimierung der Stromerzeugung und -verteilung zwischen Verbrauchern oder Systemen, die Lasten in Verkehrssystemen optimal planen. Die Entwicklung von Systemen mit mehreren Agenten erfordert die Schaffung separater Agenten, Organisationen und Umgebungen.

Programmiersprachen bieten Programmierkonstrukte zur Umsetzung individueller Agenten in Bezug auf soziale und kognitive Konzepte wie Informationen, Ziele, Optionen, Normen, Emotionen und Entscheidungsregeln.

Multi-Agenten-Organisationen haben in Bezug auf soziale und organisatorische Konzepte Rollen, die mit Normen, Kommunikationsprotokollen und Ressourcen ausgestattet sind, die der Überwachung unterliegen. Die entwickelten Programmiersprachen und Frameworks werden verwendet, um agentenbasierte Simulationen für viele Branchen der kontinuierlichen Produktion zu erstellen: Elektrizität, Metallurgie, Gesundheitswesen, Internet, Transport, Verkehrsmanagement und Serious Games.

MAS unterscheiden sich von Single-Agent-Systemen dadurch, dass sie mehrere Agenten haben, die die Ziele und Aktionen der anderen modellieren. In einem allgemeinen Szenario kann es zu einer direkten Interaktion zwischen Agenten kommen. Aus Sicht eines einzelnen Agenten unterscheiden sich Multi-Agenten-Systeme am deutlichsten von Systemen mit einem einzelnen Agenten dadurch, dass die Dynamik der Umgebung durch andere Agenten bestimmt werden kann. Zusätzlich zu der Ungewissheit, die einer Domäne inhärent sein kann, beeinflussen andere Agenten die Umgebung absichtlich auf unvorhersehbare Weise.

Daher kann man davon ausgehen, dass alle MACs dynamische Umgebungen haben, was typisch für die Moderne istMultiagentensysteme. Es kann beliebig viele Agenten mit unterschiedlichem Grad an Heterogenität geben, mit oder ohne Möglichkeit zur direkten Kommunikation.

MAS Architektur

Architektur von MAC-Systemen
Architektur von MAC-Systemen

Agenten müssen mit einem kognitiven Modell ausgestattet sein:

  • Überzeugungen;
  • wünsche;
  • Absichten.

Auf der einen Seite liest er „Überzeugungen“über die Umwelt, die das Ergebnis seines Wissens und seiner Wahrnehmungen sind, und auf der anderen Seite eine Reihe von „Wünschen“. Das Kreuzen dieser beiden Sätze führt zu einem neuen Satz von „Absichten“, die dann direkt in Handlungen umgesetzt werden.

Agenten müssen über ein Kommunikationssystem verfügen. Hierfür gibt es mehrere spezialisierte Sprachen: Language Query and Manipulation Language (KQML). Kürzlich wurde der von der FIPA Foundation for Intelligent Physical Agents erstellte FIPA-ACL-Standard in Umlauf gebracht. Dieses letzte Prinzip des Aufbaus von Multiagentensystemen basiert auf der Theorie der Sprechakte.

Das Problem der Anpassung ist ein heikles Thema, das derzeit Gegenstand vieler Forschungen ist. Man kann ein Beispiel für einige Viren geben, sowohl biologische als auch Computerviren, die sich an eine mutierte Umgebung anpassen können.

Schließlich verdient eine effiziente Implementierung des MAC, obwohl streng genommen kein Teil der Systemarchitektur, Aufmerksamkeit in den vielen Programmiersprachen, die für das Studium der künstlichen Intelligenz entwickelt wurden. Insbesondere wird die LISP-Sprache erwähnt. Diese architektonischen Elemente werden auf ein System angewendet, das aus kognitiven Elementen bestehtAgenten.

Kategorien oder Modelle von Agenten

Die Klassifizierung von Agenten basiert auf zwei Kriterien: kognitive Agenten oder Reagenzien, die einerseits teleonomisches Verh alten oder einen Reflex zeigen. Die Unterscheidung, die zwischen kognitiv und reaktiv gemacht werden kann, ist im Wesentlichen eine Repräsentation der Welt, die dem Agenten zur Verfügung steht. Wenn ein Individuum mit einer "symbolischen Repräsentation" der Welt ausgestattet ist, aus der es Argumente formulieren kann, dann spricht man von einem kognitiven Agenten, während wenn es nur eine "subsymbolische Repräsentation" hat, d.h. beschränkt auf seine Wahrnehmungen, man spricht von einem reaktiven Agens. Diese kognitive und reaktive Unterscheidung entspricht zwei theoretischen Schulen von Multiagentensystemen.

Die erste unterstützt den grundsätzlichen Ansatz "intelligenter" Agenten für Kooperation aus soziologischer Sicht. Im zweiten wird die Möglichkeit des Auftretens von "klugem" Verh alten einer Reihe von nicht-intelligenten Agenten (Typ Ameise) untersucht. Der zweite Unterschied zwischen Verh altensverh alten und Reflex trennt das absichtliche Verh alten, das Verfolgen expliziter Ziele, vom Wahrnehmungsverh alten. So können die Tendenzen von Agenten explizit in Agenten zum Ausdruck kommen oder umgekehrt aus der Umwelt stammen. Tabelle mit verschiedenen Arten von Agenten:

  1. Kognitive Agenten.
  2. Reaktive Stoffe.
  3. Telenomisches Verh alten.
  4. Vorsätzliche Agenten.
  5. Verw altete Agenten.
  6. Reflexverh alten.
  7. Agenten "Module".
  8. Tropenmittel.

Kognitive Agenten sind meistens absichtlich, d.h. Sie haben feste Ziele, die sie zu erreichen versuchen. Manchmal werden jedoch Agenten namens Module verwendet, die eine Vorstellung von ihrem "Universum" ohne bestimmte Ziele haben. Sie könnten beispielsweise dazu dienen, Fragen anderer Agenten im "Universum" zu beantworten.

Reagenzien können in Aktoren und Tropenagenten unterteilt werden. Der instinktive Agent hat eine feste Mission und löst ein Verh alten aus, wenn er sieht, dass die Umgebung nicht mehr seinem zugewiesenen Zweck entspricht. Tropenmittel reagiert nur auf den örtlichen Zustand der Umgebung, zum Beispiel wenn es Licht gibt, dann läuft es. Die Motivationsquelle im internen Fall von Triebkräften, die eine „Mission“haben, bezieht sich nur auf das Umfeld.

Organisatorische Paradigmen

Organisatorische Paradigmen
Organisatorische Paradigmen

Mit der Entwicklung solcher Systeme wurden verschiedene Organisationsparadigmata entwickelt. Diese Strukturen von Multi-Agenten-Systemen bilden den Rahmen für Beziehungen und Interaktionen zwischen Agenten.

Hierarchien. In diesem Modell sind Agenten gemäß einer Baumstruktur hierarchisch, in der jeder Knoten ein Agent ist und eine Berechtigungsverknüpfung für seine untergeordneten Knoten hat. Dieses Modell zerstört den Gesamtzweck des Systems.

Holarchie nähert sich der Hierarchie. Es besteht keine Autoritätsbeziehung zwischen einem Agenten und seiner Untergruppe.

Eine Koalition ist ein vorübergehendes Bündnis von Agenten, die zusammenkommen und zusammenarbeiten, weil sich ihre persönlichen Interessen treffen. Der Wert der Koalition muss größer sein als die Summe der Einzelwerte der Agentenkomponenten.

Gemeinden sind sehr ähnlich wie Koalitionen undBefehle. Sie sollen jedoch dauerhaft sein und haben in der Regel mehrere Ziele zu erreichen. Außerdem können Agenten Versammlungen betreten und verlassen und mehreren gleichzeitig angehören.

Die Gesellschaft ist eine Reihe verschiedener Agenten, die interagieren und kommunizieren. Sie haben unterschiedliche Ziele, haben nicht die gleiche Rationalität und die gleichen Fähigkeiten, aber sie alle gehorchen gemeinsamen Gesetzen (Normen).

Agenten der Föderation geben einen Teil ihrer Autonomie an den Delegierten ihrer Gruppe ab. Gruppenagenten interagieren nur mit ihrem Delegierten, der wiederum mit Delegierten aus anderen Gruppen interagiert.

Verkaufsagenten bieten Artikel an, die die Agenten der Käufer beanspruchen können. Diese Art der Organisation ermöglicht es beispielsweise, reale Märkte zu simulieren und verschiedene Handelsstrategien zu vergleichen.

Matrix-Organisationsagenten sind hierarchisch. Anders als in der oben dargestellten Hierarchie, in der ein Agent nur wenigen anderen Agenten untergeordnet ist, können diejenigen in einer Matrixorganisation mehreren anderen untergeordnet sein.

Kombinationen - Diese kombinierte Organisation mischt viele der oben genannten Stile. Dies könnte beispielsweise eine Koalition oder eine Hierarchie von Teams sein.

Künstliche Intelligenz

Künstliche Intelligenz
Künstliche Intelligenz

Das Ziel der Kognitionswissenschaft ist es, die Natur und Funktionsweise der künstlichen Intelligenz zu verstehen, die interne Informationen verarbeitet, um sie sinnvoll zu machen. Viele Konzepte passen zu dieser Beschreibung: Menschen, Computer, Roboter, sensorische Systeme,die Liste ist endlos. Ein Systemtyp, der für Kognitionswissenschaftler von besonderem Interesse ist, ist der künstliche Selbstagent, der auf Informationen reagiert.

Ein intelligenter Agent (IA) ist in der Lage, Entscheidungen basierend auf seiner Erfahrung zu treffen und in verschiedenen Situationen Maßnahmen zu ergreifen. Wie der Begriff „künstlich“andeutet, ist die Art der interessierenden autonomen Agenten nicht von der Natur geschaffen. Daher ist ein künstlicher Agent alles, was von Menschen geschaffen wurde und in der Lage ist, auf der Grundlage der von ihm wahrgenommenen Informationen, seiner eigenen Erfahrungen, Entscheidungen und Handlungen zu handeln.

Das Gebiet der extranatürlichen Intelligenz bietet die technischen Fähigkeiten, um gewünschte Arten von Agenten in eine Programmiersprache, zugehörige Software und geeignete Architektur (Hardware und zugehörige Software) zu übersetzen, um den Agenten in der realen oder simulierten Welt zu implementieren.

Umgebung der Wahrnehmungswelt

Umgebung der Wahrnehmungswelt
Umgebung der Wahrnehmungswelt

Agent ist alles, was die Umgebung durch Sensoren aufnimmt und durch Effektoren darauf einwirkt, was einfach genug klingt. Diese Definition eines Agenten deckt eine breite Palette von Maschinen ab, von Thermostaten bis hin zu Objekten, die tatsächlich ein kleines Verh altensrepertoire lernen können.

Sensoren sind Werkzeuge, die von Agenten verwendet werden, um Informationen über ihre Welt zu sammeln. Die Tastatur und der Camcorder können als Sensoren fungieren, wenn sie mit dem Agenten verknüpft sind. Am Ende der Reaktion des Systems sind die Performer die Werkzeuge, die der Agent verwendet, um die Umgebung zu beeinflussen. Beispiele für Effektoren sindMonitor, Drucker und Roboterarm.

Normalerweise ist die Umgebung die Domäne oder Welt des Agenten. Diese Bereiche sollten zumindest vorerst auf bestimmte Situationen beschränkt werden, um die unbegrenzten Möglichkeiten der Alltagswelt zu vermeiden.

Autonomes Einflusssystem

Autonomes Schlagsystem
Autonomes Schlagsystem

Ein autonomer Agent ist „ein System innerhalb und Teil einer Umgebung, das diese Umgebung wahrnimmt und im Laufe der Zeit darauf einwirkt, um seine eigene Agenda auszuführen und um zu beeinflussen, was es in der Zukunft erlebt“. Diese Definition von Franklin und Greisser spiegelt alle Grundfunktionen intelligenter Agenten wider, mit Ausnahme ihrer Geselligkeit. Dies bietet eine gute Annäherung an die Hauptmerkmale der großen Vielf alt von KIs in der Entwicklung.

Solche Agenten fühlen ihre Umgebung. Aber sensorische Daten oder Wahrnehmungen umfassen hier nicht nur Daten über andere Objekte, sondern auch den Einfluss des Agenten selbst auf die Verhältnisse in der Umgebung. Sensoren können organisch sein, wie Augen und Ohren und ihre neuronalen Prozessoren, oder künstlich, wie Video- und Audioprozessoren, die in einen digitalen Computer eingebettet sind. Die Umgebung kann ein sehr begrenzter Bereich sein, wie ein geschlossener Raum, oder sehr komplex, wie eine Börse oder eine Ansammlung von Asteroiden. Sensoren müssen mit den Objekttypen übereinstimmen, mit denen der Agent interagiert.

Reflextyp der Interaktion

Der Reflektoragent hat einen komplexeren Mechanismus. Statt direkter DynamikIn Bezug auf die Umwelt sucht er in der Liste der Regeln nach, was er tun muss. Der Reflexagent reagiert auf eine bestimmte Wahrnehmung mit einer programmierten Reaktion. Selbst wenn es Tausende möglicher Reaktionen auf eine gegebene Wahrnehmung gibt, verfügt der Agent über eine eingebaute Liste von Situationsaktionsregeln, um jene Reaktionen auszuführen, die bereits vom Programmierer in Betracht gezogen wurden. Die Situationshandlungsregel ist im Grunde ein hypothetischer Imperativ.

Reflexagenten sind wirklich nicht sehr hell. Sie können einfach nicht mit der Neuheit umgehen. Der intelligente Agent enthält die Merkmale seiner weniger ausgeklügelten Cousins, ist aber nicht so eingeschränkt. Er handelt nach Tagesordnung. Es hat eine Reihe von Zielen, die es aktiv verfolgt. Der zielbasierte Agent hat ein Verständnis für den aktuellen Zustand der Umgebung und wie diese Umgebung typischerweise funktioniert. Er verfolgt große Strategien oder Ziele, die nicht sofort erreicht werden können. Dadurch wird der Agent aktiv, nicht nur reaktiv.

Zielfunktionales Dienstprogramm

In komplexeren Agenten wird eine Ordnungsmaßnahme auf die verschiedenen möglichen Aktionen angewendet, die in der Umgebung durchgeführt werden können. Dieser komplexe Scheduler ist ein dienstbasierter Agent. Der servicebasierte Agent bewertet jedes Szenario, um zu sehen, wie gut es bestimmte Kriterien erfüllt, um ein gutes Ergebnis zu erzielen. Dinge wie die Erfolgswahrscheinlichkeit, die zum Abschließen des Szenarios erforderlichen Ressourcen, die Wichtigkeit des zu erreichenden Ziels und die dafür benötigte Zeit können alle in die Berechnung der Nutzenfunktion einfließen.

WeilDa ein Programmierer normalerweise nicht alle Zustände der Welt vorhersagen kann, denen ein Agent begegnen wird, wäre die Anzahl der Regeln, die für einen Reflexagenten geschrieben werden müssten, selbst in sehr einfachen Bereichen wie der Planung von Besprechungen oder der Organisation von Transportwegen und Vorräten astronomisch.

Grundregelkreis

Betrachten Sie angesichts der Definition eines intelligenten Agenten den grundlegenden Regelkreis, den der Agententheoretiker Michael Vuladrich im Jahr 2000 geschrieben hat:

  • Ruhe bewahren;
  • internes Weltmodell aktualisieren;
  • eine bewusste Absicht erreichen;
  • Mittel/Zwecke verwenden, um eine Blaupause für Absichten zu erh alten;
  • den Plan ausführen;
  • Vorgang beenden.

Dieses Muster muss interpretiert werden. Der Agent beobachtet die Welt – das heißt, er sammelt mit seinen Sensoren Wahrnehmungen. Der Sensor kann eine an einem Digitalcomputer angebrachte Tastatur oder ein an einem Roboter angebrachter visueller Prozessor sein. Es kann alles sein, was dem Agenten erlaubt, Repräsentationen der Welt zu sammeln. Das Aktualisieren des internen Modells bedeutet, dass der Agent seiner Folge von Wahrnehmungen und programmierten Informationen über die Welt eine neue Wahrnehmung hinzufügt.

Multi-Agent-Entwicklungsplattformen

Multi-Agent-Entwicklungsplattformen
Multi-Agent-Entwicklungsplattformen

AnyLogic ist eine Open-Source-CORMAS-Simulationssoftware mit mehreren Agenten und mehreren Komponenten, die auf der objektorientierten Programmiersprache SmallTalk basiert.

DoMIS ist ein Multiagenten-Systemdesign-Tool, das sich auf die "Betriebskontrolle komplexer Systeme" konzentriert und auf der B-ADSC-Designmethode basiert.

JACK ist eine Programmiersprache und Entwicklungsumgebung für kognitive Agenten, die von Agent Oriented Software als agentenorientierte Erweiterung der Java-Sprache entwickelt wurde.

GAMA ist eine Open-Source-Modellierungsplattform (LGPL), die eine räumlich explizite agentenbasierte Modellierungsumgebung bietet, die GIS-Daten verwendet, um Agenten und ihre Umgebung zu beschreiben.

JADE (Java Agent DEVELOPMENT) ist ein Open-Source-Entwicklungsframework für mehrere Agenten, das auf der Java-Sprache basiert.

Sieben Modelle des Standards

Im evolutionären Prozess der Forschung gibt es mehr Input, wie man ein System schafft, das zuverlässig ist und eine höhere Qualität darstellt. Der Trend geht weiter, bestehende Methoden zu ergänzen oder zu erweitern, die es geschafft haben, die Entscheidungsfindung innerhalb der Entwicklung zu konsolidieren.

Der methodische Standard ermöglicht es, auf verständliche und einfache Weise einen MAC zu erstellen, nicht nur mit natürlicher Sprache, sondern auch mit Beschreibungsvorlagen, die bei der Systemspezifikation helfen.

Der methodische Standard bietet sieben Modelle von Problemen oder deren Lösungen zum Erstellen von MAC:

  1. Ein Szenariomodell, das ein Unternehmen oder eine Organisation beschreibt.
  2. Das Zielmodell definiert und beschreibt die organische Struktur.
  3. Das Agentenmodell definiert Menschen und autonome Systeme.
  4. Das Rollenmodell ordnet Ziele und Ziele einem bestimmten Agenten zu.
  5. Das Organisationsmodell beschreibt die Umgebung, der ein einzelner Agent zugeordnet ist.
  6. Das Interaktionsmodell beschreibt die Beziehung und betont die Koordination der Agenten.
  7. Das Designmodell definiert die Agenten- und Netzwerkarchitektur.

Beispiele für Interaktionen zwischen Agenten

Beispiele für Multiagentensysteme
Beispiele für Multiagentensysteme

MAS werden verwendet, um die Interaktion zwischen autonomen Agenten zu simulieren. Der Einsatz von Multiagentensystemen beispielsweise in der Soziologie ermöglicht es, die verschiedenen Agenten, aus denen die Gemeinschaft besteht, zu parametrisieren. Indem Sie Einschränkungen hinzufügen, können Sie versuchen zu verstehen, welche Komponente am effektivsten ist, um das erwartete Ergebnis zu erzielen. Sie sollten mit Szenarien experimentieren, die von echten Menschen nicht realisierbar wären, weder aus technischen noch aus ethischen Gründen.

Distributed IA wurde entwickelt, um die Komplexität großer monolithischer nicht-natürlicher Intelligenzprogramme zu lösen - Ausführung, Verteilung und zentralisierte Kontrolle. Um ein komplexes Problem zu lösen, ist es manchmal einfacher, relativ kleine Programme (Agenten) in Zusammenarbeit zu erstellen, als ein großes monolithisches Programm. Autonomie ermöglicht es dem System, sich dynamisch an unvorhergesehene Änderungen in der Umgebung anzupassen.

Beispiele für Multiagentensysteme in der Glücksspielindustrie sind zahlreich und vielfältig. Sie werden in Videospielen und Filmen, einschließlich der MASSIVE-Software, verwendet, beispielsweise um Menschenmassenbewegungen in der Herr der Ringe-Trilogie zu simulieren. Sie können auchWird beispielsweise von Unternehmen verwendet, um das Verh alten von Kunden beim Surfen auf Websites zu verfolgen.

MAS werden auch in der Finanzwelt verwendet. Beispielsweise ermöglicht die MetaTrader 4-Plattform den Einsatz von Expertenagenten im automatisierten Handel, die den Forex-Kursen folgen

Vorteile der Verwendung des Systems

In der IA-Forschung wurde die agentenbasierte Systemtechnologie als neues Paradigma für die Konzeption, Gest altung und Implementierung von Softwaresystemen angenommen. Vorteile des Multi-MAS-Ansatzes:

  1. Teilt Computerressourcen und -fähigkeiten über ein Netzwerk miteinander verbundener Agenten.
  2. Ermöglicht die Verbindung und Interoperabilität mehrerer bestehender Legacy-Systeme.
  3. Deckt verschiedene Bereiche ab, darunter Flugzeugwartung, Buch-E-Wallets, militärische Minenräumung, drahtlose Kommunikation und Kommunikation, militärische Logistikplanung, Lieferkettenmanagementsystem, kollaborative Missionsplanung, Finanzportfoliomanagement.

In der Forschung wurde die IA-Technologie für agentenbasierte Systeme als neues Paradigma für die Konzeption, das Design, die Implementierung und das Multi-Agenten-Lernen von Softwaresystemen angenommen.

MAC ist also ein lose gekoppeltes Netzwerk von Software-Agenten, die interagieren, um Probleme zu lösen, die über die individuellen Fähigkeiten oder Kenntnisse jedes Problemmachers hinausgehen.

Empfohlen: