Está en la página 1de 14

Jordi Pereira

Faculty of Engineering and Sciences


Universidad Adolfo Ibáñez,
Viña del Mar, Chile

Introducción (Sesión 2).


ING 502. Planificación y programación de operaciones
Knapsack (primeros métodos) Programación dinámica

Descripción del problema


Problema de la mochila Cknapsack ) .
.

Selección .

alternativas beneficio Cprofit !beneficio


escogido
.

si su

/items
gano
objetos .

costa ( weight !
escogido debo
.

si

reservar
igual recurso
a

SO
peso .

objetivo -5×45×3 beneficio .

ING 502. Planificación y programación de operaciones


Knapsack (primeros métodos) Programación dinámica

Modelo matemático
Profit .

X →
máx p i xi , (1)
i2I
X no consumir más

st: wi xi  c, límite de (2)
i2I que un
recursos .

O
xi 2 {0, 1}, 8i 2 I . (3)

si fraccionarias
↳ binarias .

el problema
trivial
✗ → selecciono .

casi
selecciono
.

es
lo
∅ → no

ING 502. Planificación y programación de operaciones


Knapsack (primeros métodos) Programación dinámica

Modelo matemático
No se crean que es un área que va de “bajada”
http://plato.asu.edu/ftp/lpsimp.html

lineal
Sotuer de programación .

entera .

• CPLEX .

→ Guardi .

ING 502. Planificación y programación de operaciones


Parte del lenguaje .

Usuario
.


Gráfica
de Usuario .

dio
datos

automáticos .
Knapsack (primeros métodos) Programación dinámica

Modelo matemático ( Necesidades) .

1o .
Obtener los datos
→ .

Problema Instancia .

↓ ↓
General .
Juego de
datos específico .

Número de ítems .

máxima
Capacidad .

Para cada item su profit g


su

Weight .

ING 502. Planificación y programación de operaciones


Knapsack (primeros métodos) Programación dinámica

Modelo matemático
datos
2o → Preprocesar los .

medidas)
Cejo →
ajustar

ING 502. Planificación y programación de operaciones


Knapsack (primeros métodos) Programación dinámica

Modelo matemático
3o → Construir el modelo .

de la librería
Dependiente
.

hacerlo
-

de
múltiples maneras
.

-
Hay *

empezar Nota importante :

µ,
cero RTFIY
↓ Read
cosas
Algunas the
se tienen que +
hacer siempre .

manual .

ING 502. Planificación y programación de operaciones


Knapsack (primeros métodos) Programación dinámica

Modelo matemático
modelo obtener
4o → Resolver el g
la solución

fin
5o → cerrar el modelo y .

ING 502. Planificación y programación de operaciones


NÉE :

(1) Lenguaje compilado .

modo texto
.

trabajar
en .

(2) Yo voy a

↳ terminal .

todas Órdenes
Escribiremos

nosotros .

(3) n objetos → 1 .

puntero .

A
|
O, 1,2 , • • M -1
q .

En C la longitud de un
(4) si no conoces
deló
vector las dimensiones de matriz depende
[
.

una
o
datos
✗ 3

tengo
[ 2]
✗ [O] ✗ [ 1] ✗ .

Profit -43=3 profit -123=8 .

Profit -103=5 profit


) }
forli-ogia3.ci/-
+

objetivo + =
profitti ] * ✗ [ ¿]

f " "
objetivo =
] # ✗[ ]
protitto
o

4a objetivo =
-4 ] # ✗ [ 1
]
profit-OJ-XXEOJ-prof.it

2a → objetivo 5 3
Knapsack (primeros métodos) Programación dinámica

Una Heurı́stica greedy (planteo)

t
valen mucho
Escoger que
.

cosas

alto]
[ profit
es pesan poco
]
[ Weight bajo .

> regla lógica .

ratio a
ordenar de mayor
,
menor ratio .

ING 502. Planificación y programación de operaciones


Knapsack (primeros métodos) Programación dinámica

Una Heurı́stica greedy (planteo)


las de la lista
Escoger primeras de
.

menor ttio
Calculo ratios y ordeno mayor a

%
orden
2. Para
cada objeto en su .

igual a la
menor o
2 ! si su
peso
es
Si
selecciono

libre , lo
.

capacidad
no no .

3o Fin para
problema
.

solución del
* Tengo
.

una

lineal
( At No require programación todo el
.

mundo -

(2) se le puede explicar a

(3) Es muy rápido .

ING 502. Planificación y programación de operaciones


N-tn-dacabar.PL
E ) ( MIP no

bien
lo resuelve todo
resuelve muy pocas
.

cosas .

más

2 alternativas " "


modelo
al
↳ Meterle
ciencia .

↳ Osar algo que no


asegura
el

funciona
óptimo pero

También podría gustarte