SlideShare una empresa de Scribd logo
LOS ALGORITMOS RÁPIDOS Y
     SUS APLICACIONES
       Alejandro Domínguez
Departamento de Sistemas Geográficos
         Octubre de 1993
ALGORITMOS RÁPIDOS
• Un algoritmos rápido
  – Es una descripción detallada de un procedimiento
    computacional, el cual contiene una forma obvia
    de calcular el resultado a partir de datos de
    entrada.
  – Estos algoritmos sacrifican la claridad en las
    operaciones a favor de cálculos que son
    computacionalmente más eficientes.
ALGORITMOS RÁPIDOS
• Ejemplo 1.
  – Supongamos que se necesita calcular (muchas
    veces) un número A dado por:
     • A=ac+ad+bc+bd
  – Para esto se requieren 4 multiplicaciones y 3
    sumas.
  – Factorizando, una forma equivalente de A es:
     • A=(a+b)(c+d)
  – Esta forma requiere 1 multiplicación y 2 sumas.
  – Esta última forma es más eficiente o rápida.
ALGORITMOS RÁPIDOS
• Ejemplo 2.
  – El producto de números complejos
     • (e+if)=(a+ib)(c+id)   i2=-1
  – Se puede escribir de forma natural en términos de
    multiplicaciones y sumas reales con:
     • e=ac-bd
     • f=ad-bc
  – Estas fórmulas requieren 4 multiplicaciones reales
    y dos sumas reales.
ALGORITMOS RÁPIDOS
• Ejemplo 2. (continuación)
   – Un algoritmo más eficiente es:
      • e=(a-b)d+a(c-d);   f=(a-b)d+b(c+d)
   – Si y sólo sí la multiplicación requiere más tiempo de
     cómputo que la suma.
   – La forma anterior requiere de 3 multiplicaciones y 5
     sumas.
   – Si c y d son constantes, entonces c+d y c-d son también
     constantes y se pueden calcular fuera del algoritmo.
   – Esta forma requiere de 3 multiplicaciones reales y 3 sumas
     reales para efectuar una multiplicación compleja.
ALGORITMOS RÁPIDOS
• Ejemplo 3.
  – Un algoritmo para calcular xn, con n natural, es:
     Input x, n {n número natural}
     ans:=1
     For i:=1 to n do
        ans:=ansx
     EndFor
     Output ans and stop
  – Este algoritmo requiere de exactamente n
    multiplicaciones.
ALGORITMOS RÁPIDOS
• Ejemplo 3. (continuación)
   – Tomemos la siguiente implementación:
      Input x, n {n número natural}
      If n=0 then ans:=1
      Else
          x2:=xx
          If odd(n) then p:=x
          Else p:=1
          Endif
          For i:=1 to (nDIV2) do p:=px2
          Endfor
          ans:=p
      Endif
   – Este algoritmo requiere de (n+1)/2 multiplicaciones si n es
     impar y de n/2 si n es par.
ALGORITMOS RÁPIDOS
• Ejemplo 4.
  – La Transformada Discreta de Fourier de una
    función (discretizada) está dada por:
                      N 1
              1
     F ( n) 
              N
                       f ( j )e
                      j 0
                                    2iuj / N
                                                 ; u  0,1,2,..., N .

  – La transformada discreta inversa está dada por:
               N 1
      f (n)   F ( j )e 2iuj / N ; j  0,1,2,..., N  1.
               u 0
ALGORITMOS RÁPIDOS
• Ejemplo 4. (continuación)
  – El número de multiplicaciones complejas es
    proporcional a N2.
  – El número de sumas complejas es proporcional a N2.
  – Una descomposición adecuada puede hacer que el
    número de multiplicaciones y sumas se reduzca a un
    número proporcional a Nlog2N.
  – El procedimiento de descomposición se llama
    “Algoritmo de la Transformada Rápida de Fourier
    (FFT)”.
ALGORITMOS RÁPIDOS
• Ejemplo 4. (continuación)
   – La reducción en proporcionalidad de N2 a Nlog2N
     representa un ahorro significativo en tiempo de cómputo.
              N           N2 (TF directa)   Nlog2N (FFT)
              2                 4                2
              4                 16               8
              8                 64              24
              16               256              64
              32              1024              160
              64              4096              384
             128              16384             896
             256              65536            2048
             512             262144            4068
             1024           1048576            10240
ALGORITMOS RÁPIDOS
 • Ejemplo 4. (continuación)
          – La implementación de FFT para 8 puntos.


                                                                   FFT de 8
                                                                    puntos


                           FFT de dos                                                                    FFT de dos
                             puntos                                                                        puntos


       FFT de dos                              FFT de dos                            FFT de dos                              FFT de dos
         puntos                                  puntos                                puntos                                  puntos



F(0)                F(4)                F(2)                F(6)              F(1)                F(5)                F(3)                F(7)
ALGORITMOS RÁPIDOS
Se requiere conocimiento en        Se requiere conocimiento en
matemáticas sobre:                 computación sobre:
• Teoría de números.               • Programación.
• Campos y anillos finitos sobre   • Programación avanzada.
  los números enteros.
                                   • Estructura de datos.
• Polinomios mínimos y
  conjugados.
• Polinomios ciclotómicos.
• Campos y anillos de
  polinomios.
• Grupos.
• Espacios vectoriales.
• Algebra lineal.
ALGORITMOS RÁPIDOS
• Los algoritmos rápidos se requieren en
  programación de sistemas asociados a:
  – Sonar.
  – Radar.
  – Procesamiento sísmico.
  – Tomografía computarizada.
  – Procesamiento digital de imágenes y señales.
  – Cualquier aplicación que requiere un gran
    volumen de cálculos numéricos.

Más contenido relacionado

DOC
Top 9 sip interview questions answers
PDF
Η Γλώσσα C - Μάθημα 3
PDF
Ejemplos de Algoritmos
PDF
Utp pds_l5_transformada discreta de fourier
DOCX
Practica no. 1 espectros de frecuencia
PPTX
PDF
Utp pds_l5_transformada discreta de fourier
PDF
Paralela8
Top 9 sip interview questions answers
Η Γλώσσα C - Μάθημα 3
Ejemplos de Algoritmos
Utp pds_l5_transformada discreta de fourier
Practica no. 1 espectros de frecuencia
Utp pds_l5_transformada discreta de fourier
Paralela8

Similar a Los algoritmos rápidos y sus aplicaciones (20)

PDF
Procesamiento Digital de Señales, Filtros
PDF
Analissis espectral
PPTX
diseño de filtros digitales-2zfcz<cz<c<zcz<.pptx
PDF
Utp pds_s7y8_dft y fft
PDF
Pds 2011 3-balotario de preguntas pc3
PPTX
Diseño de filtros digitales-IIRFASFASFASFASFASF.pptx
PDF
FFT de alta velocidad para OFDM óptico con FPGA
PPT
TRANSFORMADA DISCRETA DE FOURIER
PDF
147994600 transformada-de-fourier
PDF
filtros iir
PDF
Paralela4
PDF
Filtro+digital
PDF
Utp pds_l5_transformada discreta de fourier_
PPTX
Metodosbiseccionyfalsaposicion
PDF
PPT
series_de_fourier.ppt
PDF
Electroneumática: Diseño de circuitos secuenciales neumático y electroneumático
PPT
Balotario-Examen-Parcial-verano-2024.ppt
PDF
Ss cap8 - diseno filtros iir
PPTX
Tema logaritmos y Ecuaciones Exponenciales
Procesamiento Digital de Señales, Filtros
Analissis espectral
diseño de filtros digitales-2zfcz<cz<c<zcz<.pptx
Utp pds_s7y8_dft y fft
Pds 2011 3-balotario de preguntas pc3
Diseño de filtros digitales-IIRFASFASFASFASFASF.pptx
FFT de alta velocidad para OFDM óptico con FPGA
TRANSFORMADA DISCRETA DE FOURIER
147994600 transformada-de-fourier
filtros iir
Paralela4
Filtro+digital
Utp pds_l5_transformada discreta de fourier_
Metodosbiseccionyfalsaposicion
series_de_fourier.ppt
Electroneumática: Diseño de circuitos secuenciales neumático y electroneumático
Balotario-Examen-Parcial-verano-2024.ppt
Ss cap8 - diseno filtros iir
Tema logaritmos y Ecuaciones Exponenciales
Publicidad

Más de Alejandro Domínguez Torres (20)

PDF
Cómo elegir un posgrado webinar
PDF
La estrategia de Wile E. Coyote para atrapar al Correcaminos
PDF
A historical note on schwartz space and test or bump functions
PDF
Problemas actuales en la educación
PDF
Vida Después de la Universidad
PDF
Cómo no crear una oficina de dirección de proyectos
PDF
Después de una carrera técnica
PDF
Un emprendedor nunca deja de capacitarse
PDF
Teoría y tendencias actuales de la administración
PDF
Carreras con futuro
PDF
Cómo conseguir empleo
PDF
La vida después de la universidad
PDF
¿Todos los PMPs pueden ser directores de proyectos?
PDF
La profesionalización de la dirección de proyectos
PDF
El valor profesional y organizacional de la dirección de proyectos
PDF
La ingeniera social y la seguridad en ti
PDF
The limiting absorption principle for the elastic equations
PDF
Aplicaciones de los sistemas ecuaciones a la electricidad
PDF
Applications of analytic geometry
PDF
Plan estratégico de la calidad
Cómo elegir un posgrado webinar
La estrategia de Wile E. Coyote para atrapar al Correcaminos
A historical note on schwartz space and test or bump functions
Problemas actuales en la educación
Vida Después de la Universidad
Cómo no crear una oficina de dirección de proyectos
Después de una carrera técnica
Un emprendedor nunca deja de capacitarse
Teoría y tendencias actuales de la administración
Carreras con futuro
Cómo conseguir empleo
La vida después de la universidad
¿Todos los PMPs pueden ser directores de proyectos?
La profesionalización de la dirección de proyectos
El valor profesional y organizacional de la dirección de proyectos
La ingeniera social y la seguridad en ti
The limiting absorption principle for the elastic equations
Aplicaciones de los sistemas ecuaciones a la electricidad
Applications of analytic geometry
Plan estratégico de la calidad
Publicidad

Último (20)

PPTX
Presentacion de Alba Curso Auditores Internos ISO 19011
PPTX
CLAASIFICACIÓN DE LOS ROBOTS POR UTILIDAD
PPTX
la-historia-de-la-medicina Edna Silva.pptx
PPTX
Historia Inteligencia Artificial Ana Romero.pptx
DOCX
TRABAJO GRUPAL (5) (1).docxjesjssjsjjskss
PDF
Distribucion de frecuencia exel (1).pdf
PPTX
Mecanismos-de-Propagacion de ondas electromagneticas
PPTX
ccna: redes de nat ipv4 stharlling cande
PDF
informe_fichas1y2_corregido.docx (2) (1).pdf
PPTX
El uso de las TIC en la vida cotidiana..
PPTX
Formato de texto, párrafo, documentos, columnas periodísticas, referencias.
PPTX
ccna: redes de nat ipv4 stharlling cande
DOCX
TRABAJO GRUPAL (5) (1).docxjsjsjskskksksk
DOCX
Trabajo informatica joel torres 10-.....................
PDF
MANUAL de recursos humanos para ODOO.pdf
PDF
Guía_de_implementación_Marco_de_gobierno_y_gestión_de_TI_Universidades.pdf
PDF
capacitación de aire acondicionado Bgh r 410
PPTX
Control de calidad en productos de frutas
PPTX
Sistema de Gestión Integral TCA Ingenieros.pptx
PDF
0007_PPT_DefinicionesDeDataMining_201_v1-0.pdf
Presentacion de Alba Curso Auditores Internos ISO 19011
CLAASIFICACIÓN DE LOS ROBOTS POR UTILIDAD
la-historia-de-la-medicina Edna Silva.pptx
Historia Inteligencia Artificial Ana Romero.pptx
TRABAJO GRUPAL (5) (1).docxjesjssjsjjskss
Distribucion de frecuencia exel (1).pdf
Mecanismos-de-Propagacion de ondas electromagneticas
ccna: redes de nat ipv4 stharlling cande
informe_fichas1y2_corregido.docx (2) (1).pdf
El uso de las TIC en la vida cotidiana..
Formato de texto, párrafo, documentos, columnas periodísticas, referencias.
ccna: redes de nat ipv4 stharlling cande
TRABAJO GRUPAL (5) (1).docxjsjsjskskksksk
Trabajo informatica joel torres 10-.....................
MANUAL de recursos humanos para ODOO.pdf
Guía_de_implementación_Marco_de_gobierno_y_gestión_de_TI_Universidades.pdf
capacitación de aire acondicionado Bgh r 410
Control de calidad en productos de frutas
Sistema de Gestión Integral TCA Ingenieros.pptx
0007_PPT_DefinicionesDeDataMining_201_v1-0.pdf

