SlideShare una empresa de Scribd logo
1 de 70
Ciencias de la
computación

 Instituto Tecnológico de Saltillo
     Valdes Gaytan Daira A.
       Grupo de 11:00 a 12:00
Criptografía
C       Fundamentos                      Teoría de grafos
                                                              Lógica matemáticas
        matemáticos                                                                    Teoría de tipos
i
                              Teoría de la
e                            computación
                                                Teoría de autómatas
         Teoría de la
n       computación
                                                                Teoría de la computabilidad
                                                                         Teoría de la complejidad computacional
c                         Análisis de algoritmos
                                                Algoritmos
i D      Algoritmos y
         estructura de
                                                                Estructuras de datos
             datos
a e
s        Lenguajes de         Compiladores
        programación y
  LC     compiladores                                 Teoría de lenguajes de programación
  a o
          Bases de          Minería de datos
    m      datos
    p      Sistemas         Programación concurrente
        concurrentes, p                          Redes de computadoras
           aralelos y
    u     distribuidos
                                                                               Computo paralelo
                                                                                                  Sistemas
    t                        Inteligencia artificial
                                                                                                 distribuidos
                                              Razonamiento Automatizado
    a    Inteligencia
           artificial
                                                                          Robótica
                                                                                 Visión por computador
    c                        Computación grafica
                                                                                          Aprendizaje automático

    i    Gráficos por                                Procesamiento digital de imágenes
         computador                                                                      Geometría computacional
    ó
    n   Computación
         científica            Bioinformatica
                                                       Computación cuántica
Ciencias de la computación




Las ciencias de la computación abarcan el estudio de las bases teóricas de la
información y la computación y su aplicación en sistemas computacionales.
Existen diversos campos dentro de la disciplina de las ciencias de la computación;
algunos enfatizan los resultados específicos del cómputo, mientras que otros 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.
Historia de las ciencias de la computación
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 compatibilidad: 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).
                                                                               Volver
Campos de las Ciencias de la
      Computación
Fundamentos matemáticos




                          Volver
Criptografía
“Criptografía (comunicaciones), es la
ciencia que trata del enmascaramiento de la
comunicación de modo que sólo resulte
inteligible para la persona que posee la
clave, o método para averiguar el
significado oculto, mediante el
criptoanálisis de un texto aparentemente
incoherente. En su sentido más amplio, la
criptografía abarca el uso de mensajes
encubiertos, códigos y cifras. Los mensajes
encubiertos, como los ocultos en textos
infantiles o los escritos con tinta
invisible, cifran todo su éxito en no levantar
ninguna sospecha; una vez descubiertos, a
menudo no resultan difíciles de descifrar.
Los códigos, en que las palabras y las frases
se representan mediante vocablos, números
o símbolos preestablecidos, por lo general
resultan imposibles de leer si no se dispone
del libro con el código clave”.
¿Qué tipos de criptografía se emplean en la actualidad?




                                Criptografía estratégica:
Actualmente su aplicación se ha extendido a diversas actividades basadas en el uso
 de la tecnología de la información y las comunicaciones (TIC) constituyéndose en
        elemento indispensable para garantizar la seguridad en el manejo de la
   información. Estas herramientas han permitido proteger cada carácter con una
 llave que puede conformarse hasta por 256 bits. Es decir, que para encontrar esta
     llave en particular, tendríamos que buscarla entre combinaciones posibles”.
La criptografía simétrica:
Es en donde se usa la misma contraseña o llave
      para encriptar y para desencriptar la
    información. El usar la misma llave para
encriptar y para desencriptar es un problema a
  la hora de enviar datos, ya que el remitente
debe enviar previamente la llave al destinatario
       para que éste pueda desencriptar la
   información, y debe hacerlo por un canal
seguro. Por lo tanto la criptografía simétrica se
 emplea especialmente para almacenamiento
    seguro de datos (solamente una persona
    necesita la llave). Para envío de datos es
      preferible la criptografía asimétrica”.
La criptografía asimétrica:
 Es la que emplea un esquema de llave pública y llave privada. La información se
encriptar con la llave pública, y se desencriptar con la llave privada. No presenta el
  problema de transmisión de la llave que tiene la criptografía simétrica, ya que la
              llave pública no sirve para desencriptar la información”.


                                                                                 Volver
Teoría de grafos




    En matemáticas y en ciencias de la computación, la teoría de grafos (también
    llamada teoría de las gráficas) estudia las propiedades de los grafos (también
llamadas gráficas). Un grafo es un conjunto, no vacío, de objetos llamados vértices (o
  nodos) y una selección de pares de vértices, llamados aristas (edges en inglés) que
 pueden ser orientados o no. Típicamente, un grafo se representa mediante una serie
             de puntos (los vértices) conectados por líneas (las aristas).
Estructuras de datos en la representación de grafos




Existen diferentes formas de almacenar grafos en una computadora. La estructura
de datos usada depende de las características del grafo y el algoritmo usado para
manipularlo. Entre las estructuras más sencillas y usadas se encuentran las listas y
las matrices, aunque frecuentemente se usa una combinación de ambas. Las listas
 son preferidas en grafos dispersos porque tienen un eficiente uso de la memoria.
Por otro lado, las matrices proveen acceso rápido, pero pueden consumir grandes
                              cantidades de memoria.
                                                                               Volver
Lógica matemática




 La lógica matemática es una parte de la lógica y las matemáticas, que consiste en el
estudio matemático de la lógica y en la aplicación de este estudio a otras áreas de las
matemáticas. La lógica matemática guarda estrechas conexiones con la ciencias de la
                         computación y la lógica filosófica.
La lógica matemática estudia los sistemas formales en relación con el modo en el que
            codifican conceptos intuitivos de objetos matemáticos como
               conjuntos, números, demostraciones y computación.
La lógica matemática suele dividirse
en cuatro subcampos:
•teoría de modelos
•teoría de la demostración
•teoría de conjuntos
•teoría de la recursión.

      La investigación en lógica
   matemática ha jugado un papel
  fundamental en el estudio de los
  fundamentos de las matemáticas.
 La lógica matemática fue también
llamada lógica simbólica. El primer
   término todavía se utiliza como
 sinónimo suyo, pero el segundo se
refiere ahora a ciertos aspectos de la
      teoría de la demostración.
La lógica matemática no es la "lógica
      de las matemáticas" sino la
 "matemática de la lógica". Incluye
   aquellas partes de la lógica que
pueden ser modeladas y estudiadas
          matemáticamente.
                                         Volver
Teoría de tipos de datos




 En los lenguajes de programación un tipo de dato es un atributo de una parte de los datos que indica al
 ordenador (y/o al programador) algo sobre la clase de datos sobre los que se va a procesar. Esto incluye
imponer restricciones en los datos, como qué valores pueden tomar y qué operaciones se pueden realizar.
          Tipos de datos comunes son: enteros, números de coma flotante (decimales), cadenas
              alfanuméricas, fechas, horas, colores, coches o cualquier cosa que se nos ocurra.
 Los colores, por otra parte, se representan como tres bytes denotando la cantidad de rojo, verde y azul, y
   una cadena de caracteres representando el nombre del color; las operaciones permitidas incluyen la
                               adición y sustracción, pero no la multiplicación.
Un tipo de dato puede ser también visto como una limitación impuesta en la interpretación de los datos en
 un sistema de tipificación, describiendo la representación, interpretación y la estructura de los valores u
objetos almacenados en la memoria del ordenador. El sistema de tipificación usa información de los tipos
      de datos para comprobar la verificación de los programas que acceden o manipulan los datos.

                                                                                                      Volver
Teoría de la computación




                       Volver
Teoría de la computación
 La teoría de la computación o informática teórica (en inglés Theoretical Computer
  Science) es una ciencia cuyas bases están establecidas básicamente en principios
        matemáticos y conjunta varias ramas de las matemáticas. Es un campo
 especialmente rico para la indagación filosófica. Alan Turing, establece la relación
entre la lógica y la computación electrónica, plantea la famosa Máquina de Turing, la
          cual es la base de la Teoría de la Computación actual. Turing es, por
              tanto, considerado el padre de la Teoría de la Computación.
         La teoría de la computación se vale de la lógica matemática, teoría de
          conjuntos, teoría de grafos, álgebra matricial, álgebra relacional, etc.




              Principales subramas        Otras subramas

              •Teoría de autómatas        •Modelos de cómputo
              •Teoría de la               •Teoría algorítmica de la información
              compatibilidad              •Especificación y verificación formal
              •Teoría de la complejidad   •La Teoría del aprendizaje
              computacional               computacional
                                          •Teoría de tipos


                                                                                  Volver
Teoría de autómatas




  Un autómata es un sistema secuencial, aunque en ocasiones la palabra es utilizada
    también para referirse a un robot. Puede definirse como un equipo electrónico
programable en lenguaje no informático y diseñado para controlar, en tiempo real y en
  ambiente industrial, procesos secuenciales. Sin embargo, la rápida evolución de los
                 autómatas hace que esta definición no esté cerrada.
      Un autómata programable se puede considerar como un sistema basado en
 un microprocesador, siendo sus partes fundamentales la Unidad Central de Proceso
             (CPU), la Memoria y el Sistema de Entradas y Salidas (E/S).


                                                                             Volver
Teoría de la computabilidad
La Teoría de la computabilidad
 es la parte de la computación
 que estudia los problemas de
    decisión que pueden ser
  resueltos con un algoritmo o
   equivalentemente con una
       máquina de Turing.
   La teoría de la complejidad
   computacional clasifica las
funciones computables según el
   uso que hacen de diversos
  recursos en diversos tipos de
            máquina.

                                  Volver
Teoría de la complejidad computacional




La teoría de la complejidad computacional es la rama de la teoría de la computación
  que estudia, de manera teórica, los recursos requeridos durante el cómputo de un
  algoritmo para resolver un problema. Los recursos comúnmente estudiados son el
  tiempo (mediante una aproximación al número y tipo de pasos de ejecución de un
 algoritmo para resolver un problema) y el espacio (mediante una aproximación a la
    cantidad de memoria utilizada para resolver un problema). Se pueden estudiar
igualmente otros parámetros, tales como el número de procesadores necesarios para
resolver el problema en paralelo. La teoría de la complejidad difiere de la teoría de la
 compatibilidad en que ésta se ocupa de la factibilidad de expresar problemas como
      algoritmos efectivos sin tomar en cuenta los recursos necesarios para ello.
Clases de complejidad:
Los problemas de decisión se clasifican en conjuntos de complejidad
           comparable llamados clases de complejidad.
   La clase de complejidad P es el conjunto de los problemas de
 decisión que pueden ser resueltos en una máquina determinista en
tiempo poli nómico, lo que corresponde intuitivamente a problemas
        que pueden ser resueltos aún en el peor de sus casos.
  La clase de complejidad NP es el conjunto de los problemas de
decisión que pueden ser resueltos por una máquina no determinista
                      en tiempo poli nómico.
 Esta clase contiene muchos problemas que se desean resolver en la
  práctica, incluyendo el problema de satisfacibilidad booleana y el
problema del viajante, un camino Hamiltoniano para recorrer todos
los vértices una sola vez. Todos los problemas de esta clase tienen la
 propiedad de que su solución puede ser verificada efectivamente.
                                                                 Volver
Algoritmos y estructura
       de datos




                          Volver
Análisis de algoritmos

El análisis de algoritmos es una parte
      importante de la Teoría de
   complejidad computacional más
  amplia, que provee estimaciones
    teóricas para los recursos que
  necesita cualquier algoritmo que
resuelva un problema computacional
dado. Estas estimaciones resultan ser
  bastante útiles en la búsqueda de
         algoritmos eficientes.


                                         Volver
Algoritmos




         Un algoritmo es un conjunto finito de pasos
definidos, estructurados en el tiempo y formulados con base a
  un conjunto finito de reglas no ambiguas, que proveen un
procedimiento para dar la solución o indicar la falta de esta a
 un problema en un tiempo determinado. [Rodolfo Quispe-
                         Otazu, 2004]
Características:

