Ciencias de la computación

Ciencias de la computación
Información sobre la plantilla
Ciencias de la computacion.jpg
Concepto:Las ciencias de la computación son aquellas que abarcan el estudio de las bases teóricas de la información y la computación, así como su aplicación en sistemas computacionales


Las ciencias de la computación son aquellas que abarcan el estudio de las bases teóricas de la información y la computación, así como su aplicación en sistemas computacionales. Existen diversos campos o disciplinas dentro de las Ciencias de la Computación o Ciencias Computacionales; algunos enfatizan los resultados específicos del cómputo (como los gráficos por computadora), mientras que otros (como la teoría de la complejidad computacional) se relacionan con propiedades de los algoritmos usados al realizar cómputos. Otros por su parte se enfocan en los problemas que requieren la implementación de cómputos. Por ejemplo, los estudios de la teoría de lenguajes de programación describen un cómputo, mientras que la programación de computadoras aplica lenguajes de programación específicos para desarrollar una solución a un problema computacional concreto. La informática se refiere al tratamiento automatizado de la información de una forma útil y oportuna. No se debe confundir el carácter teórico de esta ciencia con otros aspectos prácticos como Internet.


Historia

La historia de la ciencia de la computación antecede a la invención del computador digital moderno. Antes de la década de 1920, el término computador se refería a un ser humano que realizaba cálculos.

Los primeros investigadores en lo que después se convertiría las ciencias de la computación, estaban interesados en la cuestión de la computabilidad: qué cosas pueden ser computadas por un ser humano que simplemente siga una lista de instrucciones con lápiz y papel, durante el tiempo que sea necesario, con ingenuidad y sin conocimiento previo del problema.

Parte de la motivación para este trabajo era el desarrollar máquinas que computaran, y que pudieran automatizar el tedioso y lleno de errores trabajo de la computación humana.

Durante la década de 1940, conforme se desarrollaban nuevas y más poderosas máquinas para computar, el término computador se comenzó a utilizar para referirse a las máquinas en vez de a sus antecesores humanos. Conforme iba quedando claro que las computadoras podían usarse para más cosas que solamente cálculos matemáticos, el campo de la ciencia de la computación se fue ampliando para estudiar a la computación (informática) en general.

La ciencia de la computación comenzó entonces a establecerse como una disciplina académica en la década de 1960, con la creación de los primeros departamentos de ciencia de la computación y los primeros programas de licenciatura (Denning 2000).

Mayores logros

Aún con su relativamente corta historia como disciplina académica formal, las ciencias de la computación han logrado una buena cantidad de contribuciones fundamentales a la ciencia y la sociedad. Por ejemplo:

  • Una definición formal de computación y de computabilidad (Constable 2000).
  • Una demostración de que existen problemas a los que no hay una solución computacional (problema de la parada, o halting problem en inglés) y problemas intratables. (Constable 2000).
  • El concepto de lenguaje de programación, una herramienta para la expresión precisa de información metodológica a varios niveles de abstracción (Abelson y Sussman 1996).
  • Tecnologías revolucionarias, como las computadoras de uso general, la Internet, las firmas digitales, el comercio electrónico y los motores de búsqueda (Constable 1997, Constable 2000).
  •  Ha habilitado nuevos tipos de investigación científica, como la física computacional, la química computacional y la biología computacional, entre otras (Constable 1997).


Campos de las Ciencias de la Computación


Fundamentos matemáticos

  • Criptografía: Algoritmos para proteger datos privados, incluyendo el cifrado.
  • Teoría de tipos: Análisis formal de los tipos de los datos, y el uso de estos para entender las propiedades de los programas, en particular la seguridad de los mismos.


Algoritmos y estructuras de datos

  • Algoritmos: Procesos formales usados para los cómputos, y eficiencia de estos procesos.
  • Estructuras de datos: Organización y manipulación de los datos


Lenguajes de programación y compiladores

  • Compiladores: Formas de traducir programas computacionales, usualmente a partir de lenguajes de alto nivel a lenguajes de bajo nivel.
  • Teoría de lenguajes de programación: Lenguajes formales para expresar algoritmos y las propiedades de estos lenguajes.


Bases de datos

  • Minería de datos: Estudio de algoritmos para buscar y procesar información en documentos y bases de datos; muy relacionada con la adquisición de información.

Sistemas concurrentes, paralelos y distribuidos

  • Programación concurrente: Teoría y práctica de cómputos simultáneos y computación interactiva.
  • Redes de computadoras: Algoritmos y protocolos para comunicar eficientemente datos a través de largas distancias, incluye también la corrección de errores.
  • Cómputo paralelo: Computación usando múltiples computadoras y múltiples procesadores en paralelo.
  • Sistemas Distribuidos: Sistemas utilizando múltiples procesadores repartidos en una gran área geográfica.

Inteligencia artificial

  • Inteligencia artificial: La implementación y estudio de sistemas que exhiben (ya sea por su comportamiento o aparentemente) una inteligencia autónoma o comportamiento propio, a veces inspirado por las características de los seres vivos. Las ciencias de la computación están relacionadas con la IA, ya que el software y las computadoras son herramientas básicas para el desarrollo y progreso de la inteligencia artificial.


Razonamiento automatizado

  • Robótica: Algoritmos para controlar el comportamiento de los robots.
  • Visión por computador: Algoritmos para extraer objetos tridimensionales de una imagen bidimensional.

Gráficos por computador

  • Computación gráfica: Algoritmos tanto para generar sintéticamente imágenes visuales como para integrar o alterar la información visual y espacial tomada del mundo real.
  • Procesamiento digital de imágenes: Por ejemplo para sensores remotos.
  • Geometría Computacional: Por ejemplo algoritmos veloces para seleccionar sólo los puntos visibles en un poliedro visto desde cierto ángulo, usado en motores 3D.

