De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

Los investigadores de inteligencia artificial han desarrollado varios lenguajes de programación especializados para inteligencia artificial :

Idiomas [ editar ]

  • AIML (que significa "Artificial Intelligence Markup Language") [1] es un XML dialecto [2] para su uso con ALICE de tipo chatterbots .
  • IPL [3] fue el primer lenguaje desarrollado para la inteligencia artificial. Incluye características destinadas a respaldar programas que podrían realizar la resolución de problemas generales, como listas, asociaciones, esquemas (marcos), asignación de memoria dinámica, tipos de datos, recursividad, recuperación asociativa, funciones como argumentos, generadores (flujos) y multitarea cooperativa.
  • Lisp [4] es una notación matemática práctica para programas de computadora basada en cálculo lambda . Las listas enlazadas son una de las principales estructuras de datos del lenguaje Lisp , y el código fuente Lisp se compone de listas. Como resultado, los programas Lisp pueden manipular el código fuente como una estructura de datos, dando lugar a los sistemas de macros que permiten a los programadores crear una nueva sintaxis o incluso nuevos lenguajes de programación específicos de dominio embebidos en Lisp. Hay muchos dialectos de Lisp en uso en la actualidad, entre los que se encuentran Common Lisp , Scheme y Clojure .
  • Smalltalk se ha utilizado ampliamente para simulaciones, redes neuronales, aprendizaje automático y algoritmos genéticos. Implementa la forma más pura y elegante de programación orientada a objetos utilizando el paso de mensajes.
  • Prolog [5] [6] es un lenguaje declarativo en el que los programas se expresan en términos de relaciones y la ejecución se produce mediante la ejecución de consultas sobre estas relaciones. Prolog es particularmente útil para aplicaciones de análisis de lenguaje, bases de datos y razonamiento simbólico. Prolog se usa ampliamente en IA en la actualidad.
  • STRIPS es un lenguaje para expresar casos de problemas de planificación automatizados . Expresa un estado inicial, los estados objetivo y un conjunto de acciones. Para cada acción, se especifican las condiciones previas (lo que debe establecerse antes de que se realice la acción) y las condiciones posteriores (lo que se establece después de que se realiza la acción).
  • Planner es un híbrido entre los lenguajes lógicos y procedimentales. Da una interpretación procedimental a las oraciones lógicas donde las implicaciones se interpretan con inferencia dirigida por patrones.
  • POP-11 es un lenguaje de programación reflexivo y compilado de forma incremental con muchas de las características de un lenguaje interpretado . Es el núcleo del lenguaje de la Poplog programación entorno desarrollado originalmente por la Universidad de Sussex , y recientemente en la Facultad de Ciencias de la Computación en la Universidad de Birmingham , que hosts el sitio web Poplog , que a menudo se utiliza para introducir técnicas de programación simbólicos para los programadores de más lenguajes convencionales como Pascal , que encuentran la sintaxis POP más familiar que la de Lisp . Una de las características de POP-11 es que admite funciones de primera clase .
  • R se usa ampliamente en inteligencia artificial de nuevo estilo, que involucra cálculos estadísticos, análisis numérico, el uso de inferencia bayesiana, redes neuronales y en general Machine Learning . En dominios como las finanzas, la biología, la sociología o la medicina se considera uno de los principales lenguajes estándar. Ofrece varios paradigmas de programación como computación vectorial, programación funcional y programación orientada a objetos. Es compatible con bibliotecas de aprendizaje profundo como MXNet , Keras o TensorFlow .
  • Python se usa ampliamente para la inteligencia artificial, con paquetes para varias aplicaciones que incluyen IA general, aprendizaje automático , procesamiento de lenguaje natural y redes neuronales . [7] La aplicación de la IA para desarrollar programas que realicen trabajos similares a los humanos y representen habilidades humanas es el aprendizaje automático. Tanto la inteligencia artificial como el aprendizaje automático están estrechamente conectados y se utilizan ampliamente en la actualidad. [8]
  • Haskell también es un muy buen lenguaje de programación para IA. La evaluación diferida y la lista y las mónadas LogicT facilitan la expresión de algoritmos no deterministas, que suele ser el caso. Las estructuras de datos infinitas son excelentes para los árboles de búsqueda. Las características del lenguaje permiten una forma compositiva de expresar los algoritmos. El único inconveniente es que trabajar con gráficos es un poco más difícil al principio debido a la pureza.
  • Wolfram Language incluye una amplia gama de capacidades integradas de aprendizaje automático, desde funciones altamente automatizadas como Predecir y Clasificar hasta funciones basadas en métodos y diagnósticos específicos. Las funciones funcionan con muchos tipos de datos, incluidos numéricos, categóricos, series de tiempo, textuales e imágenes. [9]
  • C ++ (2011 en adelante)
  • MATLAB
  • Perl
  • Julia (lenguaje de programación) , por ejemplo, para aprendizaje automático, utilizando bibliotecas nativas o no nativas.

