Agente de software


En informática , un agente de software es un programa informático que actúa para un usuario u otro programa en una relación de agencia, que deriva del latín agere (hacer): un acuerdo para actuar en nombre de uno. Tal "acción en nombre de" implica la autoridad para decidir qué acción, si la hay, es apropiada. [1] [2] Los agentes se conocen coloquialmente como bots , de robot . Pueden estar incorporados, como cuando la ejecución se combina con un cuerpo de robot, o como software, como un chatbot que se ejecuta en un teléfono (por ejemplo, Siri) u otro dispositivo informático. Los agentes de software pueden ser autónomos o trabajar junto con otros agentes o personas. Los agentes de software que interactúan con personas (por ejemplo , chatbots , entornos de interacción humano-robot ) pueden poseer cualidades similares a las de los humanos, como la comprensión del lenguaje natural y el habla, personalidad o encarnar una forma humanoide (ver Asimo ).

Los conceptos relacionados y derivados incluyen agentes inteligentes (en particular que exhiben algunos aspectos de la inteligencia artificial , como el razonamiento ), agentes autónomos (capaces de modificar los métodos para lograr sus objetivos), agentes distribuidos (que se ejecutan en computadoras físicamente distintas), agentes múltiples sistemas (agentes distribuidos que trabajan juntos para lograr un objetivo que no podría lograr un solo agente actuando solo) y agentes móviles (agentes que pueden reubicar su ejecución en diferentes procesadores).

El término "agente" describe una abstracción de software , una idea o un concepto, similar a los términos OOP como métodos, funciones y objetos. [ cita requerida ] El concepto de agente proporciona una manera conveniente y poderosa de describir una entidad de software compleja que es capaz de actuar con cierto grado de autonomía para realizar tareas en nombre de su anfitrión. Pero a diferencia de los objetos, que se definen en términos de métodos y atributos , un agente se define en términos de su comportamiento [3] [ cita requerida ] .

Varios autores han propuesto diferentes definiciones de agentes, estas comúnmente incluyen conceptos como

Todos los agentes son programas, pero no todos los programas son agentes. Contrastar el término con conceptos relacionados puede ayudar a aclarar su significado. Franklin y Graesser (1997) [4] discuten cuatro nociones clave que distinguen a los agentes de los programas arbitrarios: reacción al entorno, autonomía, orientación a objetivos y persistencia.

Los agentes de software pueden ofrecer varios beneficios a sus usuarios finales al automatizar tareas complejas o repetitivas. [6] Sin embargo, existen impactos organizacionales y culturales de esta tecnología que deben ser considerados antes de implementar agentes de software.


Categoría de agente de software de Nwana
monitoreo de servicio