Qué es la informática aplicada a las ciencias del deporte?

Página creada Ester Rumi
 
SEGUIR LEYENDO
Qué es la informática aplicada a las ciencias del deporte?
Lecturas: Educación Física y Deportes, Revista Digital                                                         Página 1 de 6

                            ¿Qué es la informática aplicada a
                               las ciencias del deporte?
                         *Depto. Psicología Social.
                           Universidad de Málaga                            Antonio Hernández Mendo*
              * CERN - European Laboratory for Particle Physics.               Raúl Ramos Pollán**
                      Information Technology Division                                 mendo@uma.es
                                 (España)
                   http://www.efdeportes.com/ Revista Digital - Buenos Aires - Año 6 - N° 33 - Marzo de 2001

                                                                                                                  1/8

      1. Introducción

         La informática ha supuesto una revolución técnica y conceptual que ha impactado en
      prácticamente todas las áreas de conocimiento. Consideramos que es una revolución técnica en
      cuanto que ha afectado la implementación y el análisis de las tareas más diversas. De la misma
      manera, consideramos que es una revolución conceptual porque ha provocado -con la
      generación de sistemas expertos, algoritmos genéticos, etc.- la desaparición y reducción de
      incertidumbre de las teorías y modelos conceptuales de las disciplinas donde se ha implantado.
      Evidentemente estas implicaciones son pertinentes en las ciencias de la actividad física y el
      deporte, en todas y cada una de sus áreas de conocimiento e investigación.

         Este trabajo pretende simplemente dotar al lector de unos criterios mínimos en algunas de
      las tecnologías usadas actualmente en el tratamiento de problemas científicos. Para cada
      paradigma aquí presentado damos unos conceptos generales sobre el mismo y unos principios
      básicos de funcionamiento. Con esto esperamos ofrecer criterios acerca del tipo de aspectos
      que se pueden abordar con cada uno de ellos, así como el coste y conocimiento que esto
      supone. Se recomienda acudir a las referencias para más detalles sobre el funcionamiento y
      conveniencia de cada paradigma.

      2. Ordenadores, programas y lenguajes

         Un ordenador es una máquina de propósito general que almacena, procesa y transmite
      información, según se le especifica. Al contrario que cualquier otra máquina que podamos
      encontrar en nuestro entorno (una televisión, un coche, una radio, etc.), un ordenador no está
      diseñado a priori para realizar ninguna tarea en particular. Para que un ordenador realice
      cualquier tarea es necesario especificársela y ordenarle que la ejecute. La especificación de la
      tarea determina la funcionalidad que se obtiene cuando el ordenador la ejecuta. Las tareas se
      especifican por medio de programas, por tanto un ordenador es una máquina que ejecuta
      programas para obtener una cierta funcionalidad. Por ejemplo, un procesador de texto es un
      programa que, al ejecutarlo, dirige al ordenador sobre cómo debe de obtener información del
      teclado, cómo mostrarla en pantalla dándole forma de documento, cómo mandarlo a impresora,
      como almacenarla y recuperarla del disco, etc.

         Un programa es una lista de instrucciones que un ordenador debe seguir para procesar datos
      y convertirlos en información (esto es, para realizar una tarea). Los datos pueden venir de
      muchas fuentes (el teclado, el disco duro, la red, etc.) y pueden ser transformados en distintos
      tipos de información (un documento, una base de datos, una página Web, etc.). El tipo de datos
      y de información, así como la naturaleza de esa transformación determinan la funcionalidad final

