Back to top

Ficha Proyecto I.E. 2014-2015



Coordinador(a): LEO MIGUEL GONZALEZ GUTIERREZ
Centro: E.T.S.I. NAVALES
Nivel:
Código:
... memoria no disponible
Línea:
Palabras clave:
  • Elaboracion material docente
  • Guías de aprendizaje
  • OpenCourseWare
Miembros de la comunidad UPM que lo componen
Nombre y apellidos Centro Plaza *
LEO MIGUEL GONZALEZ GUTIERREZ E.T.S.I. NAVALES L.D. PRF.CONTR.DOCT. O.A.
ANTONIO SOUTO IGLESIAS E.T.S.I. NAVALES TITULAR UNIVERSIDAD
LUIS PEREZ ROJAS E.T.S.I. NAVALES CATEDRÁTICO UNIVERSIDAD
RICARDO ZAMORA RODRIGUEZ E.T.S.I. NAVALES TITULAR UNIVERSIDAD
Angel Luis Martín López OTROS
Jose Luis Cercós Pita E.T.S.I. NAVALES BECARIO
CARLOS ARIEL GARRIDO MENDOZA E.T.S.I. NAVALES BECARIO
PASQUALE DINOI E.T.S.I. NAVALES BECARIO
* La plaza que se muestra corresponde a la ocupada en el momento de la convocatoria
(para PDI/PAS de la UPM, en el resto de casos no se especifica).
Lineas de trabajo principales en las que incide
  • ETSI Navales
    • OBJ1: Mejorar la eficiencia en los resultados de aprendizaje de los estudiantes, incorporar metodologías activas de aprendizaje y acciones que favorezcan la interdisciplinariedad y la coordinación curricular de tipo horizontal y vertical…
    • OBJ8: Desarrollar repositorios de prácticas, recursos docentes, y actividades online, que faciliten la experimentación así como el aprendizaje autónomo.
Descripción del desarrollo y las fases
OBJETIVOS DEL PROYECTO

Antes de nada debemos entender que el proyecto de innovación educativa va mucho más allá de la enésima discusión entre el lenguaje de programación ideal. Nuestro contexto, es claramente el de una Escuela de Ingenieros, y nuestros objetivos mucho más prácticos, siendo estos:

1.      Dotar al alumnado de una herramienta computacional en forma de lenguaje de programaciónque de forma sencilla y rápida permita al estudiante tener una mayor eficacia académica,

2.      Que el alumnado se encuentre mejor preparado a nivel técnico en su próximo futuro tecnológico.

En numerosas ocasiones, para obtener buenos resultados a la hora de superar asignaturas impartidas en titulaciones técnicas, no solo depende del buen entendimiento conceptual y teórico de las áreas a estudiar, sino de tener la capacidad de realizar cálculos matemáticos de cierta complejidad en un tiempo razonable que modelan un cierto problema tecnológico.

El objetivo global del proyecto propuesto es facilitar a los estudiantes de Grado y de Máster de la ETSI Navales, mediante recursos online, el conocimiento de metodologías de cálculo a través del lenguaje de programación interpretado Python, que podrán aplicar a muchas de las asignaturas impartidas en las citadas titulaciones. Entre dichas asignaturas se encuentran:

GRADO EN ARQUITECTURA NAVAL:

Curso 1º

Álgebra lineal y Geometría

Cálculo I

Cálculo II

Física I

Física II

Informática

Curso 2º

Cálculo III

Mecánica

Mecánica de Fluidos

Termodinámica

Curso 3º

Cálculo de estructuras

Hidrodinámica del buque I

Hidrodinámica del buque II

Curso 4º

Computación en Arquitectura Naval

 

GRADO EN INGENIERÍA MARÍTIMA

Curso 1º

Álgebra lineal y Geometría

Cálculo I

Cálculo II

Física I

Física II

Informática

Curso 2º

Cálculo III

Ingeniería Térmica I

Mecánica

Mecánica de Fluidos

Termodinámica

Curso 3º

Ingeniería Térmica II

Curso 4º

