SlideShare a Scribd company logo
1 of 28
UNIVERSIDAD NACIONAL DE
TRUJILLO
Escuela Profesional de Informática
Inteligencia Artificial I
Tarea de Investigación Unidad II
DOCENTE:
RAMIREZ CERNA, LOURDES
ESTUDIANTES:
Morales Esquivel, Christian A.
Pesqueira Manrique, Cristian J.
Programación voraz
• La programación dinámica puede resultar costosa. (Pocos
subproblemas repetidos)
•Otra estrategia para resolver problemas de optimización:
en cada estado de la búsqueda de una solución al problema,
tomar el camino (la decisión) que es el mejor en ese
momento (óptima), sin tener en cuenta las soluciones a
subproblemas
Programación voraz
• Un algoritmo voraz toma decisiones con rapidez sobre
vistas locales  toma decisiones óptimas locales. Espera
que llegue a una solución óptima global
•Un algoritmo voraz no siempre encuentra la solución
óptima global
Programación voraz
Problema de selección de actividades
•Suponga que se tiene un conjunto de actividades S
etiquetadas con números de a1…an. S={a1, …, an}
•Todas las actividades necesitan acceder a un mismo
recurso
•Cada actividad ai tiene asociada dos valores:
si: tiempo inicial
fi: tiempo final
estos son los tiempos entre los cuales la actividad debería
acceder al recurso
Programación voraz
Problema de selección de actividades
S={1,2,3}
(0,5), (1,2), (2,3) son los tiempos para las 3 actividades
Programación voraz
Problema de selección de actividades
S={1,2,3}
(0,5), (1,2), (2,3) son los tiempos para las 3 actividades
¿Cuáles son las diferentes formas de planificar las
actividades?
Programación voraz
Problema de selección de actividades
S={1,2,3}
(0,5), (1,2), (2,3) son los tiempos para las 3 actividades
Asignar el recurso a la actividad 1
0 1 2 3 4 5 6
(0,5)
(1,2)
(2,3)
Programación voraz
Problema de selección de actividades
S={1,2,3}
(0,5), (1,2), (2,3) son los tiempos para las 3 actividades
Asignar el recurso a la actividad 1
0 1 2 3 4 5 6
(0,5)
(1,2)
(2,3)
Las actividades 2 y 3 no se podrían atender
Programación voraz
Problema de selección de actividades
S={1,2,3}
(0,5), (1,2), (2,3) son los tiempos para las 3 actividades
Asignar el recurso a las actividades 2 y 3
0 1 2 3 4 5 6
(0,5)
(1,2)
(2,3)
La actividad 1 no se podría atender
Programación voraz
Problema de selección de actividades
Entrada: S={a1, …, an}
Salida: AS, tal que |A| es máxima
Programación voraz
Problema de selección de actividades
Entrada: S={a1, …, an}
Salida: AS, tal que |A| es máxima
(maximizar la cantidad de actividades que van a usar el
recurso)
Programación voraz
Problema de selección de actividades
0 1 2 3 4 5 6
(0,5)
(1,2)
(2,3)
A={2,3} es la solución óptima
Programación voraz
Solución:
•Ordenar las actividades ascendentemente según los
tiempos de finalización fi
•Coloque en la solución el primer recurso en la lista
ordenada
S={1,2,3}
(0,5), (1,2), (2,3)
S’={2,3,1}
(1,2), (2,3), (0,5)
S’={2,3,1}
(1,2), (2,3), (0,5)
A={2}
Programación voraz
Solución:
•Coloque en la solución A, el recurso en S’ que tiene tiempo
de inicio menor o igual que el tiempo final del recurso que
se acaba de planificar
S’={2,3,1}
(1,2), (2,3), (0,5)
Programación voraz
Solución:
•Coloque en la solución A, el recurso en S’ que tiene tiempo
de inicio menor o igual que el tiempo final del recurso que
se acaba de planificar
S’={2,3,1}
(1,2), (2,3), (0,5)
A={2,3}
Programación voraz
Solución:
•Coloque en la solución A, el recurso en S’ que tiene tiempo
de inicio menor o igual que el tiempo final del recurso que
se acaba de planificar
S’={2,3,1}
(1,2), (2,3), (0,5)
A={2,3}
¿Por qué es una estrategia voraz?
•Se toma una decisión óptima local en cada
estado de la solución
•La decisión no depende de solucionar
primero subproblemas relacionados
Programación voraz
¿Cuándo utilizar una estrategia voraz?
Cuando el problema exhiba:
• Propiedad de escogencia voraz
• Subestructura óptima
Programación voraz
¿Cuándo utilizar una estrategia voraz?
Cuando el problema exhiba:
• Propiedad de escogencia voraz: una solución óptima
se puede hallar a partir de soluciones óptimas locales
• Subestructura óptima: igual que en programación
dinámica
Programación voraz
Programación dinámica Programación voraz
Problema: Mochila 0-1
Se tienen N objetos y una mochila de capacidad (de peso)
M, cada objeto tiene un peso wi, 1iN. Cada objeto puede
estar, o no, en la mochila. Ademas, se tiene un beneficio bi
por cada objeto
El problema consiste en maximizar el beneficio. La solución
se representa indicando para cada objeto si se debe
colocar o no en la mochila
Programación voraz
De manera formal, el problema consiste en encontrar
<x1,x2,…,xn> tal que:
sea máximo, sujeto a


 N
