fbpx
Wikipedia

Programación automática

La Programación Automática pretende que sea el propio ordenador o el software el que escriba los programas que necesitan las personas, siguiendo las indicaciones de estas.[1]

Historia

Desde que existen los ordenadores, los programadores han intentado que su trabajo sea lo más sencillo posible. Para ello han inventado y desarrollado diferentes tipos de técnicas y multitud de programas con la idea de resolver los diferentes tipos de problemas, que se les presentaban tanto a ellos mismos como a otras personas, con ayuda de ordenadores esperando que sus trabajos fueran más rentables o simplemente que pudieran solucionarlos con mayor facilidad y efectividad.

Existen muchos ejemplos de programas que escriben programas, por ejemplo, los traductores de lenguajes que toman un programa fuente escrito por el programador y producen como resultado un programa que puede ejecutarse, es decir que producen un ejecutable.

Sin embargo, cuando se habla de programación automática los objetivos son más ambiciosos y eso no es fácil de conseguir.

En Mitchell, T.M. (1997). Machine Learning. McGraw Hill.  puedes hacerte una idea de los objetivos de la programación automática.

Dificultades

Existen grandes dificultades a la hora de conseguir estos objetivos. Una de las principales dificultades consiste en que los programas generados por los ordenadores son largos y difíciles de comprender. No son tan sencillos como los programas escritos por personas y en general tienen muchas instrucciones repetidas.

Actualidad

En la actualidad se están realizando esfuerzos en conseguir que el ordenador ayude en la construcción de programas. Algunas empresas están invirtiendo recursos materiales y humanos para conseguir el logro de estos objetivos.

España

En España, en concreto en la Universidad Politécnica de Valencia, se llevan varios años trabajando en este tema en colaboración con una empresa alemana y al parecer los resultados que están obteniendo son muy esperanzadores. En cualquier caso, todavía existe mucho que hacer hasta conseguir que los humanos podamos transmitir nuestras ideas a los ordenadores con el fin de que nos ayuden a llevarlas a la práctica.

Ejemplo: La grabadora de Excel

A continuación se muestra un ejemplo de una herramienta que permite grabar de forma automática subprogramas en VBA.

Descripción

Existe una herramienta en Excel que permite grabar subprogramas sin argumentos (mal llamadas macros en Excel, ya que el concepto de macro es mucho más amplio; véase las macros de LISP si se desea trabajar con macros realmente) muy sencilla que es parecida en funcionamiento al típico grabador de cinta de casete que se utiliza para grabar sonido. En este caso lo que se graba son las acciones que realiza el usuario mediante el ratón y el teclado actuando sobre las celdas de la hoja de cálculo.

Existe otra herramienta similar en la hoja de cálculo Spreadsheet OpenOffice.org, aunque el código generado de forma automática en ambas aplicaciones es diferente e incompatible.

Ejemplos

A continuación se proponen unos sencillos ejemplos con el fin de que el usuario pueda familiarizarse con la herramienta de grabación automática. Una vez generada la nueva macro debería analizarse y comparar el código generado automáticamente con el que nosotros hubiéramos escrito.

  1. Grabar un modelo de factura.
  2. Grabar un modelo de presupuesto.
  3. Grabar un modelo de albarán.

Analizar una macro

Analizar las macros generadas de forma automática y ver qué instrucciones hubiéramos utilizado nosotros para escribir un programa similar al generado de forma automática.

Aprender de la grabadora

Utilizando la herramienta de grabación automática de macros en Excel, escribir un subprograma que cambie el color de una celda de la hoja de cálculo.

Posteriormente, analizar el código generado de forma automática y a partir de él, escribir una nueva macro que recorra una matriz de la hoja de cálculo y cambie el color de todas las celdas que cumplan una determinada condición, tal como test(x), que será definida por el usuario.

También es útil observar qué es lo que va escribiendo la grabadora según vamos solicitando acciones a Excel. Para ello debe mostrarse tanto la pantalla de Excel como la pantalla del módulo en el que se esté grabando la macro. Téngase en cuenta que las macros siempre se graban en un nuevo módulo.