Materiales no estructurales y fluidos de máquinas

 

MÁSTER UNIVERSITARIO EN INGENIERÍA NAVAL Y OCEÁNICA

Curso 1º

Hidrodinámica avanzada del buque

Dinámica del buque

Dinámica de artefactos oceánicos

 

Python es una herramienta de software libre, de uso razonablemente simple, que permite realizar diversos cálculos en muchas ramas de la Ingeniería. El conocimiento de comandos e instrucciones básicas de dicha herramienta permitirá a los estudiantes de la ETSI Navales enfrentarse a la resolución de problemas que conllevan cálculos complejos; ver figura 1 que representa un cálculo CFD realizado con Python para resolver un problema de la ecuación de Navier Stokes y figura 2 que muestra las líneas de código Python requeridas para el cálculo de una integral definida.

La gran ventaja de este lenguaje se basa en tener una curva de aprendizaje altamente eficaz, lo que contribuye a obtener unos buenos resultados a la hora de ser aplicado a las mencionadas asignaturas. Entre otras ventajas, podemos citar:

1.      Python es un lenguaje de programación versátil: se pueden analizar datos, construir páginas webs, mantener servidores, hacer arte o música.

2.      Los ingenieros de muchas empresas técnicas de primer nivel (Por ejemplo Airbus, Navantia, etc…) emplean Python, por lo tanto si el estudiante domina Python aumenta claramente su potencia curricular.

3.      Python es un lenguaje de programación ideal para la enseñanza, un buen número de instituciones educativas están empleando    Python como lenguaje de programación, por ejemplo el MIT.

4.      Leer un código en Python es como leer en inglés por lo tanto hay muy poca complejidad sintáctica.

5.      Python tiene un eficaz curva de aprendizaje, pudiéndose realizar mucho trabajo valioso en poco tiempo.

6.      A diferencia de otros lenguajes de programación la librería Matplotlib permite realizar gráficos y animaciones en 3D.

7.      Se pueden escribir juegos de ordenador en Python mediante la librería PyGame.

8.      Python a diferencia de otros lenguajes de programación como Matlab es gratuito, esto representa una gran ventaja para el alumno ya que lo puede adquirir y utilizar sin coste alguno y sin la necesidad de cometer delito alguno sobre la propiedad intelectual.

9.      Python minimiza el número de errores que el alumno comete en programación maximizando la eficacia y minimizando la frustración y la sensación de fracaso que el joven alumno de ingeniería detesta.

Nuestra sensación es que un semestre de un curso de Matlab, C++ o C no dota a los estudiantes de una herramienta accesible, útil y sencilla para resolver sus problemas académicos. Dado que los planes de estudio actuales tan solo incluyen un cuatrimestre de lenguajes de programación. Esto es precisamente lo que queremos abordar en este proyecto, como dotar en poco tiempo y con poco esfuerzo al alumnado de habilidades computacionales para ser más eficaces en su estudio de ingeniería.

En el libro"How to think like a computer scientist" Jeff Elkner, defiende que el uso de Python ha mejorado la efectividad en el aprendizaje de las asignaturas de programación en su institución educativa. Según sus datos, un mayor número de estudiantes terminan el curso con la posibilidad de crear programas de gran utilidad y con una actitud altamente positiva hacia el mundo de la programación.

Históricamente, nuestro contexto académico ha ofrecido al estudiante Matlab como solución a los problemas que aquí pretendemos resolver. A continuación damos una argumentación de por qué Matlab no cubre nuestras expectativas:

·         Python se encuentra actualmente a la altura de entornos de programación como Matlab y en breve los adelantará.

·         Python es un verdadero lenguaje de programación.

·         Python puede comunicarse fácilmente con otros lenguajes de programación

·         Con Python uno puede trabajar íntegramente en un entorno open-source con el consabido ahorro que ello implica para el alumno y la institución.

·         Las licencias de Matlab son complicadas y caras.

·         Todo lo que es posible hacer en Matlab se puede hacer en Python pero no al revés.

FASES DEL PROYECTO

El proyecto se estructurará en torno a 4 fases (ver figura 3 que muestra el cronograma del proyecto):

