optimization project management - do analytics
TRANSCRIPT
PROJECT MANAGEMENT OPTIMIZATION
Ing. Jesús Velásquez-Bermúdez, Dr. Eng. Chief Scientist DecisionWare - DO Analytics
Septiembre 2020
PROJECT MANAGEMENT OPTIMIZATION
1
PROJECT MANAGEMENT OPTIMIZATION 1. PROJECT MANAGEMENT
OPCHAIN-PMO es un modelo matemático orientado a la optimización de proyectos de construcción
y/o mantenimiento de obras de infraestructura; por ejemplo, carreteras, urbanizaciones, aeropuertos, … . Este modelo matemático en adelante se llamará PMO.
El enfoque convencional de control de proyectos está basado en las metodologías conocidas como CPM (Critical Path Method) y PERT (Project Evaluation and Review Technique) las cuales están basadas en
tiempo de duración de las actividades que se asumen independientes de los recursos consumidos, CPM asume tiempos de duración determinísticos y PERT asume tiempos de ejecución aleatorios. El objetivo
de las dos metodologías es minimizar el tiempo de entrega del proyecto y el resultado se concreta las fechas/momentos de inicio y de finalización de cada actividad, incluyendo las holguras para la fecha de
inicio; las actividades para las cuales la holgura es cero conforman la ruta crítica (“critical path”) del
proyecto e indican que cualquier atraso en el proyecto implicará atrasos en la fecha de finalización del proyecto.
Las debilidades de las dos anteriores metodologías son:
1. El costo del proyecto es un dato exógeno ya que la duración de las actividades es independiente del
consumo de recursos. 2. El objetivo del proyecto es minimizar el tiempo de entrega del proyecto, que no es el objetivo de las
empresas privadas que buscan maximizar su rentabilidad. 3. No están orientadas a la asignación de recursos, ya que las duraciones asumen una asignación de
recursos coherente. 4. No permiten la sincronización de equipos/máquinas que pueden ser escasos y deben estar asignados
a las actividades en el momento de iniciarlas.
OPCHAIN-PMO resuelve los anteriores problemas ya que está fundamentado en un modelo de
programación matemática que puede subsanar las debilidades enumeradas para el CPM y el PERT.
Se debe tener en cuenta que el problema PMO corresponde a un problema bi-criterio: i) si se minimiza
el tiempo de ejecución se gastará más dinero en la ejecución del proyecto, y ii) si se minimiza el costo de ejecución el tiempo de ejecución aumentará; OPCHAIN-PMO facilita la construcción de curvas
Pareto costo/rentabilidad vs. tiempo que apoyen la toma de decisiones.
PROJECT MANAGEMENT OPTIMIZATION
2
Expected Revenue($)
Minimal Time
MaximalExpectedRevenue
MinimalExpectedRevenue
Pareto CurveEfficient Decisions
Benefit Uncaptured
Additional Time
NO optimized decisions
Optimized Decisions
Unfeasible Decisions
Time(Days)
COST VS. EXECUTION TIME
Esta dualidad de intereses se puede subsanar si se da un valor al tiempo, esto se puede hacer de dos formas: i) exógenamente, en este caso el decisor asume un costo de oportunidad por día de reducción
del proyecto; y ii) incluyendo en el modelo matemático los aspectos financieros que se derivan de la ejecución del proyecto, en este caso el modelo PMO evaluará a través de las variables dual, de la
restricción de tiempo total de ejecución, el valor económico del tiempo, el cual podría llegar a ser cero en los casos en que no hay beneficio por entregas tempranas.
La formulación típica del problema CPM como un modelo de optimización que minimiza el tiempo total de ejecución del proyecto es:
CPM: = { Min z = TFP |
TFIa = TINa + DURa aACT
TINa ≥ TFIaa aACT aaACT(a)
TFP ≥ TFIa
aACT
TINaR+ }
donde el índice a representa las actividades, ACT el conjunto de actividades a, ANT(a) el conjunto de actividades aa anteceden a, DURa la duración actividad a (parámetro de entrada). Las variables de
decisión son: i) TINa tiempo de inicio de la actividad a, ii) TFIa el tiempo de finalización de la actividad
a y iii) TFP el tiempo final del proyecto.
PROJECT MANAGEMENT OPTIMIZATION
3
a2
a4
a3 a5
a1 a6
CPM: CRITICAL PATH METHOD - COORDINACIÓN DE ACTIVIDADES
TFP
TFIaTINa
DURa
TFIa = TINa + DURa
TFIaa
TINa ≥ TFIaa
TFP ≥ TFIa
TINaϵR+
2. PROJECT MANAGEMENT MODELING
Existen dos alternativas para modelar la programación las operaciones que se deben realizar la ejecución de un proyecto: modelos de tiempo discreto y modelos de tiempo continuo; el modelamiento de tiempo
discreto, por ser mucho más conocido, no se analiza en este documento; adicionalmente el autor considera más eficaz utilizar modelamiento de tiempo continuo.
2.1. MODELOS DE TIEMPO CONTINUO
Los modelos de problemas operativos requieren coordinar detalladamente el comienzo y el final de todas actividades que hacen parte de un plan de ejecución de un proyecto. La conceptualización que se hace
del modelaje es genérica, en el sentido que puede ser aplicada a cualquier de programación de actividades en un proyecto de desarrollo de obras civiles, una cadena de suministro, una fábrica, una
cadena de distribución, …
Se asume que se deben programar las actividades en un sistema compuesto por múltiples tipos de
instalaciones (edificios, tramos viales, celdas, máquinas, ductos, tanques, bombas, puertos, ...) en las que deben realizar múltiples modos de producción/tecnologías (vaciado de columnas, pinturas de
edificios, pavimentación de tramos de carreteras, barcos que cargan/descargan productos, …). En las
diferentes instalaciones se ejecutan actividades a partir de las cuales se realiza la creación, la transformación, el almacenamiento y/o la distribución de los productos que maneja el sistema. De
manera genérica se asocia a una actividad la realización de un proceso en/sobre una instalación, un producto, un vehículo.
Las decisiones que se deben simular cada posible actividad que se considere en el plan se resumen en:
▪ Tiempo de inicio
▪ Tiempo de finalización ▪ Condiciones operacionales (tecnología seleccionada, recursos asignados, volumen transportado,
velocidad, temperatura, ...)
El modelo debe determinar las secuencias de actividades que se realizarán y garantizar la factibilidad de
la operación de acuerdo con: i) normas técnicas establecidas, ii) recursos disponibles, iii) productividad
PROJECT MANAGEMENT OPTIMIZATION
4
de las tecnologías, y iv) reglas del negocio, todo esto por medio de condiciones matemáticas (ecuaciones algebraicas) que describan apropiadamente su realización a lo largo del tiempo.
El modelaje cubre un período predefinido de T unidades de tiempo (24 horas, 31 días, 52 semanas, …),
durante dicho período en las diferentes instalaciones (edificios, tramos viales, máquinas, puertos, …)
ocurrirán una cantidad de actividades/eventos, posiblemente no conocidas a priori, en las que se procesarán (o transportarán) uno o varios productos (construcción de una loza, producción industrial,
carga de un barco, …) de acuerdo con una secuencia que debe establecer el modelo. En cada una de las instalaciones el modelo debe posibilitar la cantidad de secuencias que sean necesarias para
representar el plan de óptimo de ejecución a lo largo del período de planificación. Por lo tanto, el conjunto de secuencias que ocurren en una instalación describe los procesos que allí se realizan y los instantes
en el tiempo en que se dan.
Un problema típico de tiempo continuo es el CPM el cual se utilizará para introducir los conceptos, para
ello se considerar una modificación del problema CPM en el que la duración de las actividades es función de las decisiones del modelo y por lo tanto determina la coordinación de actividades. La duración de las
actividades puede estar predeterminada (ejemplo, tramitación de una licencia) o puede ser variable, en
este caso la duración está relacionada con la cantidad de recursos utilizados (ejemplo, pintar un edificio como función de la cantidad de mano de obra utilizada, desplazamiento entre dos puntos función de la
velocidad y del consumo de combustibles, … ).
a2
a4
a3 a5
a1 a6
CPM: CRITICAL PATH METHOD - COORDINACIÓN DE ACTIVIDADES
En el caso de coordinación de actividades de transporte en una instalación industrial (puertos, viajes de
barcos, … ) la duración se puede asociar al tiempo de viaje cuya duración que depende de la velocidad
de desplazamiento del barco, la cual es una función no-lineal (exponencial) de la energía consumida, la cual a su vez depende de la carga del barco y de las condiciones hidro-climáticas.
La duración de la actividad ac, DURac, es considerada como parámetro fijo en el CPM típico; sin
embargo, la duración puede ser una variable de decisión que depende de la asignación de recursos; por
ejemplo, en el caso de una obra civil, la mano de obra asignada puede determinar la duración de la actividad pintar un edificio. En el caso del operaciones industriales, el recurso puede ser energía
(combustible) que determina la velocidad de un proceso industrial.
La siguiente gráfica presenta el caso lineal en el que se determina la duración (DURac) de la actividad
ac como función del recurso re. En este caso se sume una duración mínima (DMINac) que se obtiene
PROJECT MANAGEMENT OPTIMIZATION
5
con una asignación máxima (AMAXac,re) del recurso re y una duración máxima (DMAXac) que se obtiene con una asignación mínima (AMINac,re). La asignación de recursos (ASIac,re) asignada por el modelo
produce una disminución de ASDUac,re unidades de tiempo por cada unidad de recurso asignada.
DURACIÓN(días)
DURACIÓNMÍNIMA
DMINa
ASIGNACIÓNMÍNIMA
RECURSO (r)($)
DURACIÓNMÁXIMA
DMAXa
ASIGNACIÓNMÁXIMA
AMINa,r
AMAXa,r
DURa = DMAXa – ASDUa,r ASIa,r
CPM: CRITICAL PATH METHOD – DURACIÓN DE ACTIVIDADES VARIABLE
Incluir el modelamiento de los recursos utilizados en el proyecto, o en el plan de actividades en una
instalación, facilita la inclusión de restricciones que se requieren para realizar el modelamiento de acuerdo con las condiciones reales, estas restricciones se pueden resumir en:
1. Límites en la cantidad de recursos utilizados de acuerdo con la disponibilidad de estos (Ejemplo, la
cantidad de mano de obra utilizada en todas las actividades en un momento dado, menor que la mano de obra contratada.
2. Coordinación de recursos que deben estar disponibles simultáneamente para realizar una actividad (Ejemplo, la pavimentación de un tramo de carretera requiere varias máquinas trabajando
simultáneamente.)
En el caso lineal la duración DURac (variable del problema matemático) se puede definir como
DURac = DMAXac – ASDUac,re × ASIac,re
donde DMAXac representa la duración máxima de la actividad ac y ASDUac,re la reducción de tiempo
por unidad adicional de recurso re invertido en la actividad ac; ASIac,re corresponde a la decisión
asociada a la cantidad de recurso re invertido en reducir la duración de la actividad ac.
Si se tienen múltiples recursos que afectan la duración la condición sobre la asignación de múltiples recursos, la ecuación de duración puede formularse como:
DURac ≥ DMAXac – ASDUac,re × ASIac,re
Para casos no lineales la duración DURac se define como
DURac ≥ DMAXac - f(ASIac,re)
donde f(ASIac,re) corresponde a una función no lineal, casi siempre convexa.
PROJECT MANAGEMENT OPTIMIZATION
6
Adicionalmente se debe considerar la duración mínima de la actividad, matemáticamente esto es
DURac ≥ DMINac
La reformulación del problema CPM como un modelo de optimización CPM-VD que: i) minimiza el costo
del consumo de recursos, ii) considera la duración como una variable del modelo matemático que es función de la asignación de recursos, y iii) acota el tiempo total de ejecución del proyecto a un valor
máximo (TFPR) , es:
{CPC,TFPR} = CPM-VD: =
{ Min CPC = re CRECre ASIac,re DURac |
TFIac = TINac + DURac acACT
TINac ≥ TFIaa acACT aaANT(ac)
TFPR ≥ TFIac
acACT
DURac ≥ DMAXac – ASDUac,re × ASIac,re acACT reREC
DURac ≥ DMINac acACT
TINacR+ }
De esta manera el tiempo de inicio y el de finalización de una actividad se describen como eventos que
ocurren a lo largo de la línea del tiempo y que se pueden coordinar entre sí. El resultado del modelo CPM-VD: será la dupla costo y tiempo de finalización del proyecto (bajo condiciones de optimalidad),
esto es {CPC,TFPR}.
En adelante el conjunto de restricciones que definen la zona de factibilidad de CPM-VD: para un tiempo
de ejecución dado (TFPR) se denomina como
{ASI, DUR, TIN, TFI}(TFPR)
Se debe notar que el producto ASIac,re DURac convierte el problema en una de programación
cuadrática Esto para el caso de costos que dependen del tempo de la asignación de los recursos; por ejemplo alquiler de un equipo por días.
2.2. CONCEPTOS AVANZADOS
Para que los modelos matemáticos se ajusten a problemas que ocurren en el mundo real es necesario extender los anteriores conceptos para incluir el realismo en el modelamiento matemático. A
continuación se analizan los siguientes aspectos: 1. Conceptualización de una sistema generalizado de modelamiento de proyectos.
2. Coordinación de múltiples proyectos o subproyectos o etapas de un proyecto. 3. Ubicación de las actividades en un calendario (relación tempo discreto con tempo continuo).
2.2.1. SISTEMA GENERALIZADO DE MODELAMIENTO DE PROYECTOS
El concepto de obra civil se utiliza para designar a aquellas obras que son el resultado de la ingeniería civil. Entre los ejemplos más corrientes se destacan: las carreteras, las calles, las autopistas, los puentes,
vías de ferrocarril, aeropuertos, puertos, edificios, …
La conceptualización de un modelo generalizado de control de proyectos de construcción de se puede
basar en los siguientes conceptos jerárquicos:
PROJECT MANAGEMENT OPTIMIZATION
7
▪ Proyecto Construcción: Corresponde a un conjunto de obras civiles interdependientes (obra civil compleja) y que se construyen como un solo proyecto integrado. Ejemplo un conjunto de edificio,
una urbanización, un proyecto hidroeléctrico, … ▪ Obra Civil (oc): una instalación (obra civil simple) que cumple con una función específica dentro del
proyecto. Un proyecto de construcción está integrado por múltiples obras civiles. Ejemplo: un
edificio, una casa, una parcela, una presa … . ▪ Trabajo Civil (pa): Corresponde a una parte específica de una obra civil que para propósitos de la
obra civil se convierte en la unidad básica de planificación. Administrativamente el trabajo civil puede asociarse al concepto de partida, o de capítulo, y se convierte en un centro costos del proyecto para
propósitos de control presupuestal. Por lo tanto, una obra civil está integrada por múltiples trabajos civiles y todas los trabajos civiles deben pertenecer a una obra civil y en su conjunto corresponden
al presupuesto de la obra civil. Ejemplo: un piso de un edificio, una casa de una urbanización, un
tramo de vía de una autopista, … .
Cada trabajo civil tiene su propio diagrama de conectividad de actividades y es de esperarse que trabajo civiles similares tienen diagrama de conectividad similares. Por lo anterior, con la finalidad de facilitar el
modelamiento matemático de grandes proyectos de obras civiles y de mejorar el mantenimiento del
sistema de información se introduce el conceto: ▪ Tipo de Trabajo Civil (pv): A este nivel se define el diagrama de conectividad de actividades.
Las actividades se consideran comunes para los diferentes tipos de trabajo civil (existe una tabla maestra
de actividades y a partir de allí se seleccionan las actividades que hacen parte de un trabajo civil). Este
se manejará por medo del conjunto acAPV(pv) que contiene las actividades ac que integran el tipo
de trabajo civil pv.
Todo trabajo civil debe asociarse a un tipo de trabajo civil que definirá la topología del diagrama de conectividad de actividades el cual se parametrizará numéricamente con base en parámetros
dependientes de la obra civil. Esto se maneja por medio del conjunto pvPVP(pa), que tiene un solo
elemento. Las actividades que integran la trabajo civil pa se definen por medio del conjunto
acAPA(pa) el cual se calcula como:
acAPA(pa) = acAPV(pvPVP(pa))
Por otro lado, la obra civil está definida por el conjunto de trabajos civiles que la componen los cuales
están contenidas en el conjunto paPOC(oc) que depende de cada obra civil oc. Las obras civiles que
integran el proyecto de construcción están definidas en el conjunto ocPCO.
Bajo esta conceptualización el problema se puede ver como tres niveles jerárquicos de coordinación de
acuerdo con la siguiente jerarquía: i) proyecto de construcción, ii) obra civil, y iii) trabajo civil. A continuación se analiza de manera general la coordinación entre niveles partiendo del nivel inferior de
los trabajos civiles. Esta conceptualización facilita la partición y la descomposición del problema si se
requiere utilizar metodologías de optimización de gran escala.
1. Nivel Trabajo civil:
Dado que el diagrama de conectividad está definido a nivel de los trabajos civiles es posible definir
un sub-problema a este nivel para establecer el cronograma de actividades de cada trabajo civil, esto implica asocia un subproblema CPM-VD para cada trabajo civil, esto es definir CPM-VD-
P(pa): como:
{CPApa, TFPXpa} =
CPM-VD-PA(pa|TIPXpa): =
PROJECT MANAGEMENT OPTIMIZATION
8
{ Min CPApa = re CRECre,pa ASIpa,ac,re DURpa,ac |
{ASIpa,ac,re, DUR pa,ac, TIN pa,ac, TFI pa,ac}pa(TFPXpa)
}
donde {ASIpa,ac,re, DUR pa,ac, TIN pa,ac, TFI pa,ac}pa(TFPXpa) representa la zona de factibilidad
del problema.
El resultado del modelo CPM-VD-PA(pa|TIPXpa): será la dupla costo y tiempo de finalización
mínimo del trabajo civil (bajo condiciones de optimalidad), esto es {CPApa,TFPXpa}. Estos problemas tienen como condición de frontera el momento en que se puede iniciar la construcción
del trabajo civil TIPXpa.
2. Nivel Obra Civil:
La coordinación a nivel de la obra civil se realiza por medio de un diagrama de conectividad de los
trabajos civiles, similar al diagrama de conectividad de las actividades de los trabajos civiles.
p2
p4
p3 p5
p1 p6
CPM: CRITICAL PATH METHOD - COORDINACIÓN DE PARTIDAS
Con base en el diagrama de conectividad se puede formular un problema de optimización que produzca
parejas de costos y tiempos de finalización para la obra civil el cual tiene incorporados los subproblemas
para cada uno de los trabajos civiles que hacen parte de la obra civil. Esto es:
{COCoc, TFOXoc} = CPM-VD-OC(oc|TIOXoc): =
{ Min COCoc = paPOC(oc) CPApa |
TIOXpa ≥ TFOXpp paPOC(oc) ppPNT(pa)
TFOXoc ≥ TFPXpa paPOC(oc)
{CPApa, TFPXpa} = CPM-VD-PA(pa|TIPXpa): paPOC(oc)
}
El resultado del modelo CPM-VD-OC(pa|TIOXoc): será la dupla costo y tiempo de finalización
mínimo de la obra civil (bajo condiciones de optimalidad), esto es {COCoc,TFOXoc}. Estos
problemas tienen como condición de frontera el momento en que se puede iniciar la construcción de la obra civil TIOXoc.
PROJECT MANAGEMENT OPTIMIZATION
9
3. Nivel Proyecto de Construcción:
La coordinación a nivel del proyecto de construcción se realiza por medio de un diagrama de conectividad de las obras civiles, similar al diagrama de conectividad de las actividades de los
trabajos civiles y de los trabajos civiles.
o2
o4
o3 o5
o1 o6
CPM: CRITICAL PATH METHOD - COORDINACIÓN DE OBRAS CIVILES
Con base en el diagrama de conectividad se puede formular un problema de optimización que produzca parejas de costos y tiempos de finalización para el proyecto el cual tiene incorporados los subproblemas
para cada una de las obras civiles que hacen parte del proyecto de construcción. Esto es:
{ CPC , TFPR} =
CPM-VD-PC: =
{ Min CPC = ocPOC COCoc |
TIOXoc ≥ TFOXoo ocPOC ooONT(oc)
TFPR ≥ TFOXoc ocPOC
{COCoc, TFOXoc} = CPM-VD-OC(oc|TIOXoc): ocPOC
}
El resultado del modelo CPM-VD-PC: será la dupla costo y tiempo de finalización del proyecto de construcción (bajo condiciones de optimalidad), esto es {CPC,TFPR}.
2.2.2. INTEGRACIÓN DE TIEMPO CONTINUO Y TIEMPO DISCRETO
Como punto de trabajo civil definiremos un calendario como un conjunto de eventos a lo largo del eje del tiempo que se asocian a: i) eventos puntuales o a ii) períodos (épocas, meses semanas … ) de
especial interés para el usuario. La importancia del calendario es relacionar el inicio (TINac) o la finalización (TFIac) de las actividades con eventos o con períodos del calendario.
Esta vinculación se hace necesaria para integrar la programación de la obra (en tiempo continuo) con el manejo del presupuesto (en tiempo discreto).
Los eventos se asocian al índice ev y caracterizan por instantes (puntos en el eje del tiempo, TIEVev),
en el cual ocurren). Las restricciones a imponer están relacionadas con al anterioridad, la igualdad o la
PROJECT MANAGEMENT OPTIMIZATION
10
posterioridad con respecto al momento de inicio o al momento de finalización de una actividad. Estas restricciones pueden ser:
TINac ≥ TIEVev o TINac = TIEVev o TINac ≤ TIEVev
y/o
TFIac ≥ TIEVev o TFIac = TIEVev o TFIac ≤ TIEVev
Los períodos se asocian al índice pe y se caracterizan por el momento de inicio, TIPEpe, y el momento de finalización, TFPEpe. El modelamiento de la relación de las actividades con los períodos se concentra
en las siguientes variables:
VARIABLES
Variable Description
VARIABLES BINARIAS
APBIac,pe
Igual a uno (1) si la actividad ac inicia antes de comenzar el período pe. Ecuaciones de control:
TINac ≤ TIPEpe APBIac,pe + ∞ (1 - APBIac,pe) TINac ≥ TIPEpe (1 - APBIac,pe) - ∞ APBIac,pe
APBFac,pe
Igual a uno (1) si la actividad ac termina después de terminar el período pe. Ecuaciones de control:
TFIac ≥ TFPEev APBFac,pe - ∞ (1 - APBFac,pe) TFIac ≤ TFPEev (1 - APBFac,pe) + ∞ APBFac,pe
APBPac,pe
Igual a uno (1) si la actividad ac está activa durante todo el período pe, cero (0) si no está activa todo el período. Las condiciones para que APBac,pe sea igual a uno son: ▪ El inicio de la actividad es menor o igual que el inicio del evento: TINac ≤ TIPEpe
▪ La finalización de la actividad es mayor o igual que la finalización del evento: TFIac ≥ TFPEev Ecuaciones de control:
APBIac,pe + APBFac,pe ≤ 1 + APBPac,pe APBPac,pe ≤ APBIac,pe ; APBPac,pe ≤ APBFac,pe
VARIABLES CONTINUAS
FAPac,pe Fracción de la duración del período pe que esta activa la actividad ac.
A partir de las variables anteriores es posible realzar cálculos sobre los períodos para integrar el
modelamiento de tiempo continuo y el de tiempo discreto. Dos ejemplos de estos requerimientos son: ▪ Cuentas administrativas mensuales, o semanales, para coordinar aspectos presupuestales y de
manejo de activos y de pasivos financieros, adquisición/contratación de recursos físicos, contratación
de personal, contratación de turnos de trabajos extras, … ▪ Cálculo de la capacidad productiva por períodos y vinculación de su consumo en las diferentes
actividades.
2.2.3. METODOLOGÍAS DE GRAN ESCALA
2.2.3.1. CONCEPTUALIZACIÓN
La conceptualización del problema CPM-VD-PC: en tres niveles jerárquicos: i) proyecto de construcción, ii) obra civil, y iii) trabajo civil, facilita la solución del problema utilizando una de dos alternativas:
▪ Integrado: con base en la unión de todos los problemas en un modelo matemático integrado que
se resuelve utilizando metodologías de optimización tradicionales.
PROJECT MANAGEMENT OPTIMIZATION
11
OBJECTIVE FUNCTIONDECISION CRITERIA
MATHEMATICAL FORMULATION:
▪ INDUSTRIALS PROCESS
▪ BUSINESS RULES
LARGE-SCALE OPTIMIZATION PROBLEM – ORGANIZATIONAL INTERPRETATION
Boardof
Project
Directors
Civil Works
Management
Integrated Optimization Model
▪ Multinivel: con base en la partición y descomposición del problema utilizando metodologías de
optimización de gran escala, que están orientadas a la solución paralela del problema tomando
ventaja de las arquitecturas informáticas modernas basadas en procesamiento paralelo intensivo y grandes bancos de memoria cache.
Minx cTy + w qw
Subject to:
Ay = b
qw wk (hw – Tw(y) , w=1,N , k=1,ITE
y R+
yik1
k mk
w=1 w=W
Parallel Optimization Modell(Mathematical Programming 4.0)
LARGE-SCALE OPTIMIZATION PROBLEM – ORGANIZATIONAL INTERPRETATION
OBJECTIVE FUNCTIONDECISION CRITERIA
MATHEMATICAL FORMULATION:
▪ INDUSTRIALS PROCESS
▪ BUSINESS RULES
BUILDING MUSEUM MALL
Boardof
ProjectDirectors
Civil WorksManagement
La conceptualización jerárquica multinivel permite que el sistema: i) pueda ser optimizado integralmente,
o ii) que cada uno de los componentes de un nivel pueda ser optimizado independientemente. A partir de los resultados de cada nivel, es posible re-optimizar/optimizar el sistema integralmente para conseguir
la solución óptima.
En este caso se tiene una estructura jerárquica de tres niveles la cual se puede visualizar en el siguiente
diagrama, en el que cada uno de los “rectángulos” se asocia a un problema de optimización que sirve como coordinador de los niveles inferiores y como subproblema de los niveles superiores. La
comunicación entre los diferentes niveles jerárquicos se basa en intercambio de información de variables prímales y de variables duales (gradientes de las restricciones).
Existen múltiples alternativas de coordinación del proceso y la “mejor” debe ser el resultado del estudio de la estructura y del formato de los problemas involucrados. En general, el proceso iterativo
corresponde a la construcción de la curva Pareto costo vs tiempo cada vez que se resuelve un problema se genera un punto de dicha curva que relaciona el costo mínimo para un determinado tiempo de
desarrollo de proyecto de la obra civil o del trabajo civil.
PROJECT MANAGEMENT OPTIMIZATION
12
Este enfoque es equivalente a la determinación de un convex-hull que defina el valor óptimo del costo
como función de tiempo de ejecución de los proyectos o de sus partes. La generación de convex-hulls es un medo para almacenar la información de todas las corridas que se van realzando a lo largo del
proceso de planificación.
PA
RT
ITIO
N
DECOMPOSITION
CIVIL WORKPARTS(CWP)
CIVIL WORK COORDINATOR
CPM-VD-OC(oc|TIOXoc):
CIVIL WORK COORDINATOR
CPM-VD-OC(oc|TIOXoc):
PROJECT CONSTRUCTION COORDINATOR
CPM-VD-PC:
CONSTRUCTIONPROJECT
CIVIL WORKS
CWPCOORDINATOR
CPM-VD-PA(pa|TIPXpa):
CWPCOORDINATOR
CPM-VD-PA(pa|TIPXpa):
CWPCOORDINATOR
CPM-VD-PA(pa|TIPXpa):
CWPCOORDINATOR
CPM-VD-PA(pa|TIPXpa):
CWPCOORDINATOR
CPM-VD-PA(pa|TIPXpa):
CWPCOORDINATOR
CPM-VD-PA(pa|TIPXpa):
CWPCOORDINATOR
CPM-VD-PA(pa|TIPXpa):
CWPCOORDINATOR
CPM-VD-PA(pa|TIPXpa):
LARGE-SCALE OPTIMIZATION OF LARGE-SCALE CONSTRUCTIONS PROJECT
TIPXpapa = CPApa / d (TFPXpa- TIPXpa) TIPXpapa = CPApa / d (TFPXpa- TIPXpa)
TIOXOClco = COCoc / d (TFOXpa- TIOXpa)
La integración de los diferentes problemas matemáticos (algoritmos) se puede visualizar bajo los conceptos modernos de un hipotálamo artificial para la construcción de un proyectos de obras civiles.
THE HYPOTHALAMUS OF A CONSTRUCTION PROJECT
KNOWLEDGEDATABASE
BUILDINGS
MUSEUM
MALL
INTERNAL WAYSPUBLIC ZONES
2.2.3.2. COORDINACIÓN MULTINIVEL
A continuación se analiza los principios básicos de solución de los problemas de coordinación óptima a
nivel de proyecto de construcción o a nivel de una obra civil. Se tomará como referencia el caso de
coordinación de una obra civil la cual está compuesta por múltiples trabajos civiles cada uno de las cuales, a su vez, está compuesto por múltiples actividades, específicamente se analizará la solución
coordenada del problema CPM-VD-OCoc(TIOXoc):.
PROJECT MANAGEMENT OPTIMIZATION
13
Como punto de partida definamos una función que relaciones el costo de construcción con el tiempo de ejecución de un trabajo civil, CPApa = CFpa(TFPXpa). Esta función debe definirse en condiciones de
optmaldad, es decir debe relacionar el mínimo costo CPApa para un tiempo de ejecución TFPXpa. Para facilidad de la presentación se asume que el costo de construcción es independiente del momento en
que se comienza a trabajar en la trabajo civil pa lo que no siempre es válido. O sea que CFpa() define
una frontera Pareto para las decisiones eficientes que determina cuatro tipos de puntos:
▪ Eficientes: corresponde a los puntos que están sobre la curva
▪ Factibles Racionales: puntos que están por “arriba” de la curva Pareto y corresponden a soluciones factibles pero que no cumplen con condiciones de optimalidad (no son eficientes) y por lo tanto no
corresponden a soluciones óptimas ya que se puede ahorrar costo para un tiempo dado o se puede
disminuir el tiempo para un costo dado. La zona de soluciones factibles racionales (color gris) está limitada por: i) la curva Pareto eficiente, ii) el tiempo máximo y el costo asociado, y iii) el costo
máximo y el tiempo asociado.
▪ Factibles No-Racionales: puntos que están por “arriba” de la curva Pareto pero que exceden el
tiempo máximo y/o el costo máximo. Estas decisiones son irracionales.
▪ No-factibles: puntos que están por “debajo” de la curva Pareto y corresponden a soluciones atractivas pero que no pueden obtenerse, por ejemplo no es posible obtener una solución de costo
y de tiempo mínimo.
Co
st
($)
Minimum Time
MaximumCost
MinimumCost
PARETO CURVE OF EFFICIENT DECISIONS
Unfeasible Solutions
Time (Days)
CPApa = CFpa(TFPXpa) = COST VS. EXECUTION TIME Function
Maximum Time
CPApa
TFPXpa
+
Rational Feasible Solutions
+Inefficient
Solution
More Efficient Solutions
Para problemas continuos y convexos, CFpa() cumple con las siguientes características: continua,
derivada negativa y creciente, y doblemente diferenciable.
Si se dispone de CFpa() para todas los trabajos civiles que hacen parte de la obra civil, el problema
CPM-VD-OCoc que coordina óptimamente la obra civil oc se formula con base las funciones CFpa() esto es:
{COCoc, TFOXoc} =
CPM-VD-OC(oc|TIOXoc): =
{ Min COCoc = paPOC(oc) CPApa |
TIOXpa ≥ TFOXpp paPOC(oc) ppPNT(pa)
TFOXoc ≥ TFPXpa paPOC(oc)
PROJECT MANAGEMENT OPTIMIZATION
14
CPApa = CFpa(TFPXpa) paPOC(oc)
}
En casos reales CFpa() no se conoce y por lo tanto se puede estimar a partir de su definición: con base en el problema CPM-VD-PApa(TFPXpa), parametrizado en el tiempo de ejecución del trabajo civil
TFPXpa.
CFpa(TFPXpa) = CPM-VD-PApa(TFPXpa): =
{ Min CPApa = re CRECre,pa ASIpa,ac,re DURpa,ac |
{ASIpa,ac,re, DUR pa,ac, TIN pa,ac, TFI pa,ac}pa(TFPXpa)
}
donde {ASIpa,ac,re, DUR pa,ac, TIN pa,ac, TFI pa,ac}pa(TFPXpa) representa la zona de factibilidad del
problema.
El problema CPM-VD-PApa(TFPXk
pa) se puede resolver para una serie de Kpa valores de TFPXkpa
(k=1,2,3, … Kpa) y con base en las soluciones óptimas generar información de CFpa(). A continuación
se consideran dos alternativas para este proceso. En cualquiera de los dos casos, si la cantidad de puntos Kpa tiende a infinito la representación de CFpa() es exacta.
2.2.3.2.1. INNER LINEARIZATION
A partir de los problemas CPM-VD-PApa() es posible obtener valores de la función CFpa() con base en la solución primal de las variables {CPAk
pa, TFPXkpa}.
CFpa() puede aproximarse con base en una linealización a trozos que une los puntos conocidos {CPAk
pa,
TFPXkpa}. Esta aproximación es interior a la curva (inner linearization) e implica una sobre-estimación
de CFpa(); en la medida que aumente la cantidad de puntos Kpa la sobre-estimación es menor.
Minimum Time
MinimumCost
PARETO CURVE OF EFFICIENT DECISIONS
CPApa = CFpa(TFPXpa) = COST VS. EXECUTION TIME Function
Maximum Time
CPApa
TFPXpa
+
Inner Approximation
+
+
++
+
MaximumCost
Co
st
($)
Time (Days)
La aproximación lineal para un trabajo civil pa puede escribirse como una combinación lineal convexa de los puntos conocidos que se puede expresar como
CPApa = k=1,Kpa l
kpa CPAk
pa
TFPXpa = k=1,Kpa lk
pa TFPXkpa
k=1,Kpa lk
pa = 1
PROJECT MANAGEMENT OPTIMIZATION
15
donde lkpa representa multiplicadores asociados a cada punto conocido.
Con base en todas las aproximaciones de CFpa() para paPOC(oc), el problema aproximado de
optimización de la construcción de la obra civil oc se puede escribir como
{COCoc, TFOXoc} =
CPM-VD-OC(oc|TIOXoc): =
{ Min COCoc = paPOC(oc) CPApa |
TIOXpa ≥ TFOXpp paPOC(oc) ppPNT(pa)
TFOXoc ≥ TFPXpa paPOC(oc)
CPApa = k=1,Kpa lk
pa CPAkpa paPOC(oc)
TFPXpa = k=1,Kpa lk
pa TFPXkpa paPOC(oc)
k=1,Kpa lk
pa = 1 paPOC(oc)
}
donde los valores lkpa son determinados por el problema de optimización. Para una representación
apropiada se requiere que solo dos multiplicadores lkpa sean diferentes de cero y que estos estén
asociados a puntos contiguos. Dado que la aproximación interior sobre estima la función convexa esta condición se cumplirá automáticamente en el problema de optimización.
A partir de una cantidad mínima de puntos, en este caso 2 (los dos extremos), es posible comenzar un proceso iterativo que genere inteligentemente información de CFpa(); para ello denominamos TFPXk
pa
la k-ésima solución al problema CPM-VD-OC(oc|TIOXoc):, y si este valor no coincide para alguno de los k-1 puntos TFPXk
pa conocidos, es posible mejorar la aproximación de CFpa() resolviendo el problema
CPM-VD-PApa(TFPXkpa): para todas los trabajos civiles paPOC(oc).
CIVIL WORKPARTS(CWP)
CIVIL WORK
LARGE-SCALE OPTIMIZATION – CIVIL WORK OPTIMIZATION
CIVIL WORK COORDINATOR
CPM-VD-OCoc(TIOXoc)
CWPCOORDINATOR
CPAk+1pa
=CPM-VD-PApa
(TIPXkpa):
CWPCOORDINATOR
CPAk+1pa
=CPM-VD-PApa
(TIPXkpa):
CWPCOORDINATOR
CPAk+1pa
=CPM-VD-PApa
(TIPXkpa):
CWPCOORDINATOR
CPAk+1pa
=CPM-VD-PApa
(TIPXkpa):
TIPXkpaCPAk+1
pa
El proceso iterativo implica:
1. El coordinador de las obra civil determina los tiempos de construcción 2. Los subproblemas para cada trabajo civil determinan el costo de construcción
3. En cada iteración en el coordinador se deben incluir variables asociadas a los multiplicadores lk+1pa
4. La inclusión de la nuevas variables en el coordinador implica la pérdida de optimalidad la cual se
puede recuperar a partir de la solución anterior utilizando un algoritmo primal-simplex 5. La variación (TFPXk+1
pa - TFPXkpa) implica la pérdida de la factibilidad la cual se puede recuperar
a partir de la solución anterior utilizando un algoritmo dual-simplex
PROJECT MANAGEMENT OPTIMIZATION
16
La metodología descrita es equivalente al Principio de Descomposición de Danzig-Wolfe y a los procesos de generación de columnas para resolver problemas de gran tamaño. Estos enfoques permiten la
generalización de la metodología descrita.
2.2.3.2.2. OUTER LINEARIZATION
A partir de los problemas CPM-VD-PApa() es posible obtener valores de la derivada
kpa = CFpa(TFPXk
pa)/TFPXkpa
de la función CFpa() con base en la solución dual, kpa,ac, de las restricciones
TFPXpa ≥ TFIpa,ac paPOC(oc) acACT(pa)
kpa se calcula como
kpa = Maxac(k
pa,ac)
kpa define el valor de la pendiente de la recta tangente en el punto {CPAk
pa, TFPXkpa}. CFpa() puede
aproximarse con base en las líneas tangentes en los puntos conocidos lo que corresponde a una linealización a trozos exterior a la curva (outer linearization) e implica una sub-estimación de CFpa(); en
la medida que aumente la cantidad de puntos Kpa la sub-estimación es menor.
Cost ($)
Minimum Time
MinimumCost
PARETO CURVE OF EFFICIENT DECISIONSOuter Approximation
CPApa = CFpa(TFPXpa) = COST VS. EXECUTION TIME Function
Maximum Time
CPApa
TFPXpa
+
+
+
++
+
MaximumCost
Co
st
($)
Time (Days)
La aproximación lineal (envolvente) alrededor de un punto {CPAkpa, TFPXk
pa} para un trabajo civil pa se puede expresar como
CFpa(TFPXpa) ≥ CPApa = CPAkpa - k
pa (TFPXpa - TFPXkpa)
Si se consideran conjuntamente todos los puntos se debe cumplir
CPApa ≥ CPAkpa - k
pa (TFPXpa - TFPXkpa)
paPOC(oc) k{1,Kpa}
Con base en todas las aproximaciones de CFpa() para paPOC(oc), el problema aproximado de
optimización de la construcción de la obra civil oc se puede escribir como
PROJECT MANAGEMENT OPTIMIZATION
17
{COCoc, TFOXoc} = CPM-VD-OC(oc|TIOXoc): =
{ Min COCoc = paPOC(oc) CPApa |
TIOXpa ≥ TFOXpp paPOC(oc) ppPNT(pa)
TFOXoc ≥ TFPXpa paPOC(oc)
CPApa ≥ CPAkpa - k
pa (TFPXpa - TFPXkpa) TFPXpa paPOC(oc) k{1,Kpa}
}
La formulación anterior implica que por cada iteración del proceso se debe incluir una restricción (plano
cortante) que mejora la representación de CFpa().
CIVIL WORKPARTS(CWP)
CIVIL WORK
LARGE-SCALE OPTIMIZATION – CIVIL WORK OPTIMIZATION
CIVIL WORK COORDINATOR
CPM-VD-OCoc(TIOXoc)
CWPCOORDINATOR
CPAk+1pa
=CPM-VD-PApa
(TIPXkpa):
CWPCOORDINATOR
CPAk+1pa
=CPM-VD-PApa
(TIPXkpa):
CWPCOORDINATOR
CPAk+1pa
=CPM-VD-PApa
(TIPXkpa):
CWPCOORDINATOR
CPAk+1pa
=CPM-VD-PApa
(TIPXkpa):
TIPXkpaCPAk+1
pa
El proceso iterativo implica: 1. El coordinador de las obra civil determina los tiempos de construcción
2. Los subproblemas para cada trabajo civil determinan la pendiente de CFpa() en TFPXkpa
3. En cada iteración en el coordinador se deben incluir un plano cortante que ayude a representar
CFpa() con base en la derivada de la función 4. La inclusión de planos cortantes en el coordinador implica la pérdida de factibilidad la cual se puede
recuperar a partir de la solución anterior utilizando un algoritmo dual-simplex
5. La variación (TFPXk+1pa - TFPXk
pa) implica la pérdida de la factibilidad la cual se puede recuperar a partir de la solución anterior utilizando un algoritmo dual-simplex
La metodología descrita es equivalente a la teoría de Partición de Benders para resolver problemas de
gran tamaño. Este enfoque permite la generalización de la metodología descrita.
2.2.3.3. SISTEMA EXPERTO
Un aspecto importante del modelado de sistemas complejos es la presunción de que la optimización debe realizarse en una sola pasada, en la que el modelo de optimización comienza desde cero y alcanza
el óptimo en una corrida; pero se debe tener en cuenta que en muchos casos, el tiempo disponible es
insuficiente para resolver el complejo problema con la precisión requerida.
Esto era válido cuando la capacidad de procesamiento y las capacidades de RAM y disco eran un recurso escaso, lo que no es cierto hoy en día. Hoy en día es posible tener capacidad disponible de procesamiento
en una computadora inactiva, o se puede alquilar a un bajo costo, esto implica el cambio del concepto de empezar desde cero, al de preprocesamiento antes de que el modelo matemático sea necesario
(tiempo off-line).
PROJECT MANAGEMENT OPTIMIZATION
18
La idea básica es que las aplicaciones de optimización en tiempo real nunca optimizan desde cero, quizás
esto ocurra la primera vez, pero una vez iniciado el uso de una aplicación de optimización se puede concebir un proceso permanente de re-optimización que puede ocurrir en cualquier momento. Este
hecho implica crear una base de datos para almacenar los resultados de optimización para su uso en el
futuro (Optimization Expert System: Knowledge of Previous Optimization Process, OES-KOP).
OES-KOP es la forma de capitalizar la experiencia adquirida en el proceso de optimización anterior, de modo que cada nueva optimización comienza leyendo los conocimientos almacenados en la base de
datos. La base de datos puede estar en un disco o en memoria RAM, y la optimización "siguiente" se producirá en el siguiente segundo o en siguiente día o ... ; es un concepto general. OES-KOP puede
contener tres tipos de información:
1. Puntos de inicio: seleccionar el punto de inicio en función del historial de corridas y tener en cuenta
las diferencias con la nueva ejecución. La idea más fácil es utilizar el punto óptimo de la última carrera como punto de partida para la siguiente. Esto ya se utiliza en muchas matemáticas utilizadas
en problemas complejos de la vida real.
2. Planos cortantes (primales o duales) que restringen la zona de optimalidad en función de las
ejecuciones anteriores del modelo, es aplicable a todas las metodologías de optimización a gran escala que se basan en planos de corte o generación de columnas.
3. Envolvente convexo (o no convexo, convex-hull) óptimo que sintetiza el comportamiento óptimo de
las partes de un sistema complejo (subsistemas), haciendo que el modelo integrado sea más "ligero".
OPTIMIZATION
INFORMATIONSYSTEM
Min t j h CTt(GTjth)
Subject to:
GDzth - uTN(z) LDuzth = 0
GDzth + GHAzth + DEFzth = DEMzth
ENuth - jL1(u) GTEjuth
- vL2(u) LLvuth = 0
OPTIMIZATIONN
Min t j h CTt(GTjth)
Subject to:
GDzth - uTN(z) LDuzth = 0
GDzth + GHAzth + DEFzth = DEMzth
ENuth - jL1(u) GTEjuth
- vL2(u) LLvuth = 0
OPTIMIZATIONN+1
KNOWLEDGEDATABASE
CUTTING PLANES
CONVEXHULLS
Sets & Parameters Read(N+1)
Primal & Dual Variables
Optimal Solutions
Primal & Dual Variables
Sets & Parameters Read
(N)
OPTIMIZATION EXPERT SYSTEM: KNOWLEDGE OF PREVIOUS OPTIMIZATION PROCESS
Optimal Solutions
En este caso la información central que se debe almacenar son las siguientes variables: ▪ TFPXk
pa: Tiempo de ejecución del trabajo civil pa en la iteración k
▪ CPAkpa: Costo de ejecución del trabajo civil pa en la iteración k
▪ kpa: Derivada del costo con respecto al tiempo de ejecución (variable dual) de la partida pa en la
iteración k
PROJECT MANAGEMENT OPTIMIZATION
19
3. SISTEMA DE INFORMACIÓN
El sistema de información presentado corresponde al modelamiento del sistema vasco y no incluye los conceptos avanzados.
3.1. ENTIDADES Y TABLAS MAESTRAS Las entidades y tablas maestras utilizadas en los modelos son:
ENTIDADES Y TABLAS MAESTRAS
CÓDIGO ENTIDAD DESCRIPCIÓN TABLA
MAESTRA CAMPO
RELACIONAL TIPO
ACT Actividad Actividad que hace parte del proyecto. MAE_ACT COD_ACT C
REC Recurso Recursos necesarios para realizar la actividad. MAE_REC COD_REC C
A continuación se presenta un screen-shot de la tabla maestra de actividades de un proyecto.
A continuación se presenta un screen-shot de la tabla maestra de recursos de un proyecto.
PROJECT MANAGEMENT OPTIMIZATION
20
3.2. TABLAS SECUNDARIAS
Las tablas secundarias utilizadas en los modelos son:
TABLAS SECUNDARIAS
TABLA DESCRIPCIÓN
ACT_ACT Actividad, con sus respectivas actividades precedentes si es que las tiene.
ACT_REC Recursos necesarios para cada actividad relacionados con la cantidad mínima del recurso (tiempo máximo actividad) y la razón de disminución del tiempo si se aumenta la cantidad de recurso (Duración actividad / Recurso)
ESC_ACT Contiene el tiempo máximo y mínimo para cada actividad.
ESC_REC Cantidad de recursos totales para realizar el conjunto de actividades.
A continuación se presenta un screen shot de la tabla secundaria que define las precedencias entre actividades.
PROJECT MANAGEMENT OPTIMIZATION
21
A continuación se presenta un screen-shot de la tabla secundaria que establece las relaciones entre actividades de un proyecto.
3.3. CAMPOS DE TABLAS
La tabla de los campos de las tablas contiene la siguiente información:
TABLA DE CAMPOS DE TABLAS (DDBAS)
COLUMNA DESCRIPCIÓN
TABLA Código (nombre) Tabla
CAMPO Código del campo; por defecto se asumen códigos hasta de diez (10) caracteres
DESCRIPCIÓN Descripción del contenido del campo, que se utiliza en la generación automática de prototipos y en los títulos de las ventanas cuando se accede a la información en modo forma.
UNI Código de la unidad de medida
LON Longitud del campo.
DEC Número de decimales del campo (para campos numéricos)
Los campos de las tablas de datos de los modelos son:
TABLA CAMPO DESCRIPCIÓN TIPO LONGITUD DECIMAL
CAMPOS
QUE SE
DEBEN
LLENAR
ACT_ACT COD_ACT Código Actividad C 15 0 Si
COD_ACT1 Código Actividad Precedente C 15 0 Si
ACT_REC
COD_ACT Código Actividad C 15 0 Si
COD_REC Código Recurso C 15 0 Si
CRA_MIN Cantidad Mínima de Recurso Para Actividad N 6 2 Si
PEN_CRA Razón Duración Actividad / Recurso N 6 2 Si
ESC_ACT
COD_ACT Código Actividad C 15 0 Si
ACT_TMA Tiempo Máximo Actividad N 6 2 Si
ACT_TMI Tiempo Mínimo Actividad N 6 2 Si
ESC_REC COD_REC Código Recurso C 15 0 Si
REC_INV Inventario Recursos N 6 2 Si
MAE_ACT
COD_ACT Código Actividad C 15 0 Si
DES_ACT Descripción de la Actividad C 100 0
TIPO Tipo C 3 0 Si
MAE_REC
COD_REC Código Recurso C 15 0 Si
DES_REC Descripción Recurso C 100 0
TIPO Equipo - > EQ, Mano de Obra - > MO, IN - > Insumo C 15 0 Si