Puma

Cougaar (skrót od Cognitive Agent Architecture ) jest architekturą agenta Java .

Historia Cougaara

Firma Cougaar Software Inc. została założona w 2001 roku. Inwestycja w ten projekt sięga 1996 roku za pośrednictwem DARPA. DARPA zaczęła finansować projekty mające na celu rozwój tego, co stało się Cougaar Open Source.

Oś czasu

  • 1996 DARPA finansuje Program Zaawansowanej Logistyki (ALP)
    • Program inwestuje 80 milionów dolarów w rozwój technologii podstawowej architektury
  • 2000 DARPA decyduje się udostępnić technologię ALP jako open source i zmienić nazwę na Cougaar
  • 2000 DARPA finansuje program Ultralog mający na celu rozszerzenie bezpieczeństwa, skalowalności i przeżywalności Cougaar w warunkach globalnego pola bitwy.
    • Program inwestuje 70 milionów dolarów, aby osiągnąć najwyższą przeżywalność
  • 2001 Cougaar Software, Inc. rozpoczyna komercjalizację technologii Cougaar
  • 2004 CSI wypuszcza pierwsze komercyjne rozwiązanie oparte na Cougaar — ActiveEdge RFID Middleware
  • 2005 CSI udostępnia pierwsze komercyjne środowisko programistyczne aplikacji Cougaar
    • Wydano wersję 1.0 platformy ActiveEdge Intelligent Agent Platform
    • Trzej partnerzy/klienci będący integratorami systemów wybierają platformę ActiveEdge do realizacji głównych inicjatyw operacyjnych
  • 2006 Pierwsza instancja operacyjna rozwiązania opartego na rozwiązaniu ActiveEdge dostarczanego przez partnera dla dużej sieci detalicznej
  • 2007 Dodatkowi główni partnerzy i klienci weryfikują ActiveEdge
    • Wydano ActiveEdge v1.5
    • Firma Boeing udziela licencji ActiveEdge
    • Dodatkowe licencje Defence Contractor na ActiveEdge
    • CSI wspiera SAIC & Honeywell w aplikacji ALCT, zapewniając planowanie dystrybucji w kinach: **El ejército de EE.UU. licencję ActiveEdge
  • Wydano wersję 1.6 ActiveEdge 2008

Cechy

Cougaar jest open source, która obejmuje infrastrukturę i podstawowe usługi. Agenci to autonomiczne jednostki programowe, które komunikują się z innymi agentami lub usługami zewnętrznymi w celu wykonywania określonych funkcji domeny. Agenci obliczeniowi opierają się na metodologii programowania, która ułatwia bezpośrednią dekompozycję złożonych zadań. Agenci zarządzają zachowaniem aplikacji, a środowisko obsługuje adaptację systemową. Agenci i środowisko mogą opracowywać, testować i konfigurować niezależnie, ale działają razem. Abstrakcja agentów Cougaar obejmuje kilka zintegrowanych zaawansowanych usług, takich jak:

  • Publikuj / subskrybuj tablicę do komunikacji w samym agencie i między agentami
  • Silnik serwletu Http dla interfejsów użytkownika
  • System reprezentacji wiedzy: zasoby logistyczne, zestawy ramek…
  • Koordynacja między agentami poprzez mechanizmy koordynacji łupków, przydziały itp.

Agent Cougaar działający na węźle Cougaar (maszyna wirtualna Java), który sam działa na hoście. Ten agent zgadza się z co najmniej jedną wtyczką, która definiuje zachowanie agenta. Agent z zerowymi wtyczkami nic nie robi. W przeciwieństwie do innych architektur opartych wyłącznie na wiadomościach, Cougaar opiera się na wtyczkach tablicy jako głównych menedżerach danych. Wtyczki reagują na dane na tablicy dodając/zmieniając/usuwając powiadomienia. Infrastruktura platformy Cougaar przekształca dane na tablicę w operacjach między dealerami, ale jest to ukryte przed interfejsem API programisty. Koordynacja wszystkich wtyczek między agencjami jest realizowana poprzez asynchroniczne subskrypcje danych. Infrastruktura tablicy dodaje/zmienia/usuwa powiadomienia wsadowe, zapewniając większą niezawodność i skalowalność systemu. Cały stan jest przechowywany na tablicy, która zapewnia wsparcie dla odzyskiwania po awarii. Podstawowe usługi to implementacja oparta na komponentach Cougaar, obejmująca wiele dziedzin, takich jak mobilność agentów między węzłami, utrzymywanie stanu agenta i późniejsze odzyskiwanie po awarii, transport wiadomości obsługujący wiele protokołów itp.

Zastosowania Cougaara

  • Zintegrowane modelowanie i symulacja infrastruktury krytycznej
  • Narzędzie do modelowania logistyki dla wysoce elastycznych organizacji wojskowych
  • Planowanie dowodzenia bojowego wspomagane logistyką
  • Wspieranie zespołów robotów w bezprzewodowych sieciach ad hoc
  • Powierzchnie kontrolne
  • Narzędzie administracyjne do monitorowania rozproszonego społeczeństwa agentów

Zobacz też

Linki zewnętrzne

Źródła

Bibliografia