Computación científica

  • Computación Cuántica: Paradigma de computación basado en la Mecánica Cuántica


Relación con otros campos

Por ser una disciplina reciente, existen varias definiciones alternativas para la ciencia de la computación. Esta puede ser vista como una forma de ciencia, matemáticas o una nueva disciplina que no puede ser categorizada siguiendo los modelos actuales.

Las ciencias de la computación frecuentemente se cruzan con otras áreas de investigación, tales como la física y la lingüística. Pero es con las matemáticas con las que se considera que tiene un grado mayor de relación. Eso es evidenciado por el hecho de que los primeros trabajos en el área fueran fuertemente influenciados por matemáticos como Kurt Gödel y Alan Turing. En la actualidad sigue habiendo un intercambio de ideas útil entre ambos campos en áreas como la lógica matemática, la teoría de categorías, la teoría de dominios, el álgebra y la geometría.

Otro punto a destacar es que a pesar de su nombre, las ciencias de la computación raramente involucran el estudio mismo de las máquinas conocidas como computadoras. De hecho, el renombrado científico Edsger Dijkstra es muy citado por la frase "Las ciencias de la computación están tan poco relacionadas con las computadoras como la astronomía con los telescopios." Debido a esto, se propuso buscar un nombre definido para esta ciencia emergente, que evitara la relación con las computadoras.

Una primera propuesta fue la de Peter Naur, que acuñó el término datología, para reflejar el hecho de que la nueva disciplina se ocupaba fundamentalmente del tratamiento de los datos, independientemente de las herramientas de dicho tratamiento, fueran computadoras o artificios matemáticos. La primera institución científica en adoptar la denominación fue el Departamento de Datología de la Universidad de Copenage, fundado en 1969, siendo el propio Peter Naur el primer profesor de datología. Esta denominación se utiliza principalmente en los países escandinavos. Asi mismo, en los primeros momentos, un gran número de términos aparecieron asociados a los practicantes de la computación. En esta lista se pueden ver los sugeridos en las revistas y comunicados de ACM : Turingeniero, Turologista, hombre de los diagramas de flujo(flow-charts-man), metamatemático aplicado, y epistemólogo aplicado.

Tres meses más tarde se sugirió el término contólogo, seguido de hipólogo al año siguiente. También se sugirió el término compútica para la disciplina. Informática era el término más frecuentemente usado en toda Europa.

El diseño y desarrollo de computadoras y sistemas computacionales está generalmente considerado como un campo reclamado por disciplinas ajenas a las ciencias de la computación. Por ejemplo, el estudio del hardware está usualmente considerado como parte de la ingeniería informática, mientras que el estudio de sistemas computacionales comerciales y su desarrollo es usualmente llamado tecnologías de la información (TI) o sistemas de información. Sin embargo, hay una estrecha comunicación de ideas entre las distintas disciplinas relacionadas con las computadoras. La ciencia de la computación a menudo es criticada desde otros estamentos que la consideran escasamente rigurosa y científica. Esta opinión se plasma en la expresión: "La ciencia es a las ciencias de la computación como la hidrodinámica a la fontanería", atribuida a Stan Kelly-Bootle y otros afines. La investigación en ciencias de la computación usualmente también se relaciona con otras disciplinas, como la ciencia cognitiva, la física (véase computación cuántica), la lingüística, etc.

La relación entre las ciencias de la computación y la ingeniería de software es un tema muy discutido, por disputas sobre lo que realmente significa el término "ingeniería de software" y sobre cómo se define a las ciencias de la computación. Algunas personas creen que la ingeniería de software sería un subconjunto de las ciencias de la computación. Otras por su parte, tomando en cuenta la relación entre otras disciplinas científicas y de la ingeniería, creen que el principal objetivo de las ciencias de la computación sería estudiar las propiedades del cómputo en general, mientras que el objetivo de la ingeniería de software sería diseñar cómputos específicos para lograr objetivos prácticos, con lo que se convertirían en disciplinas diferentes. Este punto de vista es mantenido, entre otros por (Parnas 1998). Incluso hay otros que sostienen que no podría existir una ingeniería de software.

Los aspectos académicos, políticos y de financianción en las áreas de ciencias de la computación tienden a estar drásticamente influenciados por el criterio del departamento encargado de la investigación y la educación en cada universidad, que puede estar orientado a la matemática o a la ingeniería. Los departamentos de ciencias de la computación orientados a la matemática suelen alinearse del lado de la computación científica y las aplicaciones de cálculo numérico.

El término computación científica, que no debe confundirse con ciencia de la computación, designa a todas aquellas prácticas destinadas a modelar, plantear experimentos y validar teorías científicas sirviéndose de medios computacionales. En estos casos la computación es una mera herramienta y el esfuerzo se dirige a avanzar en los campos objetivo (física, biología, mecánica de fluidos, radiotransmisión,...) mas que en la propia ciencia de la computación.

Finalmente, el público en general algunas veces confunde la ciencia de la computación con áreas vocacionales que trabajan con computadoras, o piensan que trata acerca de su propia experiencia con las computadoras, lo cual típicamente envuelve actividades como los juegos, la navegación web, y el procesamiento de texto. Sin embargo, el punto central de la ciencia de la computación va más allá de entender las propiedades de los programas que se emplean para implementar aplicaciones de software como juegos y navegadores web, y utiliza ese entendimiento para crear nuevos programas o mejorar los existentes.


Ver también

Fuentes

  • Revista Técnica de Copextel S.A


Enlases Externos