SlideShare une entreprise Scribd logo
1  sur  29
ALGORITMOS APROXIMADOS
El problema de la mochila 0-1.
El problema de llenado de cajas.

Alejandro Claro Mosqueda
AGENDA
• Formulación del problema de la mochila.
• Definiciones básicas.
• Algoritmos Aproximados.
• Algoritmo aproximado para el problema de la mochila.
• Formulación del problema de llenado de cajas.
• Algoritmos aproximados para el problema llenado de cajas.
EL PROBLEMA DE LA MOCHILA
180 $
45 Kg

400 $
100 Kg

100 $
20 Kg

350 $
50 Kg
EL PROBLEMA DE LA MOCHILA
Esto puede ser formulado de la siguiente manera:

donde xj es una variable binaria, cuyo valor es 1
si j debe ser incluido en la caja y 0 de lo contrario.
PROBLEMAS DE OPTIMIZACIÓN
Un problema de optimización, consiste de:
• Un conjunto de instancias (D).
PROBLEMAS DE OPTIMIZACIÓN
• Cada instancia I  D tiene un conjunto de
soluciones factibles (S ).

I

S (I) =

=

400 $
100 Kg

280 $
65 Kg

450 $
70 Kg

530 $
95 Kg
PROBLEMAS DE OPTIMIZACIÓN
• Un algoritmo en tiempo polinomial que dado el
par (I, s) determina si s  S .

(

,

95 Kg

)
PROBLEMAS DE OPTIMIZACIÓN
• Una función objetivo (f ), calculable en tiempo
polinomial, que asigna un numero real nonegativo a cada par (I, s). Donde s es una
solución factible.

400 $

280 $

450 $

530 $
PROBLEMAS DE OPTIMIZACIÓN
Una solución optima para una instancia de un
problema de minimización (maximización) es una
solución factible que obtiene el valor más
pequeño (grande) de la función objetivo.

OPT(I)

=
530 $
ALGORITMOS APROXIMADOS
La idea detrás de los algoritmos aproximados es
diseñar algoritmos en tiempo polinomial que
resulten en una solución ¨próxima¨ a la solución
optima de un problema de optimización NP.
Sea  un problema de minimización
(maximización), y  sea un numero real positivo,
  1 (  1). Un algoritmo A se dice que es
algoritmo factor -aproximado para  si en para
cada instancia I, A produce una solución factible
s, tal que
(Minimización)
(Maximización)
LA MOCHILA 0-1 (APROXIMADO)
Es un problema débilmente NP-hard. Admite
solución pseudo-polinomial con tiempo de
ejecución en (nc) por programación dinámica.

¡Prohibitivo cuando c es grande!
LA MOCHILA 0-1 (APROXIMADO)
Algoritmo sub-optimo eficiente [(nlogn)]:
LA MOCHILA 0-1 (APROXIMADO)
No siempre determina la solución optimo, y
desafortunadamente ¡puede ser arbitrariamente
¨malo¨!.
2$
1 Kg

X>2

X$
X Kg

X$

OPT(I) =

GREDDY(I) =

2$
LA MOCHILA 0-1 (APROXIMADO)
¡Afortunadamente, esto es fácil de solucionar!

Considérese la siguiente modificación al algoritmo:

¡Algoritmo factor ½ - aproximado!

½
LA MOCHILA 0-1 (APROXIMADO)
Sea l el menor entero tal que,

Considere la siguiente modificación al problema,

I’ =

c’

OPT(I’) = GREEDY(I’)
LA MOCHILA 0-1 (APROXIMADO)

OPT(I)  OPT(I’)

Empleando el hecho de que max(x,y)  (x+y)/2
se obtiene que
LA MOCHILA 0-1 (APROXIMADO)

OPT(I)

>
450 $

530/2 $ = 265 $
LLENADO DE CAJAS

¿Cuál es el mayor numero de objetos que se
puede almacenar?
LLENADO DE CAJAS

¿

…

?