Las características fundamentales que
debe cumplir todo algoritmo son:
•Bigüedad, cada paso del algoritmo
debe indicar la acción a realizar sin
criterios de interpretación.

•Ser finito: Un número específico y
numerable de pasos debe componer al
algoritmo, el cual deberá finalizar al
completarlos.

•Tener cero o más entradas: Datos son
proporcionados a un algoritmo como
insumo (o estos son generados de
alguna forma) para llevar a cabo las
operaciones que comprende.
•Tener una o más salidas:
Debe siempre devolver un resultado; de
nada sirve un algoritmo que hace algo y
nunca sabemos que fue. El devolver un
resultado no debe ser considerado como
únicamente “verlos” en forma impresa o en
pantalla, como ocurre con las
computadoras. Existen muchos otros
mecanismos susceptibles de programación
que no cuentan con una salida de
resultados de esta forma. Por salida de
resultados debe entenderse todo medio o
canal por el cual es posible apreciar los
efectos de las acciones del algoritmo.

•Efectividad:
El tiempo y esfuerzo por cada paso
realizado debe ser preciso, no usando nada
más ni nada menos que aquello que se
requiera para y en su ejecución
                                      Volver
Estructuras de datos




En programación, una estructura de datos es una forma de organizar un
     conjunto de datos elementales con el objetivo de facilitar su
manipulación. Un dato elemental es la mínima información que se tiene
                           en un sistema.
Una estructura de datos define la organización e interrelación de éstos y
    un conjunto de operaciones que se pueden realizar sobre ellos.
Las operaciones básicas        Otras operaciones que se
          son:                           pueden realizar son:

          •Alta, adicionar un nuevo      •Ordenamiento, de los
          valor a la estructura.         elementos pertenecientes a
          •Baja, borrar un valor de la   la estructura.
          estructura.                    •Apareo, dadas dos
          •Búsqueda, encontrar un        estructuras originar una
          determinado valor en la        nueva ordenada y que
          estructura para realizar una   contenga a las apareadas.
          operación con este valor, en
          forma secuencial o binario
          (siempre y cuando los datos
          estén ordenados).




Cada estructura ofrece ventajas y desventajas en relación a la simplicidad
    y eficiencia para la realización de cada operación. De esta forma, la
elección de la estructura de datos apropiada para cada problema depende
de factores como la frecuencia y el orden en que se realiza cada operación
                                sobre los datos.                          Volver
Lenguajes de programación
     y compiladores




                            Volver
Compiladores




  Los compiladores son programas o herramientas encargadas de compilar. Un compilador
 toma un texto (código fuente) escrito en un lenguaje de alto nivel y lo traduce a un lenguaje
                    comprensible por las computadoras (código objeto).

   Básicamente, existen dos grandes formas de ejecutar programas: programas compilados
(previamente pasados por un compilador) y programas interpretados (necesitan pasar por un
                         intérprete para ejecutarse en tiempo real).
Características de un compilador

                    Generalmente un compilador se divide en dos partes:

•Front End: parte que analiza el código fuente, comprueba su validez, genera el árbol de
derivación y rellena los valores de la tabla de símbolos. Parte que suele ser independiente de
la plataforma o sistema operativo para el que funcionará.

•Back End: parte en donde se genera el código máquina exclusivo para una plataforma a
partir de lo analizado en el front end.

Por lo general el resultado del back end no puede ser ejecutado directamente, se necesita
pasar por un proceso de enlazado (linker).

Existen varios tipos de compiladores:
•Compiladores cruzados
•Compiladores optimizadores
•Compiladores de una sola pasada
•Compiladores de varias pasadas
•Compiladores JIT (Just In Time).


                                                                                            Volver
Teoría de lenguajes de programación




   Teoría del lenguaje de programación (conocido comúnmente como PLT) es un
 rama de informática ese se ocupa del diseño, de la puesta en práctica, del análisis,
de la caracterización, y de la clasificación de lenguajes de programación y lenguaje
                           de programación características.
    Es un campo multidisciplinario, ambos dependiendo de (y en algunos casos
    afectando) matemáticas, tecnología de dotación lógica, lingüística, e incluso
  ciencias cognoscitivas. Es un rama bien-reconocido de la informática, y en fecha
2006, un área activa de la investigación, con los resultados publicados en numeroso
 diarios dedicado al PLT, así como en general publicaciones de la informática y de
                                      la ingeniería.                            Volver
Bases de datos




                 Volver
Minería de datos




 Algunos sistemas que son sólo parcialmente conocidos, producen una cantidad
 inmensa de datos; estos datos con frecuencia contienen valiosa información que
puede resultar muy útil y ser vista como vetas de oro por los ojos de un ejecutivo
                                de una corporación.
  Las dimensiones de las base de datos grandes (montañas) y sus velocidades de
   crecimiento, hacen muy difícil para un humano su análisis y la extracción de
alguna información importante (oro). Aún con el uso de herramientas estadísticas
                       clásicas esta tarea es casi imposible.
El descubrimiento de
conocimiento en base de datos
  (KDD) combina las técnicas
 tradicionales con numerosos
  recursos desarrollados en el
área de la inteligencia artificial.
    En estas aplicaciones el
  término "Minería de Datos"
 (Data mining) ha tenido más
           aceptación.
      En algunos casos las
 herramientas provenientes de
  la inteligencia artificial son
       nuevas, no del todo
comprendidas y carentes de un
soporte teórico formal. Pero en
   este caso el objetivo es tan
   valioso, que los resultados
   prácticos han rebasado a la
      elegancia académica.
                                      Volver
Sistemas concurrentes,
paralelos y distribuidos




                           Volver
Programación concurrente




  Un programa concurrente es un programa que tiene mas de una línea lógica de ejecución, es decir, es un
 programa que parece que varias partes del mismo se ejecutan simultáneamente. Un ejemplo de esto es un
programa que realice determinada función y, simultáneamente, exponga datos en la pantalla. Un programa
concurrente puede correr en varios procesadores simultáneamente o no. Esta importancia de la concurrencia
  es especialmente destacable en sistemas operativos como Linux, que además de concurrentes, presentan
                                unos mecanismos de concurrencia estables.
 El concepto fundamental de la programación concurrente es la noción de proceso. El termino proceso fue
  utilizado por primera vez por los diseñadores del sistema Multics en los años 60’s. Desde entonces, el
        termino proceso, utilizado a veces como sinónimo de tarea, ha tenido muchas definiciones.
                                                                                                 Volver
Redes de computadoras




  Una red de computadoras es un sistema de comunicación de datos que enlaza
varias computadoras y periféricos como impresoras, sistemas de almacenamiento
   masivo, bibliotecas de CD-ROM, módem, fax y muchos otros dispositivos.
  La más simple de las redes es una caja de conexiones y un cable, que permite
 compartir la misma impresora a varios usuarios. Con este sistema, sólo hay un
        usuario que puede enviar trabajos de impresión en cada momento.
   Los conectores serie o paralelo ofrecen un modo económico de montar una
red, pero tienen capacidades limitadas de impresión y transferencia de archivos.
Para montar una red multiusuario, realmente útil, hacen falta tarjetas de interfaz
         de red (NICs = Netware Interface Cards) y sistemas de cableado.
                                                                             Volver
Computo paralelo




   La computación paralela es una técnica de programación en la que muchas instrucciones se ejecutan
 simultáneamente. Se basa en el principio de que los problemas grandes se pueden dividir en partes más
       pequeñas que pueden resolverse de forma concurrente ("en paralelo"). Existen varios tipos de
computación paralela: paralelismo a nivel de bit, paralelismo a nivel de instrucción, paralelismo de datos
y paralelismo de tareas. Durante muchos años, la computación paralela se ha aplicado en la computación
 de altas prestaciones, pero el interés en ella ha aumentado en los últimos años debido a las restricciones
físicas que impiden el escalado en frecuencia. La computación paralela se ha convertido en el paradigma
   dominante en la arquitectura de computadores, principalmente en los procesadores multinúcleo. Sin
   embargo, recientemente, el consumo de energía de los ordenadores paralelos se ha convertido en una
                                                 preocupación.
Los ordenadores paralelos se pueden clasificar según el nivel de paralelismo que
  admite su hardware: los ordenadores multinúcleo y multiproceso tienen varios
 elementos de procesamiento en una sola máquina, mientras que los clusters, los
   MPP y los grids emplean varios ordenadores para trabajar en la misma tarea.
    Los programas de ordenador paralelos son más difíciles de escribir que los
     secuenciales porque la concurrencia introduce nuevos tipos de errores de
software, siendo las condiciones de carrera los más comunes. La comunicación y la
sincronización entre las diferentes subtareas son típicamente las grandes barreras
para conseguir un buen rendimiento de los programas paralelos. El incremento de
  velocidad que consigue un programa como resultado de la paralelisacion viene
                            dado por la ley de Amdahl.
                                                                            Volver
Sistemas Distribuidos

                                   La computación distribuida o informática en
                                   malla, es un nuevo modelo para resolver
                                   problemas de computación masiva utilizando un
                                   gran número de computadoras organizadas en
                                   racimos incrustados en una infraestructura de
                                   telecomunicaciones distribuida.
                                   Un sistema distribuido se define como: una
                                   colección de computadoras separados físicamente
                                   y conectados entre sí por una red de
                                   comunicaciones distribuida; cada máquina posee
                                   sus componentes de hardware y software que el
                                   usuario percibe como un solo sistema (no necesita
                                   saber qué cosas están en qué máquinas).
    El usuario accede a los recursos remotos (RPC) de la misma manera en que accede a
  recursos locales, o un grupo de computadores que usan un software para conseguir un
   objetivo en común. Los sistemas distribuidos deben ser muy confiables, ya que si un
       componente del sistema se descompone otro componente debe de ser capaz de
 reemplazarlo, esto se denomina Tolerancia a Fallos. El tamaño de un sistema distribuido
puede ser muy variado, ya sean decenas de hosts (red de área local), centenas de hosts (red
      de área metropolitana), y miles o millones de hosts (Internet); esto se denomina
                                       escalabilidad.
                                                                                      Volver
Inteligencia Artificial




                          Volver
Inteligencia Artificial




  Se denomina inteligencia artificial (IA) a la rama de las Ciencias de la Computación dedicada al
                            desarrollo de agentes racionales no vivos.
 Para explicar la definición anterior, entiéndase a un agente como cualquier cosa capaz de percibir su
entorno (recibir entradas), procesar tales percepciones y actuar en su entorno (proporcionar salidas), y
    entiéndase a la racionalidad como la característica que posee una elección de ser correcta, más
 específicamente, de tender a maximizar un resultado esperado (este concepto de racionalidad es más
   general y por ello más adecuado que inteligencia para definir la naturaleza del objetivo de esta
                                               disciplina).
Por lo tanto, y de manera más
específica la inteligencia artificial es la
disciplina que se encarga de construir
  procesos que al ser ejecutados sobre
    una arquitectura física producen
 acciones o resultados que maximizan
       una medida de rendimiento
      determinada, basándose en la
 secuencia de entradas percibidas y en
   el conocimiento almacenado en tal
               arquitectura.
Existen distintos tipos de conocimiento
     y medios de representación del
    conocimiento, el cual puede ser
 cargado en el agente por su diseñador
  o puede ser aprendido por el mismo
      agente utilizando técnicas de
              aprendizaje.
También se distinguen varios tipos de procesos válidos para obtener resultados racionales,
que determinan el tipo de agente inteligente. De más simples a más complejos, los cinco
principales tipos de procesos son:
•Ejecución de una respuesta predeterminada por cada entrada (análogas a actos reflejos en
seres vivos).
•Búsqueda del estado requerido en el conjunto de los estados producidos por las acciones
posibles.
•Algoritmos genéticos (análogo al proceso de evolución de las cadenas de ADN).
•Redes neuronales artificiales (análogo al funcionamiento físico del cerebro de animales y
humanos).
•Razonamiento mediante una lógica formal (análogo al pensamiento abstracto humano).
También existen distintos tipos de percepciones y acciones, pueden ser obtenidas y
     producidas, respectivamente por sensores físicos y sensores mecánicos en
  máquinas, pulsos eléctricos u ópticos en computadoras, tanto como por entradas y
               salidas de bits de un software y su entorno software.
    Varios ejemplos se encuentran en el área de control de sistemas, planificación
      automática, la habilidad de responder a diagnósticos y a consultas de los
       consumidores, reconocimiento de escritura, reconocimiento del habla y