Fase 1. Creación del servidor público para la distribución de materiales del curso.

Fase 2. Creación de un Blog centralizador de la filosofía del curso y foro.

Fase 3. Elaboración de los recursos docentes y preparación de la plataforma para la difusión de materiales audiovisuales.

Fase 4. Mantenimiento y renovación del curso.

Todo el software empleado en la elaboración de este proyecto es software libre y por tanto no conlleva coste alguno para el alumnado ni la universidad.

 

Fase 1

Adecuación de un servidor web público con el siguiente software instalado:
* Apache-2
* php-5
* mysql-5
El servidor dispondrá de un ipython-0.13 con un notebook para llevar a cabo los capítulos del curso. También se instalarán librerías que se usarán durante el curso como:
* sympy-0.7
* numpy-1.6
* matplotlib-1.1.1
 

Fase 2

En él se creara un blog, soporte del curso on-line “Metodologías de cálculo a través del lenguaje de programación Python” mediante wordpress-3.61 donde se centralizara la información acerca del curso:

* Método de contacto con los profesores.

* Enlaces a los diferentes capítulos y vídeos del curso.

* Proyectos llevados a cabo por alumnos.

* Asignaturas que adoptan Python y eventualmente la metodología del curso.

* Proyectos de empresas que se realizan en Python.

Creación un foro phpBB-3.0 para fomentar discusiones acerca del curso, del lenguaje, de aplicaciones prácticas, etc.

 

Fase 3

Elaboración de los recursos docentes del curso online. Dichos recursos se estructurarán de la siguiente manera:

-Introducción a Python.

-Aplicaciones de Python a las matemáticas que necesitan los ingenieros (Álgebra Lineal y Cálculo)

-Simulación de problemas físicos con Python para ingenieros.

-Ecuaciones diferenciales con Python.

-Mecánica de Fluidos con Python.

-Lo que Python puede hacer para calcular una estructura.

Por otro lado se instalará Linux en un ordenador tablet convertible que se usará para el desarrollo de los materiales que se subirán al servidor. Dicho proceso se documentará debidamente y se hará público en el blog para que cualquiera pueda reproducirlo.

Éste ordenador tendrá una instalación similar de Python al servidor web:

* ipython-0.13

* ipython-notebook-0.13

* sympy-0.7

* numpy-1.6

* matplotlib-1.1.1

Pero además dispondrá del conjunto de herramientas necesarias para realizar vídeos explicativos, incluyendo:

* gtk-recordmydesktop-0.3

* xournal-4.7

* evince-3.6

* kdenlive-0.9

El proceso de preparación de dicho equipo llevará 1 semana, incluyendo las pruebas.

Los videos necesarios para la explicación de los contenidos del curso se externalizarán al servicio Youtube. No obstante los vídeos que se suban al servicio de Google Youtube, también se alojarán en el servidor, haciendo pública su localización, como respaldo.

 

Fase 4

Tutorías online a través de correo electrónico, elaboración de problemas y retos para los alumnos, atención al foro.

 

Como resultado global del proyecto se espera que los alumnos de la ETSI Navales sean capaces de solucionar problemas de ingeniería que involucran cálculos complejos de forma adecuada mediante la nueva herramienta, lo que conlleva en un modo más amplio a la obtención de los siguientes resultados:

-Innovación en el desarrollo de asignaturas de la ETSIN.

-Mejora de la calidad docente en las titulaciones de la ETSIN.

-Mejora del proceso de aprendizaje de los estudiantes de la ETSIN.

EVALUACION DEL PROYECTO

El proyecto podrá ser evaluado mediante las siguientes acciones:

-Cuantificación de usuarios registrados en la aplicación web del curso

-Cuantificación de descargas de los materiales proporcionados en la aplicación.

-Evaluación de la utilización de la herramienta Python para cálculo en la resolución de problemas en las actividades prácticas de las asignaturas mencionadas en los objetivos del proyecto.

-Cuantificación del número de profesores que utilizan Python en sus asignaturas en la ETSIN.