¿Cuál es el menor numero de cajas que se
necesitan para almacenar todos los objetos?
LLENADO DE CAJAS (APROXIMADO)
Algoritmo Greedy:
Dado los objetos ordenados por orden no
decreciente de peso, se introducen tantos como
se pueda en una caja; cuando está este llena,
ponemos cuantos sean posible en la siguiente.

5 Kg
2 Kg

3 Kg

4 Kg
LLENADO DE CAJAS (APROXIMADO)
Greedy(I) =

5 Kg

7 Kg

4 Kg

7 Kg

OPT(I) =

Pero el algoritmo aproximado nunca se equivoca
en mas de k-1 objetos; donde k es el número de
cajas.
LLENADO DE CAJAS (APROXIMADO)
Supóngase que se tiene una caja de capacidad

Si se llena empezando por los objetos de menor
peso, la solución es optima para esta caja.
LLENADO DE CAJAS (APROXIMADO)
Si ahora se va dividiendo la caja por la porción de
las cajas del problema original, se desplazaran lo
objetos “partidos” a la siguiente caja.

Lo que puede provocar que, que a lo sumo, el
último objeto no quepa (caso dos cajas).

Al generalizar este resultado se obtiene que para
k cajas, la solución aproximada tendrá, a lo sumo,
k-1 objetos menos que la solución optima.
LLENADO DE CAJAS (APROXIMADO)

• Para ordenar los objetos se requiere un tiempo
de ejecución (nlogn).
• El tiempo de ejecución del algoritmo Greedy es
(n)
LLENADO DE CAJAS (APROXIMADO)
¿Cuál es el menor numero de cajas que se
necesitan para almacenar todos los objetos?

¿

…

?

Algoritmo Greedy:
Se toman los objetos por orden de pesos no
decrecientes, se colocan tantos como sea posible
en la primera caja, después en la segunda, y así
sucesivamente, y al final se cuentan el número de
cajas que se necesitan para almacenar los n
objetos.
LLENADO DE CAJAS (APROXIMADO)

Es posible demostrar que la solución aproximada
(s) esta acotada por

donde b es la solución optima del problema.
LLENADO DE CAJAS (APROXIMADO)
Algoritmo Greedy alternativo:
Se obtiene algoritmo aproximado mejor si los
objetos se consideran por orden no creciente,
Ahora se va tomando cada objeto por turno, y se
intenta añadir el objeto a la caja 1; si no cabe, se
intenta añadir a la caja 2, y así sucesivamente; si
no cabe en ninguna de las cajas existentes, se
comienza a llenar una nueva caja.

?

?

?

…
LLENADO DE CAJAS (APROXIMADO)

Es posible demostrar que la solución aproximada
(s) esta acotada por

donde b es la solución optima del problema.
Algoritmos aproximados para problemas de mochila y cajas

Contenu connexe

Tendances

Manual algoritmos y_estructura_de_datos
Manual algoritmos y_estructura_de_datosManual algoritmos y_estructura_de_datos
Manual algoritmos y_estructura_de_datosJuan Timoteo Cori
 
Estructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de OrdenamientoEstructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de OrdenamientoJosé Antonio Sandoval Acosta
 
Resolución de ecuaciones diferenciales con MATLAB R2015a
Resolución de ecuaciones diferenciales  con  MATLAB  R2015aResolución de ecuaciones diferenciales  con  MATLAB  R2015a
Resolución de ecuaciones diferenciales con MATLAB R2015aJoanny Ibarbia Pardo
 
Concurrencia interbloqueo e inanición
Concurrencia interbloqueo e inaniciónConcurrencia interbloqueo e inanición
Concurrencia interbloqueo e inaniciónjhonfgarcia
 
Maquina de turing y resolubilidad e Irresolubilidad
Maquina de turing y resolubilidad e IrresolubilidadMaquina de turing y resolubilidad e Irresolubilidad
Maquina de turing y resolubilidad e Irresolubilidadlluis31
 
Función Hash: metodos de división y de medio Cuadrado.
Función Hash: metodos de división y de medio Cuadrado.Función Hash: metodos de división y de medio Cuadrado.
Función Hash: metodos de división y de medio Cuadrado.Ana Castro
 