Los algoritmos rápidos y sus aplicaciones

  • 1. LOS ALGORITMOS RÁPIDOS Y SUS APLICACIONES Alejandro Domínguez Departamento de Sistemas Geográficos Octubre de 1993
  • 2. ALGORITMOS RÁPIDOS • Un algoritmos rápido – Es una descripción detallada de un procedimiento computacional, el cual contiene una forma obvia de calcular el resultado a partir de datos de entrada. – Estos algoritmos sacrifican la claridad en las operaciones a favor de cálculos que son computacionalmente más eficientes.
  • 3. ALGORITMOS RÁPIDOS • Ejemplo 1. – Supongamos que se necesita calcular (muchas veces) un número A dado por: • A=ac+ad+bc+bd – Para esto se requieren 4 multiplicaciones y 3 sumas. – Factorizando, una forma equivalente de A es: • A=(a+b)(c+d) – Esta forma requiere 1 multiplicación y 2 sumas. – Esta última forma es más eficiente o rápida.
  • 4. ALGORITMOS RÁPIDOS • Ejemplo 2. – El producto de números complejos • (e+if)=(a+ib)(c+id) i2=-1 – Se puede escribir de forma natural en términos de multiplicaciones y sumas reales con: • e=ac-bd • f=ad-bc – Estas fórmulas requieren 4 multiplicaciones reales y dos sumas reales.
  • 5. ALGORITMOS RÁPIDOS • Ejemplo 2. (continuación) – Un algoritmo más eficiente es: • e=(a-b)d+a(c-d); f=(a-b)d+b(c+d) – Si y sólo sí la multiplicación requiere más tiempo de cómputo que la suma. – La forma anterior requiere de 3 multiplicaciones y 5 sumas. – Si c y d son constantes, entonces c+d y c-d son también constantes y se pueden calcular fuera del algoritmo. – Esta forma requiere de 3 multiplicaciones reales y 3 sumas reales para efectuar una multiplicación compleja.
  • 6. ALGORITMOS RÁPIDOS • Ejemplo 3. – Un algoritmo para calcular xn, con n natural, es: Input x, n {n número natural} ans:=1 For i:=1 to n do ans:=ansx EndFor Output ans and stop – Este algoritmo requiere de exactamente n multiplicaciones.
  • 7. ALGORITMOS RÁPIDOS • Ejemplo 3. (continuación) – Tomemos la siguiente implementación: Input x, n {n número natural} If n=0 then ans:=1 Else x2:=xx If odd(n) then p:=x Else p:=1 Endif For i:=1 to (nDIV2) do p:=px2 Endfor ans:=p Endif – Este algoritmo requiere de (n+1)/2 multiplicaciones si n es impar y de n/2 si n es par.
  • 8. ALGORITMOS RÁPIDOS • Ejemplo 4. – La Transformada Discreta de Fourier de una función (discretizada) está dada por: N 1 1 F ( n)  N  f ( j )e j 0  2iuj / N ; u  0,1,2,..., N . – La transformada discreta inversa está dada por: N 1 f (n)   F ( j )e 2iuj / N ; j  0,1,2,..., N  1. u 0
  • 9. ALGORITMOS RÁPIDOS • Ejemplo 4. (continuación) – El número de multiplicaciones complejas es proporcional a N2. – El número de sumas complejas es proporcional a N2. – Una descomposición adecuada puede hacer que el número de multiplicaciones y sumas se reduzca a un número proporcional a Nlog2N. – El procedimiento de descomposición se llama “Algoritmo de la Transformada Rápida de Fourier (FFT)”.
  • 10. ALGORITMOS RÁPIDOS • Ejemplo 4. (continuación) – La reducción en proporcionalidad de N2 a Nlog2N representa un ahorro significativo en tiempo de cómputo. N N2 (TF directa) Nlog2N (FFT) 2 4 2 4 16 8 8 64 24 16 256 64 32 1024 160 64 4096 384 128 16384 896 256 65536 2048 512 262144 4068 1024 1048576 10240
  • 11. ALGORITMOS RÁPIDOS • Ejemplo 4. (continuación) – La implementación de FFT para 8 puntos. FFT de 8 puntos FFT de dos FFT de dos puntos puntos FFT de dos FFT de dos FFT de dos FFT de dos puntos puntos puntos puntos F(0) F(4) F(2) F(6) F(1) F(5) F(3) F(7)
  • 12. ALGORITMOS RÁPIDOS Se requiere conocimiento en Se requiere conocimiento en matemáticas sobre: computación sobre: • Teoría de números. • Programación. • Campos y anillos finitos sobre • Programación avanzada. los números enteros. • Estructura de datos. • Polinomios mínimos y conjugados. • Polinomios ciclotómicos. • Campos y anillos de polinomios. • Grupos. • Espacios vectoriales. • Algebra lineal.
  • 13. ALGORITMOS RÁPIDOS • Los algoritmos rápidos se requieren en programación de sistemas asociados a: – Sonar. – Radar. – Procesamiento sísmico. – Tomografía computarizada. – Procesamiento digital de imágenes y señales. – Cualquier aplicación que requiere un gran volumen de cálculos numéricos.