stringtranslate.com

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.

El término agente se deriva del latín agere (hacer): un acuerdo para actuar en nombre de uno. Esa "acción en nombre de" implica la autoridad para decidir qué acción, en su caso, es apropiada. [1] [2] Algunos agentes son conocidos coloquialmente como bots , de robot . Pueden estar incorporados, como cuando la ejecución se empareja con un cuerpo de robot, o como software como un chatbot que se ejecuta en una computadora , como un dispositivo móvil , por ejemplo, Siri . 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 entre humanos y robots ) pueden poseer cualidades similares a las humanas, como la comprensión del lenguaje y el habla naturales , 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), multiagente. sistemas (agentes distribuidos que trabajan juntos para lograr un objetivo que no podría lograrse con un solo agente actuando solo) y agentes móviles (agentes que pueden reubicar su ejecución en diferentes procesadores).

Conceptos

Los atributos básicos de un agente software autónomo son que los agentes:

Categoría de agente de software de Nwana

El término "agente" describe una abstracción , una idea o un concepto de software, similar a términos de programación orientada a objetos como métodos , funciones y objetos. [ cita necesaria ] El concepto de agente proporciona una forma 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 host. 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]

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

Distinguir agentes de programas

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] analizan cuatro nociones clave que distinguen a los agentes de los programas arbitrarios: reacción al entorno, autonomía, orientación a objetivos y persistencia.

Agentes distintivos intuitivos de objetos.

Distinguir agentes de sistemas expertos

Distinguir agentes de software inteligentes de agentes inteligentes en IA

(Russell y Norvig 2003)

Impacto de los agentes de software

Los agentes de software pueden ofrecer diversos 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 considerarse antes de implementar agentes de software.

Impacto organizacional

Impacto de la satisfacción laboral y la satisfacción laboral

A las personas les gusta realizar tareas fáciles que brinden la sensación de éxito, a menos que la repetición de la tarea simple afecte el resultado general. En general, implementar agentes de software para realizar requisitos administrativos proporciona un aumento sustancial en la satisfacción laboral, ya que administrar su propio trabajo nunca agrada al trabajador. El esfuerzo liberado sirve para un mayor grado de compromiso en las tareas sustanciales del trabajo individual. Por lo tanto, los agentes de software pueden proporcionar los conceptos básicos para implementar un trabajo autocontrolado, libre de controles jerárquicos e interferencias. [7] Tales condiciones pueden garantizarse mediante la aplicación de agentes de software para el soporte formal requerido.

impacto cultural

Los efectos culturales de la implementación de agentes de software incluyen pérdida de confianza, erosión de habilidades, desgaste de la privacidad y desapego social. Es posible que algunos usuarios no se sientan del todo cómodos delegando tareas importantes a aplicaciones de software. Aquellos que empiezan a depender únicamente de agentes inteligentes pueden perder habilidades importantes, por ejemplo, relacionadas con la alfabetización informacional. Para actuar en nombre de un usuario, un agente de software debe tener un conocimiento completo del perfil de un usuario, incluidas sus preferencias personales. Esto, a su vez, puede generar problemas de privacidad impredecibles. Cuando los usuarios comienzan a confiar más en sus agentes de software, especialmente para actividades de comunicación, pueden perder el contacto con otros usuarios humanos y mirar el mundo con los ojos de sus agentes. Estas consecuencias son las que los investigadores y usuarios de agentes deben considerar cuando trabajan con tecnologías de agentes inteligentes. [8]

Historia

El concepto de agente se remonta al Modelo de Actor de Hewitt (Hewitt, 1977): "Un objeto autónomo, interactivo y de ejecución simultánea, que posee un estado interno y capacidad de comunicación". [ cita necesaria ]

Para ser más académicos, los sistemas de agentes de software son una evolución directa de los sistemas multiagente (MAS). MAS evolucionó a partir de la Inteligencia Artificial Distribuida (DAI), la Resolución Distribuida de Problemas (DPS) y la IA Paralela (PAI), heredando así todas las características (buenas y malas) de DAI y AI .

El vídeo " Knowledge Navigator " de John Sculley de 1987 mostraba una imagen de una relación entre usuarios finales y agentes. Al ser una primicia ideal, este campo experimentó una serie de implementaciones fallidas de arriba hacia abajo, en lugar de un enfoque ascendente pieza por pieza. La gama de tipos de agentes es ahora (desde 1990) amplia: WWW, motores de búsqueda, etc.

Ejemplos de agentes de software inteligentes

Agentes compradores (bots de compras)

Los agentes compradores [9] viajan a través de una red (por ejemplo, Internet) recuperando información sobre bienes y servicios. Estos agentes, también conocidos como "robots de compras", trabajan de manera muy eficiente con productos básicos como CD, libros, componentes electrónicos y otros productos de talla única. Los agentes compradores suelen estar optimizados para permitir los servicios de pago digital utilizados en el comercio electrónico y las empresas tradicionales. [10]