Enlaces externos

En el libro Excel Macros y VBA Trucos esenciales de Bill Jelen y Tracy Syrstrad podéis aprender cómo puede utilizarse VBA conjuntamente con Excel. En él se explican en detalle los problemas que tiene el grabador automático de Macros y cómo solventar estos problemas para conseguir que la grabadora de macros sea una herramienta útil.

Jelen, Bill; Tracy Syrstad (2005). EXCEL Macros y VBA Trucos esenciales. ANAYA MULTIMEDIA. p. 672. ISBN 84-415-1847-5. 

Existen varias páginas dedicadas a la programación de vba, que en forma gratuita brindan ejemplos a los fines de ser estudiado y modificados por los lectores, con ello se logra profundizar los conocimientos o adquirir nuevos conocimientos en programación de macros con VBA.

También se pueden macros de forma automática. En el siguiente libro podréis encontrar indicaciones sobre cómo utilizar la grabadora de macros y cómo programar en VBA para Office 2007.

McFedries, Paul (2007). Office 2007 con VBA. ANAYA MULTIMEDIA. p. 512. ISBN 978-84-415-2302-9. 

A continuación se muestra la referencia a un generador automático de programas LISP [1] en la cual se pueden ver varios programas LISP generados de forma automática mediante este programa.

[2] Machine learnign (necesita Mathematica) es un producto avanzado que permite la construcción automática de modelos a partir de datos conocidos experimentalmente.

Referencias

  1. Ricardo Aler Mur, "Automatic Inductive Programming", ICML 2006 Tutorial. June 2006. el 4 de marzo de 2016 en Wayback Machine.
  •   Datos: Q762268