i
i
i x
b
1




N
i
i
i M
x
w
1
xi  {0,1}, donde 0 significa que el objeto i no se coloca en la
mochila y 1 que si
Programación voraz
N=3, M=9, b=<10,6,8>, w=<3,4,5>
<1,0,1> es una solución que indica colocar en la mochila los
objetos 1 y 3, esto implica un beneficio de 18
<1,1,0> es una solución que indica colocar en la mochila los
objetos 1 y 2, esto implica un beneficio de 16
<0,1,1> es una solución que indica colocar en la mochila los
objetos 2 y 3, esto implica un beneficio de 14
Programación voraz
Estrategia voraz: seleccionar el ítem que tiene mayor
beneficio por peso, esto es, bi/wi sea mayor
Programación voraz
Estrategia voraz: seleccionar el ítem que tiene mayor
beneficio por peso, esto es, bi/wi sea mayor
N=3, M=9, b=<10,6,8>, w=<3,4,5>
Beneficio/peso=<10/3, 6/4, 8/5> = <3.3 , 1.5, 1.6 >
Seleccionar el item1, luego el item3 y por último el item2
(si caben)
Programación voraz
Estrategia voraz: seleccionar el ítem que tiene mayor
beneficio por peso, esto es, bi/wi sea mayor
N=3, M=9, b=<10,6,8>, w=<3,4,5>
Beneficio/peso=<10/3, 6/4, 8/5> = <3.3 , 1.5, 1.6 >
Seleccionar el item1, luego el item3 y por último el item2
(si caben)
Solución: <1,0,1>
Beneficio=10+8
Programación voraz
Estrategia voraz: seleccionar el ítem que tiene mayor
beneficio por peso, esto es, bi/wi sea mayor
N=3, M=50, b=<60,100,120>, w=<10,20,30>
Beneficio/peso=<60/10, 100/20, 120/30> = <6, 5, 4 >
Seleccionar el item1, luego el 2
Solución: <1,1,0>
Beneficio=60+100=160
Programación voraz
Estrategia voraz: seleccionar el ítem que tiene mayor
beneficio por peso, esto es, bi/wi sea mayor
N=3, M=50, b=<60,100,120>, w=<10,20,30>
Beneficio/peso=<60/10, 100/20, 120/30> = <6, 5, 4 >
La solución óptima es: <0,1,1>
Beneficio=100+120=220
Programación voraz

More Related Content

Similar to Inteligencia Artificial II- Programación Voraz.ppt

Similar to Inteligencia Artificial II- Programación Voraz.ppt (20)

Matematica
MatematicaMatematica
Matematica
 
Matematica
MatematicaMatematica
Matematica
 
Matematica
MatematicaMatematica
Matematica
 
El Problema del Agente Viajero_f.pptx
El Problema del Agente Viajero_f.pptxEl Problema del Agente Viajero_f.pptx
El Problema del Agente Viajero_f.pptx
 
Io 2da programacion lineal
Io 2da programacion linealIo 2da programacion lineal
Io 2da programacion lineal
 
Programacion d inamica
Programacion d inamicaProgramacion d inamica
Programacion d inamica
 
6 dynamic programming
6 dynamic programming6 dynamic programming
6 dynamic programming
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Asignacion
AsignacionAsignacion
Asignacion
 
61178886 i-o-ii-principal
61178886 i-o-ii-principal61178886 i-o-ii-principal
61178886 i-o-ii-principal
 
Introducción al modelado de problemas de Programación Lineal.
Introducción al modelado de problemas de Programación Lineal.Introducción al modelado de problemas de Programación Lineal.
Introducción al modelado de problemas de Programación Lineal.
 
Razonamiento logico matematico
Razonamiento logico matematicoRazonamiento logico matematico
Razonamiento logico matematico
 
Razonamiento logico matematico
Razonamiento logico matematicoRazonamiento logico matematico
Razonamiento logico matematico
 
3. Utilización de los objetos predefinidos del lenguaje
3. Utilización de los objetos predefinidos del lenguaje3. Utilización de los objetos predefinidos del lenguaje
3. Utilización de los objetos predefinidos del lenguaje
 
Pro no num Prog dinamica
Pro no num Prog dinamicaPro no num Prog dinamica
Pro no num Prog dinamica
 
Avarap
AvarapAvarap
Avarap
 
Investigacion Operativa Aspectos Generales
Investigacion Operativa Aspectos GeneralesInvestigacion Operativa Aspectos Generales
Investigacion Operativa Aspectos Generales
 
Matematicas tomas
Matematicas tomasMatematicas tomas
Matematicas tomas
 
Programacion dinamica final
Programacion dinamica finalProgramacion dinamica final
Programacion dinamica final
 
Charla de proyecto mga
Charla de proyecto mgaCharla de proyecto mga
Charla de proyecto mga
 

Recently uploaded

Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILClase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILProblemSolved
 
clases de porcinos generales de porcinos
clases de porcinos generales de porcinosclases de porcinos generales de porcinos
clases de porcinos generales de porcinosDayanaCarolinaAP
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdffredyflores58
 
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOPERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOFritz Rebaza Latoche
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.pptoscarvielma45
 
Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...Dr. Edwin Hernandez
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfmatepura
 
CLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxCLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxbingoscarlet
 
Obras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónObras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónXimenaFallaLecca1
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxClaudiaPerez86192
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdfvictoralejandroayala2
 
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdfCristhianZetaNima
 
Mapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptxMapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptxMONICADELROCIOMUNZON1
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxMarcelaArancibiaRojo
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaAlexanderimanolLencr
 
osciloscopios Mediciones Electricas ingenieria.pdf
osciloscopios Mediciones Electricas ingenieria.pdfosciloscopios Mediciones Electricas ingenieria.pdf
osciloscopios Mediciones Electricas ingenieria.pdfIvanRetambay
 
Maquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfMaquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfdanielJAlejosC
 
introducción a las comunicaciones satelitales
introducción a las comunicaciones satelitalesintroducción a las comunicaciones satelitales
introducción a las comunicaciones satelitalesgovovo2388
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxJuanPablo452634
 
Falla de san andres y el gran cañon : enfoque integral
Falla de san andres y el gran cañon : enfoque integralFalla de san andres y el gran cañon : enfoque integral
Falla de san andres y el gran cañon : enfoque integralsantirangelcor
 

Recently uploaded (20)

Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILClase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
 
clases de porcinos generales de porcinos
clases de porcinos generales de porcinosclases de porcinos generales de porcinos
clases de porcinos generales de porcinos
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
 
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOPERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
 
Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdf
 
CLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxCLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptx
 
Obras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónObras paralizadas en el sector construcción
Obras paralizadas en el sector construcción
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptx
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdf
 
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
 
Mapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptxMapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptx
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docx
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiología
 
