SlideShare una empresa de Scribd logo
1 de 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

Más contenido relacionado

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

Similar a 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
 

Último

Principales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingPrincipales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingKevinCabrera96
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdfvictoralejandroayala2
 
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
 
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESOCAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESOLUISDAVIDVIZARRETARA
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptMarianoSanchez70
 
UNIDAD 3 ELECTRODOS.pptx para biopotenciales
UNIDAD 3 ELECTRODOS.pptx para biopotencialesUNIDAD 3 ELECTRODOS.pptx para biopotenciales
UNIDAD 3 ELECTRODOS.pptx para biopotencialesElianaCceresTorrico
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfedsonzav8
 
clasificasion de vias arteriales , vias locales
clasificasion de vias arteriales , vias localesclasificasion de vias arteriales , vias locales
clasificasion de vias arteriales , vias localesMIGUELANGEL2658
 
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
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfMikkaelNicolae
 
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptxCARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptxvalenciaespinozadavi1
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfKEVINYOICIAQUINOSORI
 
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCarlosGabriel96
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptCRISTOFERSERGIOCANAL
 
PostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCDPostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCDEdith Puclla
 
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
 
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfbcondort
 
Ejemplos de cadenas de Markov - Ejercicios
Ejemplos de cadenas de Markov - EjerciciosEjemplos de cadenas de Markov - Ejercicios
Ejemplos de cadenas de Markov - EjerciciosMARGARITAMARIAFERNAN1
 
clases de porcinos generales de porcinos
clases de porcinos generales de porcinosclases de porcinos generales de porcinos
clases de porcinos generales de porcinosDayanaCarolinaAP
 
nomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesnomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesCarlosMeraz16
 

Último (20)

Principales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingPrincipales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards Deming
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.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
 
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESOCAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 
UNIDAD 3 ELECTRODOS.pptx para biopotenciales
UNIDAD 3 ELECTRODOS.pptx para biopotencialesUNIDAD 3 ELECTRODOS.pptx para biopotenciales
UNIDAD 3 ELECTRODOS.pptx para biopotenciales
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdf
 
clasificasion de vias arteriales , vias locales
clasificasion de vias arteriales , vias localesclasificasion de vias arteriales , vias locales
clasificasion de vias arteriales , vias locales
 
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
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
 
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptxCARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdf
 
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
 
PostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCDPostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCD
 
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
 
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
 
Ejemplos de cadenas de Markov - Ejercicios
Ejemplos de cadenas de Markov - EjerciciosEjemplos de cadenas de Markov - Ejercicios
Ejemplos de cadenas de Markov - Ejercicios
 
clases de porcinos generales de porcinos
clases de porcinos generales de porcinosclases de porcinos generales de porcinos
clases de porcinos generales de porcinos
 
nomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesnomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestaciones
 

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