programación, automática, este, artículo, sección, tiene, referencias, pero, necesita, más, para, complementar, verificabilidad, este, aviso, puesto, junio, 2012, programación, automática, pretende, propio, ordenador, software, escriba, programas, necesitan, p. Este articulo o seccion tiene referencias pero necesita mas para complementar su verificabilidad Este aviso fue puesto el 27 de junio de 2012 La Programacion Automatica pretende que sea el propio ordenador o el software el que escriba los programas que necesitan las personas siguiendo las indicaciones de estas 1 Indice 1 Historia 2 Dificultades 3 Actualidad 4 Espana 5 Ejemplo La grabadora de Excel 5 1 Descripcion 5 2 Ejemplos 5 3 Analizar una macro 5 4 Aprender de la grabadora 6 Enlaces externos 7 ReferenciasHistoria EditarDesde que existen los ordenadores los programadores han intentado que su trabajo sea lo mas sencillo posible Para ello han inventado y desarrollado diferentes tipos de tecnicas y multitud de programas con la idea de resolver los diferentes tipos de problemas que se les presentaban tanto a ellos mismos como a otras personas con ayuda de ordenadores esperando que sus trabajos fueran mas rentables o simplemente que pudieran solucionarlos con mayor facilidad y efectividad Existen muchos ejemplos de programas que escriben programas por ejemplo los traductores de lenguajes que toman un programa fuente escrito por el programador y producen como resultado un programa que puede ejecutarse es decir que producen un ejecutable Sin embargo cuando se habla de programacion automatica los objetivos son mas ambiciosos y eso no es facil de conseguir En Mitchell T M 1997 Machine Learning McGraw Hill puedes hacerte una idea de los objetivos de la programacion automatica Dificultades EditarExisten grandes dificultades a la hora de conseguir estos objetivos Una de las principales dificultades consiste en que los programas generados por los ordenadores son largos y dificiles de comprender No son tan sencillos como los programas escritos por personas y en general tienen muchas instrucciones repetidas Actualidad EditarEn la actualidad se estan realizando esfuerzos en conseguir que el ordenador ayude en la construccion de programas Algunas empresas estan invirtiendo recursos materiales y humanos para conseguir el logro de estos objetivos Espana EditarEn Espana en concreto en la Universidad Politecnica de Valencia se llevan varios anos trabajando en este tema en colaboracion con una empresa alemana y al parecer los resultados que estan obteniendo son muy esperanzadores En cualquier caso todavia existe mucho que hacer hasta conseguir que los humanos podamos transmitir nuestras ideas a los ordenadores con el fin de que nos ayuden a llevarlas a la practica Ejemplo La grabadora de Excel EditarA continuacion se muestra un ejemplo de una herramienta que permite grabar de forma automatica subprogramas en VBA Descripcion Editar Existe una herramienta en Excel que permite grabar subprogramas sin argumentos mal llamadas macros en Excel ya que el concepto de macro es mucho mas amplio vease las macros de LISP si se desea trabajar con macros realmente muy sencilla que es parecida en funcionamiento al tipico grabador de cinta de casete que se utiliza para grabar sonido En este caso lo que se graba son las acciones que realiza el usuario mediante el raton y el teclado actuando sobre las celdas de la hoja de calculo Existe otra herramienta similar en la hoja de calculo Spreadsheet OpenOffice org aunque el codigo generado de forma automatica en ambas aplicaciones es diferente e incompatible Ejemplos Editar A continuacion se proponen unos sencillos ejemplos con el fin de que el usuario pueda familiarizarse con la herramienta de grabacion automatica Una vez generada la nueva macro deberia analizarse y comparar el codigo generado automaticamente con el que nosotros hubieramos escrito Grabar un modelo de factura Grabar un modelo de presupuesto Grabar un modelo de albaran Analizar una macro Editar Analizar las macros generadas de forma automatica y ver que instrucciones hubieramos utilizado nosotros para escribir un programa similar al generado de forma automatica Aprender de la grabadora Editar Utilizando la herramienta de grabacion automatica de macros en Excel escribir un subprograma que cambie el color de una celda de la hoja de calculo Posteriormente analizar el codigo generado de forma automatica y a partir de el escribir una nueva macro que recorra una matriz de la hoja de calculo y cambie el color de todas las celdas que cumplan una determinada condicion tal como test x que sera definida por el usuario Tambien es util observar que es lo que va escribiendo la grabadora segun vamos solicitando acciones a Excel Para ello debe mostrarse tanto la pantalla de Excel como la pantalla del modulo en el que se este grabando la macro Tengase en cuenta que las macros siempre se graban en un nuevo modulo Enlaces externos EditarEn el libro Excel Macros y VBA Trucos esenciales de Bill Jelen y Tracy Syrstrad podeis aprender como puede utilizarse VBA conjuntamente con Excel En el se explican en detalle los problemas que tiene el grabador automatico de Macros y como solventar estos problemas para conseguir que la grabadora de macros sea una herramienta util Jelen Bill Tracy Syrstad 2005 EXCEL Macros y VBA Trucos esenciales ANAYA MULTIMEDIA p 672 ISBN 84 415 1847 5 Existen varias paginas dedicadas a la programacion de vba que en forma gratuita brindan ejemplos a los fines de ser estudiado y modificados por los lectores con ello se logra profundizar los conocimientos o adquirir nuevos conocimientos en programacion de macros con VBA Tambien se pueden macros de forma automatica En el siguiente libro podreis encontrar indicaciones sobre como utilizar la grabadora de macros y como programar en VBA para Office 2007 McFedries Paul 2007 Office 2007 con VBA ANAYA MULTIMEDIA p 512 ISBN 978 84 415 2302 9 A continuacion se muestra la referencia a un generador automatico de programas LISP 1 en la cual se pueden ver varios programas LISP generados de forma automatica mediante este programa 2 Machine learnign necesita Mathematica es un producto avanzado que permite la construccion automatica de modelos a partir de datos conocidos experimentalmente Referencias Editar Ricardo Aler Mur Automatic Inductive Programming ICML 2006 Tutorial June 2006 Archivado el 4 de marzo de 2016 en Wayback Machine Datos Q762268Obtenido de https es wikipedia org w index php title Programacion automatica amp oldid 126854587, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos