Agent programowy - istota

Agent programowy (zwany także systemem agentowym, agentem) jest systemem opartym na wiedzy. Definiuje się go jako autonomiczny program umieszczony w określonym otoczeniu (i będący jego częścią), który potrafi analizować to otoczenie i oddziaływać na nie w czasie, dążyć do wyznaczonych celów i symulować wpływ zmian tego otoczenia.

Systemy agentowe działają w zastępstwie swoich właścicieli. Są autonomiczne i reaktywne. Mogą komunikować się z innymi agentami za pomocą języka komunikacji agentowej. Systemy agentowe posiadają także zdolność indywidualnego i niezależnego decydowania, czy odpowiadać na komunikaty innych agentów.

Cechami charakterystycznymi dla systemów agentowych są:

  • reaktywność (odruchowość) - polega na rozpoznawaniu zmian w otoczeniu i reagowaniu na nie,
  • proaktywność – powoduje, że agent podejmuje samodzielne działania bez oczekiwania na bodźce z otoczenia,
  • autonomia – przejawia się w podejmowaniu decyzji przez agenta bez bezpośredniego wpływu człowieka,
  • zdolność do współpracy – pozwala agentowi na współdziałanie z innymi agentami dla celów rozwiązania danego problemu,
  • możliwość wnioskowania – systemy agentowe wykorzystując różne techniki sztucznej inteligencji podejmują decyzje na podstawie posiadanej i uzyskanej z otoczenia wiedzy,
  • ciągły charakter – dzięki tej właściwości możliwe jest stałe uczenie się agenta i ciągłe analizowanie otoczenia,
  • osobowość – umożliwia agentowi manifestowanie własnych stanów w postaci emocji,
  • personifikacja – odzwierciedla cechy mentalne agenta związane z środkami komunikacji i wyrazu,
  • adaptacyjność – pozwala na dostosowanie się do zmian w otoczeniu na podstawie doświadczenia zdobytego przez agenta,
  • ograniczona racjonalność – agent działa optymalnie ze względu na swoje cele, ale przy ograniczeniu zasobów,
  • mobilność – oznacza, że agent posiada możliwość przemieszczania się pomiędzy różnymi hostami w sieci,
  • otwartość – to możliwość interakcji agenta z innymi agentami, użytkownikiem bądź zasobami.

Powyższy wykaz prezentuje wszystkie możliwe cechy, które agent może posiadać. Nie jest jednakże wymagane, by każdy agent posiadał wszystkie z powyższych właściwości. Posiadane przez agenta cechy uzależnione są od jego rodzaju. Klasyfikacja systemów agentowych zostanie przedstawiona w kolejnym podrozdziale.