APLICACIONES DE LAS REDES DE PETRI EN · PDF fileAPLICACIONES DE LAS REDES DE PETRI EN...
Transcript of APLICACIONES DE LAS REDES DE PETRI EN · PDF fileAPLICACIONES DE LAS REDES DE PETRI EN...
APLICACIONES DE LAS REDES DE PETRI EN ADMINISTRACION DE PROYECTOS
ING. PEDRO FERNANDO GIFFUNI SALAZAR
Trabajo de grado presentado como requisito parcial para optar al título de Magister en Administración.
Director CARLOS JULIO CORTÉS R. Ingeniero Mecánico, M. Sc.
UNIVERSIDAD NACIONAL DE COLOMBIA FACULTAD DE CIENCIAS ECONOMICAS
MAESTRIA EN ADMINISTRACION SANTAFÉ DE BOGOTÁ, D.C.
1999
ii
“APLICACIÓN DE LAS REDES DE PETRI EN LA ADMINISTRACIÓN DE PROYECTOS”
Nota de Aceptación PROF. ASTRID MARTINEZ Coordinadora de la Maestría en Administración. ING. CARLOS JULIO CORTES Director del Proyecto. Jurado Jurado
Santafé de Bogotá D.C., Noviembre 1999
ii
TABLA DE CONTENIDOS
INTRODUCCION 7
1. LA ADMINISTRACIÓN POR PROYECTOS 11
1.1 ORGANIZACIÓN POR FUNCIONES 12
1.2 ORGANIZACIÓN POR PRODUCTOS 13
1.3 ORGANIZACIÓN POR PROYECTOS 14
1.4 PROBLEMÁTICA DEL MANEJO DE PROYECTOS 16
2. METODOLOGÍAS TRADICIONALES PARA ADMINISTRACIÓN DE PROYECTOS 18
2.1 CONCEPTOS BÁSICOS DE REDES PARA PROYECTOS 18
2.1.1 Proyecto. 18
2.1.2 Administración de un proyecto. 19
2.1.3 Especificación de un proyecto. 19
2.1.4 Modelo del proyecto. 19
2.1.5 Complejidad de un proyecto. 19
2.1.6 Descomposición en base a los procesos. 21
2.2 REDES DE ACTIVIDADES 23
2.2.1 Redes CPM: el método de la ruta crítica. 26
2.2.2 Redes PERT. 27
2.2.3 Variaciones sobre las redes tradicionales. 28
2.3 CONSIDERACIONES PRÁCTICAS 29
iii
3. REDES DE PETRI 33
3.1 CONCEPTOS ESENCIALES DE REDES 33
3.1.4 Conjuntos Pre y Post: conflictos de estados. 35
3.1.5 Habilitación de recursos: conflicto de transiciones. 36
3.1.6 Alcanzabilidad y pasos. 37
3.1.7 Redes puras, redes simples. 38
3.1.8 S-grafos, T-grafos y red de elección libre. 39
3.1.9 Subredes, S-Vectores, T-Vectores. 40
3.2 TIPOS FUNDAMENTALES DE REDES DE PETRI 41
3.2.1 Redes CE. 41 3.2.1.1 Definición de red CE. 42 3.2.2.2 Interpretación de una red CE. 43
3.2.2 Redes PT o Place/Transition. 45 3.2.2.1 Definición de una red PT. 45 3.2.2.2 Propiedades de las redes PT. 47 3.2.2.3 Matriz de incidencia. 50 3.2.2.4 Grafo de Alcanzabilidad. 51 3.2.2.5 Viveza, estados de detención y estados de hogar. 52 3.2.2.6 Conservación de recursos y reproducción de estados. 54
3.2.3 Variantes sobre las redes de Petri tradicionales. 57 3.2.3.1 Redes Coloreadas CPN. 58 3.2.3.2 Redes temporizadas TPN y estocásticas GSPN. 59 3.2.3.3 Redes Petri de alto nivel, HLPN. 59 3.2.3.4 Redes Difusas de Petri. 60
4. APLICACIONES DE LAS REDES DE PETRI EN PROYECTOS 61
4.1 ANÁLISIS INDEPENDIENTE DEL TIEMPO 61
4.2 MODELAMIENTO BASADO EN PROCESOS 65
4.3 MODELAMIENTO EN BASE A REDES DE ACTIVIDADES 68
4.4 MODELO GENERAL PARA REPRESENTACIÓN DE PROYECTOS 70
CONCLUSIONES 73
iv
ANEXO: LAS REDES DE PETRI EN INTERNET 78
LISTA DE FIGURAS
Número Página Figura 1. Estructura basada en funciones 12 Figura 2. Estructura basada en productos 13
Figura 3. Estructura basada en proyectos 15
Figura 4. Descomposición en Procesos de un Proyecto 24
Figura 5. Representación de un proyecto sencillo con redes de actividades 25
Figura 6. Ejemplo de representación de una red 35
Figura 7. S-grafo 39
Figura 8. T-grafo 40
Figura 9. Red que no es de elección libre 40
Figura 10. Ejemplo de una red CE 45
Figura 11. Ejemplo de una red PT antes y después de dos pasos de simulación. 50
Figura 12. Arbol de alcanzabilidad para la red de la figura 11 52
Figura 13. Red sin estados de detención que no esta viva. 54
Figura 14. S-grafos y T-grafos 55
Figura 15. Red que no es estrictamente S-subred o T-subred 56
v
AGRADECIMIENTOS
El autor expresa sus agradecimientos a:
MARCO ALDEMAR y NELSON DIAZ, Ingenieros Mecánicos de la Universidad Nacional.
WEI DENG de la Universidad Noruega de Ciencia y Tecnología.
ANDRÉS DÍAZ Físico la Universidad Nacional y candidato a Ph. D. en Ingeniería Eléctrica de
Penn State University.
CARLOS JULIO CORTES, Ingeniero Mecánico M. Sc. de la Universidad Nacional y director de
la investigación.
vi
GLOSARIO DE SIMBOLOS UTILIZADOS
{ } Notación de conjuntos.
∅ Conjunto vacío.
x ∉A x es un elemento del conjunto A
R = {x | x es un número real}
El conjunto de los números reales.
R X R El conjunto de pares ordenados de números reales.
⊆ Inclusión de conjuntos.
⊂ Inclusión propia.
∪ Unión de conjuntos.
∩ Intersección de conjuntos
\ Diferencia entre conjuntos.
P →q Implicación: si p entonces q.
∀x Para todo x.
∧ Operación lógica “y”
∨ Operación lógica “o”
// S // Número de elementos en el conjunto S.
INTRODUCCION
La gerencia de proyectos nació con la administración misma: en los primeros años de la sociedad
Taylorista se sentaron las bases que hoy en día rigen esta forma de trabajo. Con la natural
especialización de la administración, y una constante agregación teórica por parte de otras
disciplinas, la ingeniería y la administración tomaron caminos separados.
La formalización de la administración ha traído grandes ventajas, sin embargo la división del
conocimiento también ha dificultado el intercambio de conocimientos. La teoría básica de la
gerencia de proyectos ha seguido esta tendencia: pese a que usamos computadoras muy
sofisticadas para planear proyectos, los métodos que usamos se han mantenido prácticamente
inmodificados en los últimos 30 años.
Es claro que con los cambios en la coyuntura económica las empresas, y en general todas las
organizaciones, han desarrollado nuevas necesidades. La gerencia de proyectos requiere hoy en
día una mayor celeridad en la toma de decisiones y mayor habilidad en el manejo de recursos.
8
La unión de estas dos necesidades, mantener el flujo tecnológico de la ingeniería a la
administración y los nuevos requerimientos que aparecen con el manejo de proyectos, nos llevó a
plantear la investigación de la teoría de proyectos desde la perspectiva de una herramienta propia
de la ingeniería moderna: las redes de Petri.. C. A. Petri1 introdujo las redes de Petri a principios
de los años 60, como un a herramienta gráfica para modelar sistemas distribuidos, y en particular
nociones de concurrencia, no-determinismo, comunicación y sincronización. Las redes de Petri
han cobrado importancia en los últimos años por su relevancia en la simulación de elementos
microelectrónicos y algoritmos de computación.
A pesar de diversos avances en el modelamiento de procesos productivos con estas redes, al
comenzar la investigación se esperaba tener poca información por lo que se planteó una
metodología en la cual se exploraba el potencial de la herramienta y se hacía una comparación
entre las diversas herramientas existentes. Esta metodología tuvo que ser cambiada en el
proceso: a medida que se fue avanzando en la investigación, se encontró que el modelamiento
con esta herramienta es completamente distinto al modelamiento tradicional por lo que es muy
difícil realizar comparaciones.
Inicialmente se estudia la importancia de la organización orientada por proyectos en la empresa.
Solo al proveer una visión de conjunto de la organización, y su relación con los proyectos, se
1 Kommunikation mit Automaten. Petri, C.A., Bonn: Institut für Instrumentelle Mathematik, Schriften des IIM Nr. 2, 1962, Second
Edition:, New York: Griffiss Air Force Base, Technical Report RADC-TR-65--377, Vol.1, 1966, Pages: Suppl. 1, English translation
9
puede comprender la importancia del desarrollo por proyectos para las organizaciones que se
desenvuelven en un clima cambiante.
En el segundo capitulo realizamos una revisión de los métodos tradicionales de administración
de proyectos. Si bien no pretendemos restar validez a estos métodos es muy importante recordar
como funcionan, para qué fueron creados y, sobretodo, considerar sus limitaciones.
En el capitulo 3 abordamos la teoría fundamental de nuestra nueva herramienta: las redes de
Petri. Iniciamos por unas definiciones esenciales dentro de un marco sistémico general y
desarrollaremos la teoría completa hasta comentar las diversas variantes de redes de Petri. Es
importante observar que el tema no es difícil, sin embargo se requiere un conocimiento previo de
teoría de conjuntos para entender el carácter formal de la herramienta.
En el último capitulo se exploran plenamente la potencialidad de las redes de Petri en la
administración de proyectos. Si bien no se entra en los detalles de cada modelamiento, se
observan ejemplos de aplicación de esta herramienta y se plantean nuevos conceptos que
constituyen el eje fundamental para futuros desarrollos.
10
Si bien el software específico con que se modelan las redes de Petri no es relevante para esta
investigación, tener algún programa de simulación es una excelente experiencia didáctica. En el
anexo se hace referencia a algunas herramientas disponibles gratuitamente en Internet.
1. LA ADMINISTRACIÓN POR PROYECTOS
Las organizaciones2 se caracterizan por presentar una jerarquía, usualmente en forma de cadena
de mando, y una distribución de la inteligencia, representada en la especialización de funciones.
La estructura organizacional de una empresa debe seleccionarse de tal forma que pueda
reaccionar de una manera óptima al ambiente que la rodea; de esto depende la supervivencia
misma de la empresa.
Dentro de las estructuras organizacionales adoptadas por las empresas, podemos identificar tres
tipos básicos3:
§ Empresas organizadas de acuerdo a las funciones que realizan.
§ Empresas organizadas por los productos que distribuyen.
§ Empresas organizadas para trabajar por proyectos.
2 MENARD Claude, Economía de las Organizaciones, Editorial Universidad Nacional, Bogotá 1990, p. 35
3 Basado en las notas de la asignatura Gerencia de Proyectos con el profesor Julio Mario Rodríguez de la Facultad de Ingeniería de la Universidad Nacional en 1996.
12
Cada uno de estos tipos estructurales tiene objetivos distintos y por tanto presentan ventajas y
desventajas entre si. En muchos casos también es posible encontrar estructuras híbridas
resultantes de una combinación de estos tres tipos básicos.
1.1 ORGANIZACIÓN POR FUNCIONES
En una empresa organizada por funciones, la jerarquía usualmente corresponde a las funciones
que debe realizar cada grupo de la empresa: producción, mercadeo, contabilidad, recursos
humanos, etc. El objetivo de esta estructura es proveer una base estable y eficiente para el
desarrollo de la empresa.
Fuerzade
Ventas
G erencia
M ercados P r oduccion F inanzas ComprasR ecursos
Humanos
Vendedor es
P ersonal
Aux i l i a r
Obreros
Figura 1. Estructura basada en funciones
13
Estas organizaciones presentan una división efectiva de las funciones con una consecuente
especialización en todos los niveles de la empresa, sin embargo, también es usual encontrar que
cada miembro de la organización considera su división como la más importante de la empresa.
Cuando una empresa con este tipo de organización enfrenta una crisis se puede generar tanto
ruido interno que cada división termina acusando a las demás del fracaso.
1.2 ORGANIZACIÓN POR PRODUCTOS
En las empresas estructuradas por productos es común encontrar divisiones dedicadas a manejar
de manera centralizada un producto o una familia de productos especifica. El objetivo de esta
estructura es el de responder adecuadamente a las necesidades del cliente. Si bien las necesidades
del cliente pueden variar de acuerdo a la zona geográfica o al tiempo, este método de división
permite a la empresa dar una atención más dinámica y por lo tanto puede responder mejor al
cambio.
P roducto I P roducto II
Fuerzade
V entas I
P roducto III P roducto IV
G erencia
Compra s I
V endedor es
I
O breros 1
F inanzasR ecursos
Humanos
P ersonal
A u x i l i a rM ercados I
P roduccion I
Figura 2. Estructura basada en productos
14
Debido al manejo integral que da cada división al problema, en estas organizaciones los
individuos o divisiones no se culpan entre si de los errores que se cometen, pero existe una
tendencia a desaprovechar los recursos de la empresa ya que terminan existiendo departamentos
con funciones similares para productos distintos. No es normal encontrar empresas con este
tipo de estructura implementada de manera estricta: casi siempre algunos departamentos
cumplen funciones globales y se reportan a la alta gerencia mientras se administran de manera
independiente.
1.3 ORGANIZACIÓN POR PROYECTOS
Los nuevos esquemas de contratación y las necesidades generadas por las políticas de outsourcing
en diversas empresas han hecho necesaria la formación de grupos de trabajo que realicen
funciones específicas por un tiempo determinado.
Algunas empresas han optado por una estructura distinta que facilita la distribución de recursos.
A diferencia de las estructuras anteriores, la estructura usada para empresas centradas en
proyectos no es arborescente sino más bien matricial. En esta nueva estructura la jerarquía es
mucho mas débil que en las dos anteriores: los talleres o divisiones con recursos especializados
15
deben atender a cada proyecto, lo cual hace mucho más difícil la coordinación entre los diversos
elementos del equipo.
Si bien aún no hemos definido lo que es un proyecto, de nuestra noción empírica es fácil
entender que cuando se manejan proyectos se requiere un dinamismo mayor en el momento de
tomar decisiones y asignar recursos. Esta estructura permite un mejor aprovechamiento de los
recursos disponibles, sin embargo la organización debe conocer bien su capacidad para evitar
sobrecargar algunos departamentos. El problema de la asignación de recursos para este
problema particular se ha estudiado desde la perspectiva de la investigación de operaciones4, pero
aún es un campo activo de investigación.
4 HARRIS G. D. HAGGARD M. J. y LESSO W. G., Computer Models in Operations Research. Harper & Row, Nueva York, 1974.
R ecurso A
P royecto I
T iempo IA
T iempo I C
P royecto II
T iempo II B
P royecto III
T iempo IIIA
T iempo III BR ecurso B
R ecurso C
Figura 3. Estructura basada en proyectos
16
1.4 PROBLEMÁTICA DEL MANEJO DE PROYECTOS
Muchas empresas que trabajan en base a requerimientos de tiempo de entrega adoptan una de las
estructuras anteriores y manejan todas sus funciones como si fueran proyectos. No todas las
funciones de una empresa pueden clasificarse como proyectos, sin embargo, aun en los casos en
que si se puede dar este tratamiento a la tarea especifica, esta estrategia tiene complicaciones que
la administración tradicional no contempla:
§ Cada proyecto requiere recursos, tecnologías y en algunos casos personal distinto; ningún
proyecto es igual al anterior.
§ Si una división o individuo queda comprometida a llevar a adelantar varios proyectos a la vez,
su eficiencia disminuirá notablemente porque tendrá que dividir su tiempo y recursos entre
los distintos proyectos, con la correspondiente pérdida de continuidad en el trabajo
§ Los proyectos son dinámicos: pese a que se realice una planeación y un seguimiento es poco
común que los proyectos se terminen a tiempo o con el presupuesto planeado.
§ Si dos divisiones requieren del mismo recurso para proyectos distintos, habrá un conflicto en
el momento de distribuir el recurso de acuerdo a la importancia de cada proyecto.
§ Una vez solucionado el punto anterior, el empleado responsable del recurso puede quedar
respondiendo ante dos, o más, jefes distintos.
De las tres estructuras mencionadas anteriormente, la más adecuada para el trabajo por proyectos
es la descrita en la numeral 1.3; a esta estructura se le denomina funcional cruzada o simplemente
17
organización matricial. Ford y Randolf5 hacen un recuento de ésta metodología en el cual comentan
que ésta ha sido poco estudiada por los académicos a pesar de ser usada ampliamente. Plantean
también el siguiente listado de ventajas y desventajas:
Ventajas Desventajas
§ Mejoras en el procesamiento de la información, gracias a los canales horizontales que no considera la teoría burocrática convencional.
§ Disponibilidad de recursos para nuevas oportunidades.
§ Mejoramiento de las capacidades individuales.
§ Perfección técnica en el producto final.
§ Violación de la reglas administrativas tradicionales de mando único y relación directa entre responsabilidad y autoridad.
§ Conflicto sobre el uso de los recursos.
§ Mayores costos organizacionales.
§ Disminución en la respuesta a cambios abruptos de demanda, especialmente en casos de empresas multinacionales.
En el estudio de Ford y Randolf se encuentra que las organizaciones adoptan una estructura
matricial por un proceso evolutivo de acuerdo a las necesidades que desarrollan.
Las dificultades más grandes en este tipo de estructura se deben a la mayor complejidad
organizacional al distribuir los recursos entre varios proyectos y a la diferencia cultural que
implica esta nueva forma de trabajo.
5 FORD Robert C., RANDOLPH W Alan, Cross-functional structures: a review and integration of matrix organization and project management,
En: Journal of Management, Junio 1992 v18 n2 p267.
18
2. METODOLOGÍAS TRADICIONALES PARA ADMINISTRACIÓN DE PROYECTOS
Debido a la diversidad en las metodologías aplicables podemos decir que no existe una
metodología definida para todo tipo de proyecto, el método de solución debe escogerse siempre
de acuerdo a los requerimientos del problema y las características de la metodología presente. Es
importante entender las metodologías que se aplican comúnmente y ver como sus limitaciones
pueden afectar el desarrollo del proyecto.
2.1 CONCEPTOS BÁSICOS DE REDES PARA PROYECTOS
2.1.1 Proyecto. Desde el punto de vista formal un proyecto “es un procedimiento con inicio y
final claros, con objetivos bien definidos, con un costo total y con un cronograma”. 6 En general
los proyectos constan de varias unidades funcionales y comprenden diversas tareas a realizar.
6 Comité PMI, A Guide to the Project Management Body of Knowledge. Project Management Institute, Automated Graphic Systems, Charlote,
USA, 1996,
19
2.1.2 Administración de un proyecto. La aplicación de conocimientos, habilidades,
herramientas y técnicas a las actividades de un proyecto para satisfacer o exceder las necesidades
y expectativas.
2.1.3 Especificación de un proyecto. Contiene los lineamientos básicos por los cuales se debe
regir el proyecto: debe incluir el objetivo y los pasos a seguir para alcanzarlo. En general deben
ser conocidas tanto la situación actual, antes de llevar a cabo el proyecto, y las condiciones bajo
las cuales se concluirá el proyecto.
2.1.4 Modelo del proyecto. Representación abstracta, usualmente en forma gráfica, de las
actividades o procesos que conforman el proyecto. En general el modelo no sólo es una
plataforma sobre la cual se llega a una mejor comprensión del proyecto; también es base sólida
para la toma de decisiones, la coordinación, la predicción, el mejoramiento, e inclusive para una
eventual simulación de los procesos.
2.1.5 Complejidad de un proyecto. Es posible asignar una medida a la complejidad de un
proyecto. Tal indicador puede ser útil, por ejemplo, en la determinación de prioridades durante
el desarrollo de un proyecto en una organización matricial.
20
Deng, Wendt y Rolstadås7. de la Universidad Noruega de Ciencia y Tecnología, plantean que “la
administración de proyectos sufre numerosos problemas debido a la complejidad estática y
dinámica”. Según el modelo que proponen, la complejidad estática resulta de sus elementos
intrínsecos, como el alcance del proyecto, el tiempo disponible, costo y sus relaciones entre
recursos y relaciones mutuas. Es así que:
COMPLEJIDAD ESTÁTICA = ESCALA X (ALCANCE ∩∩ TIEMPO ∩∩ COSTO ∩∩
RECURSOS).
Es posible determinar la complejidad estática antes de realizar el proyecto, ya que comprende
datos que se pueden estimar: duración del proyecto, costo total, etc.
La complejidad dinámica de un proyecto es el resultado de los cambios en un proyecto durante
su ciclo de vida. Aunque estos cambios incluyen alteraciones en los mismos factores que
componen la complejidad estática, los cambios son causados por alteraciones debido a un
número de factores ambientales potenciales8 que se pueden clasificar en los siguientes dos tipos:
• Factores sociales: regulación, relaciones familiares o de parentesco, relaciones laborales y
organizacionales, elementos políticos.
• Factores ambientales: tecnología, desarrollo de la tecnología, competencia, globalización del
mercado, cambios en las expectativas del cliente.
7 DENG Wei, WENDT Almuth y ROLSTADÅS Ashborn. A Set of Modeling Methods for Process-oriented Project Modeling, En:
Management Journal, 1998
8 LIENTZ Bennet P., y REA Kathryn P. Project Management for the 21st Century, Academic Press Inc., 1995
21
Comparados con los factores ambientales, los factores sociales son relativamente estables ya que,
aunque son difíciles de predecir, son más fáciles de detectar. Los factores ambientales están
constantemente interactuando entre sí, de tal forma, que la alteración de elementos políticos
puede causar cambios en el uso y desarrollo de la tecnología. La ejecución de un proyecto puede
afectarse seriamente por combinaciones de estos efectos, por lo que estos factores deben
considerarse sistemáticamente.
2.1.6 Descomposición basándose en los procesos.
Como se comentó en la sección 2.1.4, un modelo de un proyecto es una abstracción del proyecto
real en términos formales que filtra las ideas irrelevantes, desplegando sólo la información
esencial. Para facilitar la obtención de la información crítica del proyecto, así como la
identificación de relaciones entre los distintos componentes de un proyecto recurriremos a una
división funcional basada en los procesos.
En general, todo proceso contiene un numero finito de sub-procesos y estos sub-procesos se
pueden descomponer hasta obtener un nivel de procesos elementales. Los procesos elementales,
a su vez, están constituidos por una serie de actividades.
22
Un ejemplo particular en que se ha normalizado la división de un proceso en varios sub-procesos
es el de la propia gerencia de proyectos. De acuerdo con el Instituto de Gerencia de Proyectos9
un proceso de gerencia de proyectos puede dividirse en nueve sub-procesos como se muestra en
la figura 4., y cada uno de estos sub-procesos, a su vez, consta de otros procesos elementales. En
el caso de la gerencia de integración del proyecto hay tres procesos elementales: desarrollo del
plan de proyecto, ejecución del plan del proyecto, y control de cambios generales.
9 Comité PMI, A Guide to the Project Management Body of Knowledge, Project Management Institute, Automated Graphic Systems,
Charlotte, NC, USA, 1996
R i esgos
In tegrac ión
C ostos
C om u n i cacio
nes
T iempo
R ecursos
H umanos
P ro cu r adu r i a
G erenc ia del P r oyecto
A l cance
C a l i dad
Figura 4. Descomposición en Procesos de un Proyecto
23
2.2 REDES DE ACTIVIDADES
El primer método sistemático para llevar control sobre proyectos fue el diagrama de Gantt10,
bautizado en honor a su creador. Este primer método consistía en enumerar los pasos que se
debían realizar y programar, al lado de cada paso, el tiempo que cada etapa iba a durar dando
fecha de inicio y terminación. Por supuesto, este método debió ser complementado rápidamente
ya que no era fácil, a simple vista, determinar las dependencias entre una tarea y otra: también
era necesario actualizar los itinerarios cada vez que había un retraso.
Con posterioridad a Gantt, se desarrollaron los primeros métodos con redes de grafos dirigidos:
en estos métodos se parte de obtener un diagrama de las tareas que componen el proyecto, de tal
forma que sea más evidente qué tareas se deben realizar antes de las otras.
El modelo de un proyecto tiene un significado matemático que podemos usar con el objetivo de
analizar y sistematizar el avance del proyecto. Al dar una representación gráfica a un proyecto
explícitamente creamos un modelo de este proyecto.
10 CLARK W., The Gant Chart: A Working Tool of Management, 3a Edición, Sir Isaac Pitman & Sons, Londres, 1957
24
Aprovecharemos un ejemplo sencillo propuesto por Anastasia Pagnoni11 para ilustrar las redes de
actividades, siendo las redes CPM y PERT, los métodos más conocidos:
Especificación de Proyecto:
1. Un prototipo de producto deberá pasar por una prueba de rendimiento R, y una prueba
financiera F, antes de ser aprobado para la producción final. Las pruebas R y F se llevaran a
cabo independiente en las localidades LR y LF respectivamente y las pruebas tomarán,
respectivamente, tr y tf unidades de tiempo.
2. En determinado instante de tiempo la documentación necesaria será llevada a los sitios de
prueba. El transmisión de la información tomará, respectivamente sr y sf unidades de tiempo.
3. La decisión de ambas pruebas será tenida en cuenta por quien administra el proyecto para
tomar la decisión de seguir, o no el proceso.
Objetivo: trazar un plan de actividades para que se cumpla la especificación y obtener
información en cuanto a la fecha de culminación del proyecto.
En la representación de un proyecto con grafos dirigidos se concibe un proyecto como una
colección finita de actividades. El grafo dirigido consta de vértices (en el caso de la figura 5 son
cajas) donde confluyen arcos dirigidos que representan las actividades primarias.
11 PAGNONI Anastasia. Project Engineering, Springer Verlag, Nueva York, 1992; p6
25
Podremos diseñar una red de actividades ordinarias si las especificaciones cumplen tres
requisitos:
1. Se da un ordenamiento parcial entre las actividades, expresada como una precedencia en
tiempo.
2. La sincronización de actividades se especifican en una manera consistente con un lógica de
realización AND/AND: un vértice se “realiza” cuando todos los pasos que conducen a él se
han cumplido, y se inicia la siguiente actividad en ese mismo instante.
3. No se requiere toma de decisiones que involucren opciones o alternativas.
Una representación en forma de grafo dirigido es un lenguaje para describir el proyecto y por
tanto no puede ser ambiguo. Las condiciones dos y tres cobrarán especial importancia cuando
discutamos otro tipos de redes.
Prueba R
Prueba F
Enviar LR
Enviar LF
Examinar R
Examinar F
Figura 5. Representación de un proyecto sencillo con redes de actividades
26
2.2.1 Redes CPM: el método de la ruta crítica. El término CPM fue adoptado del inglés
Critical Path Method, y es un método que fue desarrollado en la década de los 1950s Para poder
aplicar CPM12 debemos tener información confiable acerca de los tiempos que demora cada
actividad.
Si bien decíamos que dos proyectos nunca son iguales, la experiencia que se tenga desarrollando
las actividades es un factor definitivo en el funcionamiento de este modelo: entre más se demore
un proyecto mayores serán los costos de mano de obra y los costos de inventario, por lo es
lógico tratar de minimizar el tiempo en que se culmina el proyecto.
En nuestro ejemplo, aplicar el método de la ruta crítica CPM, se limitaría a identificar cual de las
dos ramas de la red se demora más en completarse. El camino más demorado nos definirá cual
es el proceso que rige la terminación exitosa del proyecto. Si al conocer los tiempos
encontramos que:
TR + SR > TF + SF,
y los demás tiempos son despreciables, la ruta critica está dada por el camino entre el inicio, la
evaluación de rendimiento, y la entrega de resultados.
12 WIEST J. D., A Management Guide to PERT/CPM, with GERT/PDM/DCPM and other Networks, 2nd. Ed., Englewood Cliffs,
Prentice Hall, Nueva York, 1997
27
La ruta crítica nos sirve para determinar el mínimo tiempo de entrega del proyecto, pero además
el avance que tengamos sobre la ruta crítica nos indicará que tan avanzado está el proyecto, por
lo que la ruta crítica también puede servirnos de elemento de control.
2.2.2 Redes PERT. El PERT, o Program Evaluation and Review Technique, fue desarrollado de
manera simultánea e independiente del CPM, y soluciona una de las deficiencias más importantes
de este método: la incertidumbre en el tiempo de ejecución de las actividades primarias.
El método PERT toma en cuenta las desviaciones en los tiempos de ejecución explícitamente e
involucra esta información en el modelo del proyecto. Por supuesto, no es común que el
personal del proyecto lleve un registro del tiempo promedio y la varianza con que realiza sus
actividades, por lo que el método recurre un truco: se asume que cada tarea sigue un
comportamiento dado por la función de distribución beta. Esta distribución probabilística tiene
una forma similar a la de distribución normal, sin embargo se diferencia en que no es simétrica
sino que puede tener su media más cercana a alguno de los extremos. Con tres tiempos; el
tiempo optimista, el tiempo pesimista, y el tiempo más probable, es posible estimar el tiempo
promedio y la varianza de cada proceso y, si se desea, también la ruta crítica.
28
En la práctica, el uso del método PERT es un avance13 importante sobre sus pero se debe ser
cuidadoso al usarlo ya si la ruta crítica tiene una varianza alta, llegaremos a conclusiones
equivocadas.
2.2.3 Variaciones sobre las redes tradicionales. Si bien las redes CPM y PERT han sido muy
útiles14 para proyectos de gran complejidad, las limitaciones en el manejo lógico de las redes de
actividades hacen que diversos proyectos no se puedan manejar. Si en algún proyecto tiene que
cumplirse una sola de las condiciones, pero no ambas, necesitaríamos usan una lógica XOR, lo
cual esta fuera del alcance de las redes que hemos usado.
Las GERT15 son redes de actividades “generalizadas”, también llamadas redes de actividad
estocástica. Soportan decisiones lógicas como XOR y OR/AND, siendo mas generales que las
PERT. Recientemente también se han desarrollado las redes VERT16, una técnica de simulación,
con orientación matemática basada en redes, diseñada para analizar riesgos existentes en tres
parámetros: tiempo costo y rendimiento, en proyectos nuevos o ventures.
13 SOROUSH H. M., The Most Critical path in a PERT network, En: Journal of Operation Research Society, vol 45 n.3, 1994, p 287-
300.
14 BENJAMIN A., Critical Patch Methods Used by a Government Works Department and it’s Contractors. En Applications of Critical Path Techniques, J. Brennad Ed., American Elsevier Publishing company, Inc. Gran Bretaña 1968, p 61-89.
15 WIEST J. D. y LEVY F. K., A Management Guide to PERT/CPM: With GERT/PDM/DCPM and Other Networks. Nueva Delhi, India: Prentice-Hall, 1982
16 MOELLER G. L. y DIGMAN L. A., “Operations planning with VERT”, Oper. Res., vol. 29, Julio - Agosto, 1981, no. 4, pp. 676-697
29
La gran desventaja de estas redes, salvo por casos particulares, es que no se pueden analizar
simbólicamente como se hace en las redes CPM y PERT. Cuando se intenta analizar problemas
moderadamente grandes en este tipo de redes la complejidad de la solución obliga a recurrir a
técnicas de simulación combinadas con algoritmos simbólicos. Los paquetes de software para
este tipo de análisis son costosos y difíciles de conseguir.
2.3 CONSIDERACIONES PRÁCTICAS
Pese a la gran utilidad que ha demostrado la administración tradicional de proyectos, existe una
amplia documentación sobre las limitaciones en los métodos tradicionales.
La planeación y ejecución de proyectos se ha considerado un problema de investigación de
operaciones, específicamente uno de optimización. Si decidiéramos seguir este camino,
tendríamos que considerar las condiciones de frontera, que en este caso serían las limitaciones de
recursos, y una función objetivo, que en este caso sería la disminución del costo total del
proyecto, tomando como base casi siempre el tiempo total de ejecución. En un estudio realizado
por Ozdamar y Ulusoy17 se observa la dificultad de modelar proyectos por métodos de
optimización.
17 OZDAMAR y ULUSOY, A survey on the resource-constrained project scheduling problem, IIE Transactions, 1995, n 27, p574-
586
30
En el numeral 2.2.1 se afirmó que la ruta crítica indica el tiempo mínimo necesario para realizar
un proyecto y por tanto se consideró el elemento esencial para medir el avance del mismo y para
controlarlo. Si bien esto es cierto para proyectos sencillos, al ir aumentando la complejidad de
los proyectos encontramos que esto no es cierto: si por efecto de tener ocupados los recursos, o
por descuidos en el desarrollo de ramas aparentemente menos importantes no completamos las
condiciones necesarias, el proyecto puede alargarse más e incluso detenerse.
Con el objetivo de aplicar los principios de la “teoría de la restricciones” en el área los proyectos,
Eliyahu Goldratt18 hace una analogía con los ambientes de producción y encuentra que la ruta
crítica no siempre indica el avance del proyecto. Goldratt llega a definir un nuevo concepto que
denomina la “cadena critica”, que corresponde al camino más demorado que puede seguir un
proyecto cuando se tienen en cuenta las restricciones en recursos.
La limitación más grande, sin embargo, que tiene el uso de los métodos tradicionales es la
inhabilidad del modelo para monitorear el proyecto. Deng, Wendt y Rolstadas19 observan que
los modelos tradicionales presentan las siguientes limitaciones:
18 GOLDRATT Eliyahu. Critical Chain,. Great Barrington : North River Press,1997 , 246 p.
19 DENG Wei, WENDT Almuth y ROLSTADÅS Ashborn. A Set of Modeling Methods for Process-oriented Project Modeling, Management Journal, 1998
31
1. No hay una descripción de los procesos y sus relaciones: si bien a través de los
diagramas tradicionales es posible descomponer el proyecto en sus procesos, no hay una
visión funcional clara de los procesos.
2. No existe una visión integrada del proyecto: falta integración entre el alcance del
proyecto, los recursos y la información.
3. Hay limitaciones en la habilidad de simulación: la simulación llevada a cabo en las redes
tradicionales está orientada a la determinación del calendario del proyecto para que se pueda
cumplir el itinerario pero no se da una representación clara de los recursos disponibles. Bajo
estas condiciones no se puede llevar a cabo una simulación realista del proyecto.
4. Los modelos son deficientes cuando la información que se provee es imprecisa: en
todo proyecto puede ocurrir eventos imprevistos que requieren toma de decisiones. Ninguna
de las técnicas existentes puede tratar este problema.
Ganesh y Kumar20 coinciden en varios puntos al comentar los diversos inconvenientes de los
modelos existentes:
1. Estos modelos no almacenan la información de los eventos que causan el inicio de una
actividad.
2. Ninguno de los métodos expuestos le permite al administrador analizar las razones para un
progreso tardío en las actividades.
32
3. Pese a que casi siempre se utilizan herramientas de computo, los modelos son inadecuados
para regenerar y reprogramar las actividades automáticamente.
4. Los modelos tradicionales no son capaces de representar la interdependencias entre recursos.
5. Estos modelos no dan soporte a estudios en asignación parcial, exclusividad mutua, y
substitución de recursos.
6. Estos modelos no son adecuados para resolver conflictos resultantes de prioridades de
recursos.
7. Estos modelos no pueden soportar estudios sobre los efectos de variaciones en la
disponibilidad de recursos, el tiempo en que cada tipo de recurso adquiere mayor
importancia, y la utilización o inutilización de recursos.
Estas limitaciones hacen necesaria la búsqueda de herramientas mas sofisticadas que
complementen, o de ser posible reemplacen, las herramientas existentes.
20 KUMAR Ashok V. K. y GANESH L. S., Use of Petri Nets for Resource Allocation in Projects, IEEE Transactions on
Engineering Management, Vol. 45 No. 1, Febrero 1998.
3. REDES DE PETRI
3.1 CONCEPTOS ESENCIALES DE REDES
3.1.1 Estado de un sistema. El estado de un sistema representa todos aquellos aspectos que
describen la “posición” completa del sistema en cada instante de tiempo y que son relevantes
para el comportamiento futuro de el sistema21.
3.1.2 Transiciones de Estado. A medida que el tiempo pasa, el sistema puede cambiar las
condiciones que definen su estado, en este caso diremos que se ha sufrido una transición de un
estado a otro.
3.1.3 Redes. Existen diversos tipos de redes y de acuerdo a esto también distintas definiciones:
el enfoque que usaremos tiene como referencia obligada a Anastasia Pagnoni22 ya que presenta
una visión orientada a proyectos.
21 DAELLENBACH Hans G., GEORGE John A., MCNICKLE Donald, Introduction to Operations Research Techniques, Allyn and
Bacon, Boston, 1987, P. 366
34
Las redes son una interconexión de elementos de transición y estados: son grafos dirigidos
bipartitas que poseen una interpretación blanda. Basados en la teoría de conjuntos23 definimos: :
Una red es una tripleta N = (S, T, F) que representa un sistema tal que:
1. S es un conjunto finito cuyos elementos representan elementos de estado, es decir componentes
elementales de estados del sistema. Los elementos que componen a S serán llamados
elementos-S y se representarán gráficamente por medio de círculos.
2. T es un conjunto finito cuyos elementos representan elementos de transición, es decir,
componentes elementales de transiciones de estado. Los elementos de T serán llamados
elementos-T y se representarán gráficamente por medio de cuadrados.
3. F es un conjunto finito de pares ordenados de dos tipos – (elementos-S, elementos-T) y (elementos-T,
elementos-S) – representando conexiones causales. El primer elemento representa un
componente de sistema que es una causa inmediata para el componente representado por el
segundo elemento. F es denominada la relación de flujo de la red y se representa gráficamente
por medio de arcos dirigidos.
Adicionalmente, podemos decir que:
§ S ∩T =∅ y S ∪ T ≠∅
§ El grafo dirigido (S ∪ T, F) es conexo;
22 PAGNONI Anasatasia, Project Engineering: Computer-Oriented Planning and Operational Decision Making, Springer Verlag, Nueva
York, 1990.
23 TRUSS J. K., Discrete Mathematics for Computer Scientists, Addison-Wesley, 1991.
35
§ Cada elemento de la red – S o T – Pertenece a por lo menos un par ordenado en F.
La figura 6 muestra un ejemplo de representación de una red sencilla con tres estados y cuatro
transiciones. Es importante comentar que a pesar de que las dos representaciones de la figura
parecen distintas, las redes son equivalentes ya que según nuestra definición los elementos son
los mismos.
3.1.4 Conjuntos Pre y Post: conflictos de estados.
El pre-conjunto de x es el conjunto de elementos de la red que son entradas de x, el post-conjunto
de x es el conjunto de todos los elementos de red que son salidas del elemento x.
Sea N = (S, T, F) una red, y x un elemento de N. El pre-conjunto de x será el conjunto
A
B C
1 2
3 4
A
B C1 2
3 4
(i) (ii)
Figura 6. Ejemplo de representación de una red
36
••x := {y | (y, x) ∈ F };
llamaremos el post-conjunto de x, el conjunto definido por
x•• := {y | (y, x) ∈ F }.
En la figura 6, •3 = {B}, B• = {3, 4}.
Un elemento-S s se denomina conflicto en N si // •x // ≥ 2 ∧ // x• // ≥ 2, es decir un conflicto
será un elemento-S al cual le corresponden más de dos transiciones en sus entradas o en sus
salidas. En la figura 6 el único conflicto es B.
3.1.5 Habilitación de recursos: conflicto de transiciones.
Sea C un subconjunto no vacío de S, y t un elemento-T. Decimos que t esta habilitado en C – o
que tiene concesión en C – si C ⊇ •t y C ∩ t• = ∅. Es decir, t tiene concesión en C si el
conjunto C contiene todo el pre-conjunto de t pero no el post-conjunto.
Dos elementos-T t’ y t’’ estarán habilitados concurrentemente si ambos están habilitados en C
pero no comparten elementos-S en sus entradas o salidas:
(•t’ ∪ t’•) ∩ (•t’’ ∪ t’’•) = ∅.
37
Si t’ y t’’ están habilitadas en C, pero
•t’ ∩ •t’’ ≠ ∅ ∨ t’• ∩ t’’• ≠ ∅
decimos que t’ y t’’ están en conflicto en C.
3.1.6 Alcanzabilidad y pasos.
Sean C’ y C’’ dos subconjuntos no vacíos de S, y E un subconjunto no vacío de transiciones
habilitadas en C. Decimos que C’’ es alcanzable desde C’ por paso E si::
i. cada par de elementos-T, t’ y t’’, pertenecientes a E están habilitados concurrentemente en
C’;
ii. C’’ = (C’\ •E) ∪ E• .
Cuando C’’ es alcanzable desde C’ por el paso E escribimos C’[E>C’’.
La definición anterior es una relación binaria r en (S) tal que:
∀ C’, C’’ ∈ (S) : (C’, C’’) ∈ r ↔ ∃ E ∈ (T): C’[E>C’’
donde r se llama relación de alcanzabilidad de un paso de la red.
38
La relación de alcanzabilidad r*, donde el asterisco por definición indicará una iteración finita de (r
∪r-1)* , es una relación de equivalencia, es decir cumple tres condiciones: reflexividad, simetría y
transitividad24. Si (C’, C’’) ∈ r* decimos que C’’ es alcanzable desde C’.
3.1.7 Redes puras, redes simples.
Decimos que un elemento-S es una condición lateral de un elemento-T t si
s ∈ •t ∩ t•,
En la figura 6, el elemento A es una condición lateral del elemento de transición 1. Cuando una
red no tiene condiciones laterales decimos que la red es pura.
Decimos que una red N es S-simple si
∀ s’, s’’ ∈ S : •s’ = •s’’ ∧ s’• = s’’• → s’ = s’’,
y que N es T-simple si
∀ t’, t’’ ∈ T : •t’ = •t’’ ∧ t’• = t’’• → t’ = t’’.
24 PAGNONI, Anastasia, Project Engineering : Computer-Oriented Planning and Operational Decision Making, Springer Verlag, 1990, cap. 5
39
Si la red N es tanto T-simple como S-simple, se denomina red simple. En una red simple cada
elemento está completamente definido por sus entradas y salidas: ningún elemento distinto tiene
la misma entrada y salida. La figura 6 es una red simple.
3.1.8 S-grafos, T-grafos y red de elección libre.
Una red N = (S, T, F) es denominada S-grafo, o máquina de estado, si
∀ t ∈ T : // •t // = // t• // = 1,
y es denominada T-grafo, o grafo marcado, si
∀ s ∈ S : // •s // = // s• // = 1.
En los S-grafos podemos eliminar la representación gráfica de los elementos-T sin perder
información marcando los arcos dirigidos con el nombre de la transición.
La figura 6 no es S-grafo ni T-grafo. Las figuras 7 y 8 son S-grafo y T-grafo respectivamente.
Figura 7. S-grafo
40
Retomaremos el tema de estos grafos hacia el final de esta sección, cuando hallemos las
invariantes de un sistema.
Decimos que N es una red de elección libre si
∀ s ∈ S : // •s // > 1 •(s•) = {s}.
Las figuras 6, 7, y 8 son redes de elección libre, la figura 9 no lo es.
3.1.9 Subredes, S-Vectores, T-Vectores.
La subrredes de una red N son sub-grafos dirigidos bipartitas inducidos en N por cualquier
subconjunto de vértices. Una subred comprende todos los arcos que unen sus nodos en la red
embebida. Decimos que la red N’ = (S’, T’, F’) es una subred de la red N =(S, T, F) si
Figura 9. Red que no es de elección libre
Figura 8. T-grafo
41
S ⊇ S’, T ⊇ T’ , F’ = F (S’ x T’ ∪ T’ x S’).
La red de la figura 7 es una subred de la figura 9.
Asumiremos ahora que existe un orden estructural en los conjuntos de transiciones y estados de
la red N =(S, T, F):
S : s1 < s2 < … < sm, T : t1 <t2 < … < tn.
Un S-vector es cualquier vector, columna o fila, indizado por medio elementos de S, y un T-vector
es cualquier vector que sea indizado usando el conjunto T. Como veremos más adelante, es
común asignar fichas a algunos elementos-S para designar la presencia de una característica
adicional en el estado. Las fichas son usualmente representadas por medio de S-vectores con
valores correspondientes a las fichas, también usaremos vectores cuando hagamos análisis de
invariantes sobre redes de Petri PT.
3.2 TIPOS FUNDAMENTALES DE REDES DE PETRI
.
3.2.1 Redes CE.
Las redes Condición/Evento, o redes CE, son la clase base para la construcción de otras redes
de Petri y por tanto sirven para entender los fundamentos de los modelos más complicados. Las
42
redes CE son útiles para representar análisis en que no se tiene en cuenta el tiempo pero se desea
analizar estados de planes y sus transiciones.
3.2.1.1 Definición de red CE. Una red Condición/Evento CE es una cuádrupla Q = (S, T, F,
C) que satisface las siguientes hipótesis:
1. (S, T, F) es una red simple;
2. Los elementos-S de (S, T, F) representan condiciones elementales del sistema, mientras que
sus elementos-T representan eventos elementales del sistema. Los elementos-S, por tanto,
son denominados condiciones, y los elementos-T son denominados eventos.
3. C es un conjunto no vacío de subconjuntos de S, llamados casos, de tal forma que:
3.1. C es una clase25 equivalente a la relación de alcanzabilidad r*;
3.2. Cada elemento-T está habilitado en por lo menos un caso.
C es denominada la clase caso de Q y representa un conjunto de condiciones específicas; es el
elemento que distingue a las redes de Petri de las redes simples. Para representar los casos
gráficamente usaremos un punto al interior de los círculos. Estos puntos también son llamados
fichas, y se acostumbra denominar el caso representado gráficamente como el caso actual.
25 El término clase, en este contexto, se utiliza para denominar una familia de elementos relacionados.
43
3.2.2.2 Interpretación de una red CE. Tenemos condiciones, eventos, una relación de flujo, y una
clase de casos, sin embargo, la definición de la red condición/evento no basta para llevar a cabo
un análisis con esta herramienta, se requiere darle una interpretación que comprende los
siguientes puntos:
• Tomamos casos para representar los estados del sistema; los elementos-S pertenecientes a un
caso representan condiciones que se mantienen ciertas en un sistema de estados representado
por el caso.
• El estado actual del sistema es representado por una variable sobre un clase de casos C.
Tomemos K como una variable sobre C representando el estado actual del sistema.
• Sea C una caso, y tomemos K := C. En el caso K, los eventos habilitados pueden ocurrir. Un
evento e esta habilitado en el caso K si todas las condiciones c ∈ •e pertenece a K, mientras
que todas las condiciones c ∈ e• no. Después de la ocurrencia de e, las condiciones c no
pertenecen más a K, mientras que las condiciones c ∈ e• si. El valor de K cambiará:
K = (C\•e) ∪ e• = C’ ∈ C.
• No se especifica cuando un evento habilitado ocurrirá, o si necesariamente va a ocurrir.
• Los pasos están definidos como conjuntos de eventos que están habilitados
concurrentemente en un caso dado. Un paso representa una transición de estado no
elemental cuyos componentes elementales pueden llevarse a cabo de una manera
44
causalmente independiente. Obsérvese que los pasos no están definidos como un conjunto
máximo de eventos habilitados concurrentemente.
• Los pasos pueden o no ejecutarse. La ejecución de un paso cambia el caso actual K.
• Como C es una clase de equivalencia de relación r*, cada caso es alcanzable desde cualquier
otro caso después de un número finito de pasos hacia adelante o hacia atrás. C representa un
conjunto máximo de estados del sistema, cada uno alcanzable por el otro desde un número
finito de transiciones de estado. Por supuesto, no todos los casos se pueden alcanzar desde
cualquier otro si sólo podemos dar pasos hacia adelante.
• Las clases de equivalencia de relación r* distintas de C representan conjuntos de estados de
sistemas que no pueden ser alcanzados desde casos pertenecientes a C.
Las redes CE no son muy usadas para los modelamientos que nos proponemos realizar, sin
embargo, haremos un ejemplo para ilustrar los conceptos básicos que comparten con las demás
redes de Petri.
a
b
A
B
AB
1
2
3
Figura 10. Ejemplo de una red CE
45
En el caso de la figura 10, la clase de casos es { {a}, {b, A}, {B, A}, {AB} }. El caso actual es {b,
A} y en el caso actual el único paso ejecutable es el paso T2.
3.2.2 Redes PT o Place/Transition.
Las redes de Petri Lugar/Transición, también denominadas PT por su sigla en inglés, son las
redes más estudiadas en la literatura26, y son las que más se aplican para modelar sistemas de la
vida real. Aunque las redes CE se pueden usar de manera análoga a las redes PT en muchas
situaciones, las redes PT tienen un formalismo que se acerca mas a las redes de actividades del
capitulo 2, y a los diagramas de flujo usados en las computadoras.
3.2.2.1 Definición de una red PT. Una red lugar/transición, o red PT, es una séxtupla N = (S, T,
F, K, W, M0) tal que:
(i) ( S, T, F) es una red, denominada red subyacente, donde:
• los elementos-S representan estados de recursos elementales, y son denominados lugares;
• los elementos-T representan operaciones elementales, y son denominadas transiciones;
• la relación de flujo F representa consumo de recursos cuando el par ordenado es de la forma (elemento-S, elemento-T), o producción de recursos cuando el par ordenado es de la forma (elemento-T, elemento-S).
26 PETERSON J. L., Petri Net Theory and the Modeling of Systems, Prentice-Hall, N. J., 1981
46
(ii) K(s) representa el numero más alto de unidades de recursos que se permiten simultáneamente
en el estado s:
K : S → ∪ {χχ0} es un mapeo que asocia un numero natural o en su defecto χχ0, la
cardinalidad del conjunto de los naturales, a cada lugar de la red. K(s) es llamada la función de
capacidad de la red. Si K(s) = χχ0 el número de recursos asignables a un estado s es ilimitado.
(iii) W: es llamada la función de peso de la red; el valor W(x, y) es denominado el peso del arco (x, y):
W : F → es un mapeo que asocia un número natural a cada arco de la red N. W(x, y) = n es
otra forma de decir que dos nodos deberían estas conectados por n arcos. Para la
representación gráfica, el peso W(x, y) se inscribe en el arco correspondiente y se omite en caso
que n = 1.
(iv) Las marcas representan la distribución actual de recursos:
Cada mapeo M : S → ℑ+ de tal forma que ∀s ∈ S : 0≤M(s)≤K(s) es denominado una marca
de la red. M(s) es llamado el marcaje del lugar s, y representa el número de unidades de recursos
actualmente en estado s. Las marcas M se representan gráficamente dibujando M(s) puntos
negros, denominados fichas, en el lugar s. M0 es una marca especial llamada el marcaje inicial de
la red: M0(s) representa el número de unidades de recursos que están inicialmente en el estado
s.
(v) Se define la siguiente regla de transición:
Una transición t ∈ T está habilita en el la marca M si
∀ s ∈ •t : W(s, t) ≤ M(s) ∧ ∀ s ∈ t• : M(s) ≤ K(s) + W(t, s).
Las transiciones habilitadas pueden ocurrir o pueden ser activadas.
Una transición habilitada representa una operación elemental que tiene disponible todos los
recursos que necesita, y su ejecución representa la ejecución de esa operación elemental. La
47
ocurrencia de una transición t cambia la distribución de recursos, y por tanto la marca M a una
marca M’ definida por:
∀ s ∈ S : M’(s) = M(s) - W(s, t) + W(t, s). Este estado particular de eventos se expresa
escribiendo: M[t>M’.
Las transiciones t’,…,t’’ estarán habilitadas concurrentemente en la marca M si están todas habilitadas
en M y después de la ocurrencia de cualquiera de ellas las demás todavía están habilitadas.
Las transiciones habilitadas concurrentemente pueden ocurrir concurrentemente. La ocurrencia
concurrente de un multiconjunto de transiciones t’,…,t’’ es denominado paso, y cambia el
marcaje M’ definido por:
∀ s ∈ S : M’(s) = M(s) - W(s, t’) -…- W(s, t’’) + W(t’, s) +…+ W(t’’, s), situación que
expresamos escribiendo: M[t’,…,t’’>M’.
Obsérvese que se permite tener t’ = t‘’, es decir que, las transiciones pueden ocurrir
concurrentemente sobre sí mismas.
3.2.2.2 Propiedades de las redes PT. Por supuesto, las propiedades de las redes sencillas se aplican a
las redes PT. Una red PT, N = (S, T, F, K, W, M0) es pura si su red subyacente es pura.
Dada una red PT, N = (S, T, F, K, W, M0), denotamos el conjunto de marcas alcanzables hacia
adelante, denotado por [M0>, el conjunto más pequeño de marcas tales que:
(i) M0 ∈ [M0>
48
(ii) M’ ∈ [M0> ∧ ∃t ∈ T : M’[t>M’’ → M’’ ∈ [M0>.
También podemos definir el conjunto de marcas alcanzables hacia adelante y hacia atrás [M0], como el
conjunto mas pequeño tal que:
(i) M0 ∈ [M0] .
(ii) M’ ∈ [M0] ∧ ∃t ∈ T : M’[t>M’’ → M’’ ∈ [M0]
(iii) M’’ ∈ [M0] ∧ ∃t ∈ T : M’[t>M’’ → M’’ ∈ [M0].
Las marcas alcanzables en el futuro representan los estados de distribución de recursos en que el
sistema puede entrar en su vida futura, la marcas alcanzables hacia atrás representan los estados
de distribución de recursos que el sistema pudo haber tenido en su vida anterior. Esta
información nos puede servir para saber como llegar a la situación deseada o como llegamos a la
situación actual.
Un sitio, o lugar, p se denomina conflicto si
//p•// ≥ 2 ∨ //•p// ≥ 2.
Decimos que dos transiciones están en conflicto en el marcaje M si están ambas habilitadas bajo
M pero al ocurrir alguna, una de las transiciones queda deshabilitada.
49
Una transición t es denominada transición de sincronización si
//t•// ≥ 2 ∨ //•t// ≥ 2.
Dos sitios estarán sincronizados en el marcaje M si son entradas o salidas de t. En sitios
sincronizados los recursos serán consumidos o producidos juntos.
La figura 11 presenta un ejemplo antes y después de activar una secuencia ordenada de
transiciones T1 y T2.
(i)
(ii)
Figura 11. Ejemplo de una red PT antes y después de dos pasos de simulación.
La capacidad de los lugares P1 y P2 se considera infinita (χχ0). Al activar T1 las dos recursos en
P1 son consumidos, y se producen otros dos recursos que pasan ahora a P2 por lo que T2
P1 P2
T1
T2
2 2P1 P2
T1
T2
2 2
50
queda habilitada. Como la multiplicidad entre P2 y T2 solo permite el paso de una ficha,
obtenemos el diagrama de la figura 11 (ii) después de nuestra pequeña simulación. Si deseamos
volver al estado inicial del sistema debemos activar de nuevo a T2, que en todo caso es la única
transición habilitada en la figura 11 (ii).
3.2.2.3 Matriz de incidencia. La estructura de una red PT pura puede representarse
algebraicamente por medio de una matriz denominada matriz de incidencia.
Sea N = (S, T, F, W, M0) una red PT cuya red subyacente es pura con S y T estrictamente
ordenados. La matriz de incidencia, también llamada matriz de cambio, de la red N será la matriz
W = { wst } definida por:
0 Si s∉ •t ∪ t•
-W(s, t) Si s∈ •t wst :=
W (s,t) Si s∈ t•
Donde s y t son índices sobre los conjuntos ordenados S y T. Esta matriz es muy usada cuando
se representan los modelos de redes de Petri por computador. En el ejemplo de la figura 11 la
matriz de incidencia estará dada por:
51
W T1 T2
P1 -2 1
P2 2 -1
3.2.2.4 Grafo de Alcanzabilidad. Un grafo donde los vértices representan los marcajes y las flechas
representan los pasos, constituye herramienta que nos representa completamente los estados y
sus transiciones de una forma muy conveniente. Tal grafo es conocido como el árbol de
alcanzabilidad.
Si tenemos un red PT N = (s, T, F, W, M0), podemos construir este grafo siguiendo el este
procedimiento:
1) Dibujar la raíz y rotularla M0.
2) Si ningún paso esta habilitado en el marcaje M0, entonces hemos terminado, si no, para cada
paso M0[t’,…,t’’>M dibujar un vértice rotulado M y un arco dirigido desde M0 hasta M
rotulado t’,…,t’’;
3) .Si no hay paso habilitado en ninguna de los marcajes M anteriores entonces hemos
terminado, si no; para cada paso M[t’,…, t’’>M’ : si nuestro grafo ya contiene el vértice
rotulado M’ entonces dibujar un arco entre M y M’ y rotularlo t’,…,t’’, de otra forma dibuje
un nuevo vértice M’ y un arco entre M y M’ rotulado t’,…,t’’;
52
4) repetir desde el paso 3.
En la figura 12, hemos usado un programa de computador27 que nos realizó el grafo de
alcanzabilidad correspondiente a la figura 11.
3.2.2.5 Viveza, estados de detención y estados de hogar. En el ejemplo de la figura 12, observamos que
después de ejecutar una secuencia de pasos volvemos al marcaje inicial, lo cual indica que
siguiendo una secuencia de pasos podemos recrear los marcajes. Esta propiedad no está presente
en todas las redes: se dice que una red con esta característica está viva. La viveza de una red es
una propiedad relevante: una red viva representa un plan en el que ninguna operación causa un
alto en el proceso.
Dada una red PT N = (S, T, F, W, M0), decimos que la transición t está viva si
Figura 12. Arbol de alcanzabilidad para la red de la
figura 11
53
∀M ∈ [M0> ∃M’ ∈ [M> : t está habilitado en la marca M’;
decimos que la red N esta viva si cada transición t ∈ T está viva. Una marca M de N está viva si
la red PT (S, T, F, W, M0), está viva.
Un marcaje alcanzable M es un estado de detención si
∀t ∈ T : t no está habilita en el marcaje M;
el marcaje alcanzable M se denomina estado de hogar si
∀M’ ∈ [M0> : M ∈ [M’>
Los estados de detención representan la terminación del plan: las redes vivas no tienen estados
de detención. La figura 13 presenta un caso en que una red PT no tiene estados de detención
pero que tampoco esta viva, también hay un estado hogar: B.
27 El anexo contiene información relacionada con varios programas usados en la realización de este trabajo.
54
3.2.2.6 Conservación de recursos y reproducción de estados. De la sección 3.1.8, recordamos la
clasificación de algunas redes particulares en S-grafos y T-grafos. Nos interesarán, ahora, las
propiedades de dichos grafos y el efecto de este tipo de configuraciones sobre una red.
La figura 14 (i) tiene una propiedad importante: sin importar lo que pase, el número de fichas en
la red será constante (= 2). En la figura 14 (ii), en cambio, esta propiedad no se cumple, pero si
A
B
C D
T1
T2 T3
T5T4
Figura 13. Red sin estados de detención que no esta viva.
A B CT t' t''
(i) (ii)
Figura 14. S-grafos y T-grafos
55
hay otra característica importante: sin importar lo que pase siempre es posible restaurar el estado
inicial, algo que no se puede hacer en la figura 14 (i). Siendo tan común encontrar subredes con
estas configuraciones, es conveniente definir dos nuevos conceptos.
1. Una S-subred es un subred que no pierde ni gana fichas; cada transición pone tantas fichas a
la subred como toma de ella.
2. Una T-subred es una subred que permite la reproducción de cualquier marcaje dado que
todas sus transiciones estén habilitadas.
Al hablar de redes PT, en ambos casos debemos considerar el peso de los arcos si deseamos
mantener la validez de las afirmaciones: debemos recordar que si el peso del arco de entrada es
distinto al de salida habrá creación o consumo neto de recursos. También es posible que una red
tenga una de las propiedades descritas anteriormente sin ser de tipo S-subred o T-subred. La
figura 15 es un caso los elementos A y D actúan como una S-subred.
56
Retomando los conceptos de la sección 3.1.9, podemos caracterizar los elementos de nuestra red
vectorialmente: el S-vector [1, 0, 0, 1, 0, 0], representaría una S-subred. Podemos ahora asignar
un peso distinto a los elementos y encontramos que si asignamos un número particular de fichas
a cada elemento, como seria el caso de [0, 1, 0, 0, 3, 0], es posible encontrar nuevas S-subredes
Definimos, entonces, un nuevo concepto:
Denominaremos S-invariante a cada S-vector de factores de peso que mantienen un conteo
constante de fichas para cada marcaje alcanzable. Las S-invariantes representan partes del
sistema que son estables en relación al conjunto de recursos involucrados; estos elementos nunca
ganan o pierden recursos.
Dos transiciones pertenecientes a distintas S-variantes no estarán nunca en conflicto por un
recurso: las S-invariantes representan partes del sistema que son independientes de los recursos.
Dos sitios de S-variantes distintos pueden estar sincronizados: tales situaciones representan
sincronización de recursos de producción o consumo.
T1 T2 T3 T4
A B C
D E F
Figura 15. Red que no es estrictamente S-subred o T-subred
57
De manera análoga a la S-invariante, denominamos T-invariante al conjunto de transiciones con
multiplicidades que son capaces de reproducir un marcaje inicial, dado, por supuesto, que una
secuencia de ocurrencia, con las multiplicidades indicadas se pueda realizar.
Es posible determinar las S- y T-invariantes planteando un sistema de ecuaciones lineales en que
interviene la matriz de incidencia, sin embargo no detallaremos aquí el procedimiento de cálculo.
La bibliografía sobre estas ecuaciones es extensa y los métodos de calculo se optimizan
constantemente, pero es evidente que tales cálculos requieren la ayuda de una computadora: en
una serie de pruebas a las que hace referencia Pagnoni28, se probaron 12 algoritmos con varias
redes compuestas por entre 20 y 500 elementos y la solución tomó un mes de tiempo de CPU en
un VAX 11/750.
3.2.3 Variantes sobre las redes de Petri tradicionales.
Si bien las redes que hemos estudiado hasta ahora son muy útiles, el análisis de un problema de la
vida real puede producir redes muy grandes e inmanejables. También tenemos problemas
debido a necesidades propias de problemas complejos: hemos ignorado, por ejemplo, el tiempo
como elemento primordial en nuestros análisis. Cuando las redes no responden a las expectivas
del modelador, es común recurrir a extensiones sobre el modelo original.
58
3.2.3.1 Redes Coloreadas CPN. Las redes que hemos venido usando se dominan genéricamente
redes blanco y negro. En la extensión conocida como redes de Petri coloreadas29, se asignan colores
a las fichas de acuerdo a valores arbitrarios de la información. Las condiciones de activación, o
de disparo, se definen entonces en términos de la presencia de fichas de colores determinados.
La notación usada en las redes coloreadas es más concisa por lo que se evita la duplicidad de
información usual en las redes tradicionales que se consideran de capacidad limitada de
modelamiento.
De manera análoga a un red PT, una red Coloreada de Petri, o red CPN, es una séptupla N = (S,
T, F, C, K, W, M0) donde tenemos:
• P : el conjunto de lugares.
• T : el conjunto de transiciones.
• C : función de color.
• K : Capacidad.
• W : multiplicidad.
• M0 : marcaje inicial (fichas).
28 PAGNONI, Anastasia, Project Engineering : Computer-Oriented Planning and Operational Decision Making, Springer Verlag, 1990, pp.
149 –152.
29 JENSEN K., Colored Petri Nets, vol. 1 Basic Concepts , Springer Verlag, Berlin 1992
59
3.2.3.2 Redes temporizadas TPN y estocásticas GSPN. Las redes originalmente creadas por Petri no
tenían soporte para actividades basadas en tiempo. En aquellos casos en que es necesario
considerar tiempos, es posible usar las redes temporizadas de Petri TPN, planteadas
originalmente por Ramchandani30 para trabajar en aplicaciones electrónicas . En estas redes se
adiciona un tiempo de demora a los lugares o a las transiciones. Respecto a las redes PN, las
redes TPN poseen dos conjuntos adicionales que representa las demoras
D : F : T x S → + ∪ {0};
y la frecuencia de las demoras
F : T x S → + ∪ {0}.
En este caso S es el conjunto de estados alcanzables y + los reales positivos.
En el caso particular en que las demoras estén distribuidas aleatoriamente denominamos a la red
generalizada estocástica de Petri, o GSPN por sus siglas en inglés. Las redes estocásticas son
equivalentes a las cadenas de Markov, por lo que tienen técnicas de solución conocidas.31
3.2.3.3 Redes Petri de alto nivel, HLPN. Las redes de alto nivel de Petri, o HLPN, es un término
usado recientemente para describir las redes coloreadas y otras redes que no hemos discutido
como la predicado/transición32. En los últimos años estas redes han encontrado tantas
30 RAMCHANDANI C., Analysis of asynchronous concurrent systems using timed Petri Nets, Ph. D. dissertation, Massachusets Institute of
Technology, Cambridge, 1974.
31 MARSAN M.A., Stochastic Petri Nets, An Elementary Introduction, En: Advances in Petri Nets, Lecture Notes in Computer
Science 424, Springer-Verlag, 1989,
60
aplicaciones33 que un comité especializado está trabajando para producir una norma34 y
presentarla ante la ISO.
3.2.3.4 Redes Difusas de Petri. El modelamiento por lógica difusa35 se utiliza cuando la
información que se tiene no es precisa y es posible definir la experiencia humana en reglas SI-
ENTONCES y funciones de membresía. El uso de la lógica difusa en combinación con las
redes de Petri produce una nuevo modelo, denominado Fuzzy Petri Networks o simplemente
FPN. Las redes FPN han sido tratadas por diversos autores, entre ellos Chun36 y Wendt37.
32 PAGNONI, Anastasia, Project Engineering : Computer-Oriented Planning and Operational Decision Making, Springer Verlag, 1990, pp.
156 –161.
33 ALDEMAR Marco y DIAZ Nelson, Modelación de sistemas de manufactura mediante redes de Petri, Tesis Ingeniero Mecánico, Universidad Nacional de Colombia, 1997. 263 p.
34 ISO Standards Comittee, High-level Petri Nets – Concepts, Definitions and Graphical Notation, committee Draft ISO/IEC 15909, versión 3.4, Oct. 2 1997. (El borrador está disponible en Internet mientras se termina y la ISO lo publica:)
35 PHILLIS Y. A., TSOURVELOUDIS N. C., Fuzzy assesment of machine flexibility, En: IEEE Transactions on Engineering Management, vol. 45, 1, p 78-87.
36 CHUN M. G., BIEN Z., Fuzzy Petri Net Representation and Reasoning Methods for Rule-Based Decision Making Systems, En: IEICE Transactions on Fundamentals of Electronics, Communications and Computer Sciences, vol E76-A,6.1993, p 974-983.
37 WENDT A., Fuzzy Set Theory and it’s Applications, Kluwer Academic Publishers, Boston, 1991.
4. APLICACIONES DE LAS REDES DE PETRI EN PROYECTOS
4.1 ANÁLISIS INDEPENDIENTE DEL TIEMPO
En las redes de actividades, estudiadas en el capitulo dos, el elemento de gobierno sobre un
proyecto era el tiempo: las actividades se programaban para empezar o terminar en fechas
establecidas y el gerente del proyecto se podía limitar a hacer cumplir el calendario establecido.
El concepto de tiempo está, por supuesto, directamente relacionado con el del costo total del
proyecto.
Como se anotaba en 3.2.3.2, la teoría inicial de las redes de Petri no contempla el concepto
tiempo: las redes de Petri tradicionales, por tanto, no nos darán directamente información
relativa al costo o duración del proyecto. A diferencia de los esquemas tradicionales, el elemento
que gobierna el funcionamiento del modelo en la red de Petri es el administrador del proyecto;
es él quien toma las decisiones al activar las transiciones. Como veremos a continuación, las
redes de Petri son la herramienta por excelencia para estudiar la distribución de recursos en un
62
proyecto. Ilustraremos esta situación reproduciendo un ejemplo planteado por Anastasia
Pagnoni38:
Proyecto: Puesta en marcha de un taller de pintado de vehículos.
Especificación:
1. Este plan describe el pintado de cuarenta cuerpos de automóvil.
2. Se enviaran los 40 cuerpos juntos al taller de pintura.
3. 30 de ellos serán pintados con aerosl en las líneas A y B; 10 serán pintados a mano, un
cuerpo a la vez.
4. La línea A recoge y pinta cinco cuerpos de vehículo por corrida; la línea B pinta tres.
5. Una vez pintados, los cuarenta vehículos serán despachados al tiempo al taller de ensamble.
Como vemos, el proyecto está presentado de una forma muy distinta a como se presenta un
proyecto que se va a analizar por métodos tradicionales: mientras en un diagrama de Gantt se se
acostumbraría tener actividades y fechas, en la especificación de este proyecto es posible
identificar procesos y recursos.
El modelo que la naturaleza de este proyecto sugiere es de la una red PT con los recursos, y
específicamente los cuerpos de carro en sus distintos estados, modelados con sitios y los
procesos representados como transiciones. De esta forma es posible construir un modelo de
nuestro proyecto, tal y como se muestra en la figura 16.
38 PAGNONI Anasatasia, Project Engineering, Springer Verlag, Nueva York 1987, cap. 5
63
Transición Interpretación Lugar Interpretación
A Aerosol en línea A c1 Cuerpos para líneas A y B
S Enviar a pintar cr Cuerpo sin pintar
B Aerosol en línea B c2 Cuerpos para pintar a mano
C Pintura a mano c3 Cuerpos para despacho
D Despacho al ensamble c4 Cuerpos para despacho
R Reinicio cd Cuerpos despachados
cr
c1 c2
c3 c4
cd
S
A B C
D1030
3
5
5 3
30 10
40
40
Figura 16. Modelo del ejemplo propuesto
64
La matriz de incidencia será:
W S A B C D R cr -40 +40 c1 +30 -5 -3 c2 +10 -1 c3 +5 +3 -30 c4 +1 -10 cd +40 -40
Al poner este problema en una programa de computador39 es posible encontrar 3 T-invariantes:
J1 = [1, 6, 0, 10, 1, 1], J2 = [1, 3, 5, 10, 1, 1], J3 = [1, 0, 10, 10, 1, 1] .
Esto quiere decir que nuestro plan de ejecución puede componerse por una de estas tres
acciones:
T-invariante J1 : Operar la línea A: 6 veces
Pintura a mano: 10 veces
T-invariante J2 : Operar la línea A: 3 veces
Operar la línea B:: 5 veces
Pintura a mano: 10 veces
T-invariante J3 : Operar la línea A 6 veces
Pintura a mano 10 veces
Observamos que todas nuestras alternativas involucran 10 acciones de pintura a mano, y que las
líneas A y B están en conflicto por lo que podemos operar A, B, o ambas. El plan que tenemos
es flexible en cuanto permite la operación de las líneas A o B pero inflexible por cuanto es
necesario pintar a mano.
39 Ver Anexo.
65
Como vemos en este ejemplo, la información que nos dan las redes de Petri tienen poca relación
con la que nos daría la teoría tradicional, pero los datos son muy importantes en materia de
distribución de recursos y en la identificación de conflictos. En el ejemplo vemos que la pintura a
mano puede ser el "cuello de botella" de proyecto.
Si bien el ejemplo pasado nos presenta una forma de obtener información valiosa que no
teníamos antes, la falta de información sobre el tiempo hace que la herramienta parezca menos
poderosa. En los modelos que siguen veremos cómo se puede sobrellevar esta limitación.
4.2 MODELAMIENTO BASADO EN PROCESOS
Deng40 plantea la necesidad de mantener los diagramas tradicionales y complementarlos con
redes de Petri; en su modelamiento se propone el uso de redes Coloreadas CPN para representar
los atributos deseados del proceso.
40 DENG Wei, WENDT Almuth y ROLSTADÅS Ashborn. A Set of Modeling Methods for Process-oriented Project Modeling, En:
Management Journal, 1998
66
Un proceso está compuesto de entradas y salidas como se muestra en la figura 16. Los controles
y los mecanismos son parte de las entradas pero su función es la de proveer recursos físicos
(maquinaria) o información (una norma de manufactura) y casi nunca son transformados en el
proceso.
Utilizando CPNs podemos representar las entradas con colores que simbolizarían condiciones,
información, materia prima o recursos físicos o naturales. Dos colores distintos podrían, por
ejemplo, representar dos tipos distintos de materia prima. Los colores en las salidas, de hecho,
también pueden usarse para representar post-condiciones, información procesada, productos,
partes de productos o recursos liberados.
Proceso
Controles
Entradas
Mecanismos
Salida
Figura 16. Visión funcional de un proceso.
67
El resto de elementos se pueden usar como en una red PT corriente: las fichas podrían usarse
para representar el número de objetos en un almacén, o lugar, y la capacidad denotaría el máximo
número de objetos permitidos. Las transiciones coloreadas simbolizan eventos, procesamiento
de información, operaciones de manufactura o actividades de proyecto. Los arcos establecen la
conexión formal entre lugares y sitios con la multiplicidad representando el número de
materiales, información, o material que se requiere o se genera.
Las redes coloreadas presentan gran versatilidad por la capacidad de extenderlas con diversos
atributos de valoración. Se recordará de la sección 2.1.5 la existencia de variables externas que
influían sobre la complejidad del proyecto. este enfoque, asignación de atributos de valoración,
es válido también para modelar condiciones externas que influyen sobre procesos específicos.
Las redes coloreadas pueden almacenar información tan diversa que es posible plantear la
utilización de atributos muy distintos como las variables difusas que se comentaron en la sección
3.2.3.4.
68
4.3 MODELAMIENTO BASÁNDOSE EN REDES DE ACTIVIDADES
Desrochers, un experto en la aplicación de redes de Petrí en la industria41, se enfrenta a un
problema muy conocido en gerencia de proyectos: un proyecto de construcción de gran
envergadura.
En este proyecto42 se llevan a cabo cuatro grandes actividades en paralelo: construcción de vías,
instalación de drenajes, construcción de paredes retenedoras e instalación de sistemas eléctricos.
Estas actividades están distribuidas por todo el sitio de construcción y requieren transporte de
maquinaria, materiales y trabajadores en distintas áreas. Las tareas, por tanto, están ligadas por su
dependencia en recursos comunes y por relaciones de precedencia definidas: la misma grúa que
transporta bloques de paredes puede transportar transformadores eléctricos, también debe
terminarse la pared de retención antes de pavimentar una calle aledaña.
Para este proyecto particular Desrochers, Kim y Sanderson proponen el uso las redes de Petri
temporizadas TPN como método complementario a las redes tradicionales de tal forma que no
perdemos ninguna de las ventajas de los dos métodos. Si algo sale mal en un proyecto
tradicional hay necesidad de reprogramar todos los procesos; los modelos en redes de Petri
41 DESROCHERS A. A., y Al-Jaar: Applications of Petri Nets in Manufacturing Systems: Modeling, Control and Performance Analysis, IEEE
Press, Piscataway, N. J., 1995
42 DESROCHERS Alan A., KIM Jongwook y SANDERSON Arthur C, Task Planning and Project Management using Petri Nets, En: IEEE Transactions on Engineering Management, IEEE, 1995
69
sirven para llevar a cabo un control en tiempo real de los procesos y proveen un modelo que
permitiría automatizar el control del proyecto y modelar dinámicamente los cambios en
restricciones de recursos.
Desrochers, Kim y Sanderson plantean un sistema completo, basado en redes de Petri, para
controlar un proyecto en el sector de la construcción. Para este efecto, plantean tres conceptos
nuevos:
1. Un mapeo formal entre un diagrama de actividades tradicional y una representación en red
de Petri. Este mapeo permite al administrador del proyecto interactuar directamente con un
diagrama similar a CPM pero que contiene la información sobre recursos que provee la red
de Petri.
2. Se formaliza una red de monitoreo con una interface interactiva que le permite al usuario
visualizar el estado actual del proceso y los recursos.
3. Se plantea la necesidad de un mecanismo de soporte a decisiones que compara la red
predictora de Petri y la red de referencia. Estas decisiones de control modifican el
comportamiento del sistema y son las encargadas de comenzar la reprogramación de
eventos.
El hecho de basar todo el modelo en redes TPN permite una respuesta en tiempo real a los
cambios de estado del sistema. El modelo completo es un poco largo para describir aquí, pero
el proyecto, financiado por el National Institute of Standards and Technology NIST y la Federal Highway
70
Administration de los Estados Unidos, es una muestra clara de que es posible y ventajoso utilizar
las redes de Petri para el modelamiento de proyectos grandes.
4.4 MODELO GENERAL PARA REPRESENTACIÓN DE PROYECTOS
Los ejemplos anteriores partían del supuesto de tener un diagrama de actividades realizado con
anterioridad, o de alguna forma complementario, al modelo con red de Petri del sistema. A
diferencia de los modelos anteriores, Kumar y Ganesh43 plantean un modelo nuevo que está
desligado de los diagramas tradicionales.
1. Para mantener alguna similaridad con los diagramas PERT, las transiciones (actividades son
representadas por arcos entre lugares (sitios).
2. Los recursos como personas de distintas habilidades, equipo, herramientas y materiales son
representados por fichas de distintos colores.
3. Cuando una transición habilitada se dispara, las fichas (recursos) son retiradas del buffer
(representado por el ambiente) y al mismo tiempo utilizado por una unidad de tiempo, los
recursos reutilizables son depositados de nuevo en el buffer. La información de utilización
de recursos se mantiene para recursos consumibles como reutilizables.
43 KUMAR Ashok y GANESH L. S., Use of Petri Nets for Resource Allocation in Projects, En: IEEE Transactions on Engineering
Management, Vol. 45 No. 1, 1998, p. 49 - 56
71
4. Este modelo introduce el concepto de “ficha de precedencia” para indicar el estado de un
lugar. La generación de fichas de precedencia en lugares indica que se completó
satisfactoriamente las actividades o condiciones precedentes. El sitio de “inicio” generará la
ficha cuando el proyecto esté listo para comenzar y, de manera similar, el sitio “final”
indicará que el proyecto se completó.
5. Una transición (actividad) tj estará habilitada si el sitio de entrada pi de tj ha generado una
ficha de precedencia y el buffer esta marcado con al menos w(pi,tj) fichas al principio de la
unidad de tiempo bajo consideración, donde w(pi, tj) es el peso (en términos de fichas de
distintos colores) del arco tj a pi.
6. Una transición tj podrá disparase si el sitio de entrada pi de tj ha generado la ficha de
precedencia y el buffer está marcado con fichas con, por lo menos, el mismo peso de la
transición en cada instante en que se considere durante una unidad de tiempo.
7. La disponibilidad de distintos recursos (fichas coloreadas) al principio de cada unidad de
tiempo puede ser determinada por una función de distribución probabilística asociada con
cada ficha de color.
8. Varias transiciones pueden habilitarse al inicio de una unidad de tiempo. Las prioridades
para el disparo de transiciones pueden ser asignados con distintos criterios de acuerdo a la
literatura disponible de programación con recursos restringidos44. Todas las transiciones
habilitadas se disparan en la misma unidad de tiempo considerada El proceso se repite
44 ELAYSAYED E.A. y NAZR N. Z., Heuristicsfor resource constrained scheduling. En: Int. J. Prod. Res., vol. 24, no. 2, 1986, p. 311-
327
72
durante varias unidades de tiempo hasta que se genere una ficha de precedencia en el último
sitio, lo cual indica la culminación del proyecto.
La red resultante es muy similar a algunas que hemos utilizado: es coloreada, temporizada y
puede tener características estocásticas, sin embargo las características 3, 4, 6 y 7 son
completamente nuevas, y hacen que la representación gráfica sea distinta a la de las redes que
hemos estudiado.
Este modelo, por tanto, no se puede usar en los programas de computador tradicionales sino que
requiere un herramienta propia: los autores de este modelo tuvieron que desarrollar un programa
en lenguaje C para solucionar un problema específico..
CONCLUSIONES
A medida que las organizaciones desarrollan sus actividades propias encuentran nuevas
necesidades que pueden suplir adoptando estructuras más flexibles. La gerencia de proyectos es
un elemento importante dentro de un escenario de cambio por sus características de trabajo
interdisciplinario y contratación flexible, cobrando mayor importancia el replantear los criterios
que seguimos para tomar decisiones.
Las herramientas tradicionales de planeación de proyectos, Gantt, CPM, PERT y sus diversas
variantes, no nos proveen suficiente información para la toma de decisiones efectivas; en
particular no hay posibilidad modelar proyectos en función de los procesos que se siguen. Las
herramientas tradicionales también son muy inflexibles ante eventos imprevistos: si una
actividad presenta una falla es difícil identificar las implicaciones que va a tener esta falla sobre el
desarrollo del proyecto, usualmente es necesario reprogramar todas las actividades y consultar
con los demás miembros de proyecto los ajustes necesarios.
Si bien en los últimos años han habido desarrollos nuevos como las redes VERT y GERT, los
desarrollos están lejos de satisfacer todas las necesidades que puede tener un proyecto de gran
74
envergadura, especialmente cuando se requiere disponer de muchos recursos de manera
simultánea.
Las redes de Petri constituyen una herramienta interesante para modelar proyectos porque
poseen naturalmente la información que las redes de actividades no proveen. Los componentes
básicos de modelamiento de las redes de Petri son los sitios, las transiciones, y las fichas: al
aprovechar el nivel adicional de abstracción, y representar con éstos, los elementos básicos con
los cuales desarrollamos un proyecto, es mucho más fácil llevar a cabo un monitoreo de las
variables claves.
La información que nos provee un análisis con redes de Petri es muy relevante: nos indica las
condiciones bajo las cuales ocurrirán los eventos del proyecto. Esta información no está
disponible directamente en los métodos tradicionales.
Pese a su gran utilidad, el enfoque de las redes de Petri presenta dos inconvenientes:
1. Debido al nivel de detalle con que describimos el problema, los modelos en redes de Petri
son grandes y se pueden volver inmanejables.
2. Las redes originales planteadas por Petri no comprenden el concepto de tiempo que es
fundamental en el análisis tradicional.
75
Estos inconvenientes son consecuencia del objetivo con se crearon las redes: se concibieron para
obtener un mayor nivel de comprensión y por tanto se enfocan más en los procesos que en los
tiempos. Para superar este impase es posible plantear dos caminos distintos:
• Considerar el modelo de Petri como un complemento, no un reemplazo, de los métodos
tradicionales.
• Extender las propiedades de las redes de Petri para que contemplen las variables que estudian
los métodos tradicionales.
Aún no hay elementos de juicio para decidir entre estas dos alternativas; de hecho, no existe un
modelo único para representar y simular proyectos con redes de Petri. La herramienta que
hemos planteado abre muchas posibilidades nuevas de investigación y muchas posibilidades
nuevas de problemas que antes no se podían resolver. Una posibilidad interesante es la
combinación de lógica difusa con redes de Petri para describir proyectos, con esta herramienta se
podría elevar el nivel de dificultad en las decisiones que podemos tomar. También queda abierta
la inquietud por relacionar redes TPN con los diagramas de actividades tradicionales: una vez se
desarrollen estos conceptos se podría integrar las redes de Petri a sistemas automatizados de
asistencia lo cual facilitaría enormemente el manejo de recursos del administrador de los
proyectos más exigentes.
BIBLIOGRAFIA
ADAMOU, Moussa; BOURJAULT, Alain y ZERHOUNI, S. Noureddine. Modeling and Control of Flexible Manufacturing Assembly Systems using object oriented Petri Nets. En : IEEE 2nd International Workshop on Emerging Technologies and Factory Automation - Design and Operation of Intelligent Factories. (1993 : Palm Cove-Cairns, Qld, Australia). Workshop Proceeding. New York : IEEE Press, 1993. p. 164-168. ALDEMAR Marco y DIAZ Nelson, Modelación de sistemas de manufactura mediante redes de Petri, Tesis Ingeniero Mecánico, Universidad Nacional de Colombia, 1997. 263 p. AGERWALA, Tilak. Putting Petri Nets to Work. En : Computer. Vol. 12 (diciembre 1979); p. 85-94. ASKIN, Ronald. Modeling and Analysis of Manufacturing Systems. New York, NY : John Wiley & Sons, Inc., 1993. CHEN, Yigang; TSAI, W. T. y CHAO, Daniel. Dependency Analysis - A Petri Net Based Technique for Synthesizing Large Concurrent Systems. En : IEEE Transactions on parallel and distributed systems. Vol. 4, No. 4 (abril 1993); p. 414-426. DENG Wei, WENDT Almuth y ROLSTADÅS Ashborn. A Set of Modeling Methods for Process-oriented Project Modeling, En: Management Journal, 1998 DESROCHERS Alan A., KIM Jongwook y SANDERSON Arthur C, Task Planning and Project Management using Petri Nets, En: IEEE Transactions on Engineering Management, IEEE, 1995 DICESARE, Frank y DER JENG, Mu. A Synthesis Method for Petri Net Modeling of Automated Manufacturing Systems with Shared Resources. En: Conference on Decision and Control. (1992 : Tucson, Arizona). Proceedings of the 31st Conference on Decision and Control. Tucson, Arizona : IEEE Press, 1992. p. 1184-1189.
EUROPEAN WORKSHOP ON APPLICATION AND THEORY OF PETRI NETS. Application and theory of Petri Nets: selected papers. (1980 : Strasbourg, Francia). Strasbourg: Springer-Verlag, 1982. FORD Robert C., RANDOLPH W Alan, Cross-functional structures: a review and integration of matrix organization and project management, En: Journal of Management, Junio 1992 v18 n2 p267.
GOLDRATT, ELIYAHU, Critical Chain, Great Barrington : North River Press, 1997, 246 p HEYMAN D. P., SOBEL M.J, Handbooks in Operations Research and Management Science: Stochastic Models, Editorial NORTH-HOLLAND vol.2,1990, 723 p. KERZNER, Harold, Project Management for Executives, New York : Van Nostrand Reinhold, 1982, xiv, 716 p. : il. KUMAR Ashok V.K., GANESH L.S., Use of Petri Nets for Resource Allocation in Projects, En: IEEE Transactions on Engineering Management, Feb 1998 v45 n1, p49(12). LUENBERGER, David E. Programación lineal y no lineal. Wilmington, Delaware, Estados Unidos : Addison-Wesley Iberoamericana, 1989. p. 117-163. ISBN 0-201-64408-8. MEHREZ A; MUZUMDAR, M, A Petri Net model view of decision making: An operational management analysis. POMG ISSN 0305-0483. PAGNONI, Anastasia, Project Engineering: Computer-Oriented Planning and Operational Decision Making, Springer Verlag, 1990, pp. 156 –161. XING, Ke-Yi; HU, Bao-Sheng y CHEN, Hao-Xun. Deadlock Avoidance Policy for Petri Net Modeling of Flexible Manufacturing Systems with Shared Resources. En : IEEE Transactions on Automatic Control. Vol. 41, No. 2 (febrero 1996); p. 289-295.
78
ANEXO: LAS REDES DE PETRI EN INTERNET
En Internet es posible encontrar una variedad de información sobre redes de Petri:
probablemente el sitio más importante, ganador de varios premios internacionales, es el Hogar de
la Comunidad de las Redes de Petri en la Universidad de Aarhus, en Dinamarca:
URL: http://www.daimi.aau.dk/PetriNets/.
En esta página es posible encontrar información sobre conferencias internacionales, grupos de
trabajo, e inclusive se puede visitar la página de Carl Adam Petri en la Universidad de Hamburgo.
Esta página también sirvió para obtener software para modelar redes de Petri: como es lógico,
ningún paquete de software esta orientado específicamente a la aplicación de éstas redes en
administración de proyectos, sin embargo hay programas de computador disponibles que son
muy útiles para analizar redes de Petri sin ser un expertos en la teoría. La herramienta que se use
siempre dependerá del tipo de análisis que se quiere hacer y del tipo de red que se desee utilizar.
A continuación se muestran las dos herramientas para PC más interesantes que se examinaron
durante el desarrollo del trabajo y la dirección donde conseguirlas.
79
Visual Object Net ++ http://www.systemtechnik.tui-lmenau.de/~drath/visual_E.htm
Sistema Operativo:
Windows 95 o (recomendado) NT
Tipo de Redes:
Redes Sitio Transición PT
Redes continuas TPN
Visual SimNet http://home.arcor-online.de/wolf.garbe/simnet.html
Sistema Operativo:
DOS (Windows en desarrollo).
Tipo de Redes:
Redes Sitio/Transición PT
Redes Petri de Alto Nivel HLPN
Redes Estocásticas GSPN
Redes con Tiempo TPN
Visual Object Net++, es la herramienta más sencilla de manejar de las dos: la interface gráfica
fue diseñada con gran cuidado y es muy cómoda de manejar. Aunque esta destinada a trabajar
80
con redes TPN, es posible trabajar con redes PN. El inconveniente de esta herramienta es que
aún no hace análisis de invariantes en las redes PN discretas..
Visual Simnet es una herramienta orientada a redes GSPN pero también soporta HLPN, realiza
análisis de invariantes y es muy poderosa pero no es tan fácil de manejar como la herramienta
anterior.
Si bien estas herramientas son poderosas y gratuitas, las aplicaciones más interesantes son
comerciales o corren en ambientes UNIX. En el momento en que se terminó este documento
había interés en la facultad de ingeniería por adquirir algunas herramientas gratuitas para
instituciones educativas, entre ellas DSPNexpress45.
45 LINDEMANN Christoph, Performance Modelling with Deterministic and Stochastic Petri Nets, John Wiley and Sons 1998, 405 p