reconocimiento de patrones. Los sistemas de IA actualmente son parte de la rutina en
   campos como economía, medicina, ingeniería y la milicia, y se ha usado en gran
     variedad de aplicaciones de software, juegos de estrategia como ajedrez de
                          computador y otros videojuegos.
                                                                               Volver
Razonamiento Automatizado




    Razonamiento automatizado es un área de informática dedicado a entender diversos
aspectos de razonamiento de una manera que permite la creación del software que permite
    que razonen las computadoras totalmente o casi totalmente automáticamente. Como
tal, generalmente se considera un subcampos de inteligencia artificial, solamente también
              tiene conexiones fuertes a informática teórica e iguale filosofía.
Las subzonas desarrolladas del razonamiento automatizado están probablemente el probar
automatizado del teorema (y el subcampo menos automatizado pero más pragmático de el
  probar interactivo del teorema) y comprobación automatizada de la prueba (visto como
   razonamiento correcto garantizado bajo asunciones fijas), solamente trabajo extenso
          también se ha hecho en razonar cerca analogía, inducción y abducción.
Otros asuntos importantes están razonando debajo incertidumbre y no-
    mono tónico razonamiento. Una parte importante del campo de la
   incertidumbre es la de la argumentación, donde otros apremios del
    minimality y de la consistencia se aplican encima de la deducción
automatizada más estándar. El sistema de Oscar del Pollock de Juan es un
 ejemplo de un sistema automatizado de la argumentación que sea más
  específico que siendo justo un proveer automatizado del teorema. La
     argumentación formal es subcampo de la inteligencia artificial.
 Las herramientas y las técnicas incluyen las lógicas y el calculi clásicos del
teorema automatizado que prueba, pero también lógica confusa, Inferencia
 Bayesian, razonando con entropía máxima y una gran cantidad de técnicas
                           ad hoc menos formales.


                                                                         Volver
Robótica
      La robótica es un concepto de dominio publico.
      La mayor parte de la gente tiene una idea de lo
       que es la robótica, sabe sus aplicaciones y el
      potencial que tiene; sin embargo, no conocen el
       origen de la palabra robot, ni tienen idea del
      origen de las aplicaciones útiles de la robótica
                       como ciencia.

              La robótica como hoy en día la
       conocemos, tiene sus orígenes hace miles de
       anos. Nos basaremos en hechos registrados a
      través de la historia, y comenzaremos aclarando
      que antiguamente los robots eran conocidos con
       el nombre de autómatas, y la robótica no era
        reconocida como ciencia, es mas, la palabra
      robot surgió hace mucho después del origen de
                      los autómatas.
Desde el principio de los tiempos, el hombre ha deseado crear vida artificial. Se

      ha empeñado en dar vida a seres artificiales que le acompañen en su

  morada, seres que realicen sus tareas repetitivas, tareas pesadas o difíciles de

 realizar por un ser humano. De acuerdo a algunos autores, como J. J. C. Smart y

 Jasia Reichardt, consideran que el primer autómata en toda la historia fue Adán

   creado por Dios. De acuerdo a esto, Adán y Eva son los primero autómatas

   inteligentes creados, y Dios fue quien los programó y les dio sus primeras

  instrucciones que debieran de seguir. Dentro de la mitología griega se puede

encontrar varios relatos sobre la creación de vida artificial, por ejemplo, Prometeo

 creo el primer hombre y la primer mujer con barro y animados con el fuego de

    los cielos. De esta manera nos damos cuenta de que la humanidad tiene la

 obsesión de crear vida artificial desde el principio de los tiempos. Muchos han

                          sido los intentos por lograrlo.

Los hombres creaban autómatas como un pasatiempo, eran creados con el fin de

entretener a su dueño. Los materiales que se utilizaban se encontraban al alcance

de todo el mundo, esto es, utilizaban maderas resistentes, metales como el cobre

  y cualquier otro material moldeable, esto es, que no necesitara o requiriera de

   algún tipo de transformación para poder ser utilizado en la creación de los

                                    autómatas.

Estos primeros autómatas utilizaban, principalmente, la fuerza bruta para poder

realizar sus movimientos. A las primeras maquinas herramientas que ayudaron al

 hombre a facilitarle su trabajo no se les daba el nombre de autómata, sino más

            bien se les reconocía como artefactos o simples maquinas.

                                                                                       Volver
Visión por computador




 La Visión artificial, también conocida como Visión por Computador (del inglés Computer Visión) o

   Visión técnica, es un subcampo de la inteligencia artificial. El propósito de la visión artificial es

programar un computador para que "entienda" una escena o las características de una imagen. Esquema

                   de relaciones entre visión por computadora y otras áreas afines.
Los objetivos típicos de la visión artificial incluyen:
•La detección, segmentación, localización y reconocimiento de ciertos objetos en imágenes.
•La evaluación de los resultados.
•Registro de diferentes imágenes de una misma escena u objeto, i.e., hacer concordar un
mismo objeto en diversas imágenes.
•Seguimiento de un objeto en una secuencia de imágenes.
•Mapeo de una escena para generar un modelo tridimensional de la escena; tal modelo
podría ser usado por un robot para navegar por la escena.
•Estimación de las posturas tridimensionales de humanos.
•Búsqueda de imágenes digitales por su
•contenido.
•Estos objetivos se consiguen por medio de reconocimiento de patrones,
• aprendizaje estadístico, geometría de
proyección, procesado de imágenes,
teoría de gráficos y otros campos.
•La visión artificial cognitiva está muy
relacionada con la psicología cognitiva
y la computación biológica.




                  Volver
Aprendizaje Automático
   El Aprendizaje Automático o Aprendizaje de Máquinas es una rama de la Inteligencia
 Artificial cuyo objetivo es desarrollar técnicas que permitan a las computadoras aprender.
          De forma más concreta, se trata de crear programas capaces de generalizar
  comportamientos a partir de una información no estructurada suministrada en forma de
             ejemplos. Es, por lo tanto, un proceso de inducción del conocimiento.
 En muchas ocasiones el campo de actuación del Aprendizaje Automático se solapa con el
de la Estadística, ya que las dos disciplinas se basan en el análisis de datos. Sin embargo, el
Aprendizaje Automático se centra más en el estudio de la Complejidad Computacional de
    los problemas. Muchos problemas son de clase NP-hard, por lo que gran parte de la
 investigación realizada en Aprendizaje Automático está enfocada al diseño de soluciones
factibles a esos problemas. El Aprendizaje Automático puede ser visto como un intento de
     automatizar algunas partes del Método Científico mediante métodos matemáticos.
El Aprendizaje Automático tiene una amplia gama de aplicaciones, incluyendo
    motores de búsqueda, diagnósticos médicos, detección de fraude en el uso de
 tarjetas de crédito, análisis del mercado de valores, clasificación de secuencias de
      ADN, reconocimiento del habla y del lenguaje escrito, juegos y robótica.
                                  Tipos de algoritmos
      Los diferentes algoritmos de Aprendizaje Automático se agrupan en una
taxonomía en función de la salida de los mismos. Algunos tipos de algoritmos son:
•Aprendizaje supervisado (El algoritmo produce una función que establece una
correspondencia entre las entradas y las salidas deseadas del sistema. )
•Aprendizaje no supervisado (Todo el proceso de modelado se lleva a cabo sobre
un conjunto de ejemplos formado tan sólo por entradas al sistema. No se tiene
información sobre las categorías de esos ejemplos.)
•Aprendizaje por refuerzo (El algoritmo aprende observando el mundo que le
rodea. Su información de entrada es el feedback o retroalimentación que obtiene
del mundo exterior como respuesta a sus acciones.)
•Transducción (Trata de predecir las categorías de los futuros ejemplos basándose
en los ejemplos de entrada, sus respectivas categorías y los ejemplos nuevos al
sistema.)
•Aprendizaje multi-tarea (Métodos de aprendizaje que usan conocimiento
previamente aprendido por el sistema de cara a enfrentarse a problemas parecidos
a los ya vistos.)
En el aprendizaje automático podemos obtener 3 tipos de conocimiento los cuáles son:
1. Crecimiento
Es el que se adquiere de lo que nos rodea, el cual guarda la información en la memoria como
si dejara huellas.
2. Reestructuración
Al interpretar los conocimientos el individuo razona y genera nuevo conocimiento al cual se
le llama de reestructuración.
3. Ajuste
Es el que se obtiene al generalizar varios conceptos o generando los propios.
Los tres tipos se efectúan durante un proceso de aprendizaje automático pero la importancia
de cada tipo de conocimiento depende de las características de lo que se está tratando de
aprender.
El aprendizaje es más que una necesidad, es un factor primordial para satisfacer las
necesidades de la inteligencia artificial.
                                                                                     Volver
Gráficos por computador




                          Volver
Computación grafica




La computación gráfica o gráficos por ordenador es el campo de la informática
visual, donde se utilizan computadoras tanto para generar imágenes visuales sintéticamente
como integrar o cambiar la información visual y espacial probada del mundo real.
El primer mayor avance en la gráfica realizada por computadora era el desarrollo de
Sketchpad en 1962 por Ivan Sutherland.
Este campo puede ser dividido en varias áreas: Interpretado 3D en tiempo real (a menudo
usado en juegos de vídeo), animación de computadora, captura de vídeo y creación de vídeo
interpretado, edición de efectos especiales (a menudo usado para películas y
televisión), edición de imagen, y modelado (a menudo usado para ingeniería y objetivos
médicos).
El desarrollo en la gráfica realizada por computadora
   fue primero alimentado por intereses académicos y
    patrocinio del gobierno. Sin embargo, cuando las
     aplicaciones verdaderas mundiales de la gráfica
     realizada por computadora (CG) en televisión y
 películas demostraron una alternativa viable a efectos
    especiales más a las tradicionales y las técnicas de
   animación, los comerciales han financiado cada vez
               más el avance de este campo.
 A menudo se piensa que la primera película para usar
 gráficos realizados por computadora era 2001: A Space
      Odyssey (1968), que intentó mostrar como las
 computadoras serían mucho más gráficas en el futuro.
   Sin embargo, todos los gráficos de computadora en
  aquella película eran la animación dibujada a mano
(por ejemplo en las pantallas de televisión se simulaba
el comportamiento de las computadoras con dibujos), y
    las secuencias de efectos especiales fue producida
      completamente con efectos ópticos y modelos
                      convencionales.
     Quizás el primer uso de la gráfica realizada por
     computadora expresamente para ilustrar gráfica
    realizada por computadora estaba en Futureworld
(1976), que incluyó una animación de una cara humana
 y mano - producido por Ed Catmull y Fred Parke en la
                   Universidad de Utah.                    Volver
Procesamiento digital de imágenes




El termino procesamiento digital de imágenes versa sobre la manipulación y análisis
de imágenes por computadora. De aquí en adelante se usara el termino procesado de
             imágenes refiriéndose a procesamiento digital de imágenes.
      El procesamiento de imagen puede considerarse como un tipo especial del
 procesamiento digital en dos dimensiones, el cual se usa para revelar información
                               sobre imágenes y que
                   involucra hardware, software y soporte teórico.
                                                                                  Volver
Geometría computacional
  Geometría Computacional es un ramo de la
     Ciencia de la Computación que estudia
    algoritmos y estructuras de datos para la
    resolución computacional de problemas
      geométricos. Además de eso, algunos
problemas puramente geométricos surgen del
 estudio de algoritmos y, por eso, también son
       considerados parte de la geometría
                 computacional.
 Los problemas en Geometría Computacional
       son tratados en términos de objetos
         geométricos elementales como
          puntos, rectas, segmentos de
