Agenci oprogramowania to programy komputerowe używane do gromadzenia informacji, przetwarzania danych i wykonywania zadań, takich jak automatyzacja procesu lub zapewnianie interfejsu do interakcji z użytkownikiem. Agent oprogramowania (czasami nazywany „botem” lub „agentem robotem”) to w zasadzie program komputerowy mający zestaw celów i założeń: jego celem jest wyszukiwanie i analizowanie danych, a także samodzielne wykonywanie zadań.
Agenci oprogramowania są projektowani do interakcji z komputerem lub aplikacją w jego środowisku za pośrednictwem rozbudowanego i wydajnego środowiska typu sztucznej inteligencji lub prostego języka skryptowego, takiego jak język reprezentacji danych środowiskowych (EDRL). W rezultacie agent oprogramowania może uzyskać dostęp do otrzymanych instrukcji i je wykonać, aby osiągnąć swoje cele. Agenci programowi są wykorzystywani do różnych zadań, od pozyskiwania złożonych zasobów z Internetu po monitorowanie wydajności i bezpieczeństwa systemów.
Agenci oprogramowania są wykorzystywani w wielu dziedzinach, takich jak elektronika użytkowa, opieka zdrowotna, zarządzanie, finanse, handel elektroniczny, wyszukiwarki, technologia mobilna i robotyka. Są pomocne w wielu zadaniach, takich jak sterowanie procesami, klasyfikowanie danych pacjentów i przesyłanie strumieniowe danych ze sprzętowego przedłużacza podłączonego do drukarki. Przydają się również do monitorowania zmian w systemach cyfrowych, wdrażania algorytmów w inteligentnych środowiskach oraz wspomagania wyszukiwarek i analityki witryn internetowych.
Agenci programowi ułatwiają integrację i optymalizację złożonych systemów. Inteligentnych agentów używa się na przykład do optymalizacji transportu i logistyki, symulacji wojskowych i medycznych oraz wyszukiwarek internetowych. Mogą także stworzyć wiele opcji optymalizacji decyzji, które mogą pojawić się w procesie biznesowym organizacji.
Agenci programowi odgrywają zasadniczą rolę w zautomatyzowanym rozumowaniu, agentach autonomicznych, inżynierii oprogramowania, sztucznej inteligencji i robotyce. Wykorzystywano je do różnych zadań, takich jak świadczenie spersonalizowanej obsługi, zarządzanie relacjami z klientami, kontrolowanie dostępu do systemów, zapewnianie i monitorowanie spójności danych oraz wspomaganie podejmowania decyzji. Zastosowanie agentów oprogramowania dało początek nowym technologiom, takim jak inteligentni asystenci i inteligentni agenci.