Agentes de usuario (agentes personales)

Los agentes de usuario, o agentes personales, son agentes inteligentes que actúan en su nombre. A esta categoría pertenecen aquellos agentes inteligentes que ya realizan, o realizarán próximamente, las siguientes tareas:

Agentes de seguimiento y vigilancia (predictivos)

Los agentes de seguimiento y vigilancia se utilizan para observar e informar sobre los equipos, generalmente sistemas informáticos. Los agentes pueden realizar un seguimiento de los niveles de inventario de la empresa, observar los precios de los competidores y transmitirlos a la empresa, observar la manipulación de las acciones mediante uso de información privilegiada y rumores, etc.

Monitoreo de servicios

Por ejemplo, el Laboratorio de Propulsión a Chorro de la NASA tiene un agente que monitorea el inventario, la planificación, programa los pedidos de equipos para mantener bajos los costos y administra las instalaciones de almacenamiento de alimentos. Estos agentes suelen monitorear redes informáticas complejas que pueden realizar un seguimiento de la configuración de cada computadora conectada a la red.

Un caso especial de agentes de Monitoreo y Vigilancia son las organizaciones de agentes utilizados para emular el proceso de toma de decisiones humanas durante operaciones tácticas. Los agentes monitorean el estado de los activos (municiones, armas disponibles, plataformas de transporte, etc.) y reciben Metas (Misiones) de agentes de nivel superior. Luego, los Agentes persiguen los Objetivos con los Activos disponibles, minimizando el gasto de los Activos y maximizando el Logro de los Objetivos. (Ver Popplewell, "Agentes y aplicabilidad")

Agentes de minería de datos

Este agente utiliza la tecnología de la información para encontrar tendencias y patrones en una gran cantidad de información procedente de muchas fuentes diferentes. El usuario puede ordenar esta información para encontrar la información que busca.

Un agente de minería de datos opera en un almacén de datos descubriendo información. Un 'almacén de datos' reúne información de muchas fuentes diferentes. La "minería de datos" es el proceso de buscar en el almacén de datos información que pueda utilizar para tomar medidas, como formas de aumentar las ventas o retener a los clientes que están considerando desertar.

La "clasificación" es uno de los tipos más comunes de minería de datos, que encuentra patrones en la información y los clasifica en diferentes clases. Los agentes de minería de datos también pueden detectar cambios importantes en las tendencias o un indicador clave y pueden detectar la presencia de nueva información y alertarlo sobre ella. Por ejemplo, el agente puede detectar una caída en la industria de la construcción de una economía; Con base en esta información transmitida, las empresas constructoras podrán tomar decisiones inteligentes con respecto a la contratación/despido de empleados o la compra/arrendamiento de equipos para adaptarse mejor a su empresa.

Agentes de networking y comunicación

Algunos otros ejemplos de agentes inteligentes actuales incluyen algunos filtros de spam , bots de juegos y herramientas de monitoreo de servidores. Los robots de indexación de motores de búsqueda también se consideran agentes inteligentes.

Agentes de desarrollo de software (también conocidos como robots de software)

Los robots de software están adquiriendo importancia en la ingeniería de software. [12]

Agentes de seguridad

Los agentes también se utilizan en aplicaciones de seguridad de software para interceptar, examinar y actuar sobre diversos tipos de contenido. Los ejemplos incluyen:

Problemas de diseño

Las cuestiones a considerar en el desarrollo de sistemas basados ​​en agentes incluyen

Para que los agentes de software trabajen juntos de manera eficiente, deben compartir la semántica de sus elementos de datos. Esto se puede hacer haciendo que los sistemas informáticos publiquen sus metadatos .

La definición de procesamiento de agentes puede abordarse desde dos direcciones interrelacionadas:

Los sistemas de agentes se utilizan para modelar sistemas del mundo real con procesamiento concurrente o paralelo.

El agente utiliza sus métodos de acceso para acceder a bases de datos locales y remotas en busca de contenido. Estos métodos de acceso pueden incluir la configuración de la entrega de noticias al agente, la recuperación de tableros de anuncios o el uso de una araña para navegar por la Web. El contenido así obtenido probablemente ya esté parcialmente filtrado, mediante la selección del suministro de noticias o de las bases de datos buscadas. A continuación, el agente puede utilizar su maquinaria de búsqueda detallada o procesamiento del lenguaje para extraer palabras clave o firmas del cuerpo del contenido que se ha recibido o recuperado. Este contenido (o evento) abstraído luego se pasa a la maquinaria de razonamiento o inferencia del agente para decidir qué hacer con el nuevo contenido. Este proceso combina el contenido del evento con el contenido de conocimiento o basado en reglas proporcionado por el usuario. Si este proceso encuentra un buen resultado o coincidencia en el nuevo contenido, el agente puede utilizar otra pieza de su maquinaria para realizar una búsqueda más detallada del contenido. Finalmente, el agente puede decidir realizar una acción en función del nuevo contenido; por ejemplo, para notificar al usuario que ha ocurrido un evento importante. Esta acción es verificada por una función de seguridad y luego se le otorga la autoridad del usuario. El agente utiliza un método de acceso de usuario para entregar ese mensaje al usuario. Si el usuario confirma que el evento es importante actuando rápidamente ante la notificación, el agente también puede emplear su maquinaria de aprendizaje para aumentar su ponderación para este tipo de evento.