recta, polígonos, etc. En general, el objetivo de
    esta disciplina es resolver los problemas
        geométricos de forma eficiente, es
   decir, utilizando el más pequeño número
   posible de operaciones simples sobre los
      elementos geométricos. La Geometría
  Computacional da enfuse la complexidades
computacional de los problemas y algoritmos
                   estudiados.
La Geometría Computacional emergió de áreas de desarrollo y análisis de
    algoritmos a mediados de la década de 1970. El primer uso del término
          Geometría Computacional con este sentido ocurrió en 1975.
       La geometría computacional estudia tanto problemas geométricos
     clásicos, como también problemas motivados por diversas áreas de la
   computación como Computación Gráfica, dibujo asistido por ordenador
       (CAD/CAM), robótica, sistemas de información geográfica, visión
computacional, optimización combinatoria, procesamiento de imágenes, teoría
  de los grafos, dibujo de circuitos integrados, aprendizaje de máquina etc.

                                                                        Volver
Computación científica




                         Volver
Bioinformatica




        Bioinformatica es una disciplina científica emergente que utiliza tecnología de la
  información para organizar, analizar y distribuir información biológica con la finalidad de
    responder preguntas complejas en biología. Bioinformatica es un área de investigación
     multidisciplinaria, la cual puede ser ampliamente definida como la interface entre dos
 ciencias: Biología y Computación y esta impulsada por la incógnita del genoma humano y la
promesa de una nueva era en la cual la investigación genómica puede ayudar dramáticamente
                        a mejorar la condición y calidad de vida humana.
     Avances en la detección y tratamiento de enfermedades y la producción de alimentos
   genéticamente modificados son entre otros ejemplos de los beneficios mencionados más
    frecuentemente. Involucra la solución de problemas complejos usando herramientas de
    sistemas y computación. También incluye la colección, organización, almacenamiento y
          recuperación de la información biológica que se encuentra en base de datos.
Según la definición del Centro Nacional para la Información Biotecnológica "National
      Center for Biotechnology Information" (NCBI por sus siglas en Inglés, 2001):
 "Bioinformatica es un campo de la ciencia en el cual confluyen varias disciplinas tales
   como: biología, computación y tecnología de la información. El fin último de este
     campo es facilitar el descubrimiento de nuevas ideas biológicas así como crear
perspectivas globales a partir de las cuales se puedan discernir principios unificadores
en biología. Al comienzo de la "revolución genómica", el concepto de Bioinformatica se
    refería sólo a la creación y mantenimiento de base de datos donde se almacena
    información biológica, tales como secuencias de nucleótidos y aminoácidos. El
desarrollo de este tipo de base de datos no solamente significaba el diseño de la misma
 sino también el desarrollo de interfaces complejas donde los investigadores pudieran
                acceder los datos existentes y suministrar o revisar datos
                                                                                  Volver
Computación cuántica




 La computación cuántica es producto de la combinación de la mecánica cuántica y la
 teoría de la computación, que se enfoca a estudiar si un problema puede ser resuelto
 utilizando un procedimiento programado en una computadora, así como la cantidad
de recursos como energía y tiempo que se deben aplicar en caso de existir solución. En
   consecuencia, la computación cuántica tiene como propósito la utilización de las
   teorías de las que surge para incrementar la capacidad de las computadoras para
                     procesar información y solucionar problemas.
       En la computación cuántica también convergen otras disciplinas como la
   microelectrónica, la nanotecnología, las matemáticas, la criptografía, entre otras.
Los científicos se plantearon desde hace algunos años la interrogante de cuáles serían
las propiedades de una computadora en la cual los ceros y los unos (sistema binario)
      estuvieran codificados en sistemas de dimensiones atómicas (un electrón, un
     fotón, un átomo). En nuestro mundo, el procesamiento y almacenamiento de la
   información sigue las leyes de la llamada mecánica clásica. Al pasar a sistemas de
        tamaños atómicos las reglas cambiarían y la mecánica cuántica regiría el
 comportamiento de los equipos. Los ceros y unos con que se maneja la información
    actual en nuestros equipos de cómputo, denominados bits, se transformarían en
    qubits (contracción del término inglés quantumbits), o bits cuánticos, siguiendo
 reglas muy diferentes. Los qubits son los componentes básicos de una computadora
 cuántica y están formados a partir de partículas subatómicas que interactúan para el
  intercambio de información, lo que permitirá computadoras más poderosas para el
                             procesamiento de información.
Las computadoras clásicas o digitales codifican
  información utilizando números binarios y pueden
 hacer cálculos de un conjunto de números de una sola
vez cada uno. En cambio las computadoras cuánticas en
   teoría codificarían información como una serie de
estados mecánicos cuánticos tales como las direcciones
de los electrones o las polarizaciones de un fotón, estas
 características entre otras, permitirán la realización de
 diversos cálculos simultáneamente a una velocidad y
              capacidad nunca antes vistos.
Hasta el momento en varios laboratorios del mundo se
ha logrado con éxito arreglos y enlaces cuánticos de dos
  y hasta tres qubits de estado sólido, materiales nano
      estructurados que se localizan en chips que
  interacciona y podrían formar un arsenal de qubits.

Otros de los temas relevantes en el campo de computación cuántica se refieren al desarrollo
de los algoritmos cuánticos. Un algoritmo (convencional) es un procedimiento matemático
programado en computadora. La creación de un algoritmo cuántico se ha convertido en uno
  de los grandes retos que enfrentan la ciencia en la actualidad pues dicho algoritmo debe
 resolver el problema para el que fue diseñado y además debe ser más veloz que cualquier
  algoritmo convencional para resolver cualquier problema. Computadoras equipadas con
      algoritmos cuánticos abren posibilidades antes no consideradas, disminuciones
 exponenciales en el tiempo de procesamiento y realización de operaciones en paralelo sin
                    necesidad de agregar procesadores a la computadora.
                                                                                      Volver
Fuentes:
http://www.grupoeducare.com/blog/template_permalink.asp?id=93
http://cienciasdelacomputacion.com
http://es.wikipedia.org/wiki/Ciencias_de_la_computaci%C3%B3n
http://www.rodolfoquispe.org/blog/que-es-un-algoritmo.php
http://homepages.mty.itesm.mx/al796887/criptografia.ppt
http://es.wikipedia.org/wiki/Teor%C3%ADa_de_grafos
http://es.wikipedia.org/wiki/Tipo_de_dato
http://enciclopedia.us.es/index.php/Teor%C3%ADa_de_la_computaci%C3%B3n
http://www.angelfire.com/oz/automatas/
http://es.wikipedia.org/wiki/Teor%C3%ADa_de_la_computabilidad
http://es.wikipedia.org/wiki/Complejidad_computacional
http://es.wikipedia.org/wiki/An%C3%A1lisis_de_algoritmos
http://www.mitecnologico.com/Main/Automatas
http://es.wikipedia.org/wiki/Estructura_de_datos
http://www.alegsa.com.ar/Dic/compilador.php
http://www.worldlingo.com/ma/enwiki/es/Programming_language_theory
http://www.answermath.com/mineria_de_datos.htm
http://www.depi.itch.edu.mx/apacheco/lengs/paralelo/index.html
http://www.angelfire.com/nc2/misdocumentos/redes/REDES.html
http://es.wikipedia.org/wiki/Programaci%C3%B3n_paralela
http://es.wikipedia.org/wiki/Sistemas_Distribuidos
http://es.wikipedia.org/wiki/Inteligencia_artificial
http://www.worldlingo.com/ma/enwiki/es/Automated_reasoning
http://www.monografias.com/trabajos6/larobo/larobo.shtml#intro
http://es.wikipedia.org/wiki/Visi%C3%B3n_por_computador
http://es.wikipedia.org/wiki/Aprendizaje_Autom%C3%A1tico
http://es.wikipedia.org/wiki/Computaci%C3%B3n_gr%C3%A1fica
http://delta.cs.cinvestav.mx/~fraga/Cursos/PDI/cap1.pdf
http://es.wikilingue.com/pt/Geometria_computacional
http://www.solociencia.com/biologia/bioinformatica-concepto.htm
http://www.periodistasenlinea.org/modules.php?op=modload&name=News&file=art
icle&sid=1217

                                                                      Volver

Más contenido relacionado

La actualidad más candente

Algoritmos if y case
Algoritmos if y caseAlgoritmos if y case
Algoritmos if y caseAbbie Ulrich
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionBoris Salleg
 
Identificadores en Lógia de Programación
Identificadores en Lógia de ProgramaciónIdentificadores en Lógia de Programación
Identificadores en Lógia de Programaciónnormaroldano
 
La informática como ciencia
La informática como cienciaLa informática como ciencia
La informática como cienciaYoel Meza
 
Diapositivas hardware y software
Diapositivas hardware y softwareDiapositivas hardware y software
Diapositivas hardware y softwareSabina
 
Ensayo la evoluvion del computador
Ensayo la evoluvion del computadorEnsayo la evoluvion del computador
Ensayo la evoluvion del computadorinesup
 
1.1 tipos de datos abstractos
1.1 tipos de datos abstractos1.1 tipos de datos abstractos
1.1 tipos de datos abstractoserwin_alexander
 
Algoritmos Y Programas Unidad1
Algoritmos Y  Programas Unidad1Algoritmos Y  Programas Unidad1
Algoritmos Y Programas Unidad1Silvanac
 
Mapa Conceptual de Grafos
Mapa Conceptual de GrafosMapa Conceptual de Grafos
Mapa Conceptual de GrafosSandra Biondi
 
Componentes físicos y lógicos de un computador
Componentes físicos y lógicos de un computadorComponentes físicos y lógicos de un computador
Componentes físicos y lógicos de un computadorYosmary Rondon
 
Introduccion a la programacion
Introduccion a la programacionIntroduccion a la programacion
Introduccion a la programacionJose Marroquin
 
Diferencia entre informatica y computacion
Diferencia entre informatica y computacionDiferencia entre informatica y computacion
Diferencia entre informatica y computacionjannethbustamante
 
Ensamblador - Interrupciones de Software
Ensamblador - Interrupciones de SoftwareEnsamblador - Interrupciones de Software
Ensamblador - Interrupciones de SoftwareOmar Sanmartin
 
El Computador y sus elementos (Hardware y Software)
El Computador y sus elementos (Hardware y Software)El Computador y sus elementos (Hardware y Software)
El Computador y sus elementos (Hardware y Software)Luis Godoy
 
Conceptos basicos para las TICS
Conceptos basicos para las TICS Conceptos basicos para las TICS
Conceptos basicos para las TICS lauraenvictoria2012
 

La actualidad más candente (20)

Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Algoritmos if y case
Algoritmos if y caseAlgoritmos if y case
Algoritmos if y case
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
 
Identificadores en Lógia de Programación
Identificadores en Lógia de ProgramaciónIdentificadores en Lógia de Programación
Identificadores en Lógia de Programación
 
La informática como ciencia
La informática como cienciaLa informática como ciencia
La informática como ciencia
 
Dato e información
Dato e informaciónDato e información
Dato e información
 
Generalidades de la informática
Generalidades de la informáticaGeneralidades de la informática
Generalidades de la informática
 
Diapositivas hardware y software
Diapositivas hardware y softwareDiapositivas hardware y software
Diapositivas hardware y software
 
Ensayo la evoluvion del computador
Ensayo la evoluvion del computadorEnsayo la evoluvion del computador
Ensayo la evoluvion del computador
 
1.1 tipos de datos abstractos
1.1 tipos de datos abstractos1.1 tipos de datos abstractos
1.1 tipos de datos abstractos
 
Algoritmos Y Programas Unidad1
Algoritmos Y  Programas Unidad1Algoritmos Y  Programas Unidad1
Algoritmos Y Programas Unidad1
 
Mapa Conceptual de Grafos
Mapa Conceptual de GrafosMapa Conceptual de Grafos
Mapa Conceptual de Grafos
 
Componentes físicos y lógicos de un computador
Componentes físicos y lógicos de un computadorComponentes físicos y lógicos de un computador
Componentes físicos y lógicos de un computador
 