Estructura de Datos - Unidad 5 metodos de ordenamiento
Estructura de Datos - Unidad 5 metodos de ordenamientoEstructura de Datos - Unidad 5 metodos de ordenamiento
Estructura de Datos - Unidad 5 metodos de ordenamientoJosé Antonio Sandoval Acosta
 
Arboles En Estructura de Datos
Arboles En Estructura de DatosArboles En Estructura de Datos
Arboles En Estructura de DatosDARKGIRL93
 
Método de Búsqueda Hash
Método de Búsqueda HashMétodo de Búsqueda Hash
Método de Búsqueda HashBlanca Parra
 
Asymptotic notations
Asymptotic notationsAsymptotic notations
Asymptotic notationsEhtisham Ali
 
Busqueda Binaria
Busqueda BinariaBusqueda Binaria
Busqueda BinariaITCV
 
Programación 3: algoritmo de Prim y de Kruskal
Programación 3: algoritmo de Prim y de KruskalProgramación 3: algoritmo de Prim y de Kruskal
Programación 3: algoritmo de Prim y de KruskalAngel Vázquez Patiño
 
Metodos de ordenamiento
Metodos de ordenamientoMetodos de ordenamiento
Metodos de ordenamientoLalo Chooper
 

Tendances (20)

Manual algoritmos y_estructura_de_datos
Manual algoritmos y_estructura_de_datosManual algoritmos y_estructura_de_datos
Manual algoritmos y_estructura_de_datos
 
Estructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de OrdenamientoEstructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de Ordenamiento
 
Algoritmo voraces
Algoritmo voracesAlgoritmo voraces
Algoritmo voraces
 
Taller7 sol
Taller7 solTaller7 sol
Taller7 sol
 
Algoritmo de ordenamiento: Heap Sort
Algoritmo de ordenamiento: Heap SortAlgoritmo de ordenamiento: Heap Sort
Algoritmo de ordenamiento: Heap Sort
 
Resolución de ecuaciones diferenciales con MATLAB R2015a
Resolución de ecuaciones diferenciales  con  MATLAB  R2015aResolución de ecuaciones diferenciales  con  MATLAB  R2015a
Resolución de ecuaciones diferenciales con MATLAB R2015a
 
Concurrencia interbloqueo e inanición
Concurrencia interbloqueo e inaniciónConcurrencia interbloqueo e inanición
Concurrencia interbloqueo e inanición
 
Maquina de turing y resolubilidad e Irresolubilidad
Maquina de turing y resolubilidad e IrresolubilidadMaquina de turing y resolubilidad e Irresolubilidad
Maquina de turing y resolubilidad e Irresolubilidad
 
Las clases P NP y NP completo
Las clases P NP y NP completoLas clases P NP y NP completo
Las clases P NP y NP completo
 
Función Hash: metodos de división y de medio Cuadrado.
Función Hash: metodos de división y de medio Cuadrado.Función Hash: metodos de división y de medio Cuadrado.
Función Hash: metodos de división y de medio Cuadrado.
 
Estructura de Datos - Unidad 5 metodos de ordenamiento
Estructura de Datos - Unidad 5 metodos de ordenamientoEstructura de Datos - Unidad 5 metodos de ordenamiento
Estructura de Datos - Unidad 5 metodos de ordenamiento
 
Búsqueda secuencial y binaria
Búsqueda secuencial y binariaBúsqueda secuencial y binaria
Búsqueda secuencial y binaria
 
Arboles En Estructura de Datos
Arboles En Estructura de DatosArboles En Estructura de Datos
Arboles En Estructura de Datos
 
Complejidad Computacional
Complejidad ComputacionalComplejidad Computacional
Complejidad Computacional
 
Método de Búsqueda Hash
Método de Búsqueda HashMétodo de Búsqueda Hash
Método de Búsqueda Hash
 
Arboles Binarios y Arboles Binarios de Busqueda
Arboles Binarios y Arboles Binarios de BusquedaArboles Binarios y Arboles Binarios de Busqueda
Arboles Binarios y Arboles Binarios de Busqueda
 