http://www.efdeportes.com/efd33a/informa.htm                                                                     22/02/2005
Qué es la informática aplicada a las ciencias del deporte?
Lecturas: Educación Física y Deportes, Revista Digital                                        Página 2 de 6

      de un programa (procesador de texto, gestor de bases de datos, navegador de la Web, etc.).
      Las instrucciones de las que consta un programa se describen en un lenguaje de
      programación determinado.

          Un ordenador desnudo (en el que no se ha introducido ningún programa) sólo entiende un
      lenguaje de programación que se llama código máquina. Cada tipo de ordenador tiene un
      código máquina distinto. Este lenguaje es complicado y sus instrucciones son muy crípticas (por
      ejemplo, 0011010101011010111 puede ser la instrucción para escribir un caracter en el
      disco duro) con lo que desarrollar programas es este lenguaje es una tarea difícil.
      Afortunadamente, se han desarrollado programas llamados compiladores, que entienden
      instrucciones más cercanas al lenguaje humano (por ejemplo, write (‘A’, hd) sería la
      instrucción para escribir el caracter ‘A’ en el disco duro). En este sentido, existen muchos
      lenguajes. En general a estos lenguajes se les denomina lenguajes de alto nivel. Un traductor se
      encarga de traducir programas e instrucciones en algún lenguaje de alto nivel (entendibles por
      el programador) en instrucciones en código máquina (entendibles por el ordenador).
      Normalmente para poder realizar un programa de ordenador, el programador debe de conocer
      el lenguaje de alto nivel adecuado y debe saber manejar el traductor correspondiente.

         Los lenguajes de programación han evolucionado a lo largo de la historia de los ordenadores.
      Los primeros ordenadores que existieron fueron máquinas muy complejas para su época, que se
      programaban únicamente en código máquina y muy poca gente sabía como realizar programas
      para ellos. Según la tecnología de los ordenadores evolucionó también evolucionaron las
      técnicas de traducción y surgieron otros lenguajes, haciendo la tarea de programar más
      asequible. Los lenguajes de programación han evolucionado en lo que se denomina
      generaciones de lenguajes. Existen cinco generaciones en las que se clasifican los lenguajes de
      programación utilizados. Las primeras generaciones contienen lenguajes próximos al código
      máquina. Las últimas contienen lenguajes próximos al lenguaje natural (humano):

          z   Primera Generación, Código Máquina: Es el nivel más bajo de los lenguajes de
              programación y está compuesta por los códigos máquina aceptados por los ordenadores.
              Como cada ordenador tiene un código máquina distinto, los programas escritos en código
              máquina sólo funcionan en el ordenador específico para el cual están escritos.

          z   Segunda Generación, Lenguaje Ensamblador: Son lenguajes de programación de
              bajo nivel que permiten usar abreviaciones o mnemónicos para las instrucciones de
              código máquina. Aunque así es más fácil realizar programas que en código máquina
              directamente aún es una tarea complicada. Ya que un ordenador sólo entiende código
              máquina se necesita un traductor simple para convertir el lenguaje ensamblador en
              código máquina.

          z   Tercera Generación, Lenguajes de Alto Nivel: Es un lenguaje con construcciones
              similares al lenguaje natural (típicamente al inglés) que permite crear programas
              (aplicaciones) complejas y relativamente sencillas de mantener y modificar. Un programa
              en un lenguaje de alto nivel no es entendible directamente por el ordenador. Un
              compilador es un programa traductor que acepta un programa en un lenguaje de alto
              nivel (típicamente en uno o varios archivos de disco) y produce el código máquina
              entendible por un ordenador específico en otro archivo de disco. Posteriormente el
              ordenador ya es capaz de ejecutar el archivo producido por el proceso de compilación
              tantas veces como se quiera. Un intérprete es un programa que acepta un programa en
              un lenguaje de alto nivel, lo compila y lo ejecuta inmediatamente sin generar un archivo
              con el programa en código máquina. Posteriores ejecuciones del programa requieren que
              todo el proceso se repita. Los compiladores e intérpretes son más complejos que los
              traductores simples ya que una instrucción de un lenguaje de alto nivel suele generar
              varias (a veces cientos) de instrucciones de código máquina. Los lenguajes de tercera
              generación son los más usados actualmente y se les denomina en muchos entornos
              lenguajes procedimentales, ya que se suelen agrupar conjuntos de instrucciones en
              procedimientos o funciones.

          z   Cuarta Generación, Lenguajes de Muy Alto Nivel: también denominados 4GL (4th

http://www.efdeportes.com/efd33a/informa.htm                                                    22/02/2005
Lecturas: Educación Física y Deportes, Revista Digital                                        Página 3 de 6

             Generation Languages). Los lenguajes 4GL son mucho más orientados al usuario que los
             lenguajes de generaciones anteriores, y los programas se desarrollan especificando
             instrucciones muy próximas al lenguaje humano. Típicamente los lenguajes 4GL también
             se denominan lenguajes no procedimentales, ya que los programadores simplemente
             especifican qué es lo que quieren que el ordenador realice y no cómo. Estos lenguajes se
             utilizan en ámbitos altamente especializados o de investigación.

         z   Quinta Generación, Lenguajes Naturales: Existen lenguajes naturales de dos tipos.
             Por un lado están los lenguajes humanos: el español, inglés, etc. Por otro lado están los
             lenguajes de programación de quinta generación que usan un lenguaje humano para
             ofrecer una relación con el ordenador más intuitiva. Los lenguajes naturales de quinta
             generación están todavía en su infancia, y actualmente puede considerarse que están
             más cerca de los lenguajes 4GL que de los lenguajes humanos.

         Como se puede observar, los compiladores (intérpretes, traductores) son una pieza
      fundamental para el trabajo del programador, ya que son los que permiten obtener código
      máquina directamente ejecutable de un programa escrito en un lenguaje de más alto nivel. Las
      tecnologías de compilación constituyen una parte muy importante de la evolución de los
      lenguajes de programación. Según los lenguajes pertenecen a generaciones más avanzadas, se
      requieren compilados más complejos.

          Un aspecto muy importante de los compiladores es la idea de portabilidad, que permite
      producir programas para distintos tipos de ordenadores a partir de un mismo programa en
      algún lenguaje de alto nivel. Por ejemplo, si tenemos un programa en el lenguaje C, y
      utilizamos el compilador de C para PC, entonces podremos generar el programa en código
      máquina para PC con Windows y por tanto ejecutar el programa en un PC. Si, con el mismo
      programa en C, utilizamos el compilador para un ordenador UNIX de HP entonces obtendremos
      un ejecutable para esa máquina. Para que esto sea posible es necesario que nuestros
      programas no utilicen funciones particulares a ninguna máquina. En muchas ocasiones es
      imposible evitar usar este tipo de funciones.

      2.1. Paradigmas de Programación

         Un paradigma es un conjunto de principios generales que un programador ha de seguir para
      desarrollar un programa. Cada lenguaje de programación permite al programador seguir un
      paradigma determinado, por tanto los lenguajes de programación se pueden también clasificar
      según el paradigma que siguen. Los paradigmas de programación definen cómo se organizan
      los diferentes elementos de un programa, como esos elementos interactúan entre ellos, etc.
      Actualmente, los paradigmas de programación más comúnmente usados son los siguientes:

        1. Programación Estructurada: Postula el principio de división de un programa en
           unidades algorítmicas más pequeñas llamadas funciones o procedimientos. Una vez
           definidos, el programador puede invocar a un procedimiento desde otro. Típicamente un
           programa estructurado se realiza diseñando primeramente un conjunto de estructuras de
           datos, y posteriormente un conjunto de algoritmos (procedimientos) que actúan sobre
           esas estructuras de datos. Por ejemplo, si queremos desarrollar un programa para
           calcular la media de diversos conjuntos de variables, el programador desarrolla un
           procedimiento al que llama media donde implementa el algoritmo mediante el cual se
           calcula la media para cualquier conjunto de variables. Posteriormente invoca a ese
           procedimiento por cada conjunto de variables de los cuales quiera calcular la media.
           Algunos lenguajes que siguen el paradigma de la programación estructurada son el C,
           Pascal, Basic, Fortran, Cobol, etc.

        2. Programación Orientada a Objeto: Aunque la programación estructurada es un
           paradigma que se ha usado durante mucho tiempo y aún se usa en la actualidad, existe
           un límite en la complejidad de los programas que se pueden realizar manteniendo los
           costes de mantenimiento y modificación de los programas razonablemente bajos. Es
           otras palabras, modificar un programa complejo en Pascal o COBOL puede ser una tarea
           altamente costosa en términos de tiempo. Para sobrepasar estos problemas se creó el

