Documentaciónconstruir_fase2(T1, basic1, art_cols, nOriginal, nSlack, c, tol)
Nombre
construir_fase2 - Construye el tableau inicial de la Fase 2 a partir del tableau final de Fase 1.
Sinopsis
ret = simplex2ph.construir_fase2(T1, basic1, art_cols, nOriginal, nSlack, c, tol)
Descripcion
Elimina las columnas artificiales, mapea la base al nuevo tableau y reemplaza la fila objetivo auxiliar por el objetivo real del problema.
La Fase 2 comienza desde la factibilidad conseguida en Fase 1 y luego optimiza el objetivo original.
Formula:
Comportamiento
- Calcula cuantas columnas quedan despues de eliminar artificiales.
- Construye un mapeo de columnas viejas a columnas nuevas.
- Copia el tableau sin las columnas artificiales.
- Mapea la base resultante y detecta si alguna artificial sigue basica.
- Construye la nueva fila objetivo para el problema original.
- Canoniza esa fila objetivo respecto de la base actual.
- Retorna una tabla con
ok,T,ByN.
Funciones API relacionadas
simplex2ph.construir_fase1()simplex2ph.limpiar_artificiales()simplex2ph.simplex_iterar()simplex2ph.resolver_two_phase()
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
| T1 | MATRIZ | Tableau resultante de la Fase 1. |
| basic1 | VECTOR | Base resultante de la Fase 1. |
| art_cols | VECTOR | Vector de columnas artificiales. |
| nOriginal | NUMERICO | Cantidad de variables originales. |
| nSlack | NUMERICO | Cantidad de variables de holgura. |
| c | VECTOR | Vector de costos del objetivo original. |
| tol | NUMERICO | Tolerancia numerica. |
Valor de retorno
TABLA - Tabla con el tableau inicial de Fase 2 y la base ajustada.
Ejemplo
ejemplo.blox
TABLA resultado
resultado = simplex2ph.construir_fase2(T1, basic1, art_cols, nOriginal, nSlack, c, tol)