Ver también [ editar ]

  • Glosario de inteligencia artificial
  • Lista de lenguajes de programación de restricciones
  • Lista de sistemas de álgebra informática
  • Lista de lenguajes de programación lógica
  • Lista de lenguajes de representación del conocimiento
  • Lenguaje de programación de quinta generación

Notas [ editar ]

  1. ^ de acuerdo con (la página de introducción a) el repositorio de AIML Archivado el 14 de abril de 2015 en Wayback Machine en nlp-addiction.com
  2. ^ Consulte la página de AIML "Intro" (web) Archivado el29 de octubre de 2013 en Wayback Machine en www.alicebot.org
  3. ^ Crevier 1993 , págs. 46–48
  4. ^ Lisp :
    • Luger y Stubblefield 2004 , págs. 723–821
    • Crevier 1993 , págs. 59–62,
    • Russell y Norvig 2003 , pág. 18
  5. ^ Historia de la programación lógica:
    • Crevier 1993 , págs. 190-196.
  6. ^ Prólogo :
    • Poole, Mackworth y Goebel 1998 , págs. 477–491,
    • Luger y Stubblefield 2004 , págs. 641–676, 575–581
  7. ^ Python para inteligencia artificial Archivado 2012-11-01 en Wayback Machine Python Wiki 2015
  8. ^ Matthew Lopez (11 de enero de 2021). "10 razones principales por las que Python es bueno para la inteligencia artificial" .
  9. ^ Wolfram Language

Referencias [ editar ]

Principales libros de texto de IA [ editar ]

Ver también la encuesta de libros de texto de IA
  • Luger, George ; Stubblefield, William (2004), Inteligencia artificial: estructuras y estrategias para la resolución de problemas complejos (5.a ed.), The Benjamin / Cummings Publishing Company, Inc., ISBN 0-8053-4780-1
  • Nilsson, Nils (1998), Inteligencia artificial: una nueva síntesis , Morgan Kaufmann Publishers, ISBN 978-1-55860-467-4
  • Russell, Stuart J .; Norvig, Peter (2003), Inteligencia artificial: un enfoque moderno (2a ed.), Upper Saddle River, Nueva Jersey: Prentice Hall, ISBN 0-13-790395-2
  • Poole, David ; Mackworth, Alan ; Goebel, Randy (1998), Computational Intelligence: A Logical Approach , Nueva York: Oxford University Press, ISBN 0-19-510270-3
  • Winston, Patrick Henry (1984), Inteligencia artificial , Reading, Massachusetts: Addison-Wesley, ISBN 0-201-08259-4

Historia de la IA [ editar ]

  • Crevier, Daniel (1993), AI: The Tumultuous Search for Artificial Intelligence , Nueva York, NY: BasicBooks, ISBN 0-465-02997-3 
  • McCorduck, Pamela (2004), Máquinas que piensan (2a ed.), Natick, MA: AK Peters, Ltd., ISBN 1-56881-205-1