Asymptotic notations
Asymptotic notationsAsymptotic notations
Asymptotic notations
 
Busqueda Binaria
Busqueda BinariaBusqueda Binaria
Busqueda Binaria
 
Programación 3: algoritmo de Prim y de Kruskal
Programación 3: algoritmo de Prim y de KruskalProgramación 3: algoritmo de Prim y de Kruskal
Programación 3: algoritmo de Prim y de Kruskal
 
Metodos de ordenamiento
Metodos de ordenamientoMetodos de ordenamiento
Metodos de ordenamiento
 

Similaire à Algoritmos aproximados para problemas de mochila y cajas

Similaire à Algoritmos aproximados para problemas de mochila y cajas (20)

Avarap
AvarapAvarap
Avarap
 
Programacion dinamica
Programacion dinamicaProgramacion dinamica
Programacion dinamica
 
Inecuaciones trigonometricas
Inecuaciones trigonometricasInecuaciones trigonometricas
Inecuaciones trigonometricas
 
Metodo de la grange
Metodo de la grangeMetodo de la grange
Metodo de la grange
 
2 algoritmos voraces
2 algoritmos voraces2 algoritmos voraces
2 algoritmos voraces
 
Apunte de problemas
Apunte de problemasApunte de problemas
Apunte de problemas
 
Apunte de problemas
Apunte de problemasApunte de problemas
Apunte de problemas
 
Apunte de problemas
Apunte de problemasApunte de problemas
Apunte de problemas
 
Programación Dinámica
Programación DinámicaProgramación Dinámica
Programación Dinámica
 
Analisis de Algoritmos tarea 1
Analisis de Algoritmos tarea 1Analisis de Algoritmos tarea 1
Analisis de Algoritmos tarea 1
 
PROBLEMA DE LA MOCHILA
PROBLEMA DE LA MOCHILAPROBLEMA DE LA MOCHILA
PROBLEMA DE LA MOCHILA
 
Programacion lineal
Programacion linealProgramacion lineal
Programacion lineal
 
Programación dinámica
Programación dinámica Programación dinámica
Programación dinámica
 
Metodos kuhn tucker y lagrange
Metodos kuhn tucker  y lagrangeMetodos kuhn tucker  y lagrange
Metodos kuhn tucker y lagrange
 
Diapositivas semana 14
Diapositivas semana 14Diapositivas semana 14
Diapositivas semana 14
 
Logaritmos
LogaritmosLogaritmos
Logaritmos
 
Optimización. Métodos numéricos
Optimización. Métodos numéricosOptimización. Métodos numéricos
Optimización. Métodos numéricos
 
Capítulo 5: Criptografía de clave pública, antecedentes matemáticos
Capítulo 5: Criptografía de clave pública, antecedentes matemáticosCapítulo 5: Criptografía de clave pública, antecedentes matemáticos
Capítulo 5: Criptografía de clave pública, antecedentes matemáticos
 
Parcial(2017 i) (solucionario)
Parcial(2017 i) (solucionario)Parcial(2017 i) (solucionario)
Parcial(2017 i) (solucionario)
 
Programación Dinámica
Programación DinámicaProgramación Dinámica
Programación Dinámica
 

Plus de Alejandro Claro Mosqueda

Metodos de monte carlo en mecánica estadistica
Metodos de monte carlo en mecánica estadisticaMetodos de monte carlo en mecánica estadistica
Metodos de monte carlo en mecánica estadisticaAlejandro Claro Mosqueda
 
Introducción a los solitones - Presentación de algunas soluciones solitónicas
Introducción a los solitones - Presentación de algunas soluciones solitónicasIntroducción a los solitones - Presentación de algunas soluciones solitónicas
Introducción a los solitones - Presentación de algunas soluciones solitónicasAlejandro Claro Mosqueda
 
Software design - Write solid software with the ideal chalk
Software design - Write solid software with the  ideal chalkSoftware design - Write solid software with the  ideal chalk
Software design - Write solid software with the ideal chalkAlejandro Claro Mosqueda
 

