AMPL
| AMPL | ||
|---|---|---|
| Desarrollador(es) | ||
|
AMPL Optimization LLC https://ampl.com | ||
| Información general | ||
| Extensiones comunes | .mod .dat .run | |
| Paradigma | multi-paradigma: declarativo, imperativo | |
| Apareció en | 1985 | |
| Última versión estable | 20201010 (10 de enero de 2020 (6 años)) | |
| Influido por | AWK, C | |
| Ha influido a | Coopr | |
| Sistema operativo | Multiplataforma: Linux, OS X, algunos basados en Unix, Windows | |
| Licencia | Software propietario (traductor), Software libre y de código abierto (Librería de solvers de AMPL) | |
AMPL (A Mathematical Programming Language) es un lenguaje de modelado algebraico (AML) para describir y solucionar problemas de gran complejidad de programación matemática de gran escala (p. ej., problemas de programación de la producción a grande escala).[1] Fue desarrollado por Robert Fourer, David Gay, y Brian Kernighan en los Laboratorios Bell. AMPL soporta docenas de solvers, tanto de código abierto como software comercial, incluyendo CBC, CPLEX, FortMP, Gurobi, MINOS, IPOPT, SNOPT, KNITRO, y LGO.
Una característica ventajosa de AMPL es la semejanza de su sintaxis a la notación matemática de problemas de optimización. Esto permite una definición muy concisa y legible de problemas en el ámbito de optimización. Actualmente el servidor NEOS acepta problemas escritos AMPL (anteriormente ubicado en el Laboratorio Nacional Argonne, actualmente establecido en la Universidad de Wisconsin, Madison).[2] De acuerdo con las estadísticas del servidor NEOS, AMPL es el formato más popular para representar problemas de programación matemática resueltos en el servidor.
Características
AMPL soporta una amplia gama de tipos de problema, entre ellos:
- Programación lineal.
- Programación cuadrática.
- Programación no lineal.
- Programación entera mixta.
- Programación cuadrática entera mixta con o sin restricciones cuadráticas convexas.
- Programación no lineal entera mixta.
- Programación de cono de segundo orden.
- Optimización global.
- Problemas de programación semidefinida con desigualdades matriciales bilineales.
- Problemas de teoría de la complementariedad (MPECs) en variables discretas o continuas.
- Programación de restricciones.[3]
AMPL Invoca un solver en un proceso separado, lo cual tiene estas ventajas:
- El usuario puede interrumpir el proceso de solución en cualquier momento.
- Los errores del solver no afectan el intérprete.
- La versión de AMPL de 32-bits puede ser utilizada con solvers de 64-bits y viceversa.
La interacción con el solver es llevada a cabo a través de una interfaz "nl" bien definida.
Disponibilidad
AMPL está disponible para muchos sistemas operativos populares tanto de 32-bits cómo de 64-bits, incluyendo Linux, Mac OS X, algunos Unix y Windows.[4]
El traductor es software propietario mantenido por AMPL Optimization LLC. También existen varios servicios en línea que proporcionan modelación y solucionando gratis utilizando el lenguaje AMPL.[2][5]
Una versión estudiantil libre con funcionalidad limitada y una versión completa presentada para cursos académicos también está disponible.[6]
AMPL puede ser utilizado desde Microsoft Excel a través del complemento SolverStudio y Open Solver.
La librería de solvers de AMPL (ASL por sus siglas en inglés), la cual permite leer archivos [nl] y proporciona diferenciación automática, es de código abierto y es utilizada en muchos solvers para implementar la conexión con AMPL.
En 2021 AMPL publicó una versión completa ilimitada con una licencia especial para uso académico, personal y comercial denominada AMPL Community Edition Archivado el 28 de julio de 2022 en Wayback Machine.. Esta versión requiere de conexión a internet para poder funcionar y posee algunos solvers incluidos.
Referencias
- ↑ Fourer, Robert; Brian W. Kernighan (2002). AMPL: A Modeling Language for Mathematical Programming. Duxbury Press. ISBN 978-0-534-38809-6.
- ↑ a b «NEOS Server for Optimization». Consultado el 11 de agosto de 2015.
- ↑ Fourer, Robert; Gay, David M. (2002). «Extending an Algebraic Modeling Language to Support Constraint Programming». INFORMS Journal on Computing 14 (4): 322-344. doi:10.1287/ijoc.14.4.322.2825.
- ↑ AMPL page at AMPL Optimization Inc.
- ↑ «Try AMPL!». Consultado el 11 de agosto de 2015.
- ↑ «AMPL Downloads». Archivado desde el original el 26 de mayo de 2015. Consultado el 11 de agosto de 2015.
Enlaces externos
- Página web oficial
- Página del Prof. Fourer casa en Northwestern Universidad
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.