http://www.efdeportes.com/efd33a/informa.htm                                                    22/02/2005
Lecturas: Educación Física y Deportes, Revista Digital                                         Página 4 de 6

            paradigma de la programación orientada a objetos, que postula la división de un
            programa en unidades autocontenidas llamadas objetos. A diferencia de los
            procedimientos que contienen sólo algoritmos y los datos sobre los que actúan están
            aparte, un objeto contiene un conjunto de algoritmos junto con los datos sobre los que
            actúan. De esta manera cuando un programador invoca algoritmos en un objeto, no
            necesita saber qué tipo de datos el objeto maneja de forma interna. Además los objetos
            pueden ser organizados en jerarquías, de forma unos objetos pueden heredar datos y
            algoritmos de otros objetos. Con esto lo que se consigue es que la organización de un
            programa orientado a objetos sea más modular y rica que la organización de un
            programa estructurado, con lo que la arquitectura de los programas complejos puede ser
            acomodada a cambios más fácilmente.

      2.2. Principales Lenguajes de Programación

          Como mencionamos, actualmente la mayoría de los programas realizados actualmente son
      implementados usando lenguajes de programación de tercera generación. La utilidad y
      utilización de estos lenguajes no depende sólo de su diseño sino también del tipo de
      aplicaciones que se pueden crear con ellos, las herramientas disponibles (librerías, herramientas
      de programación, etc.) Actualmente los lenguajes más utilizados son el C y Java, por distintas
      razones. La siguiente lista también contiene lenguajes que fueron utilizados muy extensamente
      en el pasado y que aún se siguen utilizando por motivos educaciones, o bien porque las
      aplicaciones creadas con ellos aún están en funcionamiento. Diferentes lenguajes están
      orientados para diferentes entornos y finalidades, aunque cualquiera de ellos es lo
      suficientemente general para ser utilizado en un amplio espectro de aplicaciones.

        1. C: Desarrollado por los Laboratorios Bell, C es un lenguaje estructurado compilado de
           propósito general que funciona en una gran variedad de computadores y por tanto es
           portable entre ellos. Es decir, existen compiladores de C para casi todos los tipos de
           maquinas existentes en la actualidad. El lenguaje C es muy adecuado para escribir
           multitud de tipos de programas: gestores de bases de datos, procesadores de texto,
           software comercial, juegos, robótica, gráficos, etc. y de hecho la mayoría del software
           disponible actualmente está realizado en C. Sus ventajas principales son:

                {   Los compiladores de C han sido altamente probados y desarrollados para casi
                    todos los tipos de ordenadores.

                {   Tiene un alto grado de portabilidad. Los programas en C pueden ser compilados
                    en una gran variedad de ordenadores haciendo muy pocos cambios.

                {   Es muy rápido y eficiente. Los compiladores de C suelen estar muy bien
                    optimizados y producen código máquina muy rápido.

            Por otro lado, C suele ser difícil de aprender y no suele ser el primer lenguaje que se
            enseña a quien entra en el mundo de la programación. Además, es muy conciso, lo que a
            veces dificulta seguir y entender los programas hechos por otros.

        2. BASIC: Es un lenguaje simple que fue diseñado con motivos educacionales más que
           prácticos. Es muy sencillo e intuitivo y algunas extensiones actuales son muy populares y
           utilizadas (por ejemplo, Visual Basic de Microsoft).

        3. Pascal: Al igual que el BASIC es un lenguaje estructurado sencillo pero permite la
           creación de programas relativamente complejos ya que contiene (sin necesidad de
           ampliaciones) las estructuras básicas para organizar el código.

        4. FORTRAN: Desarrollado en 1954 por IBM, fue prácticamente el primer lenguaje
           estructurado de alto nivel. Originalmente fue diseñado para implementar fórmulas y
           cálculos matemáticos complejos y actualmente aún está en uso en entornos científicos,
           matemáticos o de ingenierías.

http://www.efdeportes.com/efd33a/informa.htm                                                     22/02/2005
Lecturas: Educación Física y Deportes, Revista Digital                                        Página 5 de 6

        5. COBOL: Adoptado formalmente en 1960 como resultado de un esfuerzo conjunto de
           diferentes organizaciones públicas y privadas, ha sido el lenguaje estructurado más
           usado en aplicaciones comerciales hasta la aparición de los ordenadores personales.
           Actualmente, aún hay una gran cantidad de aplicaciones programadas en COBOL.

        6. LISP: Es un lenguaje usado principalmente para realizar programas en el ámbito de la
           inteligencia artificial. Fue desarrollado en 1958 en el MIT y suele ser usado en la
           implementación de sistemas expertos.

        7. DBASE: Es un lenguaje similar al Pascal, pero con funciones para manipular
           directamente las bases de datos creadas con el sistema de base de datos conocido como
           DBASE.

        8. Java: Es un lenguaje de programación orientado a objetos creado recientemente por
           Sun Microsystems. Su estructura es parecida a la del C pero evitando sus desventajas. Es
           relativamente sencillo de aprender y además es un lenguaje que puede ser interpretado
           por los navegadores de Internet, con lo que un programador puede publicar su programa
           en un URL convenido y cualquier usuario de Internet puede ejecutarlo en su ordenador a
           través del navegador.

        9. C++: Es la evolución del C en un lenguaje orientado a objetos. Comparte las ventajas y
           desventajas del C, pero sigue los principios de la programación orientada a objetos.

         Este trabajo pretende simplemente dotar al lector de unos criterios mínimos en algunas de
      las tecnologías usadas actualmente en el tratamiento de problemas científicos. Para cada
      paradigma aquí presentado damos unos conceptos generales sobre el mismo y unos principios
      básicos de funcionamiento. Con esto esperamos dar a conocer distintos aspectos que se pueden
      abordar con cada uno de ellos, así como el coste y conocimiento que esto supone. Se
      recomienda acudir a las referencias para más detalles sobre el funcionamiento y conveniencia
      de cada paradigma.

      2.3. Algunas Tecnologías Adicionales

          En principio, con un lenguaje de programación de propósito general (como C o Java) y su
      correspondiente compilador o intérprete un programador puede desarrollar cualquier tipo de
      aplicación. No obstante, aplicaciones de un mismo tipo suelen tener las mismas necesidades,
      restricciones y requerimientos. Por ejemplo, cualquier aplicación gráfica abrirá ventanas,
      construirá botones, cuadros de texto, gráficos, etc. con lo que es deseable extender el lenguaje
      utilizado con procedimientos u objetos primitivos que permiten realizar esas funciones, evitando
      que el programador las programe cada vez que se crea una aplicación gráfica. De esta manera
      existen extensiones y aplicaciones que sistematizan la creación de programas y sistemas en
      general para determinados dominios. En cierta manera, estas aplicaciones aíslan al usuario final
      de los detalles de la implementación de los mismos. A continuación se exponen algunas de
      estas tecnologías:

      2.3.1. Sistemas Expertos

      ¿Qué es un Sistema Experto?

         Un sistema experto es un programa de ordenador que le permite a éste realizar o aconsejar
      acerca de la toma de decisiones no estructuradas o semiestructuradas que son propias de
      humanos con conocimientos y experiencia en un dominio específico. Los sistemas expertos
      operan normalmente como consultores expertos que ofrecen su consejo a humanos en áreas
      específicas. Algunos ejemplos de decisiones basadas en los sistemas expertos son los
      diagnósticos de enfermedades bacteriológicas en pacientes, detección de fallos en el
      funcionamiento eléctrico en locomotoras diesel, configuraciones de sistemas y redes de
      ordenadores basados en las estimaciones de trabajo y necesidades de los usuarios, etc.. Como
      podemos observar los sistemas expertos explotan el conocimiento específico acerca de un

http://www.efdeportes.com/efd33a/informa.htm                                                    22/02/2005
Lecturas: Educación Física y Deportes, Revista Digital                                    Página 6 de 6

      dominio para realizar inferencias complejas que ayudan al humano en el análisis y proceso de
      una situación concreta.

      Arquitectura de un Sistema Experto

        La arquitectura de un sistema experto evoca en cierta manera las estructuras y procesos
      cognitivos en el comportamiento humano. El primer componente de un experto humano es una
      memoria a largo plazo de hechos, estructuras y reglas que representan el conocimiento del
      experto en un dominio concreto. La estructura análoga en un sistema experto se denomina
      base de conocimiento. Luego, un experto humano, posee unos métodos de razonamientos
      apropiados a su dominio de forma que puede extraer de su conocimiento la información
      adecuada para aplicarla en la resolución de un problema dado.

     Lecturas: Educación Física y Deportes · http://www.efdeportes.com · Año 6 · Nº 33    sigue   Â

                                                     Recomienda este sitio

http://www.efdeportes.com/efd33a/informa.htm                                                22/02/2005
Lecturas: Educación Física y Deportes, Revista Digital                                                        Página 1 de 6

              ¿Qué es la informática aplicada a las ciencias del deporte?
                                      Antonio Hernández Mendo y Raúl Ramos Pollán
                  http://www.efdeportes.com/ Revista Digital - Buenos Aires - Año 6 - N° 33 - Marzo de 2001

                                                                                                                 2/8

         Análogamente, un sistema experto posee un motor de inferencia que es el que se encarga
      de implementar las funciones de razonamiento.

         En esta analogía el proceso realizado por el motor de inferencia imita ciertos aspectos del
      pensamiento, mientras que el conocimiento es almacenado en ultima instancia en la base de
      conocimientos. En cierta manera la diferencia entre el motor de inferencia y la base de
      conocimiento en un sistema experto es la misma que la distinción entre los métodos de
      razonamiento de propósito general y el conocimiento específico a cada dominio que se ha
      construído en el campo de la inteligencia artificial. El conocimiento general sobre la manera de
      resolver los problemas se refleja en la manera de operar del motor de inferencia. De esta
      manera un motor de inferencia puede ser usado para razonar sobre distintas bases de
      conocimiento, siempre que el conocimiento esté codificado según las mismas reglas.

         Además de estos dos elementos, el entorno de un sistema experto incluye varias
      herramientas para asistir a las personas que construyen o utilizan el sistema experto. A la hora
      de construir, el desarrollador utiliza herramientas para adquirir, codificar y limpiar el
      conocimiento con el que se alimenta a la base de conocimientos. Una vez que el sistema
      experto ha sido desarrollado los usuarios se valen de una serie de herramientas e interfaces
      para interactuar, consultar y actualizar el sistema experto. En muchas ocasiones los sistemas
      expertos pueden ser integrados en entornos de tiempo real, grandes bases de datos o ser parte
      de aplicaciones más grandes.

         El interfaz de usuario de un sistema experto permite que los usuarios pregunten al sistema,
      le proporcionen información, reciban consejo, etc. Dentro de las limitaciones de los
      computadores, este interfaz busca en alguna manera suministrar el mismo conjunto de
      facilidades de comunicación que un experto humano. Del mismo modo que un experto humano
      explica sus decisiones y recomendaciones, los sistemas expertos también necesitan justificar y
      explicar sus acciones. La parte de un sistema experto que genera estas justificaciones se
      denomina herramienta de explicación. Esta herramienta no sólo satisface la necesidad social de
      reasegurar la confianza del usuario final en el sistema, sino que también, desde el punto de
      vista técnico, le sirve al desarrollador para realizar un seguimiento del sistema experto y
      conocer la validez del conocimiento introducido en la base del conocimiento.

      2.3.2. Algoritmos Genéticos

      ¿Qué son los algoritmos genéticos?

         Los algoritmos genéticos (GAs) fueron inventados para imitar algunos procesos observados
      en los mecanismos de evolución natural. Mucha gente, incluidos biólogos, se sorprenden del
      hecho de que la vida y su complejidad podrían haber evolucionado en un periodo de tiempo
      relativamente corto según los registros fósiles. La idea de los GAs es utilizar los principios del
      concepto de evolución para resolver problemas de optimización. El padre de los GAs es John
      Holland que los inventó al principio de los 70.

http://www.efdeportes.com/efd33a/informa1.htm                                                                   22/02/2005
Lecturas: Educación Física y Deportes, Revista Digital                                       Página 2 de 6

         Los GAs son algoritmos adaptativos de búsqueda heurística basados en los principios
      evolutivos. Como tales representan un aprovechamiento inteligente de las búsquedas aleatorias
      usadas para resolver problemas de optimización. Aunque tienen un componente aleatorio, los
      GAs no tienen un comportamiento aleatorio, sino que explotan la información histórica
      (evolutiva) para dirigir un proceso de búsqueda hacia regiones del espacio de búsqueda con
      más posibilidades de optimizar un problema. Los principios básicos de funcionamiento de los
      GAs se basan en la creación de una población de individuos (soluciones a un problema),
      selección de los más adaptados (soluciones más cercanas al óptimo) y recombinación de los
      individuos más adaptados para crear una nueva población (integración de soluciones).

         En muchos casos, los algoritmos genéticos ofrecen resultados más satisfactorios que otras
      técnicas usadas en Inteligencia Artificial. Esto es debido a que son mucho más robustos (mayor
      tolerancia en los datos de entrada o ruido), y ofrecen un método generalmente eficaz en la
      exploración de espacios de búsqueda complejos (alta dimensionalidad).

      ¿Cómo funcionan?

         Los GAs simulan el proceso de supervivencia de los individuos mejor adaptados en
      generaciones consecutivas para resolver un problema. Cada generación consiste en una
      población de cadenas de caracteres o de bits que representan una solución (numérica o
      codificada) a un problema dado y que evocan a las cadenas de DNA que observamos en los
      cromosomas. Cada individuo (cadena de bits) representa un punto en un espacio de búsqueda y
      por tanto una posible solución. Cada población es sometida al proceso de evolución. Los
      principios evolutivos que se pretenden simular son los siguientes:

         z   Los individuos en una población compiten por los recursos disponibles y se reproducen.

         z   Los individuos más adaptados en cada competición producen más descendientes que los
             individuos menos adaptados.

         z   La información genética de los individuos mejor adaptados se propaga en generaciones
             sucesivas de forma que dos padres "buenos" producirán en algunas casos descendientes
             que son mejor adaptados que ellos mismos.

         z   De esta manera cada generación sucesiva estará mejor adaptada a su entorno.

         En términos generales, el espacio de búsqueda de un problema consiste en el conjunto de
      todas las posibles soluciones al problema. De todas esas posibles soluciones solo una, o unas
      pocas son las que optimizan el problema según algún criterio dado. En GAs se empieza por
      tanto por obtener un método de codificación de las posibles soluciones en cadenas de
      caracteres sobre un determinado alfabeto (suele ser el alfabeto binario). Luego se define una
      función de evaluación que a cada individuo (posible solución) asigna un valor de eficacia o
      adaptación, de forma que se pueden comparar distintos individuos para saber cual esta mejor
      adaptado. Esta función, representa el entorno en al cual los individuos han de adaptarse. Una
      vez definido esto, se comienza por una población de posibles soluciones (normalmente
      generada de manera aleatoria) y se repite el siguiente proceso:

         z   Se le aplica la función de evaluación a cada individuo, de manera que se obtiene una
             medida objetiva de la capacidad de adaptación de cada individuo a esa función.

         z   Se selecciona una porción de la población basada en la medida anterior. Por ejemplo, a
             cada individuo se le asigna una probabilidad proporcional a su medida de adaptación y se
             seleccionan individuos según esa probabilidad. De esta manera se seleccionarán los
             individuos que estén mejor adaptados y ocasionalmente también se seleccionará algún
             individuo con una adaptación menor. Esto se suele hacer para no perder la opción de
             evitar máximos locales en la función de evaluación.

         z   Los individuos seleccionados se reproducen entre ellos para generar una nueva

http://www.efdeportes.com/efd33a/informa1.htm                                                  22/02/2005
Lecturas: Educación Física y Deportes, Revista Digital                                         Página 3 de 6

            población. Hay muchos tipos de operadores para realizar este paso. Entre ellos los más
            comunes son: el cruce, en el que las cadenas de bits se intercambian porciones y la
            mutación, en el que de forma aleatoria se cambian de valor algunos bits de algunos
            individuos. Como se puede observar, el cruce corresponde a la recombinación de
            información de las posibles soluciones, y la mutación corresponde a la introducción de
            nueva información en la población.

         De esta manera se producen nuevas generaciones de soluciones que contienen, por lo
      general, más genes buenos que una solución típica de la generación anterior. Cada generación
      contendrá más y mejores soluciones parciales que las generaciones previas. En algún momento
      el proceso alcanza el máximo deseado o algún valor que hace que las sucesivas generaciones
      no mejoren las anteriores.

         Como se puede observar, los GAs son un buen método para buscar las soluciones a un
      problema cuando no se tiene mucha información acerca del dominio o cuando no se conoce un
      método eficaz de exploración del espacio de soluciones. Por supuesto los GAs no son métodos
      infalibles para la resolución de problemas, ni los más eficaces en muchos casos, pero son muy
      válidos en entornos en los que los espacios de búsquedas son complejos. También, es
      importante observar que no existe ningún teorema de convergencia de los GAs y por tanto no
      es posible saber a priori si encontrarán una solución en un caso específico. Ni siquiera, es
      posible asegurar en muchos casos si la solución que proporcionan son máximos globales o
      simplemente máximos locales.

      2.3.3. Análisis y clasificación automática de datos

      ¿Qué es el aprendizaje automático y la minería de datos?

          En las últimas décadas investigadores provenientes de distintas disciplinas, desde la
      Psicología hasta la inteligencia artificial, han intentado desarrollar modelos generales de muchos
      de los procesos cognitivos que realizan los humanos, especialmente el aprendizaje. Muchos de
      estos esfuerzos generaron ideas y aplicaciones interesantes no sólo desde el punto de vista
      teórico sino también desde las perspectivas tecnológicas y prácticas. En particular, los avances
      en la representación del conocimiento y las nociones y técnicas de aprendizaje automático
      abren muchas posibilidades en el campo de la representación y análisis de datos. Basados en
      estos conceptos y sin olvidar los métodos estadísticos tradicionales de análisis de datos, en la
      última década han surgido nuevos métodos alternativos aplicables en estos campos.

         Muchos de estos métodos comparten un uso intensivo de los recursos computacionales
      disponibles hoy en día. Evidentemente, esto no era posible hace algunas décadas. El
      planteamiento general del problema que se aborda en esta sección es el siguiente: partiendo de
      un conjunto (amplio) de datos, las metodologías automáticas permiten desarrollar
      representaciones convenientes de las estructuras de los datos. El conocimiento adquirido puede
      ser entonces aplicado en otros conjuntos de datos bajo la hipótesis que comparten
      características (por ejemplo, el origen) similares. En muchas ocasiones (y más aún con la ayuda
      de las computadoras) las metodologías de adquisición de datos proporcionan grandes
      cantidades de datos (que no información) generadas por muchas clases de eventos que se
      monitorizan. Desde el punto de vista del investigador esos datos son imprescindibles porque son
      el origen último de su tarea, pero en sí son inútiles si no es posible extraer informaciones de
      ellos (tales como correlaciones escondidas, particiones, determinación de variables
      significativas, etc.). De esta forma el investigador ha de tener los medios para transformar los
      datos brutos en conocimiento. La siguiente figura representa este proceso automático:

         Con los medios actuales, la cantidad de datos abruman en muchas ocasiones al investigador
      e inutilizan los métodos manuales tradicionales de extracción de información. Ejemplo de esto lo
      dan la física de partículas (experimentos que general mas de 1 Megabyte de información por

http://www.efdeportes.com/efd33a/informa1.htm                                                     22/02/2005
Lecturas: Educación Física y Deportes, Revista Digital                                         Página 4 de 6

      segundo), el análisis de mercados comerciales (cantidad de empresas, valores y sectores
      comerciales), etc.

         Dentro de las técnicas de aprendizaje automático, se denomina minería de datos a las
      técnicas que permiten obtener las mejores representaciones de los datos, dados unos criterios
      específicos. En cierta parte, la idea es similar a los procesos de descubrimiento que se realizan
      en el ámbito del método científico. Por eso, estas técnicas reciben a veces el nombre de
      descubrimiento automático.

      ¿Cómo funciona?

         En sí la minería de datos no es más que una metodología de resolución de problemas que
      trata de encontrar descripciones matemáticas o lógicas de patrones y regularidades de una
      cierta complejidad en conjuntos de datos. Hay dos maneras principales de realizar este proceso.

        1. Por un lado el aprendizaje supervisado, las regularidades en los datos se encuentran
           explorando casos conocidos que se presume que contienen o implican los patrones bien
           definidos. Una vez se realiza esta exploración inicial y se establecen los patrones
           relevantes, se realiza un proceso de generalización para su aplicabilidad con cualquier
           conjunto de datos. Por otro lado, el aprendizaje no supervisado encuentra regularidades
           en los datos en base a algunos caracterizaciones lógicas de carácter general. Podemos,
           por tanto, representar la minería de datos como un proceso que puede ser bien sintético
           (generalizando a partir de algunos casos conocidos) o analítico (generando descripciones
           de alto nivel).

            La minería de datos permite producir conocimiento científico en áreas que aún no son
            propicias para las aproximaciones tradicionales. De esta forma los algoritmos de
            optimización y aprendizaje se pueden usar para producir modelos de datos
            experimentales en áreas en las que no existen explicaciones ni modelos teóricos previos.

            La noción básica del aprendizaje supervisado es la de un clasificador, que es un algoritmo
            o sistema capaz de discriminar datos entre un conjunto de posibles categorías. Los
            clasificadores se entrenan y se prueba con un conjunto de casos conocidos y crean sus
            propias estructuras y reglas internas a medida que se les presentan los casos conocidos.
            De esta manera, y con un número suficiente de casos conocidos, el clasificador se
            convierte en un generalizador y es capaz de clasificar correctamente datos provenientes
            de casos desconocidos. Por tanto la utilización del aprendizaje supervisado se basa en
            dos pasos:

                {   La creación de un conjunto determinado de categorías en las cuales clasificar los
                    datos

                {   La presentación de pares [dato, clasificación] que corresponden a los casos
                    conocidos. Durante este proceso el clasificador va formándose sus criterios
                    internos de clasificación.
                    Esto es el entrenamiento.

                {   La presentación de datos ya generalizados proporciona la clasificación automática
                    en base a los criterios internos adquiridos en la fase anterior.
                    Esto es la operación.

        2. Por el contrario, el aprendizaje no supervisado no parte de criterios específicos
           preestablecidos (como lo son el conjunto de categorías en las que se dividen los casos
           conocidos), sino que parte de descripciones generales del tipo de patrones que reconocer
           en los datos. Por ejemplo, mientras que en el aprendizaje supervisado lo que el
           investigador determina a priori es: existen las categorías A, B y C, con este significado;
           en el aprendizaje no supervisado el investigador únicamente dice: existirán entre 4 y 6
           categorías y el clasificador se encarga de agrupar los datos.

http://www.efdeportes.com/efd33a/informa1.htm                                                    22/02/2005
Lecturas: Educación Física y Deportes, Revista Digital                                         Página 5 de 6

         La implementación final de los clasificadores se basa en muchas ocasiones en redes de
      neuronas artificiales. Las redes de neuronas artificiales están compuestas por elementos que
      siguen los principios de funcionamiento de las neuronas naturales: reciben varios valores de
      entrada y en base a esos valores ofrecen un único valor de salida (encendido o apagado). De
      esta forma se construyen redes de neuronas conectando la salida de unas neuronas a las
      entradas de otras. La redes pueden adquirir diversas configuraciones, pero generalmente un
      conjunto de neuronas de la forma siguiente:

          En donde hay una serie de neuronas que reciben los datos de entrada y otras neuronas cuyo
      estado de activación conforma el dato de salida. En algunas configuraciones existen capas
      organizadas de neuronas (aparte de la capa de entrada y de salida), en otras existen ciclos, etc.
      Cada conexión entre dos neuronas tiene unas características específicas que determinan la
      influencia en la neurona a la que llega la conexión. Un aprendizaje supervisado proporciona
      valores de entrada, calcula el error en la salida y mediante un algoritmo corrector cambia las
      características de las conexiones con cada par [dato, clasificación] que se le presenta. Un
      aprendizaje no supervisado cambia las características de las conexiones según se va usando la
      red, por ejemplo, reforzando las conexiones mas usadas.

         Es importante observar que el origen de las redes neuronales es imitar el funcionamiento
      básico de las neuronas naturales, y se desconoce bastante el porqué fundamental del
      comportamiento de las mismas. Experimentando con ellas se ha descubierto que funcionan muy
      bien como discriminadoras de información, pero sin saber exactamente cómo deducir ese
      comportamiento global del funcionamiento particular de cada neurona del conjunto.

         Desde el punto de vista práctico y dependiendo de la envergadura de cada problema, con
      unos pocos conocimientos de programación es posible construir redes neuronales relativamente
      sencillas y probar su funcionamiento directamente. También existen herramientas con diversos
      grados de sofisticación para diseñar, entrenar y explotar redes neuronales. También existen
      herramientas sofisticadas que implementan un contexto entero de aprendizaje automático, con
      los conceptos de clasificadores y generalizadores, y en los que las redes neuronales no son más
      que una parte específica de su diseño. En cualquier caso, es importante saber ser consciente de
      la base de estas ideas, para poder adquirir criterios válidos en cuanto a sus limitaciones y
      posibilidades.

      2.3.4. Simulaciones y Realidad Virtual

      ¿Qué es la realidad virtual?

         El término Realidad Virtual es usado por mucha gente con distintos significados. Para algunos
      no es más que un casco con una pantalla, un guante sensible y sonido estéreo y para algunos
      otros son los efectos especiales que se ven en una película. Una definición más objetiva sin
      embargo, es la que se ofrece en [5] y es la siguiente:

            La Realidad Virtual es un modo para que los humanos podamos ver, manipular e
            interactuar con datos extremadamente complejos y con los ordenadores.

         En seguida vemos la conexión con el resto de los conceptos que hemos estado tratando en
      este capítulo. La parte de la definición que habla de la visualización se refiere al ordenador que
      genera información visual, auditiva o en algunos otros sentidos sobre un mundo dentro del
      ordenador. Este mundo puede ser un modelo arquitectónico, una simulación científica, una vista
      en una base de datos, etc. El usuario puede interactuar con el mundo y manipular los objetos
      de los que está compuesto ese mundo. Estos objetos pueden ser representaciones de entidades

http://www.efdeportes.com/efd33a/informa1.htm                                                     22/02/2005
Lecturas: Educación Física y Deportes, Revista Digital                                        Página 6 de 6

      físicas (por ejemplo, un corredor en acción o una simulación de vuelo) o entidades abstractas
      (conceptos y relaciones científicas, tendencias de mercados, etc.) Lo importante es que
      conforma un medio por el cual se facilita la interacción con conjuntos de datos cuyas relaciones
      son complejas y no del todo entendibles de manera inmediata

      Componentes de un sistema de realidad virtual

         Según los requerimientos y el entorno en el que funciona un sistema de realidad virtual
      cambian las exigencias de eficacia de cada una de las partes que a continuación describimos.
      Por ejemplo, si creamos una simulación para estudiar la aerodinámica de una posición
      determinada de un ciclista lo importante es la exactitud del modelo y la adaptación de la
      simulación a las variables que tomamos como criterios. La velocidad de la simulación, aunque
      muy conveniente, no es una característica fundamental del estudio. Pero si por ejemplo,
      creamos una simulación para entrenar a un corredor a adquirir un cierto reflejo, lo importante
      es que la simulación sea en tiempo real. Con esto en mente, las principales partes de un
      sistema de realidad virtual son:

     Lecturas: Educación Física y Deportes · http://www.efdeportes.com · Año 6 · Nº 33        sigue   Â

                                                     Recomienda este sitio

http://www.efdeportes.com/efd33a/informa1.htm                                                   22/02/2005
Lecturas: Educación Física y Deportes, Revista Digital                                                        Página 1 de 8

              ¿Qué es la informática aplicada a las ciencias del deporte?
                                      Antonio Hernández Mendo y Raúl Ramos Pollán
                  http://www.efdeportes.com/ Revista Digital - Buenos Aires - Año 6 - N° 33 - Marzo de 2001

                                                                                                                 3/8

        1. Procesos de entrada de datos: que se encargan de hacer llegar la información pertinente
           al ordenador. Algunos ejemplo son el guante sensible, sensores de posicionamiento del
           cuerpo, sistemas de reconocimiento de voz, etc.

        2. Procesos de simulación. La parte más importante de un sistema de realidad virtual son
           los procesos de simulación. Estos son los procesos que implementan el modelo del
           mundo (virtual o simulado) y procesan los datos de entrada acorde a ese modelo del
           mundo. Por ejemplo, en la simulación de un corredor, los procesos de simulación han de
           implementar una cierta parte de las leyes físicas que rigen el movimiento del corredor
           entre las que se encuentran las leyes de la gravedad, leyes de apoyo, etc. En general el
           proceso de simulación divide el tiempo en instantes discretos. En cada instante se genera
           una simulación (visual y auditiva en la mayor parte de los casos) sobre el estado del
           mundo virtual en ese instante y se actualiza ese estado que generará la simulación del
           siguiente instante de tiempo. [6] y [7] muestran importantes ejemplos de procesos de
           simulación en este contexto.

        3. Procesos de salida de datos. Como resultado de cada simulación se suelen generan una
           serie de estímulos de salida que se proyectan en los dispositivos adecuados: pantalla,
           casco 3D, aparatos mecánicos, etc.

         Es importante observar, que aunque popularmente se asocia el concepto de realidad virtual a
      aplicaciones espectaculares y complejas, el concepto de simulación es más general y
      seguramente más aplicable en los dominios que nos interesan. Los procesos descritos
      anteriormente se aplican a cualquier proceso de simulación, sea proyectado imágenes casi
      reales sea controlando la temperatura de la habitación en la que un atleta está corriendo.

        El concepto principal es el de la representación física y familiar de datos para su asimilación
      por parte de algún receptor. En algunas ocasiones ese receptor puede ser el científico que
      manipula una molécula virtual en 3D, en otras puede ser un piloto en su simulación, etc. Pero
      en todas esas ocasiones el computador construye una representación adecuada de los datos
      que se muestran una situación determinada en un entorno concreto.

      3. La revolución técnica

         Esta revolución técnica, que hemos sintetizado anteriormente, ha afectado, entre otras, a
      una de las funciones fundamentales y básicas de la ciencia como es la compartición de los
      resultados y las experiencias. Para poder darle la relevancia que esto tiene baste decir que
      autores como Karl Pribam o Popper consideran que los resultados del científico no tienen validez
      hasta que no se demuestra su capacidad de ser replicados. En este sentido, es de vital
      importancia el que los resultados se hagan públicos y que la comunidad científica tenga acceso
      a ellos. Conocer el trabajo de la investigación en nuestro país y en el resto del mundo es una de
      las labores de los investigadores y de los estudiosos en general. Si el valor científico de los

http://www.efdeportes.com/efd33a/informa2.htm                                                                   22/02/2005
Lecturas: Educación Física y Deportes, Revista Digital                                         Página 2 de 8

      datos está condicionado a que se hagan públicos en fuentes de credibilidad para la comunidad
      científica, no hace falta señalar el valor de las fuentes de documentación.

          De hecho, el dinamismo y universalización de las fuentes de documentación científica puede
      ser una de las características del avance científico en las últimas décadas. Por un lado, la
      literatura científica se duplica en un plazo 10-15 años, y por otro lado, los nuevos sistemas
      informáticos de almacenamiento, búsqueda y recopilación de documentación científica hacen
      que sea cada vez más fácil acceder a esa información. Todo esto es esencial, ya que el avance
      científico depende en gran parte de una buena comunicación entre los investigadores de todo el
      mundo. Además, hace menos importantes las diferencias entre universidades grandes y
      universidades humildes, ya que no hace falta poseer una costosa biblioteca para tener acceso
      básico a la información de interés.

         El hecho es que las ventajas citadas tiene como contrapartida el que un investigador se
      puede encontrar con un exceso de información y con dificultades en la selección cualitativa de la
      misma. Las bases informatizadas de datos proporcionan la posibilidad de realizar búsquedas con
      referencias cruzadas y descriptores muy específicos, no obstante, hay un aspecto cualitativo que
      depende en gran medida de la formación especializada de cada investigador.

         A continuación indicamos en diferentes apartados algunas de las principales fuentes de
      documentación e información documental que pueden ser de utilidad. Hay fuentes
      documentales primarias, como las revistas, textos, etc., y fuentes secundarias, revisiones,
      índices de citas, sistemas de búsqueda, etc.

      3.1. Revistas sobre informática en relación a las ciencias sociales y del deporte

         Constituyen probablemente el principal medio de información y comunicación científica. A
      pesar del retraso que en algunos casos se produce en la publicación de trabajos de
      investigación, suele ser la fuente que proporciona información más actualizada.

         A continuación presentamos una relación de revistas que pretende ser una guía general que
      se aleje de las revistas de divulgación. Pretendemos recoger, sin carácter de exhaustividad,
      todas aquellas revistas de impacto que están dedicadas en su totalidad o parcialmente a la
      relación entre informática y las ciencias sociales:

        1. Behavior Research Methods, Instruments and Computers

        2. Biometrics

        3. British Journal of Mathematical and Statistical Psychology

        4. Computers and Human Behavior

        5. Computer Language

        6. Estadística Española

        7. Journal of Mathematical Psychology

        8. Psicothema

        9. Psychometrika

       10. Quality and Quantity: European-American Journal of Metodology

       11. Educational Technology

http://www.efdeportes.com/efd33a/informa2.htm                                                    22/02/2005
Lecturas: Educación Física y Deportes, Revista Digital                                         Página 3 de 8

       12. Applied Psychological Measurement

       13. Educational and Psychological Measurement

       14. Journal of Educational Measurement

       15. Psicológica

         De igual manera con aquellas guías e índices, muchos de ellos informatizados, donde se
      encuentran con cierta frecuencia referencias sobre informática aplicada a las Ciencias Sociales y
      especialmente a las Ciencias del Deporte.

        1. Boletín de Información y Documentación de Unisport

        2. Boletín de Sumarios. Facultad de Educación Física de Las Palmas.

        3. Boletín de Sumarios. Instituto Nacional de Educación Física de Valencia.

        4. Bolleti de Sumaris. INEF-Cataluña.

        5. Catalog of Selected Documents in Psychology. American Psychologist Association.
           Washington, USA.

        6. Current Contents: Life Sciencies. Institute for Scientific Information. Philadelphia,
           USA.

        7. Current Contents: Clinical Medicine. Institute for Scientific Information. Philadelphia,
           USA.

        8. Current Contents: Social and Behavioral Sciencies. Institute for Scientific
           Information. Philadelphia, USA.

        9. Current Index Journal Education. Institute for Scientific Information. Philadelphia,
           USA.

       10. Index to Scientific Reviews. Institute for Scientific Information. Philadelphia, USA.

       11. Journals in Psychology. A Resources Listing for Authors. 40 ed. en 1993,
           American Psychological Association. Washington, USA.

       12. Psychological Abstracts. American Psychological Association . Washington, USA.

       13. Psychological Reader's Guide. Institute de Documentation Scientifique. Suiza.

       14. Psychological Record. Graneville.Ohio, USA.

       15. Science Citation Index. Institute for Scientific Information. Philadelphia, USA.

       16. Social Science Citation Index. Institute for Scientific Information. Philadelphia, USA.

       17. Thesaurus of Psychological Index Terms. American Psychological Association.
           Washington, USA.

         Para más información se pueden consultar los trabajos de Blanco (1983), Borchardt (1984),
      Fernández-Dols y Ortega (1980), Herring, (1987), Mcinnis,R.G. (1982)

http://www.efdeportes.com/efd33a/informa2.htm                                                    22/02/2005
Lecturas: Educación Física y Deportes, Revista Digital                                      Página 4 de 8

         Un aspecto importante a tener en cuenta son los Centros de documentación y bases de
      datos. En este apartado se relacionara los centros de producción de sistemas informatizados de
      datos bibliográficos que permiten búsquedas rápidas y selectivas de la información almacenada
      en soporte CD-ROM u "on-line". Con respecto a Centros Nacionales, podemos mencionar:

        1. ICYT. Instituto de Información y Documentación de Ciencia y Tecnología, Madrid.

        2. ISOC. Instituto de Información y Documentación de las Ciencias Sociales y
           Humanidades, Madrid.

        3. IIDB. Instituto de Información y Documentación de Biomedicina, Valencia.

        4. INCA. Fundación para el Desarrollo de la Función Social de las Comunicaciones, Madrid.

        5. CID. Consorcio de Información y Documentación, Barcelona.

        6. CNIDC. Centro Nacional de Información y Documentación Científica, Madrid.

        Con respecto a los centros internacionales, podemos citar las siguientes:

        1. COMSERVE/CIOS. Communication Institute for Online Scholarchip, New York, USA.

        2. CNRS. Centre National de la Recherche Scientifique, París, USA.

        3. ISI/ISTB. Institute for Scientific Information, Philadelphia, USA.

        4. NTIS. National Technical Information Service, Washintong, USA.

        5. Oxford Medical Data Base, London, UK.

        6. PsycINFO. Base de datos de la American Psychological Association, Washington, USA.

        7. PsycLIT. Base de datos de la Psychological Abstracts Information Service, APA,
           Washington, USA.

        8. SCISEARCH (Science Citation Index). Producido por el Institute for Scientific
           Information, Philadelphia, USA.

        9. SPORTdiscus. SIRC (Sport Information Resource Centre), Ottawa, Canadá

       10. University Microfilms International, Michigan, USA

         Direcciones web donde encontrar información sobre documentación deportiva y otras
      informaciones diversas relacionadas con el ámbito deportivo son:

         z   http://www.cpd.us.es./sadus/

         z   http://www.uida.es/

         z   www.deportes.rcanaria.es/

         z   http://www.iusport.es/intro.htm

         z   http://www.efdeportes.com

http://www.efdeportes.com/efd33a/informa2.htm                                                 22/02/2005
También puede leer