osciloscopios Mediciones Electricas ingenieria.pdf
osciloscopios Mediciones Electricas ingenieria.pdfosciloscopios Mediciones Electricas ingenieria.pdf
osciloscopios Mediciones Electricas ingenieria.pdf
 
Maquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfMaquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdf
 
introducción a las comunicaciones satelitales
introducción a las comunicaciones satelitalesintroducción a las comunicaciones satelitales
introducción a las comunicaciones satelitales
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
 
Falla de san andres y el gran cañon : enfoque integral
Falla de san andres y el gran cañon : enfoque integralFalla de san andres y el gran cañon : enfoque integral
Falla de san andres y el gran cañon : enfoque integral
 

Inteligencia Artificial II- Programación Voraz.ppt

  • 1. UNIVERSIDAD NACIONAL DE TRUJILLO Escuela Profesional de Informática Inteligencia Artificial I Tarea de Investigación Unidad II
  • 2. DOCENTE: RAMIREZ CERNA, LOURDES ESTUDIANTES: Morales Esquivel, Christian A. Pesqueira Manrique, Cristian J.
  • 3. Programación voraz • La programación dinámica puede resultar costosa. (Pocos subproblemas repetidos) •Otra estrategia para resolver problemas de optimización: en cada estado de la búsqueda de una solución al problema, tomar el camino (la decisión) que es el mejor en ese momento (óptima), sin tener en cuenta las soluciones a subproblemas
  • 4. Programación voraz • Un algoritmo voraz toma decisiones con rapidez sobre vistas locales  toma decisiones óptimas locales. Espera que llegue a una solución óptima global •Un algoritmo voraz no siempre encuentra la solución óptima global
  • 5. Programación voraz Problema de selección de actividades •Suponga que se tiene un conjunto de actividades S etiquetadas con números de a1…an. S={a1, …, an} •Todas las actividades necesitan acceder a un mismo recurso •Cada actividad ai tiene asociada dos valores: si: tiempo inicial fi: tiempo final estos son los tiempos entre los cuales la actividad debería acceder al recurso
  • 6. Programación voraz Problema de selección de actividades S={1,2,3} (0,5), (1,2), (2,3) son los tiempos para las 3 actividades
  • 7. Programación voraz Problema de selección de actividades S={1,2,3} (0,5), (1,2), (2,3) son los tiempos para las 3 actividades ¿Cuáles son las diferentes formas de planificar las actividades?
  • 8. Programación voraz Problema de selección de actividades S={1,2,3} (0,5), (1,2), (2,3) son los tiempos para las 3 actividades Asignar el recurso a la actividad 1 0 1 2 3 4 5 6 (0,5) (1,2) (2,3)
  • 9. Programación voraz Problema de selección de actividades S={1,2,3} (0,5), (1,2), (2,3) son los tiempos para las 3 actividades Asignar el recurso a la actividad 1 0 1 2 3 4 5 6 (0,5) (1,2) (2,3) Las actividades 2 y 3 no se podrían atender
  • 10. Programación voraz Problema de selección de actividades S={1,2,3} (0,5), (1,2), (2,3) son los tiempos para las 3 actividades Asignar el recurso a las actividades 2 y 3 0 1 2 3 4 5 6 (0,5) (1,2) (2,3) La actividad 1 no se podría atender
  • 11. Programación voraz Problema de selección de actividades Entrada: S={a1, …, an} Salida: AS, tal que |A| es máxima
  • 12. Programación voraz Problema de selección de actividades Entrada: S={a1, …, an} Salida: AS, tal que |A| es máxima (maximizar la cantidad de actividades que van a usar el recurso)
  • 13. Programación voraz Problema de selección de actividades 0 1 2 3 4 5 6 (0,5) (1,2) (2,3) A={2,3} es la solución óptima
  • 14. Programación voraz Solución: •Ordenar las actividades ascendentemente según los tiempos de finalización fi •Coloque en la solución el primer recurso en la lista ordenada S={1,2,3} (0,5), (1,2), (2,3) S’={2,3,1} (1,2), (2,3), (0,5) S’={2,3,1} (1,2), (2,3), (0,5) A={2}
  • 15. Programación voraz Solución: •Coloque en la solución A, el recurso en S’ que tiene tiempo de inicio menor o igual que el tiempo final del recurso que se acaba de planificar S’={2,3,1} (1,2), (2,3), (0,5)
  • 16. Programación voraz Solución: •Coloque en la solución A, el recurso en S’ que tiene tiempo de inicio menor o igual que el tiempo final del recurso que se acaba de planificar S’={2,3,1} (1,2), (2,3), (0,5) A={2,3}
  • 17. Programación voraz Solución: •Coloque en la solución A, el recurso en S’ que tiene tiempo de inicio menor o igual que el tiempo final del recurso que se acaba de planificar S’={2,3,1} (1,2), (2,3), (0,5) A={2,3} ¿Por qué es una estrategia voraz? •Se toma una decisión óptima local en cada estado de la solución •La decisión no depende de solucionar primero subproblemas relacionados
  • 18. Programación voraz ¿Cuándo utilizar una estrategia voraz? Cuando el problema exhiba: • Propiedad de escogencia voraz • Subestructura óptima
  • 19. Programación voraz ¿Cuándo utilizar una estrategia voraz? Cuando el problema exhiba: • Propiedad de escogencia voraz: una solución óptima se puede hallar a partir de soluciones óptimas locales • Subestructura óptima: igual que en programación dinámica
  • 21. Problema: Mochila 0-1 Se tienen N objetos y una mochila de capacidad (de peso) M, cada objeto tiene un peso wi, 1iN. Cada objeto puede estar, o no, en la mochila. Ademas, se tiene un beneficio bi por cada objeto El problema consiste en maximizar el beneficio. La solución se representa indicando para cada objeto si se debe colocar o no en la mochila Programación voraz
  • 22. De manera formal, el problema consiste en encontrar <x1,x2,…,xn> tal que: sea máximo, sujeto a    N i i i x b 1     N i i i M x w 1 xi  {0,1}, donde 0 significa que el objeto i no se coloca en la mochila y 1 que si Programación voraz
  • 23. N=3, M=9, b=<10,6,8>, w=<3,4,5> <1,0,1> es una solución que indica colocar en la mochila los objetos 1 y 3, esto implica un beneficio de 18 <1,1,0> es una solución que indica colocar en la mochila los objetos 1 y 2, esto implica un beneficio de 16 <0,1,1> es una solución que indica colocar en la mochila los objetos 2 y 3, esto implica un beneficio de 14 Programación voraz
  • 24. Estrategia voraz: seleccionar el ítem que tiene mayor beneficio por peso, esto es, bi/wi sea mayor Programación voraz
  • 25. Estrategia voraz: seleccionar el ítem que tiene mayor beneficio por peso, esto es, bi/wi sea mayor N=3, M=9, b=<10,6,8>, w=<3,4,5> Beneficio/peso=<10/3, 6/4, 8/5> = <3.3 , 1.5, 1.6 > Seleccionar el item1, luego el item3 y por último el item2 (si caben) Programación voraz
  • 26. Estrategia voraz: seleccionar el ítem que tiene mayor beneficio por peso, esto es, bi/wi sea mayor N=3, M=9, b=<10,6,8>, w=<3,4,5> Beneficio/peso=<10/3, 6/4, 8/5> = <3.3 , 1.5, 1.6 > Seleccionar el item1, luego el item3 y por último el item2 (si caben) Solución: <1,0,1> Beneficio=10+8 Programación voraz
  • 27. Estrategia voraz: seleccionar el ítem que tiene mayor beneficio por peso, esto es, bi/wi sea mayor N=3, M=50, b=<60,100,120>, w=<10,20,30> Beneficio/peso=<60/10, 100/20, 120/30> = <6, 5, 4 > Seleccionar el item1, luego el 2 Solución: <1,1,0> Beneficio=60+100=160 Programación voraz
  • 28. Estrategia voraz: seleccionar el ítem que tiene mayor beneficio por peso, esto es, bi/wi sea mayor N=3, M=50, b=<60,100,120>, w=<10,20,30> Beneficio/peso=<60/10, 100/20, 120/30> = <6, 5, 4 > La solución óptima es: <0,1,1> Beneficio=100+120=220 Programación voraz