Introduccion a la programacion
Introduccion a la programacionIntroduccion a la programacion
Introduccion a la programacion
 
Main board
Main boardMain board
Main board
 
Diferencia entre informatica y computacion
Diferencia entre informatica y computacionDiferencia entre informatica y computacion
Diferencia entre informatica y computacion
 
Ensamblador - Interrupciones de Software
Ensamblador - Interrupciones de SoftwareEnsamblador - Interrupciones de Software
Ensamblador - Interrupciones de Software
 
El Computador y sus elementos (Hardware y Software)
El Computador y sus elementos (Hardware y Software)El Computador y sus elementos (Hardware y Software)
El Computador y sus elementos (Hardware y Software)
 
Decompilador y metacompilador
Decompilador y metacompiladorDecompilador y metacompilador
Decompilador y metacompilador
 
Conceptos basicos para las TICS
Conceptos basicos para las TICS Conceptos basicos para las TICS
Conceptos basicos para las TICS
 

Destacado

Primeiras Fotos Coloridas
Primeiras Fotos ColoridasPrimeiras Fotos Coloridas
Primeiras Fotos ColoridasDenise Rivera
 
Trabajo de egipto para frances alexandra jimenez garro
Trabajo de egipto para frances alexandra jimenez garroTrabajo de egipto para frances alexandra jimenez garro
Trabajo de egipto para frances alexandra jimenez garrocariam
 
Rencontrez les chefs de file des médias sociaux
Rencontrez les chefs de file des médias sociauxRencontrez les chefs de file des médias sociaux
Rencontrez les chefs de file des médias sociauxBlog Atlantic
 
Presentation GTI792 - Télémétrie JAUS
Presentation GTI792 - Télémétrie JAUSPresentation GTI792 - Télémétrie JAUS
Presentation GTI792 - Télémétrie JAUSplcstpierre
 
1 l’atelier solaire2011
1   l’atelier solaire20111   l’atelier solaire2011
1 l’atelier solaire2011Adrien Dagois
 
Le réseau Vitour : objectifs et réalisations
Le réseau Vitour : objectifs et réalisationsLe réseau Vitour : objectifs et réalisations
Le réseau Vitour : objectifs et réalisationsMission Val de Loire
 
Planeacion didactica 5
Planeacion didactica 5Planeacion didactica 5
Planeacion didactica 5Claudia Aponte
 
Comics 2nde Pontoise
Comics 2nde PontoiseComics 2nde Pontoise
Comics 2nde PontoiseEspinasse
 
Peintures camions
Peintures camionsPeintures camions
Peintures camionsSybille37
 
Propulser votre réseau en mode OFFLINE
Propulser votre réseau en mode OFFLINEPropulser votre réseau en mode OFFLINE
Propulser votre réseau en mode OFFLINEaryane
 
Runners’ Etiquette
Runners’ EtiquetteRunners’ Etiquette
Runners’ EtiquetteAmado Castro
 
Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10
Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10
Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10Christian Desclouds
 
Les Community Managers en France - Édition 2013
Les Community Managers en France - Édition 2013Les Community Managers en France - Édition 2013
Les Community Managers en France - Édition 2013ANOV Agency
 
La France Vue Par les Français
La France Vue Par les FrançaisLa France Vue Par les Français
La France Vue Par les FrançaisAna Torres
 
Sfsic14 140604 Chagnoux Desse
Sfsic14 140604 Chagnoux DesseSfsic14 140604 Chagnoux Desse
Sfsic14 140604 Chagnoux DesseSFSIC Association
 

Destacado (20)

Primeiras Fotos Coloridas
Primeiras Fotos ColoridasPrimeiras Fotos Coloridas
Primeiras Fotos Coloridas
 
Trabajo de egipto para frances alexandra jimenez garro
Trabajo de egipto para frances alexandra jimenez garroTrabajo de egipto para frances alexandra jimenez garro
Trabajo de egipto para frances alexandra jimenez garro
 
Rencontrez les chefs de file des médias sociaux
Rencontrez les chefs de file des médias sociauxRencontrez les chefs de file des médias sociaux
Rencontrez les chefs de file des médias sociaux
 
Presentation GTI792 - Télémétrie JAUS
Presentation GTI792 - Télémétrie JAUSPresentation GTI792 - Télémétrie JAUS
Presentation GTI792 - Télémétrie JAUS
 
1 l’atelier solaire2011
1   l’atelier solaire20111   l’atelier solaire2011
1 l’atelier solaire2011
 
Le réseau Vitour : objectifs et réalisations
Le réseau Vitour : objectifs et réalisationsLe réseau Vitour : objectifs et réalisations
Le réseau Vitour : objectifs et réalisations
 
Planeacion didactica 5
Planeacion didactica 5Planeacion didactica 5
Planeacion didactica 5
 
Comics 2nde Pontoise
Comics 2nde PontoiseComics 2nde Pontoise
Comics 2nde Pontoise
 
Peintures camions
Peintures camionsPeintures camions
Peintures camions
 
Primeros auxilios 2010
Primeros auxilios 2010Primeros auxilios 2010
Primeros auxilios 2010
 
Propulser votre réseau en mode OFFLINE
Propulser votre réseau en mode OFFLINEPropulser votre réseau en mode OFFLINE
Propulser votre réseau en mode OFFLINE
 
Runners’ Etiquette
Runners’ EtiquetteRunners’ Etiquette
Runners’ Etiquette
 
Resultados de encuesta
Resultados de encuestaResultados de encuesta
Resultados de encuesta
 
Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10
Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10
Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10
 
Les Community Managers en France - Édition 2013
Les Community Managers en France - Édition 2013Les Community Managers en France - Édition 2013
Les Community Managers en France - Édition 2013
 
Mensajes del Agua
Mensajes del AguaMensajes del Agua
Mensajes del Agua
 
Championnes du volant al.au.x
Championnes du volant al.au.xChampionnes du volant al.au.x
Championnes du volant al.au.x
 
La France Vue Par les Français
La France Vue Par les FrançaisLa France Vue Par les Français
La France Vue Par les Français
 
Sfsic Assises09 Ertzscheid
Sfsic Assises09 ErtzscheidSfsic Assises09 Ertzscheid
Sfsic Assises09 Ertzscheid
 
Sfsic14 140604 Chagnoux Desse
Sfsic14 140604 Chagnoux DesseSfsic14 140604 Chagnoux Desse
Sfsic14 140604 Chagnoux Desse
 

Similar a Ciencias de la computacion (20)

Informática2
Informática2Informática2
Informática2
 
Ramas de la informatica
Ramas de la informaticaRamas de la informatica
Ramas de la informatica
 
Ntics
NticsNtics
Ntics
 
Las computadoras
Las computadorasLas computadoras
Las computadoras
 
Ciencias de la computacion
Ciencias de la computacionCiencias de la computacion
Ciencias de la computacion
 
computacion
computacioncomputacion
computacion
 
Computación
ComputaciónComputación
Computación
 
Ciencias de la computación
Ciencias de la computaciónCiencias de la computación
Ciencias de la computación
 
Presentación
PresentaciónPresentación
Presentación
 
Andy
AndyAndy
Andy
 
Revista
RevistaRevista
Revista
 
Informatica2
Informatica2Informatica2
Informatica2
 
Computacion
ComputacionComputacion
Computacion
 
Power point erth-alvarado
Power point  erth-alvaradoPower point  erth-alvarado
Power point erth-alvarado
 
Power point erth-alvarado
Power point  erth-alvaradoPower point  erth-alvarado
Power point erth-alvarado
 
Power point erth-alvarado
Power point  erth-alvaradoPower point  erth-alvarado
Power point erth-alvarado
 
Power point erth-alvarado
Power point  erth-alvaradoPower point  erth-alvarado
Power point erth-alvarado
 
Bachillerato oficial álvaro obregón "Computacion"
Bachillerato oficial álvaro obregón "Computacion"Bachillerato oficial álvaro obregón "Computacion"
Bachillerato oficial álvaro obregón "Computacion"
 
Computación
ComputaciónComputación
Computación
 
Practica de word
Practica de wordPractica de word
Practica de word
 

Último

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 

Último (20)

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 