Plus de Alejandro Claro Mosqueda (6)

Metodos de monte carlo en mecánica estadistica
Metodos de monte carlo en mecánica estadisticaMetodos de monte carlo en mecánica estadistica
Metodos de monte carlo en mecánica estadistica
 
Introducción a los solitones - Presentación de algunas soluciones solitónicas
Introducción a los solitones - Presentación de algunas soluciones solitónicasIntroducción a los solitones - Presentación de algunas soluciones solitónicas
Introducción a los solitones - Presentación de algunas soluciones solitónicas
 
Tunelaje de solitones
Tunelaje de solitonesTunelaje de solitones
Tunelaje de solitones
 
Software design - Write solid software with the ideal chalk
Software design - Write solid software with the  ideal chalkSoftware design - Write solid software with the  ideal chalk
Software design - Write solid software with the ideal chalk
 
Unit testing - An introduction
Unit testing - An introductionUnit testing - An introduction
Unit testing - An introduction
 
Lean thinking and the agile culture
Lean thinking and the agile cultureLean thinking and the agile culture
Lean thinking and the agile culture
 

Dernier

FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
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
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramDIDIERFERNANDOGUERRE
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 

Dernier (20)

FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
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
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ram
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 

Algoritmos aproximados para problemas de mochila y cajas

  • 1. ALGORITMOS APROXIMADOS El problema de la mochila 0-1. El problema de llenado de cajas. Alejandro Claro Mosqueda
  • 2. AGENDA • Formulación del problema de la mochila. • Definiciones básicas. • Algoritmos Aproximados. • Algoritmo aproximado para el problema de la mochila. • Formulación del problema de llenado de cajas. • Algoritmos aproximados para el problema llenado de cajas.
  • 3. EL PROBLEMA DE LA MOCHILA 180 $ 45 Kg 400 $ 100 Kg 100 $ 20 Kg 350 $ 50 Kg
  • 4. EL PROBLEMA DE LA MOCHILA Esto puede ser formulado de la siguiente manera: donde xj es una variable binaria, cuyo valor es 1 si j debe ser incluido en la caja y 0 de lo contrario.
  • 5. PROBLEMAS DE OPTIMIZACIÓN Un problema de optimización, consiste de: • Un conjunto de instancias (D).
  • 6. PROBLEMAS DE OPTIMIZACIÓN • Cada instancia I  D tiene un conjunto de soluciones factibles (S ). I S (I) = = 400 $ 100 Kg 280 $ 65 Kg 450 $ 70 Kg 530 $ 95 Kg
  • 7. PROBLEMAS DE OPTIMIZACIÓN • Un algoritmo en tiempo polinomial que dado el par (I, s) determina si s  S . ( , 95 Kg )
  • 8. PROBLEMAS DE OPTIMIZACIÓN • Una función objetivo (f ), calculable en tiempo polinomial, que asigna un numero real nonegativo a cada par (I, s). Donde s es una solución factible. 400 $ 280 $ 450 $ 530 $
  • 9. PROBLEMAS DE OPTIMIZACIÓN Una solución optima para una instancia de un problema de minimización (maximización) es una solución factible que obtiene el valor más pequeño (grande) de la función objetivo. OPT(I) = 530 $
  • 10. ALGORITMOS APROXIMADOS La idea detrás de los algoritmos aproximados es diseñar algoritmos en tiempo polinomial que resulten en una solución ¨próxima¨ a la solución optima de un problema de optimización NP. Sea  un problema de minimización (maximización), y  sea un numero real positivo,   1 (  1). Un algoritmo A se dice que es algoritmo factor -aproximado para  si en para cada instancia I, A produce una solución factible s, tal que (Minimización) (Maximización)
  • 11. LA MOCHILA 0-1 (APROXIMADO) Es un problema débilmente NP-hard. Admite solución pseudo-polinomial con tiempo de ejecución en (nc) por programación dinámica. ¡Prohibitivo cuando c es grande!
  • 12. LA MOCHILA 0-1 (APROXIMADO) Algoritmo sub-optimo eficiente [(nlogn)]:
  • 13. LA MOCHILA 0-1 (APROXIMADO) No siempre determina la solución optimo, y desafortunadamente ¡puede ser arbitrariamente ¨malo¨!. 2$ 1 Kg X>2 X$ X Kg X$ OPT(I) = GREDDY(I) = 2$
  • 14. LA MOCHILA 0-1 (APROXIMADO) ¡Afortunadamente, esto es fácil de solucionar! Considérese la siguiente modificación al algoritmo: ¡Algoritmo factor ½ - aproximado! ½
  • 15. LA MOCHILA 0-1 (APROXIMADO) Sea l el menor entero tal que, Considere la siguiente modificación al problema, I’ = c’ OPT(I’) = GREEDY(I’)
  • 16. LA MOCHILA 0-1 (APROXIMADO) OPT(I)  OPT(I’) Empleando el hecho de que max(x,y)  (x+y)/2 se obtiene que
  • 17. LA MOCHILA 0-1 (APROXIMADO) OPT(I) > 450 $ 530/2 $ = 265 $
  • 18. LLENADO DE CAJAS ¿Cuál es el mayor numero de objetos que se puede almacenar?
  • 19. LLENADO DE CAJAS ¿ … ? ¿Cuál es el menor numero de cajas que se necesitan para almacenar todos los objetos?
  • 20. LLENADO DE CAJAS (APROXIMADO) Algoritmo Greedy: Dado los objetos ordenados por orden no decreciente de peso, se introducen tantos como se pueda en una caja; cuando está este llena, ponemos cuantos sean posible en la siguiente. 5 Kg 2 Kg 3 Kg 4 Kg
  • 21. LLENADO DE CAJAS (APROXIMADO) Greedy(I) = 5 Kg 7 Kg 4 Kg 7 Kg OPT(I) = Pero el algoritmo aproximado nunca se equivoca en mas de k-1 objetos; donde k es el número de cajas.
  • 22. LLENADO DE CAJAS (APROXIMADO) Supóngase que se tiene una caja de capacidad Si se llena empezando por los objetos de menor peso, la solución es optima para esta caja.
  • 23. LLENADO DE CAJAS (APROXIMADO) Si ahora se va dividiendo la caja por la porción de las cajas del problema original, se desplazaran lo objetos “partidos” a la siguiente caja. Lo que puede provocar que, que a lo sumo, el último objeto no quepa (caso dos cajas). Al generalizar este resultado se obtiene que para k cajas, la solución aproximada tendrá, a lo sumo, k-1 objetos menos que la solución optima.
  • 24. LLENADO DE CAJAS (APROXIMADO) • Para ordenar los objetos se requiere un tiempo de ejecución (nlogn). • El tiempo de ejecución del algoritmo Greedy es (n)
  • 25. LLENADO DE CAJAS (APROXIMADO) ¿Cuál es el menor numero de cajas que se necesitan para almacenar todos los objetos? ¿ … ? Algoritmo Greedy: Se toman los objetos por orden de pesos no decrecientes, se colocan tantos como sea posible en la primera caja, después en la segunda, y así sucesivamente, y al final se cuentan el número de cajas que se necesitan para almacenar los n objetos.
  • 26. LLENADO DE CAJAS (APROXIMADO) Es posible demostrar que la solución aproximada (s) esta acotada por donde b es la solución optima del problema.
  • 27. LLENADO DE CAJAS (APROXIMADO) Algoritmo Greedy alternativo: Se obtiene algoritmo aproximado mejor si los objetos se consideran por orden no creciente, Ahora se va tomando cada objeto por turno, y se intenta añadir el objeto a la caja 1; si no cabe, se intenta añadir a la caja 2, y así sucesivamente; si no cabe en ninguna de las cajas existentes, se comienza a llenar una nueva caja. ? ? ? …
  • 28. LLENADO DE CAJAS (APROXIMADO) Es posible demostrar que la solución aproximada (s) esta acotada por donde b es la solución optima del problema.