Los bots pueden actuar en nombre de sus creadores para hacer tanto el bien como el mal. Hay algunas formas en que se pueden crear bots para demostrar que están diseñados con la mejor intención y que no están diseñados para causar daño. Esto se hace primero haciendo que un bot se identifique en el encabezado HTTP del agente de usuario cuando se comunica con un sitio. La dirección IP de origen también debe validarse para establecerse como legítima. A continuación, el bot también debe respetar siempre el archivo robots.txt de un sitio, ya que se ha convertido en el estándar en la mayor parte de la web. Y al igual que respetar el archivo robots.txt, los bots deben evitar ser demasiado agresivos y respetar cualquier instrucción de retraso de rastreo. [14]

Nociones y marcos para agentes.

Ver también

Referencias

  1. ^ Nwana, HS (1996). "Agentes de software: descripción general". Revisión de ingeniería del conocimiento . 21 (3): 205–244. CiteSeerX  10.1.1.50.660 . doi :10.1017/s026988890000789x. S2CID  7839197.
  2. ^ Schermer, BW (2007). Agentes de software, vigilancia y derecho a la privacidad: un marco legislativo para la vigilancia habilitada por agentes (libro de bolsillo) . vol. 21. Prensa de la Universidad de Leiden. págs. 140, 205–244. hdl : 1887/11951. ISBN 978-0-596-00712-6. Consultado el 30 de octubre de 2012 .
  3. ^ Wooldridge, M.; Jennings, NR (1995). "Agentes inteligentes: teoría y práctica". 10 (2). Revisión de ingeniería del conocimiento: 115–152. {{cite journal}}: Citar diario requiere |journal=( ayuda )
  4. ^ Franklin, S.; Graesser, A. (1996). "¿Es un agente o simplemente un programa?: Una taxonomía para agentes autónomos". Agentes inteligentes III Teorías, arquitecturas y lenguajes de agentes . Apuntes de conferencias sobre informática. vol. 1193. Universidad de Memphis, Instituto de Sistemas Inteligentes. págs. 21–35. doi :10.1007/BFb0013570. ISBN 978-3-540-62507-0.
  5. ^ ab Wooldridge, Michael J. (2002). Introducción a los sistemas multiagente. Nueva York: John Wiley & Sons. pag. 27.ISBN _ 978-0-471-49691-5.
  6. ^ Serenko, A.; Detlor, B. (2004). «Agentes inteligentes como innovaciones» (PDF) . 18 (4): 364–381. {{cite journal}}: Citar diario requiere |journal=( ayuda )
  7. ^ Adonisi, M. (2003). "La relación entre emprendimiento corporativo, orientación al mercado, flexibilidad organizacional y satisfacción laboral" (PDF) (Diss.). Fac. de Economía y Gestión de Ciencias, Universidad de Pretoria.
  8. ^ Serenko, A.; Ruhi, U.; Cocosilá, M. (2007). "Efectos no planificados de agentes inteligentes en el uso de Internet: enfoque de Informática Social" (PDF) . 21 (1-2). Inteligencia artificial y sociedad: 141–166. {{cite journal}}: Citar diario requiere |journal=( ayuda )
  9. ^ Haag, Stephen (2006). "Sistemas de información de gestión para la era de la información": 224–228. {{cite journal}}: Citar diario requiere |journal=( ayuda )
  10. ^ "Maximice el impacto de su negocio | Cómo utilizar los chatbots de Facebook". Haga clic en Keystone . 26 de agosto de 2016 . Consultado el 7 de septiembre de 2017 .
  11. ^ Shirado, Hirokazu; Christakis, Nicolás A (2017). "Los agentes autónomos localmente ruidosos mejoran la coordinación humana global en experimentos de redes". Naturaleza . 545 (7654): 370–374. Código Bib :2017Natur.545..370S. doi : 10.1038/naturaleza22332. PMC 5912653 . PMID  28516927. 
  12. ^ Lebeuf, Carlene; Piso, Margaret-Anne; Zagalsky, Alexey (2018). "Bots de software". Software IEEE . 35 : 18-23. doi :10.1109/MS.2017.4541027. S2CID  31931036.
  13. ^ https://info.digitalguardian.com/rs/768-OQW-145/images/SC-Labs-DLP-GROUP-TEST-AND-DG-REVIEW.pdf?field_resource_type_value=analyst-reports [ URL simple PDF ]
  14. ^ "Cómo vivir según el código de los buenos bots". DARKLectura del mundo de la información . 27 de septiembre de 2017 . Consultado el 14 de noviembre de 2017 .

enlaces externos