Ciencias de la computacion

  • 1. Ciencias de la computación Instituto Tecnológico de Saltillo Valdes Gaytan Daira A. Grupo de 11:00 a 12:00
  • 2. Criptografía C Fundamentos Teoría de grafos Lógica matemáticas matemáticos Teoría de tipos i Teoría de la e computación Teoría de autómatas Teoría de la n computación Teoría de la computabilidad Teoría de la complejidad computacional c Análisis de algoritmos Algoritmos i D Algoritmos y estructura de Estructuras de datos datos a e s Lenguajes de Compiladores programación y LC compiladores Teoría de lenguajes de programación a o Bases de Minería de datos m datos p Sistemas Programación concurrente concurrentes, p Redes de computadoras aralelos y u distribuidos Computo paralelo Sistemas t Inteligencia artificial distribuidos Razonamiento Automatizado a Inteligencia artificial Robótica Visión por computador c Computación grafica Aprendizaje automático i Gráficos por Procesamiento digital de imágenes computador Geometría computacional ó n Computación científica Bioinformatica Computación cuántica
  • 3. Ciencias de la computación Las ciencias de la computación abarcan el estudio de las bases teóricas de la información y la computación y su aplicación en sistemas computacionales. Existen diversos campos dentro de la disciplina de las ciencias de la computación; algunos enfatizan los resultados específicos del cómputo, mientras que otros 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.
  • 4. Historia de las ciencias de la computación 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 compatibilidad: 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.
  • 5. 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). Volver
  • 6. Campos de las Ciencias de la Computación
  • 8. Criptografía “Criptografía (comunicaciones), es la ciencia que trata del enmascaramiento de la comunicación de modo que sólo resulte inteligible para la persona que posee la clave, o método para averiguar el significado oculto, mediante el criptoanálisis de un texto aparentemente incoherente. En su sentido más amplio, la criptografía abarca el uso de mensajes encubiertos, códigos y cifras. Los mensajes encubiertos, como los ocultos en textos infantiles o los escritos con tinta invisible, cifran todo su éxito en no levantar ninguna sospecha; una vez descubiertos, a menudo no resultan difíciles de descifrar. Los códigos, en que las palabras y las frases se representan mediante vocablos, números o símbolos preestablecidos, por lo general resultan imposibles de leer si no se dispone del libro con el código clave”.
  • 9. ¿Qué tipos de criptografía se emplean en la actualidad? Criptografía estratégica: Actualmente su aplicación se ha extendido a diversas actividades basadas en el uso de la tecnología de la información y las comunicaciones (TIC) constituyéndose en elemento indispensable para garantizar la seguridad en el manejo de la información. Estas herramientas han permitido proteger cada carácter con una llave que puede conformarse hasta por 256 bits. Es decir, que para encontrar esta llave en particular, tendríamos que buscarla entre combinaciones posibles”.
  • 10. La criptografía simétrica: Es en donde se usa la misma contraseña o llave para encriptar y para desencriptar la información. El usar la misma llave para encriptar y para desencriptar es un problema a la hora de enviar datos, ya que el remitente debe enviar previamente la llave al destinatario para que éste pueda desencriptar la información, y debe hacerlo por un canal seguro. Por lo tanto la criptografía simétrica se emplea especialmente para almacenamiento seguro de datos (solamente una persona necesita la llave). Para envío de datos es preferible la criptografía asimétrica”.
  • 11. La criptografía asimétrica: Es la que emplea un esquema de llave pública y llave privada. La información se encriptar con la llave pública, y se desencriptar con la llave privada. No presenta el problema de transmisión de la llave que tiene la criptografía simétrica, ya que la llave pública no sirve para desencriptar la información”. Volver
  • 12. Teoría de grafos En matemáticas y en ciencias de la computación, la teoría de grafos (también llamada teoría de las gráficas) estudia las propiedades de los grafos (también llamadas gráficas). Un grafo es un conjunto, no vacío, de objetos llamados vértices (o nodos) y una selección de pares de vértices, llamados aristas (edges en inglés) que pueden ser orientados o no. Típicamente, un grafo se representa mediante una serie de puntos (los vértices) conectados por líneas (las aristas).
  • 13. Estructuras de datos en la representación de grafos Existen diferentes formas de almacenar grafos en una computadora. La estructura de datos usada depende de las características del grafo y el algoritmo usado para manipularlo. Entre las estructuras más sencillas y usadas se encuentran las listas y las matrices, aunque frecuentemente se usa una combinación de ambas. Las listas son preferidas en grafos dispersos porque tienen un eficiente uso de la memoria. Por otro lado, las matrices proveen acceso rápido, pero pueden consumir grandes cantidades de memoria. Volver
  • 14. Lógica matemática La lógica matemática es una parte de la lógica y las matemáticas, que consiste en el estudio matemático de la lógica y en la aplicación de este estudio a otras áreas de las matemáticas. La lógica matemática guarda estrechas conexiones con la ciencias de la computación y la lógica filosófica. La lógica matemática estudia los sistemas formales en relación con el modo en el que codifican conceptos intuitivos de objetos matemáticos como conjuntos, números, demostraciones y computación.
  • 15. La lógica matemática suele dividirse en cuatro subcampos: •teoría de modelos •teoría de la demostración •teoría de conjuntos •teoría de la recursión. La investigación en lógica matemática ha jugado un papel fundamental en el estudio de los fundamentos de las matemáticas. La lógica matemática fue también llamada lógica simbólica. El primer término todavía se utiliza como sinónimo suyo, pero el segundo se refiere ahora a ciertos aspectos de la teoría de la demostración. La lógica matemática no es la "lógica de las matemáticas" sino la "matemática de la lógica". Incluye aquellas partes de la lógica que pueden ser modeladas y estudiadas matemáticamente. Volver
  • 16. Teoría de tipos de datos En los lenguajes de programación un tipo de dato es un atributo de una parte de los datos que indica al ordenador (y/o al programador) algo sobre la clase de datos sobre los que se va a procesar. Esto incluye imponer restricciones en los datos, como qué valores pueden tomar y qué operaciones se pueden realizar. Tipos de datos comunes son: enteros, números de coma flotante (decimales), cadenas alfanuméricas, fechas, horas, colores, coches o cualquier cosa que se nos ocurra. Los colores, por otra parte, se representan como tres bytes denotando la cantidad de rojo, verde y azul, y una cadena de caracteres representando el nombre del color; las operaciones permitidas incluyen la adición y sustracción, pero no la multiplicación. Un tipo de dato puede ser también visto como una limitación impuesta en la interpretación de los datos en un sistema de tipificación, describiendo la representación, interpretación y la estructura de los valores u objetos almacenados en la memoria del ordenador. El sistema de tipificación usa información de los tipos de datos para comprobar la verificación de los programas que acceden o manipulan los datos. Volver
  • 17. Teoría de la computación Volver
  • 18. Teoría de la computación La teoría de la computación o informática teórica (en inglés Theoretical Computer Science) es una ciencia cuyas bases están establecidas básicamente en principios matemáticos y conjunta varias ramas de las matemáticas. Es un campo especialmente rico para la indagación filosófica. Alan Turing, establece la relación entre la lógica y la computación electrónica, plantea la famosa Máquina de Turing, la cual es la base de la Teoría de la Computación actual. Turing es, por tanto, considerado el padre de la Teoría de la Computación. La teoría de la computación se vale de la lógica matemática, teoría de conjuntos, teoría de grafos, álgebra matricial, álgebra relacional, etc. Principales subramas Otras subramas •Teoría de autómatas •Modelos de cómputo •Teoría de la •Teoría algorítmica de la información compatibilidad •Especificación y verificación formal •Teoría de la complejidad •La Teoría del aprendizaje computacional computacional •Teoría de tipos Volver
  • 19. Teoría de autómatas Un autómata es un sistema secuencial, aunque en ocasiones la palabra es utilizada también para referirse a un robot. Puede definirse como un equipo electrónico programable en lenguaje no informático y diseñado para controlar, en tiempo real y en ambiente industrial, procesos secuenciales. Sin embargo, la rápida evolución de los autómatas hace que esta definición no esté cerrada. Un autómata programable se puede considerar como un sistema basado en un microprocesador, siendo sus partes fundamentales la Unidad Central de Proceso (CPU), la Memoria y el Sistema de Entradas y Salidas (E/S). Volver
  • 20. Teoría de la computabilidad La Teoría de la computabilidad es la parte de la computación que estudia los problemas de decisión que pueden ser resueltos con un algoritmo o equivalentemente con una máquina de Turing. La teoría de la complejidad computacional clasifica las funciones computables según el uso que hacen de diversos recursos en diversos tipos de máquina. Volver
  • 21. Teoría de la complejidad computacional La teoría de la complejidad computacional es la rama de la teoría de la computación que estudia, de manera teórica, los recursos requeridos durante el cómputo de un algoritmo para resolver un problema. Los recursos comúnmente estudiados son el tiempo (mediante una aproximación al número y tipo de pasos de ejecución de un algoritmo para resolver un problema) y el espacio (mediante una aproximación a la cantidad de memoria utilizada para resolver un problema). Se pueden estudiar igualmente otros parámetros, tales como el número de procesadores necesarios para resolver el problema en paralelo. La teoría de la complejidad difiere de la teoría de la compatibilidad en que ésta se ocupa de la factibilidad de expresar problemas como algoritmos efectivos sin tomar en cuenta los recursos necesarios para ello.
  • 22. Clases de complejidad: Los problemas de decisión se clasifican en conjuntos de complejidad comparable llamados clases de complejidad. La clase de complejidad P es el conjunto de los problemas de decisión que pueden ser resueltos en una máquina determinista en tiempo poli nómico, lo que corresponde intuitivamente a problemas que pueden ser resueltos aún en el peor de sus casos. La clase de complejidad NP es el conjunto de los problemas de decisión que pueden ser resueltos por una máquina no determinista en tiempo poli nómico. Esta clase contiene muchos problemas que se desean resolver en la práctica, incluyendo el problema de satisfacibilidad booleana y el problema del viajante, un camino Hamiltoniano para recorrer todos los vértices una sola vez. Todos los problemas de esta clase tienen la propiedad de que su solución puede ser verificada efectivamente. Volver
  • 23. Algoritmos y estructura de datos Volver
  • 24. Análisis de algoritmos El análisis de algoritmos es una parte importante de la Teoría de complejidad computacional más amplia, que provee estimaciones teóricas para los recursos que necesita cualquier algoritmo que resuelva un problema computacional dado. Estas estimaciones resultan ser bastante útiles en la búsqueda de algoritmos eficientes. Volver
  • 25. Algoritmos Un algoritmo es un conjunto finito de pasos definidos, estructurados en el tiempo y formulados con base a un conjunto finito de reglas no ambiguas, que proveen un procedimiento para dar la solución o indicar la falta de esta a un problema en un tiempo determinado. [Rodolfo Quispe- Otazu, 2004]
  • 26. Características: Las características fundamentales que debe cumplir todo algoritmo son: •Bigüedad, cada paso del algoritmo debe indicar la acción a realizar sin criterios de interpretación. •Ser finito: Un número específico y numerable de pasos debe componer al algoritmo, el cual deberá finalizar al completarlos. •Tener cero o más entradas: Datos son proporcionados a un algoritmo como insumo (o estos son generados de alguna forma) para llevar a cabo las operaciones que comprende.
  • 27. •Tener una o más salidas: Debe siempre devolver un resultado; de nada sirve un algoritmo que hace algo y nunca sabemos que fue. El devolver un resultado no debe ser considerado como únicamente “verlos” en forma impresa o en pantalla, como ocurre con las computadoras. Existen muchos otros mecanismos susceptibles de programación que no cuentan con una salida de resultados de esta forma. Por salida de resultados debe entenderse todo medio o canal por el cual es posible apreciar los efectos de las acciones del algoritmo. •Efectividad: El tiempo y esfuerzo por cada paso realizado debe ser preciso, no usando nada más ni nada menos que aquello que se requiera para y en su ejecución Volver
  • 28. Estructuras de datos En programación, una estructura de datos es una forma de organizar un conjunto de datos elementales con el objetivo de facilitar su manipulación. Un dato elemental es la mínima información que se tiene en un sistema. Una estructura de datos define la organización e interrelación de éstos y un conjunto de operaciones que se pueden realizar sobre ellos.
  • 29. Las operaciones básicas Otras operaciones que se son: pueden realizar son: •Alta, adicionar un nuevo •Ordenamiento, de los valor a la estructura. elementos pertenecientes a •Baja, borrar un valor de la la estructura. estructura. •Apareo, dadas dos •Búsqueda, encontrar un estructuras originar una determinado valor en la nueva ordenada y que estructura para realizar una contenga a las apareadas. operación con este valor, en forma secuencial o binario (siempre y cuando los datos estén ordenados). Cada estructura ofrece ventajas y desventajas en relación a la simplicidad y eficiencia para la realización de cada operación. De esta forma, la elección de la estructura de datos apropiada para cada problema depende de factores como la frecuencia y el orden en que se realiza cada operación sobre los datos. Volver
  • 30. Lenguajes de programación y compiladores Volver
  • 31. Compiladores Los compiladores son programas o herramientas encargadas de compilar. Un compilador toma un texto (código fuente) escrito en un lenguaje de alto nivel y lo traduce a un lenguaje comprensible por las computadoras (código objeto). Básicamente, existen dos grandes formas de ejecutar programas: programas compilados (previamente pasados por un compilador) y programas interpretados (necesitan pasar por un intérprete para ejecutarse en tiempo real).
  • 32. Características de un compilador Generalmente un compilador se divide en dos partes: •Front End: parte que analiza el código fuente, comprueba su validez, genera el árbol de derivación y rellena los valores de la tabla de símbolos. Parte que suele ser independiente de la plataforma o sistema operativo para el que funcionará. •Back End: parte en donde se genera el código máquina exclusivo para una plataforma a partir de lo analizado en el front end. Por lo general el resultado del back end no puede ser ejecutado directamente, se necesita pasar por un proceso de enlazado (linker). Existen varios tipos de compiladores: •Compiladores cruzados •Compiladores optimizadores •Compiladores de una sola pasada •Compiladores de varias pasadas •Compiladores JIT (Just In Time). Volver
  • 33. Teoría de lenguajes de programación Teoría del lenguaje de programación (conocido comúnmente como PLT) es un rama de informática ese se ocupa del diseño, de la puesta en práctica, del análisis, de la caracterización, y de la clasificación de lenguajes de programación y lenguaje de programación características. Es un campo multidisciplinario, ambos dependiendo de (y en algunos casos afectando) matemáticas, tecnología de dotación lógica, lingüística, e incluso ciencias cognoscitivas. Es un rama bien-reconocido de la informática, y en fecha 2006, un área activa de la investigación, con los resultados publicados en numeroso diarios dedicado al PLT, así como en general publicaciones de la informática y de la ingeniería. Volver
  • 34. Bases de datos Volver
  • 35. Minería de datos Algunos sistemas que son sólo parcialmente conocidos, producen una cantidad inmensa de datos; estos datos con frecuencia contienen valiosa información que puede resultar muy útil y ser vista como vetas de oro por los ojos de un ejecutivo de una corporación. Las dimensiones de las base de datos grandes (montañas) y sus velocidades de crecimiento, hacen muy difícil para un humano su análisis y la extracción de alguna información importante (oro). Aún con el uso de herramientas estadísticas clásicas esta tarea es casi imposible.
  • 36. El descubrimiento de conocimiento en base de datos (KDD) combina las técnicas tradicionales con numerosos recursos desarrollados en el área de la inteligencia artificial. En estas aplicaciones el término "Minería de Datos" (Data mining) ha tenido más aceptación. En algunos casos las herramientas provenientes de la inteligencia artificial son nuevas, no del todo comprendidas y carentes de un soporte teórico formal. Pero en este caso el objetivo es tan valioso, que los resultados prácticos han rebasado a la elegancia académica. Volver
  • 37. Sistemas concurrentes, paralelos y distribuidos Volver
  • 38. Programación concurrente Un programa concurrente es un programa que tiene mas de una línea lógica de ejecución, es decir, es un programa que parece que varias partes del mismo se ejecutan simultáneamente. Un ejemplo de esto es un programa que realice determinada función y, simultáneamente, exponga datos en la pantalla. Un programa concurrente puede correr en varios procesadores simultáneamente o no. Esta importancia de la concurrencia es especialmente destacable en sistemas operativos como Linux, que además de concurrentes, presentan unos mecanismos de concurrencia estables. El concepto fundamental de la programación concurrente es la noción de proceso. El termino proceso fue utilizado por primera vez por los diseñadores del sistema Multics en los años 60’s. Desde entonces, el termino proceso, utilizado a veces como sinónimo de tarea, ha tenido muchas definiciones. Volver
  • 39. Redes de computadoras Una red de computadoras es un sistema de comunicación de datos que enlaza varias computadoras y periféricos como impresoras, sistemas de almacenamiento masivo, bibliotecas de CD-ROM, módem, fax y muchos otros dispositivos. La más simple de las redes es una caja de conexiones y un cable, que permite compartir la misma impresora a varios usuarios. Con este sistema, sólo hay un usuario que puede enviar trabajos de impresión en cada momento. Los conectores serie o paralelo ofrecen un modo económico de montar una red, pero tienen capacidades limitadas de impresión y transferencia de archivos. Para montar una red multiusuario, realmente útil, hacen falta tarjetas de interfaz de red (NICs = Netware Interface Cards) y sistemas de cableado. Volver
  • 40. Computo paralelo La computación paralela es una técnica de programación en la que muchas instrucciones se ejecutan simultáneamente. Se basa en el principio de que los problemas grandes se pueden dividir en partes más pequeñas que pueden resolverse de forma concurrente ("en paralelo"). Existen varios tipos de computación paralela: paralelismo a nivel de bit, paralelismo a nivel de instrucción, paralelismo de datos y paralelismo de tareas. Durante muchos años, la computación paralela se ha aplicado en la computación de altas prestaciones, pero el interés en ella ha aumentado en los últimos años debido a las restricciones físicas que impiden el escalado en frecuencia. La computación paralela se ha convertido en el paradigma dominante en la arquitectura de computadores, principalmente en los procesadores multinúcleo. Sin embargo, recientemente, el consumo de energía de los ordenadores paralelos se ha convertido en una preocupación.
  • 41. Los ordenadores paralelos se pueden clasificar según el nivel de paralelismo que admite su hardware: los ordenadores multinúcleo y multiproceso tienen varios elementos de procesamiento en una sola máquina, mientras que los clusters, los MPP y los grids emplean varios ordenadores para trabajar en la misma tarea. Los programas de ordenador paralelos son más difíciles de escribir que los secuenciales porque la concurrencia introduce nuevos tipos de errores de software, siendo las condiciones de carrera los más comunes. La comunicación y la sincronización entre las diferentes subtareas son típicamente las grandes barreras para conseguir un buen rendimiento de los programas paralelos. El incremento de velocidad que consigue un programa como resultado de la paralelisacion viene dado por la ley de Amdahl. Volver
  • 42. Sistemas Distribuidos La computación distribuida o informática en malla, es un nuevo modelo para resolver problemas de computación masiva utilizando un gran número de computadoras organizadas en racimos incrustados en una infraestructura de telecomunicaciones distribuida. Un sistema distribuido se define como: una colección de computadoras separados físicamente y conectados entre sí por una red de comunicaciones distribuida; cada máquina posee sus componentes de hardware y software que el usuario percibe como un solo sistema (no necesita saber qué cosas están en qué máquinas). El usuario accede a los recursos remotos (RPC) de la misma manera en que accede a recursos locales, o un grupo de computadores que usan un software para conseguir un objetivo en común. Los sistemas distribuidos deben ser muy confiables, ya que si un componente del sistema se descompone otro componente debe de ser capaz de reemplazarlo, esto se denomina Tolerancia a Fallos. El tamaño de un sistema distribuido puede ser muy variado, ya sean decenas de hosts (red de área local), centenas de hosts (red de área metropolitana), y miles o millones de hosts (Internet); esto se denomina escalabilidad. Volver
  • 44. Inteligencia Artificial Se denomina inteligencia artificial (IA) a la rama de las Ciencias de la Computación dedicada al desarrollo de agentes racionales no vivos. Para explicar la definición anterior, entiéndase a un agente como cualquier cosa capaz de percibir su entorno (recibir entradas), procesar tales percepciones y actuar en su entorno (proporcionar salidas), y entiéndase a la racionalidad como la característica que posee una elección de ser correcta, más específicamente, de tender a maximizar un resultado esperado (este concepto de racionalidad es más general y por ello más adecuado que inteligencia para definir la naturaleza del objetivo de esta disciplina).
  • 45. Por lo tanto, y de manera más específica la inteligencia artificial es la disciplina que se encarga de construir procesos que al ser ejecutados sobre una arquitectura física producen acciones o resultados que maximizan una medida de rendimiento determinada, basándose en la secuencia de entradas percibidas y en el conocimiento almacenado en tal arquitectura. Existen distintos tipos de conocimiento y medios de representación del conocimiento, el cual puede ser cargado en el agente por su diseñador o puede ser aprendido por el mismo agente utilizando técnicas de aprendizaje.
  • 46. También se distinguen varios tipos de procesos válidos para obtener resultados racionales, que determinan el tipo de agente inteligente. De más simples a más complejos, los cinco principales tipos de procesos son: •Ejecución de una respuesta predeterminada por cada entrada (análogas a actos reflejos en seres vivos). •Búsqueda del estado requerido en el conjunto de los estados producidos por las acciones posibles. •Algoritmos genéticos (análogo al proceso de evolución de las cadenas de ADN). •Redes neuronales artificiales (análogo al funcionamiento físico del cerebro de animales y humanos). •Razonamiento mediante una lógica formal (análogo al pensamiento abstracto humano).
  • 47. También existen distintos tipos de percepciones y acciones, pueden ser obtenidas y producidas, respectivamente por sensores físicos y sensores mecánicos en máquinas, pulsos eléctricos u ópticos en computadoras, tanto como por entradas y salidas de bits de un software y su entorno software. Varios ejemplos se encuentran en el área de control de sistemas, planificación automática, la habilidad de responder a diagnósticos y a consultas de los consumidores, reconocimiento de escritura, reconocimiento del habla y reconocimiento de patrones. Los sistemas de IA actualmente son parte de la rutina en campos como economía, medicina, ingeniería y la milicia, y se ha usado en gran variedad de aplicaciones de software, juegos de estrategia como ajedrez de computador y otros videojuegos. Volver
  • 48. Razonamiento Automatizado Razonamiento automatizado es un área de informática dedicado a entender diversos aspectos de razonamiento de una manera que permite la creación del software que permite que razonen las computadoras totalmente o casi totalmente automáticamente. Como tal, generalmente se considera un subcampos de inteligencia artificial, solamente también tiene conexiones fuertes a informática teórica e iguale filosofía. Las subzonas desarrolladas del razonamiento automatizado están probablemente el probar automatizado del teorema (y el subcampo menos automatizado pero más pragmático de el probar interactivo del teorema) y comprobación automatizada de la prueba (visto como razonamiento correcto garantizado bajo asunciones fijas), solamente trabajo extenso también se ha hecho en razonar cerca analogía, inducción y abducción.
  • 49. Otros asuntos importantes están razonando debajo incertidumbre y no- mono tónico razonamiento. Una parte importante del campo de la incertidumbre es la de la argumentación, donde otros apremios del minimality y de la consistencia se aplican encima de la deducción automatizada más estándar. El sistema de Oscar del Pollock de Juan es un ejemplo de un sistema automatizado de la argumentación que sea más específico que siendo justo un proveer automatizado del teorema. La argumentación formal es subcampo de la inteligencia artificial. Las herramientas y las técnicas incluyen las lógicas y el calculi clásicos del teorema automatizado que prueba, pero también lógica confusa, Inferencia Bayesian, razonando con entropía máxima y una gran cantidad de técnicas ad hoc menos formales. Volver
  • 50. Robótica La robótica es un concepto de dominio publico. La mayor parte de la gente tiene una idea de lo que es la robótica, sabe sus aplicaciones y el potencial que tiene; sin embargo, no conocen el origen de la palabra robot, ni tienen idea del origen de las aplicaciones útiles de la robótica como ciencia. La robótica como hoy en día la conocemos, tiene sus orígenes hace miles de anos. Nos basaremos en hechos registrados a través de la historia, y comenzaremos aclarando que antiguamente los robots eran conocidos con el nombre de autómatas, y la robótica no era reconocida como ciencia, es mas, la palabra robot surgió hace mucho después del origen de los autómatas.
  • 51. Desde el principio de los tiempos, el hombre ha deseado crear vida artificial. Se ha empeñado en dar vida a seres artificiales que le acompañen en su morada, seres que realicen sus tareas repetitivas, tareas pesadas o difíciles de realizar por un ser humano. De acuerdo a algunos autores, como J. J. C. Smart y Jasia Reichardt, consideran que el primer autómata en toda la historia fue Adán creado por Dios. De acuerdo a esto, Adán y Eva son los primero autómatas inteligentes creados, y Dios fue quien los programó y les dio sus primeras instrucciones que debieran de seguir. Dentro de la mitología griega se puede encontrar varios relatos sobre la creación de vida artificial, por ejemplo, Prometeo creo el primer hombre y la primer mujer con barro y animados con el fuego de los cielos. De esta manera nos damos cuenta de que la humanidad tiene la obsesión de crear vida artificial desde el principio de los tiempos. Muchos han sido los intentos por lograrlo. Los hombres creaban autómatas como un pasatiempo, eran creados con el fin de entretener a su dueño. Los materiales que se utilizaban se encontraban al alcance de todo el mundo, esto es, utilizaban maderas resistentes, metales como el cobre y cualquier otro material moldeable, esto es, que no necesitara o requiriera de algún tipo de transformación para poder ser utilizado en la creación de los autómatas. Estos primeros autómatas utilizaban, principalmente, la fuerza bruta para poder realizar sus movimientos. A las primeras maquinas herramientas que ayudaron al hombre a facilitarle su trabajo no se les daba el nombre de autómata, sino más bien se les reconocía como artefactos o simples maquinas. Volver
  • 52. Visión por computador La Visión artificial, también conocida como Visión por Computador (del inglés Computer Visión) o Visión técnica, es un subcampo de la inteligencia artificial. El propósito de la visión artificial es programar un computador para que "entienda" una escena o las características de una imagen. Esquema de relaciones entre visión por computadora y otras áreas afines.
  • 53. Los objetivos típicos de la visión artificial incluyen: •La detección, segmentación, localización y reconocimiento de ciertos objetos en imágenes. •La evaluación de los resultados. •Registro de diferentes imágenes de una misma escena u objeto, i.e., hacer concordar un mismo objeto en diversas imágenes. •Seguimiento de un objeto en una secuencia de imágenes. •Mapeo de una escena para generar un modelo tridimensional de la escena; tal modelo podría ser usado por un robot para navegar por la escena. •Estimación de las posturas tridimensionales de humanos. •Búsqueda de imágenes digitales por su •contenido. •Estos objetivos se consiguen por medio de reconocimiento de patrones, • aprendizaje estadístico, geometría de proyección, procesado de imágenes, teoría de gráficos y otros campos. •La visión artificial cognitiva está muy relacionada con la psicología cognitiva y la computación biológica. Volver
  • 54. Aprendizaje Automático El Aprendizaje Automático o Aprendizaje de Máquinas es una rama de la Inteligencia Artificial cuyo objetivo es desarrollar técnicas que permitan a las computadoras aprender. De forma más concreta, se trata de crear programas capaces de generalizar comportamientos a partir de una información no estructurada suministrada en forma de ejemplos. Es, por lo tanto, un proceso de inducción del conocimiento. En muchas ocasiones el campo de actuación del Aprendizaje Automático se solapa con el de la Estadística, ya que las dos disciplinas se basan en el análisis de datos. Sin embargo, el Aprendizaje Automático se centra más en el estudio de la Complejidad Computacional de los problemas. Muchos problemas son de clase NP-hard, por lo que gran parte de la investigación realizada en Aprendizaje Automático está enfocada al diseño de soluciones factibles a esos problemas. El Aprendizaje Automático puede ser visto como un intento de automatizar algunas partes del Método Científico mediante métodos matemáticos.
  • 55. El Aprendizaje Automático tiene una amplia gama de aplicaciones, incluyendo motores de búsqueda, diagnósticos médicos, detección de fraude en el uso de tarjetas de crédito, análisis del mercado de valores, clasificación de secuencias de ADN, reconocimiento del habla y del lenguaje escrito, juegos y robótica. Tipos de algoritmos Los diferentes algoritmos de Aprendizaje Automático se agrupan en una taxonomía en función de la salida de los mismos. Algunos tipos de algoritmos son: •Aprendizaje supervisado (El algoritmo produce una función que establece una correspondencia entre las entradas y las salidas deseadas del sistema. ) •Aprendizaje no supervisado (Todo el proceso de modelado se lleva a cabo sobre un conjunto de ejemplos formado tan sólo por entradas al sistema. No se tiene información sobre las categorías de esos ejemplos.) •Aprendizaje por refuerzo (El algoritmo aprende observando el mundo que le rodea. Su información de entrada es el feedback o retroalimentación que obtiene del mundo exterior como respuesta a sus acciones.) •Transducción (Trata de predecir las categorías de los futuros ejemplos basándose en los ejemplos de entrada, sus respectivas categorías y los ejemplos nuevos al sistema.) •Aprendizaje multi-tarea (Métodos de aprendizaje que usan conocimiento previamente aprendido por el sistema de cara a enfrentarse a problemas parecidos a los ya vistos.)
  • 56. En el aprendizaje automático podemos obtener 3 tipos de conocimiento los cuáles son: 1. Crecimiento Es el que se adquiere de lo que nos rodea, el cual guarda la información en la memoria como si dejara huellas. 2. Reestructuración Al interpretar los conocimientos el individuo razona y genera nuevo conocimiento al cual se le llama de reestructuración. 3. Ajuste Es el que se obtiene al generalizar varios conceptos o generando los propios. Los tres tipos se efectúan durante un proceso de aprendizaje automático pero la importancia de cada tipo de conocimiento depende de las características de lo que se está tratando de aprender. El aprendizaje es más que una necesidad, es un factor primordial para satisfacer las necesidades de la inteligencia artificial. Volver
  • 58. Computación grafica La computación gráfica o gráficos por ordenador es el campo de la informática visual, donde se utilizan computadoras tanto para generar imágenes visuales sintéticamente como integrar o cambiar la información visual y espacial probada del mundo real. El primer mayor avance en la gráfica realizada por computadora era el desarrollo de Sketchpad en 1962 por Ivan Sutherland. Este campo puede ser dividido en varias áreas: Interpretado 3D en tiempo real (a menudo usado en juegos de vídeo), animación de computadora, captura de vídeo y creación de vídeo interpretado, edición de efectos especiales (a menudo usado para películas y televisión), edición de imagen, y modelado (a menudo usado para ingeniería y objetivos médicos).
  • 59. El desarrollo en la gráfica realizada por computadora fue primero alimentado por intereses académicos y patrocinio del gobierno. Sin embargo, cuando las aplicaciones verdaderas mundiales de la gráfica realizada por computadora (CG) en televisión y películas demostraron una alternativa viable a efectos especiales más a las tradicionales y las técnicas de animación, los comerciales han financiado cada vez más el avance de este campo. A menudo se piensa que la primera película para usar gráficos realizados por computadora era 2001: A Space Odyssey (1968), que intentó mostrar como las computadoras serían mucho más gráficas en el futuro. Sin embargo, todos los gráficos de computadora en aquella película eran la animación dibujada a mano (por ejemplo en las pantallas de televisión se simulaba el comportamiento de las computadoras con dibujos), y las secuencias de efectos especiales fue producida completamente con efectos ópticos y modelos convencionales. Quizás el primer uso de la gráfica realizada por computadora expresamente para ilustrar gráfica realizada por computadora estaba en Futureworld (1976), que incluyó una animación de una cara humana y mano - producido por Ed Catmull y Fred Parke en la Universidad de Utah. Volver
  • 60. Procesamiento digital de imágenes El termino procesamiento digital de imágenes versa sobre la manipulación y análisis de imágenes por computadora. De aquí en adelante se usara el termino procesado de imágenes refiriéndose a procesamiento digital de imágenes. El procesamiento de imagen puede considerarse como un tipo especial del procesamiento digital en dos dimensiones, el cual se usa para revelar información sobre imágenes y que involucra hardware, software y soporte teórico. Volver
  • 61. Geometría computacional Geometría Computacional es un ramo de la Ciencia de la Computación que estudia algoritmos y estructuras de datos para la resolución computacional de problemas geométricos. Además de eso, algunos problemas puramente geométricos surgen del estudio de algoritmos y, por eso, también son considerados parte de la geometría computacional. Los problemas en Geometría Computacional son tratados en términos de objetos geométricos elementales como puntos, rectas, segmentos de recta, polígonos, etc. En general, el objetivo de esta disciplina es resolver los problemas geométricos de forma eficiente, es decir, utilizando el más pequeño número posible de operaciones simples sobre los elementos geométricos. La Geometría Computacional da enfuse la complexidades computacional de los problemas y algoritmos estudiados.
  • 62. La Geometría Computacional emergió de áreas de desarrollo y análisis de algoritmos a mediados de la década de 1970. El primer uso del término Geometría Computacional con este sentido ocurrió en 1975. La geometría computacional estudia tanto problemas geométricos clásicos, como también problemas motivados por diversas áreas de la computación como Computación Gráfica, dibujo asistido por ordenador (CAD/CAM), robótica, sistemas de información geográfica, visión computacional, optimización combinatoria, procesamiento de imágenes, teoría de los grafos, dibujo de circuitos integrados, aprendizaje de máquina etc. Volver
  • 64. Bioinformatica Bioinformatica es una disciplina científica emergente que utiliza tecnología de la información para organizar, analizar y distribuir información biológica con la finalidad de responder preguntas complejas en biología. Bioinformatica es un área de investigación multidisciplinaria, la cual puede ser ampliamente definida como la interface entre dos ciencias: Biología y Computación y esta impulsada por la incógnita del genoma humano y la promesa de una nueva era en la cual la investigación genómica puede ayudar dramáticamente a mejorar la condición y calidad de vida humana. Avances en la detección y tratamiento de enfermedades y la producción de alimentos genéticamente modificados son entre otros ejemplos de los beneficios mencionados más frecuentemente. Involucra la solución de problemas complejos usando herramientas de sistemas y computación. También incluye la colección, organización, almacenamiento y recuperación de la información biológica que se encuentra en base de datos.
  • 65. Según la definición del Centro Nacional para la Información Biotecnológica "National Center for Biotechnology Information" (NCBI por sus siglas en Inglés, 2001): "Bioinformatica es un campo de la ciencia en el cual confluyen varias disciplinas tales como: biología, computación y tecnología de la información. El fin último de este campo es facilitar el descubrimiento de nuevas ideas biológicas así como crear perspectivas globales a partir de las cuales se puedan discernir principios unificadores en biología. Al comienzo de la "revolución genómica", el concepto de Bioinformatica se refería sólo a la creación y mantenimiento de base de datos donde se almacena información biológica, tales como secuencias de nucleótidos y aminoácidos. El desarrollo de este tipo de base de datos no solamente significaba el diseño de la misma sino también el desarrollo de interfaces complejas donde los investigadores pudieran acceder los datos existentes y suministrar o revisar datos Volver
  • 66. Computación cuántica La computación cuántica es producto de la combinación de la mecánica cuántica y la teoría de la computación, que se enfoca a estudiar si un problema puede ser resuelto utilizando un procedimiento programado en una computadora, así como la cantidad de recursos como energía y tiempo que se deben aplicar en caso de existir solución. En consecuencia, la computación cuántica tiene como propósito la utilización de las teorías de las que surge para incrementar la capacidad de las computadoras para procesar información y solucionar problemas. En la computación cuántica también convergen otras disciplinas como la microelectrónica, la nanotecnología, las matemáticas, la criptografía, entre otras.
  • 67. Los científicos se plantearon desde hace algunos años la interrogante de cuáles serían las propiedades de una computadora en la cual los ceros y los unos (sistema binario) estuvieran codificados en sistemas de dimensiones atómicas (un electrón, un fotón, un átomo). En nuestro mundo, el procesamiento y almacenamiento de la información sigue las leyes de la llamada mecánica clásica. Al pasar a sistemas de tamaños atómicos las reglas cambiarían y la mecánica cuántica regiría el comportamiento de los equipos. Los ceros y unos con que se maneja la información actual en nuestros equipos de cómputo, denominados bits, se transformarían en qubits (contracción del término inglés quantumbits), o bits cuánticos, siguiendo reglas muy diferentes. Los qubits son los componentes básicos de una computadora cuántica y están formados a partir de partículas subatómicas que interactúan para el intercambio de información, lo que permitirá computadoras más poderosas para el procesamiento de información.
  • 68. Las computadoras clásicas o digitales codifican información utilizando números binarios y pueden hacer cálculos de un conjunto de números de una sola vez cada uno. En cambio las computadoras cuánticas en teoría codificarían información como una serie de estados mecánicos cuánticos tales como las direcciones de los electrones o las polarizaciones de un fotón, estas características entre otras, permitirán la realización de diversos cálculos simultáneamente a una velocidad y capacidad nunca antes vistos. Hasta el momento en varios laboratorios del mundo se ha logrado con éxito arreglos y enlaces cuánticos de dos y hasta tres qubits de estado sólido, materiales nano estructurados que se localizan en chips que interacciona y podrían formar un arsenal de qubits. Otros de los temas relevantes en el campo de computación cuántica se refieren al desarrollo de los algoritmos cuánticos. Un algoritmo (convencional) es un procedimiento matemático programado en computadora. La creación de un algoritmo cuántico se ha convertido en uno de los grandes retos que enfrentan la ciencia en la actualidad pues dicho algoritmo debe resolver el problema para el que fue diseñado y además debe ser más veloz que cualquier algoritmo convencional para resolver cualquier problema. Computadoras equipadas con algoritmos cuánticos abren posibilidades antes no consideradas, disminuciones exponenciales en el tiempo de procesamiento y realización de operaciones en paralelo sin necesidad de agregar procesadores a la computadora. Volver
  • 70. http://es.wikipedia.org/wiki/Estructura_de_datos http://www.alegsa.com.ar/Dic/compilador.php http://www.worldlingo.com/ma/enwiki/es/Programming_language_theory http://www.answermath.com/mineria_de_datos.htm http://www.depi.itch.edu.mx/apacheco/lengs/paralelo/index.html http://www.angelfire.com/nc2/misdocumentos/redes/REDES.html http://es.wikipedia.org/wiki/Programaci%C3%B3n_paralela http://es.wikipedia.org/wiki/Sistemas_Distribuidos http://es.wikipedia.org/wiki/Inteligencia_artificial http://www.worldlingo.com/ma/enwiki/es/Automated_reasoning http://www.monografias.com/trabajos6/larobo/larobo.shtml#intro http://es.wikipedia.org/wiki/Visi%C3%B3n_por_computador http://es.wikipedia.org/wiki/Aprendizaje_Autom%C3%A1tico http://es.wikipedia.org/wiki/Computaci%C3%B3n_gr%C3%A1fica http://delta.cs.cinvestav.mx/~fraga/Cursos/PDI/cap1.pdf http://es.wikilingue.com/pt/Geometria_computacional http://www.solociencia.com/biologia/bioinformatica-concepto.htm http://www.periodistasenlinea.org/modules.php?op=modload&name=News&file=art icle&sid=1217 Volver