SlideShare una empresa de Scribd logo
1 de 218
Descargar para leer sin conexión
(i)
PROYECTO FIN DE CARRERA
ANÁLISIS DE UNA RED DE
ACTIVIDADES CON DURACIONES
CONOCIDAS Y BORROSAS
AUTOR: FRANCISCO JAVIER COCO UTRILLA
MADRID, SEPTIEMBRE 2007
UNIVERSIDAD PONTIFICIA COMILLAS
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INFORMÁTICO
Autorizada la entrega del proyecto del alumno:
Francisco Javier Coco Utrilla
EL DIRECTOR DEL PROYECTO
Manuel Rojas Guerrero
Fdo.: .............................. Fecha: ....../ ....../ ......
Vº Bº del Coordinador de Proyectos
Miguel Ángel Sanz Bobi
Fdo.: .............................. Fecha: ....../ ....../ ......
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- I -
RESUMEN
El concepto de lo que es un proyecto, es universal pero bastante
inconcreto. Existen diversas definiciones, según el punto de vista de cada
descriptor, pero en lo que todos parecen coincidir es que es un medio para
llevar a cabo una proyección hacia el futuro con respecto a una situación actual
que se desea cambiar.
En el complejo mundo de las Organizaciones y Empresas, diseñar y
desarrollar un proyecto que consiga aunar los diferentes intereses existentes y
latentes, es una ardua tarea en la que muchas veces tienen que consensuar
promotores y detractores.
Además, a la hora de acometer un proyecto a veces se suelen encontrar
situaciones complicadas para su dirección, planificación, obtención de recursos,
recopilación de datos e incluso su justificación económica, que pueden dificultar
el éxito del mismo.
Por ello, a lo largo del tiempo se han ido confeccionando distintos
métodos de trabajo que persiguen soslayar estos inconvenientes y que
presentados de manera formal y pública reciben el nombre de Metodologías.
Unas están especializadas para confeccionar proyectos en el mundo de
cada organización y otras son de propósito general.
En este Proyecto Final de Carrera se ha desarrollado un sistema de
propósito general que extiende el algoritmo clásico del PERT-CPM basado en
programación dinámica (que permite estudiar una red de actividades) al caso en
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- II -
el que se tiene un conocimiento vago de las duraciones de las diferentes
actividades de la red. Este conocimiento puede ser modelado mediante
números borrosos trapezoidales (y, como casos particulares, intervalos
constantes y números borrosos piramidales).
El sistema se ha diseñado con una arquitectura cliente-servidor que
permite al usuario la creación de un proyecto que parte de una fecha que el
usuario asigna y que está compuesto por un conjunto de actividades que él
mismo diseña a través de un interfaz sencillo e intuitivo.
Por su potencia de desarrollo en soluciones de cualquier tipo,
integración de funciones, facilidad de uso y documentación existente, el
proyecto ha sido desarrollado en su totalidad en el lenguaje de programación
Java (jdk 1.6) con el entorno de desarrollo Eclipse-SDK-3.1.1.
El sistema permite al usuario guardar y cargar los proyectos existentes,
insertar nuevas actividades que puedan surgir, modificarlas y eliminarlas del
proyecto con total facilidad y en cualquier momento. Asimismo se proporcionan
diferentes métodos de desborrosificación de resultados para estimar una
valoración del proyecto en un diagrama de Gantt.
La aplicación se divide en dos subsistemas: cliente y servidor que se
comunican mediante un protocolo a nivel de aplicación diseñando para trabajar
tanto desde el mismo equipo como en una red local o a través de Internet.
La aplicación cliente es la encargada de recoger la información que
aporta el usuario controlando la entrada de datos en el sistema para mantener la
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- III -
información en un estado conforme e íntegro de tal manera que se cumplan las
directrices de los diagramas de red y de las duraciones borrosas. Por otra parte
se presentan las tablas de actividades y etapas generadas por el servidor
enfatizando la ruta crítica del proyecto. Como apoyo se muestran gráficas
descriptivas para la ayuda al diseño y a la comprensión de los resultados.
El servidor se encargará de resolver las redes de actividades enviadas
por el cliente con las opciones de solución elegidas para cada una de las fases
del camino crítico.
El sistema desarrollado en definitiva es capaz de proporcionar una
importante ayuda a la toma de decisiones en el ámbito empresarial para
proyectos con actividades modeladas mediante números borrosos combinando
el algoritmo clásico del PERT-CPM con seis técnicas diferentes de
desborrosificación implementadas, de las cuales cuatro de ellas incorporan un
parámetro asociado dotando a la aplicación de una robustez y versatilidad
sorprendentes.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- IV -
ABSTRACT
The concept about what is a project is universal but no specific enough.
Diverse definitions exist, according to the point of view of every describer, but all
of them seem to agree about it is that it is a way to carry out a projection towards
the future with regard to a current situation that one wants to change.
Inside the complex world of the Organizations and Companies, to design
and develop a project that manages to unite the different existing and latent
interests, it is an arduous task in which often promoters and detractors have to
agree.
In addition, at the moment of undertaking a project it is usual to find
complex situations for its direction, planning, obtaining of resources, summary of
information and even its economic justification, which can impede the success of
it.
For all this, throughout the time there have been created different
methods of work that they chase to avoid these disadvantages and they receive
the name of Methodologies.
Some are specialized to make projects in the world of every organization
and others are of general purpose.
In this project a general purpose system has been developed that
extends the classic algorithm of the PERT-CPM based on dynamic programming
(that allows studying an activities network) to the case in which a vague
knowledge exist about the duration of the different activities in the network. This
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- V -
knowledge can be shaped by means of trapezoidal fuzzy numbers (and, as
particular cases, constant intervals and pyramidal fuzzy numbers).
The system has been designed with a client - server architecture that
allows the user to create a project that initiates from a date that the user assigns
and is composed by a set of activities designed by him across a simple and
intuitive interface.
For its power of development in solutions of any type, integration of
functions, facility of use and existing documentation, the project has been
developed entirely in the Java programming language (jdk 1.6) using the
development environment Eclipse-SDK-3.1.1.
The system allows the user to save and load the existing projects, to
insert new activities that could arise, modify them and eliminate them from the
project with total facility and at any time. Likewise different methods of
defuzzification are provided to estimate a valuation of the project results in
Gantt's graph.
The application is composed by two subsystems: client subsystem and
server subsystem that communicate by an application level protocol designed to
work as much from the same computer as in a local area network or across the
Internet.
The client subsystem is in charge of gathering the information that the
user put in, controlling the entry of information in the system to support the
information in a right and entire state in such a way that the directives of network
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- VI -
diagram and the fuzzy durations are carried out. On the other hand it presents
tables about activities and stages generated by the server emphasizing the
critical path of the project. Descriptive graphs are shown to help with the design
and to the comprehension of the results.
The server will take charge solving the networks of activities sent by the
client with the solution options chosen for each of the phases of the critical path.
The system developed in short is capable to provide an important help to
make a decisions in the business area for projects with activities shaped by
fuzzy numbers combining the classic algorithm of the PERT-CPM with six
different defuzzification methods implemented, in which four of them incorporate
an associate parameter providing the application with a solid and a surprising
versatility.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- A -
ÍNDICE
1. INTRODUCCIÓN Y PLANTEAMIENTO...................................... 1
2. EL PERT/CPM ............................................................................ 5
2.1 GLOSARIO ........................................................................................... 5
2.2 VENTAJAS PERT Y CPM .................................................................... 8
2.3 CAMPO DE ACCIÓN............................................................................ 8
2.4 DISEÑO DEL DIAGRAMA DE RED ..................................................... 9
2.5 EL MÉTODO CPM.............................................................................. 13
2.5.1 APLICACIÓN DEL MÉTODO CPM......................................... 13
2.5.2 EJEMPLO DE CPM................................................................. 18
2.5.3 LIMITACIONES DEL CPM ...................................................... 21
2.6 EL MÉTODO PERT ............................................................................ 22
2.6.1 TIEMPOS DE ESTIMACIÓN DE ACTIVIDAD......................... 22
2.6.2 DETERMINAR LA RUTA CRÍTICA ......................................... 24
2.6.3 VENTAJAS DEL PERT ........................................................... 26
2.6.4 LIMITACIONES....................................................................... 27
2.7 CONCLUSIONES ............................................................................... 27
3. LA LÓGICA BORROSA............................................................ 29
3.1 CONJUNTOS CLÁSICOS .................................................................. 29
3.1.1 FUNCIÓN CARTESIANA ........................................................ 31
3.1.2 OPERACIONES BÁSICAS ENTRE CONJUNTOS ................. 32
3.1.3 PROPIEDADES DE LOS CONJUNTOS CLÁSICOS .............. 33
3.2 CONJUNTOS BORROSOS................................................................ 35
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- B -
3.2.1 FUNCIÓN DE PERTENENCIA................................................ 36
3.2.2 DEFINICIONES BÁSICAS SOBRE
CONJUNTOS BORROSOS ............................................................. 41
3.2.3 OPERACIONES BÁSICAS ENTRE
CONJUNTOS BORROSOS ............................................................. 43
3.2.4 PRINCIPIO DE EXTENSIÓN .................................................. 44
3.2.5 α-CORTES .............................................................................. 45
3.3 NÚMEROS BORROSOS.................................................................... 46
4. PLANTEAMIENTO Y OBJETIVOS DEL PROYECTO .............. 48
4.1 PLANTEAMIENTO DEL PROYECTO ................................................ 49
4.2 OBJETIVOS DEL PROYECTO .......................................................... 49
5. SOLUCIÓN PROPUESTA ........................................................ 52
6. DIAGRAMA DE CONTEXTO .................................................... 53
7. PERFILES Y ÁMBITO............................................................... 54
8. ANÁLISIS.................................................................................. 55
8.1 ANÁLISIS DE REQUISITOS .............................................................. 55
8.1.1 REQUISITOS FUNCIONALES................................................ 55
8.1.2 REQUISITOS NO FUNCIONALES ......................................... 56
8.2 ANÁLISIS FUNCIONAL DETALLADO .............................................. 58
8.2.1 CREACIÓN DEL PROYECTO, INSERCIÓN,
MODIFICACIÓN Y ELIMINACIÓN DE ACTIVIDADES .................... 58
8.2.2 TRATAMIENTO DE LAS DURACIONES BORROSAS........... 59
8.2.3 CREACIÓN DEL ALGORITMO DE SOLUCIÓN ..................... 59
8.2.4 PROTOCOLO DE CONEXIÓN ............................................... 60
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- C -
8.2.5 PRESENTACIÓN DE LOS DATOS......................................... 61
8.2.6 PRESENTACIÓN DE LOS GRÁFICOS .................................. 61
8.2.7 ALMACENAMIENTO DE LOS DATOS ................................... 62
8.2.8 MODIFICACIÓN DE PARÁMETROS DEL PROYECTO Y DEL
PROGRAMA .................................................................................... 62
9. ESTUDIO DE LA ARQUITECTURA.......................................... 63
9.1 EL LENGUAJE JAVA......................................................................... 63
9.2 ESTRUCTURA DEL SISTEMA........................................................... 65
10. DISEÑO DE LA APLICACIÓN................................................ 67
10.1 MODELO DE DOMINIO.................................................................... 68
10.2 MODELO DE DATOS....................................................................... 69
10.2.1 TABLA DE ACTIVIDADES .................................................... 69
10.2.2 TABLA DE ETAPAS.............................................................. 72
10.2.3 TABLA DE ACTIVIDADES FICTICIAS.................................. 74
10.3 MODELO DE CASOS DE USO ........................................................ 75
10.3.1 IDENTIFICACIÓN DE LOS CASOS DE USO ....................... 75
10.3.2 DIAGRAMA DE CASOS DE USO......................................... 76
10.3.3 DESCRIPCIÓN DE LOS CASOS DE USO ........................... 78
10.4 DIAGRAMA DE PAQUETES............................................................ 92
10.4.1 PACKAGE MOTOR............................................................... 92
10.4.2 PACKAGE CLIENTE............................................................. 93
10.4.3 PACKAGE ORG.................................................................... 93
10.4.4 PACKAGE COMMON ........................................................... 94
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- D -
10.5 DIAGRAMA DFD DE PRIMER NIVEL DE
LA APLICACIÓN CLIENTE...................................................................... 95
10.6 DIAGRAMA STATECHART DEL SERVIDOR DE RESOLUCIÓN... 96
11. LA APLICACIÓN CLIENTE .................................................... 97
11.1 DISEÑO Y EDICIÓN DEL PROYECTO............................................ 97
11.1.1 CREACIÓN DE UN NUEVO PROYECTO (CU01)................ 97
11.1.10 SOLUCIÓN DEL PROYECTO........................................... 124
11.1.2 DEFINIR LOS PARÁMETROS DEL PROYECTO (CU02) .... 98
11.1.3 INICIADOR DE ACTIVIDADES (CU03) .............................. 100
11.1.4 CREADOR DE DURACIONES BORROSAS (CU14).......... 103
11.1.5 INICIADOR DE SUCESORAS (CU04)................................ 107
11.1.6 AÑADIR ACTIVIDADES AL PROYECTO (CU05)............... 111
11.1.7 MODIFICAR LAS ACTIVIDADES
DEL PROYECTO (CU06)............................................................... 112
11.1.8 ELIMINAR ACTIVIDADES DEL PROYECTO (CU07) ......... 116
11.1.9 MODIFICAR FECHA DE INICIO DEL PROYECTO (CU02) 122
11.2 COMUNICACIONES....................................................................... 126
11.2.1 CONEXIÓN CON EL SERVIDOR DE
RESOLUCIÓN (CU09)................................................................... 126
11.2.2 MODIFICAR LA CONFIGURACIÓN DE CONEXIÓN CON EL
SERVIDOR (CU13)........................................................................ 129
11.3 GESTIÓN DE ARCHIVOS .............................................................. 130
11.3.1 GUARDADO DE INFORMACIÓN (CU11)........................... 132
11.3.2 CARGA DE INFORMACIÓN (CU12)................................... 135
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- E -
11.4 PRESENTACIÓN DE LA INFORMACIÓN (CU10)......................... 137
11.4.1 INFORMACIÓN BÁSICA..................................................... 137
11.4.2 INFORMACIÓN RESUELTA............................................... 140
12. EL SERVIDOR DE RESOLUCIÓN........................................ 147
12.1 GESTOR DE PETICIONES ............................................................ 147
12.2 MOTOR DE RESOLUCIÓN (CU08)................................................ 149
12.2.1 CREACIÓN DEL DIAGRAMA DE RED............................... 149
12.2.2 FASE HACIA DELANTE DEL MÉTODO CPM.................... 154
12.2.3 FASE HACIA ATRÁS DEL MÉTODO CPM......................... 158
12.2.4 IDENTIFICACIÓN DE LAS ACTIVIDADES CRÍTICAS ....... 165
12.2.5 CALCULAR LOS MÁRGENES DE CADA ACTIVIDAD....... 165
12.2.6 OPCIONES DE DESBORROSIFICACIÓN
PROPORCIONADAS..................................................................... 166
12.2.7 OPCIONES DE RESOLUCIÓN DEL PROYECTO.............. 174
13. EJEMPLO DE ENSAYO ....................................................... 178
14. PLANIFICACIÓN .................................................................. 187
15. ESTUDIO ECONÓMICO ....................................................... 192
15.1 RECURSOS UTILIZADOS ............................................................. 192
15.2 COSTES DEL PROYECTO ............................................................ 193
15.2.1 COSTES DE PERSONAL ................................................... 193
15.2.2 COSTES DE AMORTIZACIÓN DE PROGRAMAS Y
EQUIPOS....................................................................................... 195
15.2.3 COSTES DE MATERIAL..................................................... 196
15.2.4 COSTES INDIRECTOS ...................................................... 197
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- F -
15.3 COSTE TOTAL DEL PROYECTO.................................................. 198
16. CONCLUSIONES Y LÍNEAS FUTURAS .............................. 199
17. BIBLIOGRAFÍA..................................................................... 201
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 1 -
1. INTRODUCCIÓN
Los proyectos, y en especial los proyectos a gran escala, han existido
desde tiempos antiguos. Este hecho lo atestigua la construcción de las
pirámides de Egipto y los acueductos de Roma.
El Proqramme Evaluation and Review Technique (PERT – Técnica de
revisión y evaluación de proyectos) fue desarrollado por científicos de la Oficina
de Proyectos Especiales de la Marina de los Estados Unidos de América. Con
este método se comienza descomponiendo el proyecto en una serie de
actividades, entendiendo por actividad la ejecución de una tarea que necesita
para su realización la utilización de uno o varios tipos de recursos (mano de
obra, maquinaria, materiales, tiempo, etc.), considerando como característica
fundamental su duración. La técnica demostró tanta utilidad que ha ganado
amplia aceptación tanto en el gobierno como en el sector privado.
Casi al mismo tiempo, la Compañía DuPont, junto con la División
UNIVAC de la Remington Rand, desarrolló el Critical Path Method (CPM,
Método del Camino Critico) para controlar la programación de cierres de
mantenimiento de plantas de procesamiento químico de DuPont. El CPM es
idéntico al PERT en concepto y metodología. La diferencia principal entre ellos
es simplemente el método por medio del cual se realizan estimaciones de
tiempo para las actividades del proyecto. Con CPM, los tiempos de las
actividades son deterministas. Con PERT, los tiempos de las actividades son
probabilísticos o estocásticos.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 2 -
El PERT/CPM fue diseñado para proporcionar diversos elementos
útiles de información para los administradores del proyecto. Primero, el
PERT/CPM expone la "ruta crítica" de un proyecto. Estas son las actividades
que limitan la duración del proyecto. En otras palabras, para lograr que el
proyecto se realice pronto, las actividades de la ruta crítica deben realizarse
pronto. Por otra parte, si una actividad de la ruta crítica se retarda, el proyecto
como un todo se retarda en la misma cantidad. Las actividades que no están
en la ruta crítica tienen una cierta cantidad de holgura; esto significa que
pueden empezarse más tarde, y permitir que el proyecto como un todo se
mantenga en programa. El PERT/CPM identifica estas actividades y la cantidad
de tiempo disponible para retardos. A esto se le llama margen. Hay dos tipos
de márgenes: el margen libre (retraso que puede existir en el comienzo o en la
ejecución de una actividad sin modificar la fecha prevista de la etapa sucesora)
y el margen total (retraso que puede existir en el comienzo o en la ejecución de
una actividad sin modificar la fecha prevista de finalización del proyecto).
Ambos márgenes para la ruta crítica valen cero.
Finalmente, el PERT/CPM proporciona una herramienta para controlar
y monitorizar el progreso del proyecto. Las actividades de la ruta crítica,
permiten por consiguiente, recibir la mayor parte de la atención, debido a que la
terminación del proyecto, depende fuertemente de ellas. Las actividades no
críticas se manipularan y remplazaran en respuesta a la disponibilidad de
recursos.
En los años 60, en la Universidad de California en Berkeley, Lotfi A.
Zadeh introdujo el concepto de la lógica borrosa (ZADE65) guiado por el
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 3 -
principio de que las matemáticas pueden ser usadas para encadenar el
lenguaje con la inteligencia humana. Algunos conceptos pueden ser mejor
definidos en términos de palabras, que por matemáticas; la lógica borrosa y su
expresión en conjuntos borrosos, proveen una disciplina que puede construir
mejores modelos de la realidad.
La lógica borrosa es básicamente lógica multivaluada que amplifica los
enunciados de la lógica clásica intentando aplicar la forma de pensar del ser
humano a la programación de computadores, sensores, chips, etc. La habilidad
de la lógica borrosa para procesar valores parciales de verdad ha sido de gran
ayuda para la ingeniería.
La aplicación del adjetivo "borrosa" es debida a que los valores de
verdad no-deterministas utilizados en la lógica borrosa tienen mayoritariamente
una connotación de incertidumbre. De hecho, lo borroso puede entenderse
como la posibilidad de asignar más valores de verdad a los enunciados que
"falso" o "verdadero" e incluso en determinadas áreas de conocimiento, estos
enunciados van asociados a valores de verdad que son grados de veracidad o
falsedad.
Resumiendo, puede llegar a redefinir los grados de veracidad de los
enunciados de salida conforme se refinan los de los de entrada, por lo que
algunos sistemas de lógica borrosa ejercen una labor de aprendizaje, y son
excelentes mecanismos de control de procesos.
En conclusión, la lógica borrosa crea aproximaciones matemáticas en
la resolución de ciertos tipos de problemas, produciendo resultados exactos a
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 4 -
partir de datos imprecisos, siendo por ello, especialmente útiles en aplicaciones
de tipo electrónico e informático.
En el presente proyecto se estudia la posibilidad de aunar en una
aplicación informática dos reconocidas técnicas de ingeniería, el PERT/CMP y
la lógica borrosa, para integrar en la planificación de proyectos las actividades
que no tengan una duración determinada por diferentes factores. Estos factores
son las actividades nuevas, actividades que han sido desarrolladas de forma
experimental, y no están bien definidas, y actividades que han sido realizadas
múltiples veces pero varían dentro de un rango. Todas ellas se pueden modelar
usando la lógica borrosa por estimación de un experto en la materia.
La planificación de proyectos repercute económicamente en las
empresas que destinan sus recursos a un proyecto determinado deseando
necesariamente que se finalice en la fecha prevista. A la vista del proyecto, los
caminos críticos dependerán de las funciones que rijan sus actividades y
variarán según el tratamiento que se dé a las mismas.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 5 -
2. EL PERT/CPM
2.1 GLOSARIO
Para lograr una adecuada comprensión del tema a desarrollar ha
redactado un glosario que sirva como guía para comprender la terminología
empleada.
PERT. La traducción de las siglas en inglés significan: técnica de
revisión y evaluación de programas, es una técnica de redes desarrollado en la
década de los 50, utilizada para programar y controlar programas a realizar.
Cuando hay un grado extremo de incertidumbre y cuando el control sobre el
tiempo es más importante sobre el control del costo, PERT es mejor opción que
CPM.
CPM. La traducción de las siglas en inglés significan: método del
camino crítico, es uno de los sistemas que siguen los principios de redes, que
fue desarrollado en 1957 y es utilizado para planear y controlar proyectos,
añadiendo el concepto de costo al formato PERT. Cuando los tiempos y costos
se pueden estimar relativamente bien, el CPM puede ser superior a PERT.
Actividad. Es un trabajo que se debe llevar a cabo como parte de un
proyecto, es simbolizado mediante una arista dirigida de la red de PERT.
Lista de actividades. Es una lista ordenada donde se recopilan todas
las diferentes actividades que intervienen en la realización de un proyecto.
Etapa. Se dice que se realiza una etapa, cuando todas las actividades
que llegan a un mismo nodo han sido terminadas. Son los círculos numerados
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 6 -
que forman parte del diagrama de red y representan el principio y el fin de las
actividades que intervienen en el proyecto.
Arista. Son las flechas que forman parte del diagrama de red y
representan cada una de las actividades del proyecto.
Ruta crítica o camino crítico. Se llama camino crítico tanto al método
como a la serie de actividades contadas desde la iniciación del proyecto hasta
su terminación que no tienen flexibilidad en su tiempo de ejecución, por lo que
cualquier retraso que sufriera alguna de las actividades de la serie provocaría
un retraso en todo el proyecto. Desde otro punto de vista, es la serie de
actividades que indica la duración total del proyecto.
Actividad Predecesora. Es una actividad que debe preceder (estar
antes) inmediatamente a una actividad dada en un proyecto.
Actividad Sucesora. Es una actividad que debe suceder (estar
después) inmediatamente a una actividad dada en un proyecto.
Diagrama de red. Es una red de círculos numerados (etapas)
conectados con flechas (actividades), donde se muestran todas las actividades
que intervienen en un determinado proyecto y la relación de prioridad entre las
actividades en la red así como las duraciones previstas y límites para cada
etapa del proyecto y los márgenes de cada actividad.
Actividad ficticia. Actividades imaginarias que existen dentro del
diagrama de red, sólo con el propósito de establecer las relaciones de
precedencia y no se les asigna tiempo alguno, es decir, que la actividad ficticia
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 7 -
Permite dibujar redes con las relaciones de precedencia apropiadas, se
representa por medio de una línea punteada.
Margen libre. Retraso que puede existir en el comienzo o en la
ejecución de una actividad sin modificar la fecha prevista de la etapa sucesora.
Margen total. Retraso que puede existir en el comienzo o en la
ejecución de una actividad sin modificar la fecha prevista de finalización del
proyecto.
Tiempo optimista. Es el tiempo mínimo o más corto posible en el cual
es probable que sea terminada una actividad, se simboliza con a en las
duraciones borrosas que se estudiaran en el capítulo siguiente.
Tiempo más probable. Es el tiempo más probable que toma una
actividad, en otras palabras, es el tiempo normal que se necesita en
circunstancias ordinarias para realizarla, se simboliza con el intervalo [A,B] en
las duraciones borrosas.
Tiempo pesimista. Es el tiempo máximo o más largo posible en el cual
es probable que sea terminada una actividad, bajo las condiciones más
desfavorables, simbolizado con b en las duraciones borrosas.
Fecha prevista. Es la fecha de una etapa en la que se prevé que todas
las actividades que llegan a ella estarán terminadas.
Fecha límite. Es la fecha de una etapa que si se rebasa implica el
retraso de todo el proyecto.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 8 -
Intervalo de flotamiento. Es el intervalo de tiempo en el que se puede
completar una etapa sin retrasar el proyecto. Comprende desde la fecha
prevista hasta la fecha límite para cada etapa. Si la etapa forma parte del
camino crítico el intervalo de flotamiento será cero.
2.2 VENTAJAS PERT Y CPM
1. Enseña una disciplina lógica para planificar y organizar un programa
detallado de largo alcance.
2. Identifica los elementos (segmentos) más críticos del plan, en que
problemas potenciales puedan perjudicar el cumplimiento del programa
propuesto.
3. Ofrece la posibilidad de simular los efectos de las decisiones alternativas
o situaciones imprevistas y una oportunidad para estudiar sus
consecuencias en relación a los plazos de cumplimiento de los
programas.
4. Aporta la probabilidad de cumplir exitosamente los plazos propuestos.
En otras palabras: CPM es un sistema dinámico, que se mueve con el
progreso del proyecto, reflejando en cualquier momento el STATUS
presente del plan de acción.
2.3 CAMPO DE ACCIÓN
El campo de acción de este método es muy amplio, dada su gran
flexibilidad y adaptabilidad a cualquier proyecto grande o pequeño. Para
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 9 -
obtener los mejores resultados debe aplicarse a los proyectos que posean las
siguientes características:
1. Que el proyecto sea único, no repetitivo, en algunas partes o en su
totalidad.
2. Que se deba ejecutar todo el proyecto o parte de el, en un tiempo
mínimo, sin variaciones, es decir, en tiempo crítico.
3. Que se desee el costo de operación más bajo posible dentro de un
tiempo disponible.
Dentro del ámbito aplicación, el método se ha estado usando para la
planeación y control de diversas actividades, tales como construcción de
presas, apertura de caminos, pavimentación, construcción de casas y edificios,
reparación de barcos, investigación de mercados, movimientos de colonización,
estudios económicos regionales, auditorias, planeación de carreras
universitarias, distribución de tiempos de salas de operaciones, ampliaciones
de fábrica, planeación de itinerarios para cobranzas, planes de venta, censos
de población, etcétera.
2.4 DISEÑO DEL DIAGRAMA DE RED
Para aplicar CPM o PERT se requiere conocer la lista de actividades
que incluye un proyecto. Se considera que el proyecto esta terminado cuando
todas las actividades han sido completadas. Para cada actividad, puede existir
un conjunto de actividades predecesoras que deben ser completadas antes de
que comience la nueva actividad. Se construye una malla o red del proyecto
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 10 -
para graficar las relaciones de precedencia entre las actividades. En dicha
representación grafica, cada actividad es representada como un arco y cada
nodo (etapa) ilustra la culminación de una o varias actividades.
Consideremos un proyecto que consta de solo dos actividades A y B.
Supongamos que la actividad A es predecesora de la actividad B. La
representación grafica de este proyecto se muestra en la figura. Así, el nodo 2
representa la culminación de la actividad A y el comienzo de la actividad B.
Si suponemos ahora que las actividades A y B deben ser terminadas
antes que una actividad C pueda comenzar, la malla del proyecto queda como
se muestra en la ilustración 2. En este caso, el nodo representa que las
actividades A y B se han terminado, además del inicio de la actividad C. Si la
actividad A fuera predecesora de las actividades B y C, la red quedara como se
muestra en la ilustración 3.
Dado un conjunto de actividades y sus relaciones de predecisión o
sucesión, se puede construir una representación grafica de acuerdo a las
siguientes reglas:
A B
1 2 3
Ilustración 2.1 – Diagrama de red de dos actividades
3
2
1
A
C
B
21
A
B
C
Ilustración 2.2 – A y B preceden a C Ilustración 2.3 – A precede a B y C
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 11 -
• El nodo 1 representa el inicio del proyecto. Por lo tanto, las actividades
que parten del nodo 1 no pueden tener predecesoras.
• El nodo Terminal o final del proyecto debe representar el término de
todas las actividades incluidas en la red.
• Una actividad no puede ser representada por más de un arco en la red.
• Dos nodos deben estar conectados como máximo por un arco.
Para no violar las reglas 3 y 4, a veces es necesario introducir una
actividad ficticia o dummy que posee tiempo de duración nulo. Por ejemplo,
supongamos que las actividades A y B tienen como actividad sucesora a la
actividad C y además comienzan al mismo tiempo o en la misma etapa. En
este caso, una primera representación podría ser la indicada en la figura
siguiente.
Ilustración 2.4 – Representación errónea de sucesión sin actividad ficticia
Sin embargo, la red de la ilustración 4 viola el cuarto punto. Para
corregir este problema, se introduce una actividad ficticia indicada con un arco
segmentado en la figura.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 12 -
Ilustración 2.5 – Actividad dummy
La red de la ilustración 5 refleja el hecho de que la actividad C tiene
como predecesoras a A y B, pero sin violar el punto 4. En otros casos, se
deben agregar actividades dummy para no violar la regla 3. En la siguiente
figura se muestra la lógica para construir un diagrama de red.
Ilustración 2.6 – Lógica de construcción del diagrama de red
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 13 -
2.5 EL MÉTODO CPM
2.5.1 APLICACIÓN DEL MÉTODO CPM
Los pasos a seguir para plantear un proyecto con el método del camino
crítico CPM son:
Especificar las actividades individuales. Se realiza una lista de
todas las actividades de las que se compone el proyecto. En este listado se
puede añadir un identificador a cada actividad y una descripción de la misma.
Es obligado estimar la duración de cada actividad, modelarla según la función
de probabilidad a la que se ajuste o representarla mediante un número borroso
que se explicara en el siguiente apartado del proyecto.
Determinar la secuencia de las actividades. Algunas actividades son
dependientes en la terminación de otras, es decir son las sucesoras de otras
actividades que necesitan completarse antes de que éstas empiecen. Un
listado de los precursores inmediatos de cada actividad o un listado de los
sucesores de cada actividad es útil para construir el diagrama de la red del
CPM.
Dibujar el diagrama de la red. Una vez que se hayan definido las
actividades, el diagrama del CPM puede ser dibujado. El CPM fue desarrollado
originalmente como actividad en red del nodo (AON), pero algunos
planificadores del proyecto prefieren especificar las actividades en los arcos.
Hay que tener en cuenta las reglas para la construcción del diagrama descritas
anteriormente.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 14 -
Añadir la información al diagrama de red. La información recopilada
para cada actividad es aconsejable añadirla en el diagrama. La etapa inicial se
numerará con un uno. Se irán numerando las diferentes etapas hasta llegar a la
final del proyecto que tendrá el número mayor. En la figura siguiente se
representa la información que debería contener el diagrama en este apartado.
Ilustración 2.7 – Información primaria de un diagrama de red
Fase hacia delante. En esta fase se pretende determinar los
instantes más tempranos o la fecha prevista para cada etapa o nodo. Para ello
se asigna al nodo inicial la fecha prevista cero. Luego se elige un nodo tal que
todos los anteriores que estén unidos directamente a él por una actividad ya
tengan fecha prevista. Se etiqueta el nodo elegido con la duración máxima de
la suma de la duración cada actividad más la fecha prevista del nodo del que
proviene. Por tanto, usando la notación tk para la fecha prevista del nodo k y ti,k
para la duración de la actividad que va del nodo i al k, la formula a emplear es:
},...,,max{ ,,22,11 knmnmknnknnk ttttttt +++=
Ecuación 2.1
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 15 -
Este paso se repite hasta etiquetar el nodo final, entonces esta será la duración
mínima del proyecto.
Fase hacia atrás. En esta fase se pretende determinar los instantes
más tardíos o la fecha límite para cada etapa o nodo. Para ello se asigna al
nodo final la fecha límite, siendo esta la misma que su fecha prevista. Luego se
elige un nodo tal que todos los siguientes que estén unidos directamente a él
por una actividad ya tengan fecha límite. Se etiqueta el nodo elegido con la
duración mínima de la resta de la fecha límite del nodo al que llega menos la
duración de la actividad que los une. Por tanto, usando la notación ti* para la
fecha límite del nodo i y ti,k para la duración de la actividad que va del nodo i al
k, la formula a emplear es:
},...,,min{* ,2,21,1 nminmninnini ttttttt −−−=
Ecuación 2.2
Este paso se repite hasta etiquetar el nodo inicial, debiendo ser éste igual a su
fecha prevista, es decir, cero.
Identificar las actividades críticas. Habiendo determinado las fechas
previstas y límites de todos los nodos de la red, la identificación del camino
crítico es sencilla. Las actividades críticas de la red serán aquellas que unan
aquellos nodos cuyas fechas previstas y límites sean iguales (las etapas con
intervalo de flotamiento igual a cero). Estos nodos también forman parte del
camino crítico.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 16 -
Calcular los márgenes de cada actividad. Los márgenes u holguras
de cada actividad son los retrasos que puede tener cada actividad. Se calcula
tanto el margen libre como el total denotándolos con Li,k y Si,k respectivamente.
kiikki
kiikki
tttS
tttL
,,
,,
* −−=
−−=
Ecuación 2.3
Por tanto el margen libre de la actividad que va del nodo i al k será el retraso
que puede existir en el comienzo o en la ejecución de la actividad que va de i a
k sin modificar la fecha prevista de la etapa k. El margen total de la actividad
que va del nodo i al k será el retraso que puede existir en el comienzo o en la
ejecución de una actividad que va de i a k sin modificar la fecha prevista de
finalización del proyecto. Cabe destacar que las actividades que formen parte
de la ruta crítica tendrán ambos márgenes iguales a cero.
Los datos ahora de los cuales se compone el diagrama y los lugares
donde se sitúan se muestran en la imagen 8.
Ilustración 2.8 – Información completa de un diagrama de red
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 17 -
Realizar el diagrama de Gantt. El diagrama de es una popular
herramienta gráfica cuyo objetivo es el de mostrar el tiempo de dedicación
previsto para diferentes actividades a lo largo de un tiempo total determinado. A
pesar de que, en principio, el diagrama de Gantt no indica las relaciones
existentes entre actividades, la posición de cada tarea a lo largo del tiempo
hace que se puedan identificar dichas relaciones e interdependencias.
En gestión de proyectos, el diagrama de Gantt muestra el origen y final de las
diferentes actividades y las dependencias entre las mismas. Desde su
introducción los diagramas de Gantt se han convertido en una herramienta
básica en la gestión de proyectos de todo tipo, con la finalidad de representar
las diferentes actividades programadas como parte de un proyecto o para
mostrar una línea de tiempo en las diferentes actividades haciendo el método
más eficiente. Aunque un diagrama de Gantt es fácilmente comprensible para
proyectos pequeños en los que el diagrama cabe en una única hoja de papel o
en una pantalla, puede ser bastante engorroso para proyectos con más de
unas 30 actividades.
Actualizar el diagrama según progresa el proyecto. Los tiempos
reales de la terminación de la tarea serán sabidos y el diagrama de la red se
puede poner al día para incluir esta información. Una trayectoria crítica nueva
puede emerger, y los cambios estructurales se pueden realizar en la red si los
requisitos del proyecto cambian.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 18 -
2.5.2 EJEMPLO DE CPM
A continuación se muestra un ejemplo siguiendo los pasos para
resolver una red de actividades CPM:
Especificar las actividades individuales y determinar la secuencia
de las actividades.
Tabla 2.1 – Descripción de las actividades del proyecto
Dibujar el diagrama de la red y añadirle la información
Ilustración 2.9 – Diagrama de red con información básica
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 19 -
Fase hacia delante.
Ilustración 2.10 – Diagrama de red tras la fase hacia delante
Fase hacia atrás.
Ilustración 2.11 – Diagrama de red tras la fase hacia atrás
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 20 -
Identificar las actividades críticas.
Ilustración 2.12 – Identificación del camino crítico
Calcular los márgenes de cada actividad.
Ilustración 2.13– Diagrama de red con información completa
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 21 -
Realizar el diagrama de Gantt.
Ilustración 2.14 – Diagrama de red proporcionado por la aplicación
2.5.3 LIMITACIONES DEL CPM
El CPM fue desarrollado para proyectos bastante rutinarios con
incertidumbre mínima en los tiempos de la terminación del proyecto. Para otros
proyectos menos rutinarios hay más incertidumbre en los tiempos de
terminación, ello trae consigo las limitaciones del modelo determinista del CPM
al introducir incertidumbre. Una alternativa al CPM es el modelo del
planeamiento del proyecto del PERT, que permite que una gama de duraciones
sea especificada para cada actividad.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 22 -
2.6 EL MÉTODO PERT
En CPM se asume que la duración de cada actividad es conocida con
certeza. Claramente, en muchas ocasiones este supuesto no es valido. PERT
intenta corregir este error suponiendo que la duración de cada actividad es una
variable aleatoria.
2.6.1 TIEMPOS DE ESTIMACIÓN DE ACTIVIDAD
Para cada activad, se requiere estimar las siguientes cantidades:
a = Tiempo Optimista. Duración de la actividad bajo las condiciones
más favorables
b = Tiempo Pesimista. Duración de la actividad bajo las condiciones
más desfavorables
m = Tiempo Normal. El valor más probable de la duración de la
actividad.
La forma de la distribución se muestra en la Ilustración 15. El tiempo
más probable es el tiempo requerido para completar la actividad bajo
condiciones normales. Los tiempos optimistas y pesimistas proporcionan una
medida de la incertidumbre inherente en la actividad, incluyendo desperfectos
en el equipo, disponibilidad de mano de obra, retardo en los materiales y otros
factores.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 23 -
Ilustración 2.15 – Estimación del tiempo optimista, pesimista y normal
Con la distribución definida, la media (esperada) y la desviación están-
dar, respectivamente, del tiempo de la actividad para la actividad Z puede
calcularse por medio de las fórmulas de aproximación:
( )
( )
6
6
4
ab
Z
bma
ZTe
−
=
++
=
σ
Ecuación 2.4
El tiempo esperado de finalización de un proyecto es la suma de todos
los tiempos esperados de las actividades sobre la ruta crítica. De modo similar,
suponiendo que las distribuciones de los tiempos de las actividades son
independientes (una suposición fuertemente cuestionable), la varianza del
proyecto es la suma de las varianzas de las actividades en la ruta crítica.
Si Tij es la variable aleatoria asociada a la duración de la actividad (i,j),
PERT asume que Tij sigue una distribución Beta. Sin entrar en mayores
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 24 -
detalles de esta distribución, se puede demostrar que el valor esperado y la
varianza de la variable aleatoria Tij quedan definidas por:
[ ] ( )
[ ] ( )
36
6
4
2
ab
TijV
bma
ZTijE e
−
=
++
=
Ecuación 2.5
Por lo tanto, el valor esperado y la varianza de una ruta pueden ser
estimadas según:
[ ]
( )
∑∈Rutaij
Tij
= Duración esperada de la ruta
[ ]
( )
∑∈Rutaij
Vij
= Variación de la duración de la ruta
2.6.2 DETERMINAR LA RUTA CRÍTICA
La ruta crítica es determinada agregando los tiempos para las
actividades en cada secuencia y determinando la ruta mas larga del proyecto.
La ruta crítica determina el tiempo total del calendario requerido para el
proyecto. Si las actividades fuera de la ruta cítrica aceleran o retrasaron el
tiempo (dentro de los límites), entonces el tiempo total de proyecto no varía. Al
tiempo de una actividad no crítica de la ruta, que no altera la duración del
proyecto, se denomina tiempo flojo.
Si la ruta crítica del proyecto no resulta obvia, entonces puede ser
provechoso determinar las cuatro cantidades siguientes para cada actividad:
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 25 -
• ES, principio temprano.
• EF, principio tardío.
• LS, terminación temprana.
• LF, terminación tardía.
Se calculan estos tiempos usando la duración prevista para las
actividades relevantes. Los tiempos más tempranos del comienzo y del final de
cada actividad son determinados trabajando adelante a través de la red y
determinando el tiempo más temprano en el cual una actividad puede
comenzar y acabar a considerar sus actividades del precursor. Los tiempos
más tardíos del comienzo y del final son los tiempos más tardíos en que una
actividad puede comenzar y acabar sin variar el proyecto. El LS y el LF son
encontrados trabajando al revés a través de la red. La diferencia en el final más
tardío y más temprano de cada actividad es holgura de esa actividad. La ruta
crítica entonces es la trayectoria a través de la red en la cual ningunas de las
actividades tienen holgura.
La variación en el tiempo de la terminación del proyecto puede ser
calculada sumando las variaciones en los tiempos de la terminación de las
actividades en la ruta crítica. Dado esta variación, se puede calcular la
probabilidad que el proyecto será terminado por cierta fecha si se asume que
una distribución normal de la probabilidad para la trayectoria crítica.
Sea CP la variable aleatoria asociada a la duración total de las
actividades de la ruta crítica determinadas mediante CPM. PERT asume que la
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 26 -
ruta crítica encontrada a través de CPM contiene suficientes actividades para
emplear el Teorema Central del Límite y concluir que CP se distribuye
normalmente.
( )
TijCP
Rutaij
∑∈
=
Ecuación 2.6
Puesto que la ruta crítica determina la fecha de la terminación del
proyecto, el proyecto puede ser acelerado agregando los recursos requeridos
para disminuir la duración para las actividades en la ruta crítica.
2.6.3 VENTAJAS DEL PERT
El PERT es útil porque proporciona la información siguiente:
• Tiempo previsto de la terminación del proyecto.
• Probabilidad de la terminación antes de una fecha especificada.
• Las actividades de la trayectoria crítica que afectan directamente el
tiempo de la terminación.
• Las actividades que tienen tiempo flojo y que pueden prestar recursos a
las actividades de la trayectoria crítica.
• Fechas del comienzo y de fin de la actividad.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 27 -
2.6.4 LIMITACIONES
A continuación se describen algunas de las debilidades del PERT:
• Las estimaciones del tiempo de la actividad son algo subjetivas y
dependen del juicio. En casos donde hay poca experiencia en la
ejecución de una actividad, los números pueden ser solamente una
conjetura. En otros casos, si la persona o el grupo que realiza la
actividad estiman el tiempo puede haber una mejor estimación.
• Incluso si se estiman correctamente los tiempos de la actividad, el PERT
asume una distribución beta para éstos aunque la distribución real
puede ser diferente.
• El PERT asume que la distribución de la probabilidad del tiempo de la
terminación del proyecto es igual que el de la ruta crítica. Otras
trayectorias pueden convertirse en la ruta crítica si se retrasan sus
actividades asociadas, el PERT subestima constantemente el tiempo
previsto de la terminación del proyecto.
2.7 CONCLUSIONES
El PERT y CPM han sido aplicados a numerosos proyectos. El PERT
se desarrolló para proyectos en donde hubiera incertidumbre en el tiempo de
las actividades (usualmente debido a que el proyecto nunca se había intentado
antes y por tanto no había bases de datos para los tiempos de las actividades).
Esto condujo al enfoque probabilístico que se tomó. La principal
desventaja es que no es funcional para grandes proyectos, debido a los tres
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 28 -
estimados de tiempo que se requieren en cada. Además, el coste de actualizar
y mantener la información del proyecto con el tiempo en ambientes tan dinámi-
cos, puede ser excesivamente trabajoso.
Por otra parte, el CPM se desarrolló para manejar proyectos repetitivos.
Obviamente, se gana gran cantidad de experiencia con el tiempo en tales
circunstancias, aun cuando dos proyectos puede que no sean iguales. Esta
experiencia llevó al análisis de técnicas de colisión utilizadas en las redes CPM.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 29 -
3. LA LÓGICA BORROSA
En 1965, L. A. Zadeh introduce la teoría de conjuntos borrosos
(ZADE65), como un mecanismo para representar la vaguedad e imprecisión de
los conceptos empleados en el lenguaje natural. Estos conjuntos borrosos
fueron definidos como una extensión de los conjuntos clásicos capaz de
modelar la imprecisión propia de los conceptos humanos. A mediados de los 70
llega la ampliación del concepto de conjunto al de lógica, apareciendo las
lógicas borrosas y las aplicaciones a sistemas de control. Hoy en día son
muchas las aplicaciones tanto industriales como domésticas que hacen uso de
este paradigma.
3.1 CONJUNTOS CLÁSICOS
Como se ha apuntado, el origen de la lógica borrosa es la noción de
conjunto borroso. Antes de abordar el estudio de la Teoría de Conjuntos
Borrosos, se revisarán algunos de los conceptos básicos de la Teoría Clásica,
con el objeto de alcanzar una mayor comprensión de ambas.
El punto de partida de la teoría de conjuntos son las nociones de
elemento y de conjunto. Un conjunto se define genéricamente como una
colección de elementos. Típicamente los elementos que forman parte de un
conjunto tienen algún tipo de propiedad en común que les haga susceptibles de
pertenecer al conjunto, pero tal requisito es meramente anecdótico. El conjunto
se suele representar con una letra mayúscula, tipo A, B, C, etc., y los
elementos del mismo se representan con una letra minúscula (a, b, c, etc.).
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 30 -
Sobre los conjuntos se define una relación de pertenencia, la cual se
denota con el símbolo ∈. Así pues, si el elemento a pertenece al conjunto A,
este hecho se formaliza mediante la expresión Aa ∈ y en el caso en que b no
pertenezca a A se escribe Ab ∉ .
Respecto a la forma de descripción del conjunto, ésta se puede realizar
de manera enumerativa, },...,,{ 21 naaaA = , o bien, mediante la ley de formación
a la que se ha hecho referencia A =”los diez primeros números naturales”. Tal
definición, como puede imaginarse, es equivalente a escribir de forma
enumerativa }10,...,2,1{=A .
Se define el cardinal de un conjunto como el número de elementos que
forman parte de dicho conjunto. Si dicho cardinal es un número finito, el
conjunto se denominará finito. Caso contrario será infinito. Dentro de estos
últimos, deben distinguirse los de cardinal numerable, que serán aquellos
cuyos elementos se pueden poner en relación 1:1 con los números enteros (por
ejemplo, el conjunto de los números pares), por otra parte nos encontraremos
conjuntos de cardinal no numerable, como, por ejemplo, el conjunto de los
números reales comprendidos entre dos números a y b.
La relación de inclusión se deriva de la relación de pertenencia; un
conjunto B se dice que está incluido dentro de un conjunto A cuando todos los
elementos de B están en A. Si tal es el caso, podemos expresar de forma
abreviada que AB ⊂ , o bien que BA ⊃ . Si se verifica que AB ⊂ y que BA ⊃
de forma simultánea, entonces es que los dos conjuntos son iguales.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 31 -
Dos conjuntos de dice que son disjuntos si no tienen ningún elemento
en común. A estos conjuntos se les denomina también mutuamente
excluyentes.
Dado un problema, el conjunto universal, denotado por S, será el
conjunto formado por todos los elementos del problema. De forma
complementaria, el conjunto vacío, denotado por ∅, será un conjunto sin
ningún elemento. Como es natural, los conjuntos S y ∅ son mutuamente
excluyentes.
Sea S un universo del cual cualquier conjunto A es subconjunto, esto
es:
SA ⊆ , A∀
Ecuación 3.1
En teoría clásica de conjuntos cualquier elemento x perteneciente a S
pertenece o no pertenece al subconjunto A de manera clara e inequívoca, sin
que exista ninguna otra posibilidad al margen de estas dos.
La pertenencia o no de un elemento arbitrario x a un subconjunto A
viene dada en la mayoría de los casos por la verificación o no de un predicado
que caracteriza a A y da lugar a una bipartición del universo de discurso S.
3.1.1 FUNCIÓN CARTESIANA
El concepto de pertenencia o no de un elemento a un conjunto A puede
expresarse numéricamente mediante una función característica. Esta función
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 32 -
asigna a cada elemento x del universo de discurso un dígito binario (1 ó 0)
según x pertenezca o no al conjunto A.



∉
∈
=
→
Axsi
Axsi
x
Sx
A
A
0
1
)(
}1,0{:)(
ϕ
ϕ
Ecuación 3.2
Por ejemplo, el conjunto }10,9,8,7,6,5,4,3{=A se puede representar por
su función característica


 ∈
=
casootroen
xpara
xA
0
}10,9,8,7,6,5,4,3{1
)(ϕ
Ecuación 3.3
3.1.2 OPERACIONES BÁSICAS ENTRE CONJUNTOS
Dados dos conjuntos cualesquiera A y B incluidos en S es posible
definir un conjunto de operaciones básicas entre ellos:
Complemento: El complemento de A se denota por A, y está formado
por todos los elementos de S que no pertenecen a A (operador unario).
AxsiAx ∉∈
Ecuación 3.4
Su función de característica será:
)(1)( xx AA
ϕϕ −=
Ecuación 3.5
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 33 -
Intersección: se denota por BA ∩ y se define como el conjunto
formado por aquellos elementos de S que pertenecen a A y a B
simultáneamente:
BxyAxsiBAx ∈∈∩∈
Ecuación 3.6
Su función de característica será:
))(),(min()( xxx BABA ϕϕϕ =∩
Ecuación 3.7
Unión: Es el conjunto formado por aquellos elementos que pertenecen
a A, o pertenecen a B, o bien a ambos simultáneamente. Se denota por BA ∪ .
BxóAxsiBAx ∈∈∪∈
Ecuación 3.8
Su función de característica será:
))(),(max()( xxx BABA ϕϕϕ =∪
Ecuación 3.9
3.1.3 PROPIEDADES DE LOS CONJUNTOS CLÁSICOS
Las operaciones entre conjuntos clásicos presentan ciertas leyes y
propiedades:
1. Propiedad conmutativa
ABBA
ABBA
∩=∩
∪=∪
Ecuación 3.10
2. Propiedad asociativa
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 34 -
)()(
)()(
CBACBA
CBACBA
∩∩=∩∩
∪∪=∪∪
Ecuación 3.11
3. Leyes de idempotencia
AAA
AAA
=∩
=∪
Ecuación 3.12
4. Leyes de absorción
AABA
AABA
=∪∩
=∩∪
)(
)(
Ecuación 3.13
5. Propiedad distributiva
)()()(
)()()(
CABACBA
CABACBA
∩∪∩=∪∩
∪∩∪=∩∪
Ecuación 3.14
6. Propiedades de absorción por S y ∅
∅=∅∩
=∪
A
SSA
Ecuación 3.15
7. Propiedades de identidad
AA
ASA
=∅∪
=∩
Ecuación 3.16
8. Involución del complemento
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 35 -
AA =
Ecuación 3.17
9. Leyes de Morgan
BABA
BABA
∪=∩
∩=∪
Ecuación 3.18
10. Leyes complementarias
∅=∩
=∪
AA
SAA
Ecuación 3.19
3.2 CONJUNTOS BORROSOS
En la sección anterior se ha visto cómo la mayoría de las veces los
conjuntos clásicos se definen mediante un predicado que da lugar a una clara
bipartición del universo de discurso S. Sin embargo, el razonamiento humano
utiliza frecuentemente predicados de los cuales no resulta esa bipartición; son
los denominados predicados vagos.
Como ejemplo, se propone la variable edad y tres conjuntos para
definir a los individuos; joven, maduro y viejo.
Por supuesto, es imposible dar a una persona una definición clásica, ya
que su correspondiente predicado no divide el universo en tres partes
claramente diferenciadas. No resulta nada fácil afirmar con rotundidad que una
persona es joven o no lo es. El problema podría resolverse en parte
considerando que una persona es joven cuando su edad supera cierto umbral
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 36 -
fijado de antemano. Decimos que el problema tan sólo se resuelve en parte, y
de manera no muy convincente, por dos motivos: de una parte el umbral
mencionado se establece de una manera arbitraria, y por otro lado podría darse
el caso de que dos personas con edades muy diferentes fuesen considerados
ambos como jóvenes. Evidentemente, el concepto joven así definido nos daría
una información muy pobre sobre la edad de la persona en cuestión.
La manera más apropiada de dar solución a este problema es
considerar que la pertenencia o no pertenencia de una persona x al conjunto
joven no es absoluta sino gradual. En definitiva, definiremos joven como un
conjunto borroso. Su función característica (ahora “de pertenencia") ya no
adoptará valores en el conjunto discreto {0,1}, sino en el intervalo cerrado [0,1].
Mediante notación matemática se define un conjunto borroso A como:
}|))(,{( SxxxA A ∈= µ
Ecuación 3.20
3.2.1 FUNCIÓN DE PERTENENCIA
La función característica es reemplazada por una función de
pertenencia que se define
]1,0[: →SAµ
Ecuación 3.21
de tal modo que ]1,0[)( ∈xAµ es el grado con el que un elemento Sx ∈ (siendo
S el universo de discurso) pertenece al conjunto borroso A. Cuando 0)( =xAµ
el elemento no pertenece al conjunto, y cuando 1)( =xAµ pertenece totalmente.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 37 -
La forma de la función de pertenencia tiene una cierta componente
subjetiva, frente a la forma rígida (objetiva) de las funciones características de
la lógica clásica. En función de la aplicación de los conjuntos o de los
conceptos representados por ellos, estas funciones pueden adquirir muy
diversas formas, y muchas veces pueden ser elegidas con un amplio grado de
libertad por parte del diseñador, lo que en la práctica puede traducirse como la
posibilidad de incluir cierto conocimiento experto.
A pesar de que las funciones podrían tener cualquier forma, en la
literatura se tiende a trabajar con funciones de pertenencia estándares:
1. Funciones Gaussianas o con forma de “S”. Usan la fórmula
( )







 −
= 2
2
2
exp
2
1
)(
d
mx
s
x
π
µ
Ecuación 3.22
Ilustración 3.1 – Función Gaussiana
Permiten modelar fácilmente modificadores pero son complicadas para el
cálculo.
2. Funciones triangulares o trapezoidales. Se definen en función de los
vértices de las funciones; ∆ (a,b,c) para las triangulares
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 38 -
Ilustración 3.2 – Función Triangular
y T(a,b,c,d) para las trapezoidales. Son sencillas de manejar en algoritmos
numéricos.
Ilustración 3.3 – Función Trapezoidal
Zeng y Singh definen un modelo de función de pertenencia que agrupa
a las principales clases, la función Pseudo-trapezoidal (Del inglés pseudo
trapezoid-shaped (PTS)) es una función continua dada por







∉∈=−∈
∈
∈
∈
=
]},[,|{],[0
],()(
],[
),[)(
),,,,;(
daxUxxdaUx
dcxxD
cbxh
baxxI
hdcbaxA
Ecuación 3.23
donde a≤b≤c≤d, a<d, 0)( ≥xI es una función monótona estrictamente
creciente en [a,b) y 0)( ≥xD es una función monótona estrictamente
decreciente en (c,d]. Cuando la función de pertenencia de un conjunto borroso
A es una función PTS, se llama función de pertenencia PTS y se denota por
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 39 -
),,,,;()( hdcbaxAxA = . Cuando el conjunto borroso es normal (es decir, h = 1),
su función de pertenencia se denota simplemente por ),,,;()( dcbaxAxA = .
Ilustración 3.4 – Función Trapezoidal normal
De acuerdo con esta definición, las funciones trapezoidales son un
caso especial de las funciones PTS cuando b < c y
cd
xd
xD
ab
ax
xI
−
−
=
−
−
=
)(
)(
Ecuación 3.24
y las funciones triangulares es el caso especial cuando b = c y
bd
xd
cd
xd
xD
ac
ax
ab
ax
xI
−
−
=
−
−
=
−
−
=
−
−
=
)(
)(
Ecuación 3.25
Como ejemplo, en la siguiente figura se muestran algunos conjuntos
borrosos definidos en el universo de discurso Edad anteriormente mencionado.
El conjunto borroso “Joven" representa el grado de pertenencia respecto al
parámetro juventud que tendrían los individuos de cada edad. Dicho de otra
manera, el conjunto expresa la posibilidad de que un individuo sea
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 40 -
caracterizado como “Joven". Un conjunto borroso podría ser considerado una
distribución de posibilidad, que es diferente a una distribución de probabilidad.
Ilustración 3.5 – Representación de los conjuntos joven, maduro y viejo
Puede verse que los conjuntos borrosos de la figura se superponen,
entonces un individuo x con edad de 30 años, podría tener un grado de
pertenencia en dos conjuntos: “Joven" y “Maduro", indicando que posee
cualidades asociadas con ambos conjuntos.
Por razones prácticas, muchas veces se asume que el universo de
discurso S es finito, esto es { }nxxS ,...,1= , y el par )}),({( xxAµ se denota por
xxA /)(µ , y cada par xxA /)(µ se denomina individualidad borrosa (fuzzy
singleton). El conjunto borroso A se puede reescribir como
∑=
=++===
n
i
iiAnnAAAA xxxxxxxxxxA
1
11 /)(/)(.../)(}/)({)}),({( µµµµµ
Ecuación 3.26
donde + y Σ deben entenderse en el sentido de la teoría de conjuntos. Por
convenio, los pares xxA /)(µ con 0)( =xAµ se omiten.
3.2.2 DEFINICIONES BÁSICAS SOBRE CONJUNTOS
BORROSOS
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 41 -
A continuación se presentan una serie de definiciones básicas de
utilidad en el manejo de los conjuntos borrosos:
Conjunto vacío: Se dice que un conjunto borroso A está vacío, y se
escribe ∅=A , si y sólo si
UxxA ∈∀= 0)(µ
Ecuación 3.27
Igualdad: Se dice que dos conjuntos borrosos A y B definidos sobre
el mismo universo de discurso U son iguales, y se escribe BA = si y sólo si
Uxxx BA ∈∀= )()( µµ
Ecuación 3.28
Contención: Se dice que un conjunto borroso A definido en U está
contenido en B definido en U también (o alternativamente, es un subconjunto
de B ), y se escribe BA ⊆ , si y sólo si
Uxxx BA ∈∀≤ )()( µµ
Ecuación 3.29
Normalidad: Se dice que un conjunto borroso A definido en U es
normal si y sólo si
1)(max =
∈
xA
Ux
µ
Ecuación 3.30
Soporte: El soporte de un conjunto borroso A en U (escrito AS ) es el
conjunto no borroso
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 42 -
USyxUxS AAA ⊆⊆∅>∈= }0)(:{ µ
Ecuación 3.31
Núcleo: El núcleo de un conjunto borroso A en U (escrito AN ) es el
conjunto no borroso
UNyxUxN AAA ⊆⊆∅=∈= }0)(:{ µ
Ecuación 3.32
Partición completa: Se dice que los conjuntos borrosos NAAA ,..., 21
son una partición completa de U si Ux ∈∀ existe al menos un )1( NiiAi ≤≤=
tal que 0)( >xAi . Por simplicidad, se dice que los conjuntos NAAA ,..., 21 son
completos si forman una partición completa.
Consistencia: Se dice que los conjuntos borrosos NAAA ,..., 21 son
consistentes si se verifica que si 1)( =xAi para algún Ux ∈0 , entonces
0)(, 0 =≠∀ xAij j .
Subconjunto Normal de un Conjunto Borroso Normal: Se define el
subconjunto normal de un conjunto borroso normal A como
{ }1)(|)( =∈= xAyUxxAM
Ecuación 3.33
que es un subconjunto de AS (el soporte del conjunto borroso A ). Si el
conjunto borroso normal A tiene función de pertenencia PTS, entonces
],[)( cbAM = .
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 43 -
Orden entre Conjuntos Borrosos Normales: Para dos conjuntos
borrosos normales A y UB ⊂ , se dice que BA > si )()( BMAM > ,
definiéndose esta desigualdad como
)(max)(max BMAM
xx
>
Ecuación 3.34
3.2.3 OPERACIONES BÁSICAS ENTRE CONJUNTOS
BORROSOS
Las tres operaciones básicas definidas sobre los conjuntos clásicos
(complemento, intersección y unión) pueden ser generalizadas a los conjuntos
borrosos de diversas formas.
Ilustración 3.6 – Operaciones básicas de los conjuntos borrosos
Dentro de la teoría de los conjuntos borrosos tiene especial relevancia
la que hace uso de operaciones conocidas como operaciones estándar,
definidas como:
Intersección (T-norma): ))(),(min()( xxx BABA µµµ =∩
Unión (T-conorma): ))(),(max()( xxx BABA µµµ =∪
Complemento: )(1)( xx AA
µµ −=
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 44 -
No obstante, al contrario que pasa con los conjuntos clásicos, ésta no
es la única forma posible de definir estas operaciones; diferentes funciones
pueden ser apropiadas para representarlas en diferentes contextos. Por lo
tanto, no sólo las funciones de pertenencia de los conjuntos borrosos van a ser
dependientes del contexto sino también las operaciones sobre dichos
conjuntos. En este proyecto no se comentarán con más detalle.
3.2.4 PRINCIPIO DE EXTENSIÓN
Este principio proporciona un mecanismo para calcular los conjuntos
borrosos obtenidos por medio de una transformación concreta (no borrosa) de
cierto número ( N ) de conjuntos borrosos. Específicamente, si NXXX ,..., 21 son
conjuntos borrosos con funciones de pertenencia )(),...(),( 2211 NN xxx µµµ , el
nuevo conjunto borroso ),...,( 21 NXXXfY = tendrá como función de
pertenencia:




=
== −
)(minmax)(
1)()1( ii
N
iyfx
yy µµ
Ecuación 3.35
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 45 -
3.2.5 α-CORTES
Existe una manera directa de pasar de conjuntos borrosos a conjuntos
clásicos mediante los llamados α -cortes. Dado un número ]1,0[∈α y un
conjunto borroso A , definimos el α -corte de A como el conjunto αA , cuya
función característica se define:


 ≥
=
otro
x
x A
A
0
)(1
)(
αµ
ϕ α
Ecuación 3.36
En definitiva, el α -corte se compone de aquellos elementos cuyo grado de
pertenencia supera o iguala el umbral α .
Hablamos de α -cortes estrictos si:


 >
=
otro
x
x A
A
0
)(1
)(
αµ
ϕ α
Ecuación 3.37
Cualquier conjunto borroso A se puede representar mediante la unión
de sus α -cortes de la siguiente manera:
)]([max)(
]1,0[
xx AA α
ϕαµ
α
×=
∈
Ecuación 3.38
Los α -cortes son de especial utilidad en el estudio de propiedades
tales como la reflexividad, simetría y transitividad en conjuntos borrosos.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 46 -
3.3 NÚMEROS BORROSOS
A. Kaufmann emplea el término “Subconjunto borroso” contra “Conjunto
borroso” (KAUF86) ya que siendo el referencial siempre un conjunto vulgar, es
decir tal y como se define intuitivamente en matemáticas modernas, o sea una
colección de objetos bien especificados y bien distintos, el subconjunto borroso
es subconjunto de este referencial.
Un caso particular y de especial interés de los conjuntos borrosos son
los llamados números borrosos. Surgen éstos como un intento de introducir
vaguedad en los números reales.
Un número borroso es un conjunto borroso A definido en la recta real
R y que cumple además las siguientes propiedades:
1. Es normal, o lo que es lo mismo, existe al menos un elemento x de
R tal que 1)( =xAµ .
2. Es convexo, lo cual quiere decir que
))(),(min())1((
,]1,0[
yxyx
Ryx
AAA µµδδµ
δ
≥−+
∈∀∈∀
Ecuación 3.39
Geométricamente esta propiedad quiere decir que todos los α -cortes de A
son intervalos cerrados en R . La función de pertenencia es creciente hasta
llegar al punto en que 1)( =xAµ y decreciente a partir de él.
3. La función de pertenencia es continua en intervalos.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 47 -
4. El soporte de A es acotado.
Para este proyecto se van a usar únicamente los números borrosos
trapezoidales. Definidas ya las propiedades que ha de cumplir nos
dispondremos a conocer sus principales variantes.
Ilustración 3.7 – Número borroso trapezoidal
Llamaremos número borroso trapezoidal ),,,( dcbaA = a un número
borroso que cumple que dcba ≤≤≤ y que el grado de pertenencia de a y d
es siempre 0 y el de b y c es siempre 1. De este principio se pueden obtener
cuatro patrones diferentes:
Número (Escalar): en caso de que dcba === .
Número borroso lineal: en caso de que dcba =<= .
Número borroso piramidal (triangular): en caso de que dcba <=≤
ó dcba ≤=< .
Número borroso trapezoidal: en caso de que dcba <<≤ ó
dcba ≤<< .
El tratamiento a los números borrosos que se va a dar en el proyecto
se puede ver en el apartado 12.2.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 48 -
4. PLANTEAMIENTO Y OBJETIVOS DEL
PROYECTO
Después de analizar los contextos en los que se va a trabajar se
recuerda que como se vio en el capítulo dos, el método PERT es una técnica
fundamental para la planificación de proyectos especialmente en casos en que
las duraciones de las diferentes actividades de la red o son aleatorias o, siendo
de naturaleza determinista pero de tipo novedoso, su valor solo puede ser
estimado de forma vaga o imprecisa a través de la opinión de expertos en
actividades semejantes.
El modelo CPM expone el camino crítico de un proyecto a partir de una
serie de actividades con duraciones fijas bien conocidas.
Las actividades con duraciones que no son perfectamente conocidas
introducen aleatoriedad dentro del proyecto haciendo trabajosa la
determinación de la ruta crítica.
En un conjunto clásico definido sobre un intervalo U se asigna el valor
0 ó 1 a cada elemento del mismo para indicar la pertenencia o no a dicho
conjunto. Esta función puede generalizarse de forma que a cada elemento de U
se le asigne un valor del intervalo [0,1] que indique el grado de pertenencia de
ese elemento al conjunto en cuestión. A esta función se la llama “función de
pertenencia” y al conjunto que define se denomina “Conjunto Borroso”. Es
decir, en la lógica borrosa los elementos de un conjunto pertenecen con un
cierto grado al intervalo [0,1].
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 49 -
Mediante la estimación de la duración de las actividades con números
borrosos, se obtienen las ventajas que ellos proporcionan, como la aritmética.
Utilizando también la lógica borrosa se puede estimar cada duración por medio
de la desborrosificación y sus diferentes variantes para llegar a una solución
determinista.
4.1 PLANTEAMIENTO DEL PROYECTO
El proyecto se plantea como:
“Extender el algoritmo clásico del PERT-CPM basado en programación
dinámica, que permite estudiar una red de actividades, al caso en el que se
tiene un conocimiento vago de las duraciones de las diferentes actividades de
la red. Este conocimiento puede ser modelado mediante números borrosos
trapezoidales (y, como casos particulares, intervalos constantes y números
borrosos piramidales). Al modelo se le dará el adecuado tratamiento
informático”.
4.2 OBJETIVOS DEL PROYECTO
Por tanto el proyecto se define con los siguientes objetivos:
Modelar el comportamiento de las actividades según se ajusten a
unos determinados patrones como son: números borrosos
trapezoidales, piramidales o constantes.
Programar una aplicación que permita al usuario crear un
diagrama PRET/CMP en el que pueda establecer su propia red
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 50 -
de actividades y etapas del proyecto con sus correspondientes
duraciones: nítidas y borrosas.
Crear un motor de resolución del diagrama PERT/CMP que sea
capaz de calcular los caminos críticos a partir de actividades de
duración fija así como los márgenes libres y totales de cada
actividad y las fechas previstas y límites de las etapas del
proyecto.
Analizar el problema de las duraciones aleatorias derivado de los
números borrosos e integrarlo en el motor de resolución.
Al considerar algunas de las duraciones como borrosas, los
resultados vendrán dados en forma de número borroso, y por
tanto habrá que hacer una estimación de los resultados para
poder trabajar con ellos. Para ello se han elegido diferentes
métodos de desborrosificación que han de ser implementados y
ofrecidos al usuario para seleccionar.
Crear una arquitectura cliente-servidor de tal manera que el
usuario (cliente) sea capaz de diseñar su red y poder modificarla
o actualizarla en cualquier momento enviando así al motor de
resolución (servidor) las modificaciones y devolverle a éste los
resultados para que se le puedan presentar al usuario en la
aplicación cliente.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 51 -
Presentar al usuario las actividades y etapas correspondientes al
camino crítico y las relaciones existentes entre ellas así como un
diagrama de Gantt que permita determinar fácilmente la ejecución
del proyecto desde su fecha de inicio.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 52 -
5. SOLUCIÓN PROPUESTA
Se ha descrito cómo se estudia y modela un proyecto a partir de un
conjunto de actividades y cuáles son los principales problemas derivados de la
metodología utilizada. Ante esto, se propone un sistema de bajo coste, basado
en una aplicación interactiva capaz de permitir crear proyectos a partir de un
conjunto de actividades definidas y determinar la ruta o las rutas críticas que lo
forman.
Se trata de implementar un sistema de cálculo de duraciones basado
en la interacción con el usuario. Se presentarán una secuencia de formularios
al usuario que le permitan gestionar las actividades que componen el proyecto
(crearlas, añadirlas, modificarlas y borrarlas). El motor de resolución tiene la
función de construir el diagrama de red a partir de los atributos de las
actividades que compongan el proyecto y proponer la solución al problema en
función de la opción de solución que elija el usuario. Los atributos de las
actividades se transmiten por Internet hasta el motor de resolución donde
mediante algoritmos y técnicas de lógica borrosa se soluciona el proyecto.
En los puntos sucesivos se especifica el proceso seguido para la
elaboración de la aplicación utilizando la ingeniería del software.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 53 -
6. DIAGRAMA DE CONTEXTO
En este diagrama se reflejan las relaciones que el sistema tiene con las
entidades externas con las que interacciona. Una entidad externa simboliza
cualquier otro sistema o elemento del entorno que interacciona con el sistema,
pero que está fuera de su alcance de definición.
Diagrama 6.1 – Diagrama de contexto del sistema
Se observa que el usuario interacciona con el sistema mediante la
aplicación cliente y que ésta a su vez se relaciona con el motor de resolución
para solucionar las peticiones que solicite el usuario.
El usuario interacciona con la aplicación cliente por medio del interfaz
gráfico de la aplicación y tanto el motor de resolución como la aplicación cliente
se comunican mediante un protocolo con conexión a nivel de aplicación.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 54 -
7. PERFILES Y ÁMBITO
Un usuario sólo tiene un único perfil en la aplicación. El perfil se define
como “Usuario” que engloba lo siguiente:
- Usuario: Será la persona que podrá crear, modificar y eliminar
actividades para la red que representa el proyecto (y sus parámetros
básicos) así como salvar y guardar los datos y solicitar la solución al
servidor.
Se podría incluir el perfil de administrador del motor de resolución. El
perfil se definiría como “Administrador” y sería el encargado de iniciar el motor
de resolución y seleccionar el puerto de entrada de las conexiones al mismo.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 55 -
8. ANÁLISIS
8.1 ANÁLISIS DE REQUISITOS
El objetivo de este apartado del Análisis es alcanzar un conocimiento
suficiente del sistema, definiendo las necesidades, problemas y requisitos del
usuario, para expresarlo posteriormente mediante los modelos de procesos y
de datos.
8.1.1 REQUISITOS FUNCIONALES
Modelar el problema: El modelado es la primera actividad que
debe llevar a cabo el sistema. Dicho modelado consiste en la
creación de un esquema de información basado en la información
inherente a las actividades: su identificador unívoco, su
descripción, sus actividades sucesoras y su duración.
Modelar el comportamiento de las duraciones borrosas: Su
objetivo es poder trabajar con ellas aritméticamente para poder
extender el método del camino crítico CPM y permitir darlas un
valor plausible mediante diferentes técnicas de desborrosificación.
Permitir la gestión del proyecto: Esta acción consiste en
ofrecer al usuario la creación de proyectos nuevos, incrementar y
eliminar las actividades que lo componen y modificarlas en
cualquier momento.
Permitir la conexión entre los subsistemas: Crear un protocolo
con conexión capaz de comunicar al cliente con el servidor de
manera síncrona y que permita enviarle la lista de actividades y
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 56 -
este le devuelva el diagrama PERT/CPM solucionado
dependiendo de la opción de solución elegida.
Ofrecer varias formas de solucionar el diagrama: Al trabajar
con números borrosos, se obtiene una mayor cantidad de los
mismos y su interpretación no resulta determinista, por ello se
incluyen varias formas de desborrosificación.
Generación del diagrama de red: Poder transformar un conjunto
de actividades con sus datos en un conjunto de actividades y
etapas consistente y fácilmente entendible por el usuario
siguiendo el modelo de diagrama de red.
Permitir el salvaguardado: Hacer posible en todo momento el
salvado de la información, tanto del proyecto solucionado como
someramente planteado, y poder cargarlo. Asimismo se permitirá
el salvaguardado de los gráficos mostrados.
8.1.2 REQUISITOS NO FUNCIONALES
Requisitos de calidad: La aplicación debe de responder a todos
los requisitos de calidad de la normativa ISO. Se hace especial
hincapié en la velocidad de respuesta, en el control de errores y
en la amigabilidad de la aplicación para el usuario.
Requisitos de interfaces externas: A continuación se describen
las interfaces externas que requiere el sistema con el usuario y
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 57 -
con otros sistemas, cuyos requisitos son importantes para el
correcto desarrollo y funcionamiento.
Interfaz de usuario: El objeto del interfaz de usuario es
establecer un medio interactivo por el que el usuario pueda
gestionar el conjunto de las actividades que compone el
proyecto y por otro ejecutar las funcionalidades de la
aplicación.
Interfaz de datos: El objeto del interfaz de datos es
establecer un medio interactivo por el que el usuario pueda
guardar y cargar el conjunto de las actividades que compone
el proyecto y los gráficos que genera.
Interfaz de conexión: El objeto del interfaz de conexión es
establecer protocolo por el que la aplicación cliente se
comunicará con el servidor de resolución a través de
Internet.
Requisitos de seguridad y control: Estos requisitos abarcan el
control de los valores de los datos que introduce el usuario, la
detección de bucles, y el mantenimiento de la consistencia de la
información.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 58 -
8.2 ANÁLISIS FUNCIONAL DETALLADO
En este apartado se describe la funcionalidad detallada de la
aplicación, es decir, las acciones básicas que deberá realizar la aplicación para
obtener los objetivos necesarios.
Las funciones que debe realizar el sistema son las siguientes:
8.2.1 CREACIÓN DEL PROYECTO, INSERCIÓN, MODIFICACIÓN
Y ELIMINACIÓN DE ACTIVIDADES
El sistema deberá permitir la gestión de estos conceptos
pertenecientes al sistema.
Para la creación de un proyecto el deberá introducir la fecha de inicio
del mismo y el numero de actividades que lo componen. Posteriormente el
sistema iniciará las actividades por defecto y le solicitará al usuario los datos
propios de cada actividad haciendo especial hincapié en el campo de las
duraciones de las actividades para que sean validadas. Tras terminar este
proceso se solicitará que designe las actividades sucesoras para cada una de
las generadas comprobando que no se formen bucles entre ellas.
Para la inserción de actividades en el sistema, el usuario deberá indicar
el número de actividades a insertar. Se inicializarán por defecto y se solicitará
al usuario los datos que la representan al igual que la información de la relación
de anterioridad que tienen con las actividades ya creadas. El sistema
mantendrá la consistencia de las ya creadas y de las actividades nuevas
especialmente en las duraciones y en las relaciones de sucesión.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 59 -
En el caso de modificación de actividades en el sistema, el usuario
deberá interaccionar con los datos y relaciones ya creados, y el sistema
mantener la consistencia de las duraciones y las precedencias.
En la eliminación el sistema deberá controlar que un proyecto no pueda
tener un número menor de dos actividades y ofrecer nuevas relaciones si
existen entre las predecesoras de la actividad eliminada y sus sucesoras. Del
mismo modo se garantizará la consistencia de la información.
Todos los campos podrán ser modificados menos el código
identificador unívoco de cada actividad.
8.2.2 TRATAMIENTO DE LAS DURACIONES BORROSAS
Se modelará convenientemente el tratamiento de la aritmética borrosa
en las operaciones básica se suma y resta entre duraciones borrosas y de
duraciones borrosas con duraciones fijas para la fase hacia delante y la fase
hacia atrás del modelo CMP.
También se modelarán varias opciones de desborrosificación entre las
que se incluirán valoraciones optimistas y pesimistas de cada duración en
función de un α -corte introducido por el usuario y técnicas de
desborrosificación básicas y complejas como la media máxima, el centro de
área y la media borrosa para la parte PERT.
8.2.3 CREACIÓN DEL ALGORITMO DE SOLUCIÓN
El motor de resolución será capaz de recibir un conjunto de actividades
con la información introducida para el usuario y obtener el diagrama de red
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 60 -
equivalente más optimo de todos los posibles, creando los nodos o etapas de
la red y asignando las fechas de inicio y finalización de cada etapa y los
márgenes u holguras libres y totales de cada actividad. Se contemplará la
posibilidad de introducir actividades dummy (actividades de tiempo nulo) para
ceñirse al formato de diagrama de red. El conjunto de actividades y etapas esta
relacionado entre si consistentemente conociendo cada actividad su etapa de
inicio y fin y poder acceder a su información. Análogamente las etapas conocen
las actividades que acaban en ella y las que se inician en ella y pueden
acceder a su información.
Por otra parte se incluye el tratamiento de las duraciones borrosas y
funciones aritméticas básicas y de desborrosificación para las mismas.
8.2.4 PROTOCOLO DE CONEXIÓN
Se creará un protocolo con conexión a través del cual se comunique la
aplicación cliente con el servidor de resolución de manera que la aplicación
cliente se mantiene a la espera de la solución del servidor usando como
soporte Internet. El formato de los datos deberá ser consistente con el
protocolo tanto para el envió como para la recepción de información.
El cliente deberá conocer la dirección IP del servidor y el puerto de
entrada. El comportamiento del servidor se modelará con un socket multihilo
capaz de procesar varias peticiones a la vez manteniendo la integridad de los
datos y enviándolos de nuevo al cliente que envió la petición de resolución.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 61 -
8.2.5 PRESENTACIÓN DE LOS DATOS
Cuando exista un proyecto en la aplicación, toda información
susceptible de ser mostrada se representará fácilmente mediante tablas no
editables en los siguientes conjuntos: Actividades, Actividades ficticias (dummy)
y Etapas. La tabla de etapas se mostrará en caso de que esté solucionado el
diagrama y la tabla de actividades dummy en caso de que esté solucionado el
diagrama y de que existan.
Los informes de cada unidad deberán ser mostrados de forma
ordenada, de mayor a menor identificador en el caso de las actividades y
actividades nuevas, y en orden cronológico el de las etapas.
Como se explicó anteriormente la aplicación genera informes cuyo
resultado son los datos previstos, es decir, los datos que se esperan obtener en
el futuro. Estos datos deben aproximarse lo más posible a los datos reales, que
son aquellos que efectivamente se obtienen en la realidad.
8.2.6 PRESENTACIÓN DE LOS GRÁFICOS
Los gráficos de apoyo al programa se generarán para representar un
proyecto solucionado mediante un diagrama de Gantt con la fecha de inicio del
proyecto como inicio del mismo. En caso de que la solución (fecha fin del
proyecto) sea una duración borrosa se mostrará por pantalla. Como ayuda a la
creación de las duraciones borrosas, éstas se representarán en forma gráfica.
En cualquier caso los gráficos serán susceptibles de ser guardados en
un formato de imagen o impresos.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 62 -
8.2.7 ALMACENAMIENTO DE LOS DATOS
Todos los datos, tanto los generados como los introducidos deberán
ser almacenados en el sistema. Estarán almacenados en ficheros.
Todos los informes serán almacenados automáticamente por el
sistema en el momento posterior a su generación o a su modificación por parte
del usuario.
Se proporcionará un proceso de guardado de datos al iniciar
operaciones que puedan variar o eliminar los datos existentes y al salir de la
aplicación.
Los datos se guardarán y cargarán de ficheros con extensión pert.
Dichos ficheros tendrán un formato determinado único, legible e interpretable
por la aplicación.
8.2.8 MODIFICACIÓN DE PARÁMETROS DEL PROYECTO Y DEL
PROGRAMA
Se proporcionará la opción de cambiar la fecha de inicio del proyecto
tanto si es anterior a la actual como si se necesita posponerla. Análogamente la
configuración de conexión al servidor se proporcionará en un formulario que
contenga un campo para la dirección IP del servidor y el puerto de entrada al
mismo.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 63 -
9. ESTUDIO DE LA ARQUITECTURA
A la hora de elegir la plataforma más conveniente para la explotación
del Sistema se han valorado una serie de factores:
- El volumen de información a almacenar
- Necesidades planteadas en el análisis
- Disponibilidad de herramientas software
- Facilidad de tratamiento y acceso a la información
Dichos factores han llevado a elegir un sistema cliente-servidor, con las
siguientes características:
9.1 EL LENGUAJE JAVA
Java es un lenguaje de programación orientado a objetos desarrollado
por Sun Microsystems. Las aplicaciones Java están típicamente compiladas en
un bytecode, aunque la compilación en código máquina nativo también es
posible. En el tiempo de ejecución, el bytecode es normalmente interpretado o
compilado a código nativo para la ejecución, aunque la ejecución directa por
hardware del bytecode por un procesador Java también es posible.
El lenguaje en sí mismo toma mucha de su sintaxis de C y C++, pero
tiene un modelo de objetos más simple y elimina herramientas de bajo nivel
como punteros.
Sun Microsystems proporciona una implementación GNU General
Public License de un compilador Java y una máquina virtual Java, conforme a
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 64 -
las especificaciones del Java Community Process, aunque la biblioteca de
clases que se requiere para ejecutar los programas Java no es software libre.
Entre noviembre de 2006 y mayo de 2007, Sun Microsystems liberó la
mayor parte de sus tecnologías Java bajo la licencia GNU GPL, de acuerdo con
las especificaciones del Java Community Process, de tal forma que
prácticamente todo el Java de Sun es ahora software libre.
El lenguaje de programación Java ha sido totalmente mejorado,
ampliado y probado por una comunidad activa de unos cuatro millones de
desarrolladores de software.
Se ha escogido Java para la realización del proyecto porque la
tecnología Java es una tecnología madura, extremadamente eficaz y
sorprendentemente versátil, se ha convertido en un recurso inestimable ya que
permite a los desarrolladores:
• Desarrollar software en una plataforma y ejecutarlo en
prácticamente cualquier otra plataforma.
• Crear programas para que funcionen en un navegador Web y en
servicios Web.
• Diseñar aplicaciones con interfaz grafico para el usuario con todos
los componentes necesarios y su fácil gestión de eventos.
• Desarrollar aplicaciones para servidores como foros en línea,
tiendas, encuestas, procesamiento de formularios HTML, etc.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 65 -
• Combinar aplicaciones o servicios basados en la tecnología Java
para crear servicios o aplicaciones totalmente personalizados.
• Desarrollar potentes y eficientes aplicaciones para teléfonos
móviles, procesadores remotos, productos de consumo de bajo
coste y prácticamente cualquier dispositivo digital.
• Tener gran versatilidad en sistemas para aplicaciones con
conexión.
9.2 ESTRUCTURA DEL SISTEMA
Hardware: Ordenador con
Intel Pentium a 2.4 GHz
Memoria RAM de 512 MB
Conexión a Internet de 5Mbps
Software:
Sistema operativo Windows/Linux
Versión Java: Java Runtime Environment Version 6 Update 2
Plataforma de desarrollo Eclipse.
Software conseguido:
Aplicación capaz de mostrar la programación de un proyecto
mediante el uso de la lógica borrosa.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 66 -
Servidor de resolución multihilo a través de Internet.
Amos en formato autoejecutable JAR.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 67 -
10. DISEÑO DE LA APLICACIÓN
Se va a optar por un diseño de la aplicación en dos fases a nivel
conceptual del funcionamiento de la aplicación. Por un lado tenemos el
programa que se presenta al usuario y con el que éste interactúa, y por otro el
motor de resolución que es el encargado de procesar la información. La
siguiente representa el primer nivel conceptual del funcionamiento de la
aplicación:
Diagrama 10.1 – Diagrama de contexto del sistema
En este primer nivel la aplicación queda dividida en dos sistemas:
1. Aplicación cliente: Adquisición de información a través del interfaz
grafico del usuario así como su edición y el guardado y recuperación de los
datos desde disco. Garantizando la corrección y consistencia de la información
introducida para enviarla al motor de resolución a través de la red con el
protocolo diseñado así como su recepción y mostrar los resultados obtenidos
por pantalla.
2. Motor de resolución: Análisis del conjunto de las actividades del
proyecto y su distribución en un diagrama de red. Cálculos de resolución
dependiendo de la opción seleccionada. Recepción y transmisión de los datos
por el protocolo diseñado a través de la red.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 68 -
10.1 MODELO DE DOMINIO
El modelo de dominio diseñado para la aplicación desarrollada es el
siguiente:
Diagrama 10.2 – Modelo de dominio del sistema
Como se puede observar en la figura superior la complejidad del
problema reside en lo que llamaremos PertCpm y sus relaciones. Se han
representado los atributos de todos los componentes del proyecto y sus
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 69 -
relaciones entre los mismos. La aplicación cliente y el motor de resolución
dependen del PertCpm para poder funcionar.
10.2 MODELO DE DATOS
El objetivo de este apartado es realizar una representación lógica de la
información que maneja el sistema. Por lo tanto este modelo se realiza para
especificar los datos que se manejan y las relaciones entre ellos se han
mostrado en el modelo de dominio.
Existirán tres tablas de datos como máximo en la aplicación. No se
usan bases de datos pero la información se mantiene en un estado conforme
mediante el objeto PertCpm. En él se ha visto que contiene tres listas: la de
actividades, la de actividades ficticias o dummy y la de etapas. Cada uno de los
componentes de esta lista está en la región de memoria asociada al PertCpm.
Todas las relaciones que existen entre ellas están establecidas mediante
punteros a sus datos asociados. Es decir, la actividad C ocupa un lugar en
memoria y es apuntada por las actividades que la precedan, y por las que la
sucedan al igual que su etapa inicial y final, reduciendo así el tamaño de los
datos en memoria.
El fichero de los datos en que se guarda la información, aparte de otros
parámetros de configuración, guarda el PertCpm como una totalidad
beneficiándose de las ventajas apuntadas en el párrafo anterior.
10.2.1 TABLA DE ACTIVIDADES
La tabla de actividades se muestra durante toda la ejecución del
programa. Sus campos son:
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 70 -
Ilustración 10.1 – Tabla de actividades con información básica
Id: Es el identificador unívoco de cada actividad asignado por la
aplicación cliente. Es lo que se conoce como campo clave en una
base de datos. Es una cadena de caracteres ascendentes que
empieza en A, al llegar a Z pasa a AA y así sucesivamente. No
puede ser nulo.
Nombre: Es la descripción de la actividad. Es una cadena de
caracteres y puede tener valor nulo.
Duración: Es la representación de la duración de la actividad en
forma de cadena de caracteres. Ninguna duración será negativa.
Puede tomar cuatro formas diferentes:
Conocida (escalar): Es el número decimal que la
representa.
Borrosa constante: Representada por Lin(A,B) siendo A y
B las duraciones conocidas que la representan.
Borrosa piramidal: Representada por Pir(a,B,b) siendo a, B
y b las duraciones conocidas que la definen.
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 71 -
Borrosa trapezoidal: Representada por Tra(a,A,B,b) siendo
a, A, B y b las duraciones conocidas que la representan.
Actividades Anteriores: Es el conjunto de actividades
inmediatamente anteriores asociadas por punteros representado
por una cadena de caracteres. En caso de ser nulo se declara
como “ninguna”.
Actividades Siguientes: Es el conjunto de actividades
inmediatamente posteriores asociadas por punteros representado
por una cadena de caracteres. En caso de ser nulo se declara
como “ninguna”.
Ilustración 10.2 – Tabla de actividades con información completa
Etapa Inicial: Es la etapa de la que parte la actividad (en la que
se inicia). Está representada por un número entero mayor que
cero. Puede tener valor nulo si el diagrama no esta solucionado y
se representa por una cadena de caracteres vacía.
Etapa Final: Es la etapa a la que llega la actividad (en la que se
termina). Está representada por un número entero mayor que
ANÁLISIS DE UNA RED DE ACTIVIDADES
CON DURACIONES CONOCIDAS Y BORROSAS
- 72 -
cero. Puede tener valor nulo si el diagrama no esta solucionado y
se representa por una cadena de caracteres vacía.
Margen Libre: Es la representación del margen libre de la
actividad en forma de cadena de caracteres. Ninguna duración
será negativa. Puede tener valor nulo si el diagrama no esta
solucionado y toma cualquiera de las cuatro formas diferentes
descritas en el campo duración.
Margen Total: Es la representación del margen total de la
actividad en forma de cadena de caracteres. Ninguna duración
será negativa. Puede tener valor nulo si el diagrama no esta
solucionado y toma cualquiera de las cuatro formas diferentes
descritas en el campo duración.
Como se ve en la ilustración superior se enfatiza el camino crítico con
color rojo.
10.2.2 TABLA DE ETAPAS
La tabla de etapas se muestra una vez que se haya solucionado el
diagrama de red.
Sus campos son:
Id: Es el identificador unívoco de cada etapa asignado por el
motor de resolución. Es lo que se conoce como campo clave en
una base de datos. Es un entero ascendentes que empieza en 1.
No puede ser nulo.
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm
Pert cpm

Más contenido relacionado

La actualidad más candente

CPM PERT - Impares 1
CPM PERT - Impares 1CPM PERT - Impares 1
CPM PERT - Impares 1hmendizabal
 
Metodo del Camino Critico
Metodo del Camino CriticoMetodo del Camino Critico
Metodo del Camino Criticorochas123
 
Administración de proyectos pert cpm
Administración de proyectos pert cpmAdministración de proyectos pert cpm
Administración de proyectos pert cpmSergio Galvis
 
Metodo de la ruta critica.
Metodo de la ruta critica. Metodo de la ruta critica.
Metodo de la ruta critica. Adenel
 
Metodo Pert-Cpm Branco Fatima
Metodo Pert-Cpm Branco FatimaMetodo Pert-Cpm Branco Fatima
Metodo Pert-Cpm Branco FatimaFatima Branco
 
6820716 administracion-de-proyectos-pert-y-cpm
6820716 administracion-de-proyectos-pert-y-cpm6820716 administracion-de-proyectos-pert-y-cpm
6820716 administracion-de-proyectos-pert-y-cpmMario Medina Lingan
 
Métodos pert y cpm diapos
Métodos pert y cpm  diaposMétodos pert y cpm  diapos
Métodos pert y cpm diaposcharlie252015
 
Metodologia de la investigación
Metodologia de la investigaciónMetodologia de la investigación
Metodologia de la investigaciónIvan Oliva Mota
 
El método-de-la-ruta-crítica
El método-de-la-ruta-críticaEl método-de-la-ruta-crítica
El método-de-la-ruta-críticaalo28lucero04var
 
Metodo ruta critica (cpm)
Metodo ruta critica (cpm)Metodo ruta critica (cpm)
Metodo ruta critica (cpm)Aestradabr
 
Determinación del programa tic actividades.
Determinación del programa tic actividades.Determinación del programa tic actividades.
Determinación del programa tic actividades.SAR IUNICS
 

La actualidad más candente (20)

CPM PERT - Impares 1
CPM PERT - Impares 1CPM PERT - Impares 1
CPM PERT - Impares 1
 
Pert Cpm
Pert CpmPert Cpm
Pert Cpm
 
Metodo del Camino Critico
Metodo del Camino CriticoMetodo del Camino Critico
Metodo del Camino Critico
 
Administración de proyectos pert cpm
Administración de proyectos pert cpmAdministración de proyectos pert cpm
Administración de proyectos pert cpm
 
Penrt cpm
Penrt cpmPenrt cpm
Penrt cpm
 
Método CPM-PERT
Método CPM-PERTMétodo CPM-PERT
Método CPM-PERT
 
Metodo pert cpm
Metodo pert cpmMetodo pert cpm
Metodo pert cpm
 
Metodo de la ruta critica.
Metodo de la ruta critica. Metodo de la ruta critica.
Metodo de la ruta critica.
 
Pert Cpm
Pert CpmPert Cpm
Pert Cpm
 
Metodo Pert-Cpm Branco Fatima
Metodo Pert-Cpm Branco FatimaMetodo Pert-Cpm Branco Fatima
Metodo Pert-Cpm Branco Fatima
 
6820716 administracion-de-proyectos-pert-y-cpm
6820716 administracion-de-proyectos-pert-y-cpm6820716 administracion-de-proyectos-pert-y-cpm
6820716 administracion-de-proyectos-pert-y-cpm
 
Métodos pert y cpm diapos
Métodos pert y cpm  diaposMétodos pert y cpm  diapos
Métodos pert y cpm diapos
 
Metodologia de la investigación
Metodologia de la investigaciónMetodologia de la investigación
Metodologia de la investigación
 
Gcia op (u8)
Gcia op (u8)Gcia op (u8)
Gcia op (u8)
 
El método-de-la-ruta-crítica
El método-de-la-ruta-críticaEl método-de-la-ruta-crítica
El método-de-la-ruta-crítica
 
Metodo ruta critica (cpm)
Metodo ruta critica (cpm)Metodo ruta critica (cpm)
Metodo ruta critica (cpm)
 
PERT - CPM
PERT - CPMPERT - CPM
PERT - CPM
 
ruta-critica.pdf
ruta-critica.pdfruta-critica.pdf
ruta-critica.pdf
 
Pert
PertPert
Pert
 
Determinación del programa tic actividades.
Determinación del programa tic actividades.Determinación del programa tic actividades.
Determinación del programa tic actividades.
 

Destacado

Pasos para la construccion de redes pert y cpm
Pasos para la construccion de redes pert  y cpmPasos para la construccion de redes pert  y cpm
Pasos para la construccion de redes pert y cpmLuis Torres
 
Investigacion de operaciones ebc
Investigacion de operaciones ebcInvestigacion de operaciones ebc
Investigacion de operaciones ebcMaestros Online
 
Administracion de Proyectos
Administracion  de ProyectosAdministracion  de Proyectos
Administracion de ProyectosIVAN_LIVE
 
Reglas para construir redes pert
Reglas para construir redes pertReglas para construir redes pert
Reglas para construir redes pertgisselaprado
 
Forum PA Challenge - Responsa
Forum PA Challenge - ResponsaForum PA Challenge - Responsa
Forum PA Challenge - Responsagoresponsa
 
Tipos de computadoras
Tipos de computadorasTipos de computadoras
Tipos de computadorasaldop3
 
Dockercon EU 2015 Recap
Dockercon EU 2015 RecapDockercon EU 2015 Recap
Dockercon EU 2015 RecapLee Calcote
 
How Makerere university is idealy thriving on her namethat she already made l...
How Makerere university is idealy thriving on her namethat she already made l...How Makerere university is idealy thriving on her namethat she already made l...
How Makerere university is idealy thriving on her namethat she already made l...WALIASH
 
Live Healthy, Live Longer | Antiaging Nutrition
Live Healthy, Live Longer | Antiaging NutritionLive Healthy, Live Longer | Antiaging Nutrition
Live Healthy, Live Longer | Antiaging NutritionAntiaging Nutrition
 

Destacado (20)

Pasos para la construccion de redes pert y cpm
Pasos para la construccion de redes pert  y cpmPasos para la construccion de redes pert  y cpm
Pasos para la construccion de redes pert y cpm
 
Pert cpm (ruta crítica)
Pert   cpm (ruta crítica)Pert   cpm (ruta crítica)
Pert cpm (ruta crítica)
 
Investigacion de operaciones ebc
Investigacion de operaciones ebcInvestigacion de operaciones ebc
Investigacion de operaciones ebc
 
Administracion de Proyectos
Administracion  de ProyectosAdministracion  de Proyectos
Administracion de Proyectos
 
Reglas para construir redes pert
Reglas para construir redes pertReglas para construir redes pert
Reglas para construir redes pert
 
Vsgames2010 v3
Vsgames2010 v3Vsgames2010 v3
Vsgames2010 v3
 
4
44
4
 
Kronologi
KronologiKronologi
Kronologi
 
Forum PA Challenge - Responsa
Forum PA Challenge - ResponsaForum PA Challenge - Responsa
Forum PA Challenge - Responsa
 
Rys historyczny
Rys historycznyRys historyczny
Rys historyczny
 
Hijrah nabi
Hijrah nabiHijrah nabi
Hijrah nabi
 
Kronologi
KronologiKronologi
Kronologi
 
Tipos de computadoras
Tipos de computadorasTipos de computadoras
Tipos de computadoras
 
Dockercon EU 2015 Recap
Dockercon EU 2015 RecapDockercon EU 2015 Recap
Dockercon EU 2015 Recap
 
How Makerere university is idealy thriving on her namethat she already made l...
How Makerere university is idealy thriving on her namethat she already made l...How Makerere university is idealy thriving on her namethat she already made l...
How Makerere university is idealy thriving on her namethat she already made l...
 
Artful Pools Design and Consulting
Artful Pools Design and ConsultingArtful Pools Design and Consulting
Artful Pools Design and Consulting
 
Tondoon
TondoonTondoon
Tondoon
 
Live Healthy, Live Longer | Antiaging Nutrition
Live Healthy, Live Longer | Antiaging NutritionLive Healthy, Live Longer | Antiaging Nutrition
Live Healthy, Live Longer | Antiaging Nutrition
 
Sonia Ramirez III-2
Sonia Ramirez III-2 Sonia Ramirez III-2
Sonia Ramirez III-2
 
SW Risk Results for CIO
SW Risk Results for CIOSW Risk Results for CIO
SW Risk Results for CIO
 

Similar a Pert cpm

Diseño, construccion e implementación de una solución tecnologica open source...
Diseño, construccion e implementación de una solución tecnologica open source...Diseño, construccion e implementación de una solución tecnologica open source...
Diseño, construccion e implementación de una solución tecnologica open source...José Venegas Acevedo
 
Plataforma Web para la Gesión Integral de Conferencias Científico-Técnicas
Plataforma Web para la Gesión Integral de Conferencias Científico-TécnicasPlataforma Web para la Gesión Integral de Conferencias Científico-Técnicas
Plataforma Web para la Gesión Integral de Conferencias Científico-TécnicasHéctor Arroyo Santiago
 
ingenieria de software
 ingenieria de software ingenieria de software
ingenieria de softwareEmanuelAmador
 
Gestión de Proyectos. Aplicación a archivos, bibliotecas o centros de documen...
Gestión de Proyectos. Aplicación a archivos, bibliotecas o centros de documen...Gestión de Proyectos. Aplicación a archivos, bibliotecas o centros de documen...
Gestión de Proyectos. Aplicación a archivos, bibliotecas o centros de documen...Pepe
 
Documentacion final grupo de trabajo domotica
Documentacion final grupo de trabajo domoticaDocumentacion final grupo de trabajo domotica
Documentacion final grupo de trabajo domoticaRamon Rodriguez
 
cong_1997_ESRI_Visualizacion.pdf
cong_1997_ESRI_Visualizacion.pdfcong_1997_ESRI_Visualizacion.pdf
cong_1997_ESRI_Visualizacion.pdfFJZarazagaSoria
 
Insidencias En Los Paradigmas De La Ingeniera De Software
Insidencias En Los Paradigmas De La Ingeniera De SoftwareInsidencias En Los Paradigmas De La Ingeniera De Software
Insidencias En Los Paradigmas De La Ingeniera De SoftwareUniversidad De Cordoba
 
API Agregadas y Computo Masivo
API Agregadas y Computo MasivoAPI Agregadas y Computo Masivo
API Agregadas y Computo MasivoAndrea Guevara
 
Arquitecturas y modelos de programación en computación grid (1)
Arquitecturas y modelos de programación en computación grid (1)Arquitecturas y modelos de programación en computación grid (1)
Arquitecturas y modelos de programación en computación grid (1)Tensor
 
Fundamentos de packet tracer
Fundamentos de packet tracerFundamentos de packet tracer
Fundamentos de packet tracerUNAD
 
Arquitecturas de computadores_avanzadas
Arquitecturas de computadores_avanzadasArquitecturas de computadores_avanzadas
Arquitecturas de computadores_avanzadasTensor
 
PROYECTO FINAL DE ANÁLISIS
PROYECTO FINAL DE ANÁLISISPROYECTO FINAL DE ANÁLISIS
PROYECTO FINAL DE ANÁLISISPerson0001
 

Similar a Pert cpm (20)

Diseño, construccion e implementación de una solución tecnologica open source...
Diseño, construccion e implementación de una solución tecnologica open source...Diseño, construccion e implementación de una solución tecnologica open source...
Diseño, construccion e implementación de una solución tecnologica open source...
 
Plataforma Web para la Gesión Integral de Conferencias Científico-Técnicas
Plataforma Web para la Gesión Integral de Conferencias Científico-TécnicasPlataforma Web para la Gesión Integral de Conferencias Científico-Técnicas
Plataforma Web para la Gesión Integral de Conferencias Científico-Técnicas
 
ingenieria de software
 ingenieria de software ingenieria de software
ingenieria de software
 
Gestión de Proyectos. Aplicación a archivos, bibliotecas o centros de documen...
Gestión de Proyectos. Aplicación a archivos, bibliotecas o centros de documen...Gestión de Proyectos. Aplicación a archivos, bibliotecas o centros de documen...
Gestión de Proyectos. Aplicación a archivos, bibliotecas o centros de documen...
 
ARTICULO
ARTICULOARTICULO
ARTICULO
 
Documentacion final grupo de trabajo domotica
Documentacion final grupo de trabajo domoticaDocumentacion final grupo de trabajo domotica
Documentacion final grupo de trabajo domotica
 
Modelo pert cpm (2)
Modelo pert cpm (2)Modelo pert cpm (2)
Modelo pert cpm (2)
 
Modelo pert cpm (1)
Modelo pert cpm (1)Modelo pert cpm (1)
Modelo pert cpm (1)
 
Modelo pert cpm
Modelo pert cpmModelo pert cpm
Modelo pert cpm
 
cong_1997_ESRI_Visualizacion.pdf
cong_1997_ESRI_Visualizacion.pdfcong_1997_ESRI_Visualizacion.pdf
cong_1997_ESRI_Visualizacion.pdf
 
Inmobiliario java
Inmobiliario javaInmobiliario java
Inmobiliario java
 
Insidencias En Los Paradigmas De La Ingeniera De Software
Insidencias En Los Paradigmas De La Ingeniera De SoftwareInsidencias En Los Paradigmas De La Ingeniera De Software
Insidencias En Los Paradigmas De La Ingeniera De Software
 
Opcion 5 Certificacion
Opcion 5 CertificacionOpcion 5 Certificacion
Opcion 5 Certificacion
 
Reporte1
Reporte1Reporte1
Reporte1
 
API Agregadas y Computo Masivo
API Agregadas y Computo MasivoAPI Agregadas y Computo Masivo
API Agregadas y Computo Masivo
 
Arquitecturas y modelos de programación en computación grid (1)
Arquitecturas y modelos de programación en computación grid (1)Arquitecturas y modelos de programación en computación grid (1)
Arquitecturas y modelos de programación en computación grid (1)
 
Fundamentos de packet tracer
Fundamentos de packet tracerFundamentos de packet tracer
Fundamentos de packet tracer
 
Arquitecturas de computadores_avanzadas
Arquitecturas de computadores_avanzadasArquitecturas de computadores_avanzadas
Arquitecturas de computadores_avanzadas
 
PROYECTO FINAL DE ANÁLISIS
PROYECTO FINAL DE ANÁLISISPROYECTO FINAL DE ANÁLISIS
PROYECTO FINAL DE ANÁLISIS
 
Metodologia msf
Metodologia msfMetodologia msf
Metodologia msf
 

Último

el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...JAVIER SOLIS NOYOLA
 
Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...Baker Publishing Company
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024IES Vicent Andres Estelles
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinavergarakarina022
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIATRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIAAbelardoVelaAlbrecht1
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteJuan Hernandez
 
plan-de-trabajo-colegiado en una institucion educativa
plan-de-trabajo-colegiado en una institucion educativaplan-de-trabajo-colegiado en una institucion educativa
plan-de-trabajo-colegiado en una institucion educativafiorelachuctaya2
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfromanmillans
 
Fundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfFundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfsamyarrocha1
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.DaluiMonasterio
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
Procesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptxProcesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptxMapyMerma1
 

Último (20)

el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
 
Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...
 
Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karina
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
Unidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDIUnidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDI
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIATRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parte
 
plan-de-trabajo-colegiado en una institucion educativa
plan-de-trabajo-colegiado en una institucion educativaplan-de-trabajo-colegiado en una institucion educativa
plan-de-trabajo-colegiado en una institucion educativa
 
Earth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversaryEarth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversary
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdf
 
Fundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfFundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdf
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
Procesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptxProcesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptx
 

Pert cpm

  • 1. (i) PROYECTO FIN DE CARRERA ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS AUTOR: FRANCISCO JAVIER COCO UTRILLA MADRID, SEPTIEMBRE 2007 UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO INFORMÁTICO
  • 2. Autorizada la entrega del proyecto del alumno: Francisco Javier Coco Utrilla EL DIRECTOR DEL PROYECTO Manuel Rojas Guerrero Fdo.: .............................. Fecha: ....../ ....../ ...... Vº Bº del Coordinador de Proyectos Miguel Ángel Sanz Bobi Fdo.: .............................. Fecha: ....../ ....../ ......
  • 3. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - I - RESUMEN El concepto de lo que es un proyecto, es universal pero bastante inconcreto. Existen diversas definiciones, según el punto de vista de cada descriptor, pero en lo que todos parecen coincidir es que es un medio para llevar a cabo una proyección hacia el futuro con respecto a una situación actual que se desea cambiar. En el complejo mundo de las Organizaciones y Empresas, diseñar y desarrollar un proyecto que consiga aunar los diferentes intereses existentes y latentes, es una ardua tarea en la que muchas veces tienen que consensuar promotores y detractores. Además, a la hora de acometer un proyecto a veces se suelen encontrar situaciones complicadas para su dirección, planificación, obtención de recursos, recopilación de datos e incluso su justificación económica, que pueden dificultar el éxito del mismo. Por ello, a lo largo del tiempo se han ido confeccionando distintos métodos de trabajo que persiguen soslayar estos inconvenientes y que presentados de manera formal y pública reciben el nombre de Metodologías. Unas están especializadas para confeccionar proyectos en el mundo de cada organización y otras son de propósito general. En este Proyecto Final de Carrera se ha desarrollado un sistema de propósito general que extiende el algoritmo clásico del PERT-CPM basado en programación dinámica (que permite estudiar una red de actividades) al caso en
  • 4. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - II - el que se tiene un conocimiento vago de las duraciones de las diferentes actividades de la red. Este conocimiento puede ser modelado mediante números borrosos trapezoidales (y, como casos particulares, intervalos constantes y números borrosos piramidales). El sistema se ha diseñado con una arquitectura cliente-servidor que permite al usuario la creación de un proyecto que parte de una fecha que el usuario asigna y que está compuesto por un conjunto de actividades que él mismo diseña a través de un interfaz sencillo e intuitivo. Por su potencia de desarrollo en soluciones de cualquier tipo, integración de funciones, facilidad de uso y documentación existente, el proyecto ha sido desarrollado en su totalidad en el lenguaje de programación Java (jdk 1.6) con el entorno de desarrollo Eclipse-SDK-3.1.1. El sistema permite al usuario guardar y cargar los proyectos existentes, insertar nuevas actividades que puedan surgir, modificarlas y eliminarlas del proyecto con total facilidad y en cualquier momento. Asimismo se proporcionan diferentes métodos de desborrosificación de resultados para estimar una valoración del proyecto en un diagrama de Gantt. La aplicación se divide en dos subsistemas: cliente y servidor que se comunican mediante un protocolo a nivel de aplicación diseñando para trabajar tanto desde el mismo equipo como en una red local o a través de Internet. La aplicación cliente es la encargada de recoger la información que aporta el usuario controlando la entrada de datos en el sistema para mantener la
  • 5. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - III - información en un estado conforme e íntegro de tal manera que se cumplan las directrices de los diagramas de red y de las duraciones borrosas. Por otra parte se presentan las tablas de actividades y etapas generadas por el servidor enfatizando la ruta crítica del proyecto. Como apoyo se muestran gráficas descriptivas para la ayuda al diseño y a la comprensión de los resultados. El servidor se encargará de resolver las redes de actividades enviadas por el cliente con las opciones de solución elegidas para cada una de las fases del camino crítico. El sistema desarrollado en definitiva es capaz de proporcionar una importante ayuda a la toma de decisiones en el ámbito empresarial para proyectos con actividades modeladas mediante números borrosos combinando el algoritmo clásico del PERT-CPM con seis técnicas diferentes de desborrosificación implementadas, de las cuales cuatro de ellas incorporan un parámetro asociado dotando a la aplicación de una robustez y versatilidad sorprendentes.
  • 6. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - IV - ABSTRACT The concept about what is a project is universal but no specific enough. Diverse definitions exist, according to the point of view of every describer, but all of them seem to agree about it is that it is a way to carry out a projection towards the future with regard to a current situation that one wants to change. Inside the complex world of the Organizations and Companies, to design and develop a project that manages to unite the different existing and latent interests, it is an arduous task in which often promoters and detractors have to agree. In addition, at the moment of undertaking a project it is usual to find complex situations for its direction, planning, obtaining of resources, summary of information and even its economic justification, which can impede the success of it. For all this, throughout the time there have been created different methods of work that they chase to avoid these disadvantages and they receive the name of Methodologies. Some are specialized to make projects in the world of every organization and others are of general purpose. In this project a general purpose system has been developed that extends the classic algorithm of the PERT-CPM based on dynamic programming (that allows studying an activities network) to the case in which a vague knowledge exist about the duration of the different activities in the network. This
  • 7. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - V - knowledge can be shaped by means of trapezoidal fuzzy numbers (and, as particular cases, constant intervals and pyramidal fuzzy numbers). The system has been designed with a client - server architecture that allows the user to create a project that initiates from a date that the user assigns and is composed by a set of activities designed by him across a simple and intuitive interface. For its power of development in solutions of any type, integration of functions, facility of use and existing documentation, the project has been developed entirely in the Java programming language (jdk 1.6) using the development environment Eclipse-SDK-3.1.1. The system allows the user to save and load the existing projects, to insert new activities that could arise, modify them and eliminate them from the project with total facility and at any time. Likewise different methods of defuzzification are provided to estimate a valuation of the project results in Gantt's graph. The application is composed by two subsystems: client subsystem and server subsystem that communicate by an application level protocol designed to work as much from the same computer as in a local area network or across the Internet. The client subsystem is in charge of gathering the information that the user put in, controlling the entry of information in the system to support the information in a right and entire state in such a way that the directives of network
  • 8. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - VI - diagram and the fuzzy durations are carried out. On the other hand it presents tables about activities and stages generated by the server emphasizing the critical path of the project. Descriptive graphs are shown to help with the design and to the comprehension of the results. The server will take charge solving the networks of activities sent by the client with the solution options chosen for each of the phases of the critical path. The system developed in short is capable to provide an important help to make a decisions in the business area for projects with activities shaped by fuzzy numbers combining the classic algorithm of the PERT-CPM with six different defuzzification methods implemented, in which four of them incorporate an associate parameter providing the application with a solid and a surprising versatility.
  • 9. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - A - ÍNDICE 1. INTRODUCCIÓN Y PLANTEAMIENTO...................................... 1 2. EL PERT/CPM ............................................................................ 5 2.1 GLOSARIO ........................................................................................... 5 2.2 VENTAJAS PERT Y CPM .................................................................... 8 2.3 CAMPO DE ACCIÓN............................................................................ 8 2.4 DISEÑO DEL DIAGRAMA DE RED ..................................................... 9 2.5 EL MÉTODO CPM.............................................................................. 13 2.5.1 APLICACIÓN DEL MÉTODO CPM......................................... 13 2.5.2 EJEMPLO DE CPM................................................................. 18 2.5.3 LIMITACIONES DEL CPM ...................................................... 21 2.6 EL MÉTODO PERT ............................................................................ 22 2.6.1 TIEMPOS DE ESTIMACIÓN DE ACTIVIDAD......................... 22 2.6.2 DETERMINAR LA RUTA CRÍTICA ......................................... 24 2.6.3 VENTAJAS DEL PERT ........................................................... 26 2.6.4 LIMITACIONES....................................................................... 27 2.7 CONCLUSIONES ............................................................................... 27 3. LA LÓGICA BORROSA............................................................ 29 3.1 CONJUNTOS CLÁSICOS .................................................................. 29 3.1.1 FUNCIÓN CARTESIANA ........................................................ 31 3.1.2 OPERACIONES BÁSICAS ENTRE CONJUNTOS ................. 32 3.1.3 PROPIEDADES DE LOS CONJUNTOS CLÁSICOS .............. 33 3.2 CONJUNTOS BORROSOS................................................................ 35
  • 10. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - B - 3.2.1 FUNCIÓN DE PERTENENCIA................................................ 36 3.2.2 DEFINICIONES BÁSICAS SOBRE CONJUNTOS BORROSOS ............................................................. 41 3.2.3 OPERACIONES BÁSICAS ENTRE CONJUNTOS BORROSOS ............................................................. 43 3.2.4 PRINCIPIO DE EXTENSIÓN .................................................. 44 3.2.5 α-CORTES .............................................................................. 45 3.3 NÚMEROS BORROSOS.................................................................... 46 4. PLANTEAMIENTO Y OBJETIVOS DEL PROYECTO .............. 48 4.1 PLANTEAMIENTO DEL PROYECTO ................................................ 49 4.2 OBJETIVOS DEL PROYECTO .......................................................... 49 5. SOLUCIÓN PROPUESTA ........................................................ 52 6. DIAGRAMA DE CONTEXTO .................................................... 53 7. PERFILES Y ÁMBITO............................................................... 54 8. ANÁLISIS.................................................................................. 55 8.1 ANÁLISIS DE REQUISITOS .............................................................. 55 8.1.1 REQUISITOS FUNCIONALES................................................ 55 8.1.2 REQUISITOS NO FUNCIONALES ......................................... 56 8.2 ANÁLISIS FUNCIONAL DETALLADO .............................................. 58 8.2.1 CREACIÓN DEL PROYECTO, INSERCIÓN, MODIFICACIÓN Y ELIMINACIÓN DE ACTIVIDADES .................... 58 8.2.2 TRATAMIENTO DE LAS DURACIONES BORROSAS........... 59 8.2.3 CREACIÓN DEL ALGORITMO DE SOLUCIÓN ..................... 59 8.2.4 PROTOCOLO DE CONEXIÓN ............................................... 60
  • 11. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - C - 8.2.5 PRESENTACIÓN DE LOS DATOS......................................... 61 8.2.6 PRESENTACIÓN DE LOS GRÁFICOS .................................. 61 8.2.7 ALMACENAMIENTO DE LOS DATOS ................................... 62 8.2.8 MODIFICACIÓN DE PARÁMETROS DEL PROYECTO Y DEL PROGRAMA .................................................................................... 62 9. ESTUDIO DE LA ARQUITECTURA.......................................... 63 9.1 EL LENGUAJE JAVA......................................................................... 63 9.2 ESTRUCTURA DEL SISTEMA........................................................... 65 10. DISEÑO DE LA APLICACIÓN................................................ 67 10.1 MODELO DE DOMINIO.................................................................... 68 10.2 MODELO DE DATOS....................................................................... 69 10.2.1 TABLA DE ACTIVIDADES .................................................... 69 10.2.2 TABLA DE ETAPAS.............................................................. 72 10.2.3 TABLA DE ACTIVIDADES FICTICIAS.................................. 74 10.3 MODELO DE CASOS DE USO ........................................................ 75 10.3.1 IDENTIFICACIÓN DE LOS CASOS DE USO ....................... 75 10.3.2 DIAGRAMA DE CASOS DE USO......................................... 76 10.3.3 DESCRIPCIÓN DE LOS CASOS DE USO ........................... 78 10.4 DIAGRAMA DE PAQUETES............................................................ 92 10.4.1 PACKAGE MOTOR............................................................... 92 10.4.2 PACKAGE CLIENTE............................................................. 93 10.4.3 PACKAGE ORG.................................................................... 93 10.4.4 PACKAGE COMMON ........................................................... 94
  • 12. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - D - 10.5 DIAGRAMA DFD DE PRIMER NIVEL DE LA APLICACIÓN CLIENTE...................................................................... 95 10.6 DIAGRAMA STATECHART DEL SERVIDOR DE RESOLUCIÓN... 96 11. LA APLICACIÓN CLIENTE .................................................... 97 11.1 DISEÑO Y EDICIÓN DEL PROYECTO............................................ 97 11.1.1 CREACIÓN DE UN NUEVO PROYECTO (CU01)................ 97 11.1.10 SOLUCIÓN DEL PROYECTO........................................... 124 11.1.2 DEFINIR LOS PARÁMETROS DEL PROYECTO (CU02) .... 98 11.1.3 INICIADOR DE ACTIVIDADES (CU03) .............................. 100 11.1.4 CREADOR DE DURACIONES BORROSAS (CU14).......... 103 11.1.5 INICIADOR DE SUCESORAS (CU04)................................ 107 11.1.6 AÑADIR ACTIVIDADES AL PROYECTO (CU05)............... 111 11.1.7 MODIFICAR LAS ACTIVIDADES DEL PROYECTO (CU06)............................................................... 112 11.1.8 ELIMINAR ACTIVIDADES DEL PROYECTO (CU07) ......... 116 11.1.9 MODIFICAR FECHA DE INICIO DEL PROYECTO (CU02) 122 11.2 COMUNICACIONES....................................................................... 126 11.2.1 CONEXIÓN CON EL SERVIDOR DE RESOLUCIÓN (CU09)................................................................... 126 11.2.2 MODIFICAR LA CONFIGURACIÓN DE CONEXIÓN CON EL SERVIDOR (CU13)........................................................................ 129 11.3 GESTIÓN DE ARCHIVOS .............................................................. 130 11.3.1 GUARDADO DE INFORMACIÓN (CU11)........................... 132 11.3.2 CARGA DE INFORMACIÓN (CU12)................................... 135
  • 13. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - E - 11.4 PRESENTACIÓN DE LA INFORMACIÓN (CU10)......................... 137 11.4.1 INFORMACIÓN BÁSICA..................................................... 137 11.4.2 INFORMACIÓN RESUELTA............................................... 140 12. EL SERVIDOR DE RESOLUCIÓN........................................ 147 12.1 GESTOR DE PETICIONES ............................................................ 147 12.2 MOTOR DE RESOLUCIÓN (CU08)................................................ 149 12.2.1 CREACIÓN DEL DIAGRAMA DE RED............................... 149 12.2.2 FASE HACIA DELANTE DEL MÉTODO CPM.................... 154 12.2.3 FASE HACIA ATRÁS DEL MÉTODO CPM......................... 158 12.2.4 IDENTIFICACIÓN DE LAS ACTIVIDADES CRÍTICAS ....... 165 12.2.5 CALCULAR LOS MÁRGENES DE CADA ACTIVIDAD....... 165 12.2.6 OPCIONES DE DESBORROSIFICACIÓN PROPORCIONADAS..................................................................... 166 12.2.7 OPCIONES DE RESOLUCIÓN DEL PROYECTO.............. 174 13. EJEMPLO DE ENSAYO ....................................................... 178 14. PLANIFICACIÓN .................................................................. 187 15. ESTUDIO ECONÓMICO ....................................................... 192 15.1 RECURSOS UTILIZADOS ............................................................. 192 15.2 COSTES DEL PROYECTO ............................................................ 193 15.2.1 COSTES DE PERSONAL ................................................... 193 15.2.2 COSTES DE AMORTIZACIÓN DE PROGRAMAS Y EQUIPOS....................................................................................... 195 15.2.3 COSTES DE MATERIAL..................................................... 196 15.2.4 COSTES INDIRECTOS ...................................................... 197
  • 14. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - F - 15.3 COSTE TOTAL DEL PROYECTO.................................................. 198 16. CONCLUSIONES Y LÍNEAS FUTURAS .............................. 199 17. BIBLIOGRAFÍA..................................................................... 201
  • 15. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 1 - 1. INTRODUCCIÓN Los proyectos, y en especial los proyectos a gran escala, han existido desde tiempos antiguos. Este hecho lo atestigua la construcción de las pirámides de Egipto y los acueductos de Roma. El Proqramme Evaluation and Review Technique (PERT – Técnica de revisión y evaluación de proyectos) fue desarrollado por científicos de la Oficina de Proyectos Especiales de la Marina de los Estados Unidos de América. Con este método se comienza descomponiendo el proyecto en una serie de actividades, entendiendo por actividad la ejecución de una tarea que necesita para su realización la utilización de uno o varios tipos de recursos (mano de obra, maquinaria, materiales, tiempo, etc.), considerando como característica fundamental su duración. La técnica demostró tanta utilidad que ha ganado amplia aceptación tanto en el gobierno como en el sector privado. Casi al mismo tiempo, la Compañía DuPont, junto con la División UNIVAC de la Remington Rand, desarrolló el Critical Path Method (CPM, Método del Camino Critico) para controlar la programación de cierres de mantenimiento de plantas de procesamiento químico de DuPont. El CPM es idéntico al PERT en concepto y metodología. La diferencia principal entre ellos es simplemente el método por medio del cual se realizan estimaciones de tiempo para las actividades del proyecto. Con CPM, los tiempos de las actividades son deterministas. Con PERT, los tiempos de las actividades son probabilísticos o estocásticos.
  • 16. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 2 - El PERT/CPM fue diseñado para proporcionar diversos elementos útiles de información para los administradores del proyecto. Primero, el PERT/CPM expone la "ruta crítica" de un proyecto. Estas son las actividades que limitan la duración del proyecto. En otras palabras, para lograr que el proyecto se realice pronto, las actividades de la ruta crítica deben realizarse pronto. Por otra parte, si una actividad de la ruta crítica se retarda, el proyecto como un todo se retarda en la misma cantidad. Las actividades que no están en la ruta crítica tienen una cierta cantidad de holgura; esto significa que pueden empezarse más tarde, y permitir que el proyecto como un todo se mantenga en programa. El PERT/CPM identifica estas actividades y la cantidad de tiempo disponible para retardos. A esto se le llama margen. Hay dos tipos de márgenes: el margen libre (retraso que puede existir en el comienzo o en la ejecución de una actividad sin modificar la fecha prevista de la etapa sucesora) y el margen total (retraso que puede existir en el comienzo o en la ejecución de una actividad sin modificar la fecha prevista de finalización del proyecto). Ambos márgenes para la ruta crítica valen cero. Finalmente, el PERT/CPM proporciona una herramienta para controlar y monitorizar el progreso del proyecto. Las actividades de la ruta crítica, permiten por consiguiente, recibir la mayor parte de la atención, debido a que la terminación del proyecto, depende fuertemente de ellas. Las actividades no críticas se manipularan y remplazaran en respuesta a la disponibilidad de recursos. En los años 60, en la Universidad de California en Berkeley, Lotfi A. Zadeh introdujo el concepto de la lógica borrosa (ZADE65) guiado por el
  • 17. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 3 - principio de que las matemáticas pueden ser usadas para encadenar el lenguaje con la inteligencia humana. Algunos conceptos pueden ser mejor definidos en términos de palabras, que por matemáticas; la lógica borrosa y su expresión en conjuntos borrosos, proveen una disciplina que puede construir mejores modelos de la realidad. La lógica borrosa es básicamente lógica multivaluada que amplifica los enunciados de la lógica clásica intentando aplicar la forma de pensar del ser humano a la programación de computadores, sensores, chips, etc. La habilidad de la lógica borrosa para procesar valores parciales de verdad ha sido de gran ayuda para la ingeniería. La aplicación del adjetivo "borrosa" es debida a que los valores de verdad no-deterministas utilizados en la lógica borrosa tienen mayoritariamente una connotación de incertidumbre. De hecho, lo borroso puede entenderse como la posibilidad de asignar más valores de verdad a los enunciados que "falso" o "verdadero" e incluso en determinadas áreas de conocimiento, estos enunciados van asociados a valores de verdad que son grados de veracidad o falsedad. Resumiendo, puede llegar a redefinir los grados de veracidad de los enunciados de salida conforme se refinan los de los de entrada, por lo que algunos sistemas de lógica borrosa ejercen una labor de aprendizaje, y son excelentes mecanismos de control de procesos. En conclusión, la lógica borrosa crea aproximaciones matemáticas en la resolución de ciertos tipos de problemas, produciendo resultados exactos a
  • 18. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 4 - partir de datos imprecisos, siendo por ello, especialmente útiles en aplicaciones de tipo electrónico e informático. En el presente proyecto se estudia la posibilidad de aunar en una aplicación informática dos reconocidas técnicas de ingeniería, el PERT/CMP y la lógica borrosa, para integrar en la planificación de proyectos las actividades que no tengan una duración determinada por diferentes factores. Estos factores son las actividades nuevas, actividades que han sido desarrolladas de forma experimental, y no están bien definidas, y actividades que han sido realizadas múltiples veces pero varían dentro de un rango. Todas ellas se pueden modelar usando la lógica borrosa por estimación de un experto en la materia. La planificación de proyectos repercute económicamente en las empresas que destinan sus recursos a un proyecto determinado deseando necesariamente que se finalice en la fecha prevista. A la vista del proyecto, los caminos críticos dependerán de las funciones que rijan sus actividades y variarán según el tratamiento que se dé a las mismas.
  • 19. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 5 - 2. EL PERT/CPM 2.1 GLOSARIO Para lograr una adecuada comprensión del tema a desarrollar ha redactado un glosario que sirva como guía para comprender la terminología empleada. PERT. La traducción de las siglas en inglés significan: técnica de revisión y evaluación de programas, es una técnica de redes desarrollado en la década de los 50, utilizada para programar y controlar programas a realizar. Cuando hay un grado extremo de incertidumbre y cuando el control sobre el tiempo es más importante sobre el control del costo, PERT es mejor opción que CPM. CPM. La traducción de las siglas en inglés significan: método del camino crítico, es uno de los sistemas que siguen los principios de redes, que fue desarrollado en 1957 y es utilizado para planear y controlar proyectos, añadiendo el concepto de costo al formato PERT. Cuando los tiempos y costos se pueden estimar relativamente bien, el CPM puede ser superior a PERT. Actividad. Es un trabajo que se debe llevar a cabo como parte de un proyecto, es simbolizado mediante una arista dirigida de la red de PERT. Lista de actividades. Es una lista ordenada donde se recopilan todas las diferentes actividades que intervienen en la realización de un proyecto. Etapa. Se dice que se realiza una etapa, cuando todas las actividades que llegan a un mismo nodo han sido terminadas. Son los círculos numerados
  • 20. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 6 - que forman parte del diagrama de red y representan el principio y el fin de las actividades que intervienen en el proyecto. Arista. Son las flechas que forman parte del diagrama de red y representan cada una de las actividades del proyecto. Ruta crítica o camino crítico. Se llama camino crítico tanto al método como a la serie de actividades contadas desde la iniciación del proyecto hasta su terminación que no tienen flexibilidad en su tiempo de ejecución, por lo que cualquier retraso que sufriera alguna de las actividades de la serie provocaría un retraso en todo el proyecto. Desde otro punto de vista, es la serie de actividades que indica la duración total del proyecto. Actividad Predecesora. Es una actividad que debe preceder (estar antes) inmediatamente a una actividad dada en un proyecto. Actividad Sucesora. Es una actividad que debe suceder (estar después) inmediatamente a una actividad dada en un proyecto. Diagrama de red. Es una red de círculos numerados (etapas) conectados con flechas (actividades), donde se muestran todas las actividades que intervienen en un determinado proyecto y la relación de prioridad entre las actividades en la red así como las duraciones previstas y límites para cada etapa del proyecto y los márgenes de cada actividad. Actividad ficticia. Actividades imaginarias que existen dentro del diagrama de red, sólo con el propósito de establecer las relaciones de precedencia y no se les asigna tiempo alguno, es decir, que la actividad ficticia
  • 21. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 7 - Permite dibujar redes con las relaciones de precedencia apropiadas, se representa por medio de una línea punteada. Margen libre. Retraso que puede existir en el comienzo o en la ejecución de una actividad sin modificar la fecha prevista de la etapa sucesora. Margen total. Retraso que puede existir en el comienzo o en la ejecución de una actividad sin modificar la fecha prevista de finalización del proyecto. Tiempo optimista. Es el tiempo mínimo o más corto posible en el cual es probable que sea terminada una actividad, se simboliza con a en las duraciones borrosas que se estudiaran en el capítulo siguiente. Tiempo más probable. Es el tiempo más probable que toma una actividad, en otras palabras, es el tiempo normal que se necesita en circunstancias ordinarias para realizarla, se simboliza con el intervalo [A,B] en las duraciones borrosas. Tiempo pesimista. Es el tiempo máximo o más largo posible en el cual es probable que sea terminada una actividad, bajo las condiciones más desfavorables, simbolizado con b en las duraciones borrosas. Fecha prevista. Es la fecha de una etapa en la que se prevé que todas las actividades que llegan a ella estarán terminadas. Fecha límite. Es la fecha de una etapa que si se rebasa implica el retraso de todo el proyecto.
  • 22. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 8 - Intervalo de flotamiento. Es el intervalo de tiempo en el que se puede completar una etapa sin retrasar el proyecto. Comprende desde la fecha prevista hasta la fecha límite para cada etapa. Si la etapa forma parte del camino crítico el intervalo de flotamiento será cero. 2.2 VENTAJAS PERT Y CPM 1. Enseña una disciplina lógica para planificar y organizar un programa detallado de largo alcance. 2. Identifica los elementos (segmentos) más críticos del plan, en que problemas potenciales puedan perjudicar el cumplimiento del programa propuesto. 3. Ofrece la posibilidad de simular los efectos de las decisiones alternativas o situaciones imprevistas y una oportunidad para estudiar sus consecuencias en relación a los plazos de cumplimiento de los programas. 4. Aporta la probabilidad de cumplir exitosamente los plazos propuestos. En otras palabras: CPM es un sistema dinámico, que se mueve con el progreso del proyecto, reflejando en cualquier momento el STATUS presente del plan de acción. 2.3 CAMPO DE ACCIÓN El campo de acción de este método es muy amplio, dada su gran flexibilidad y adaptabilidad a cualquier proyecto grande o pequeño. Para
  • 23. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 9 - obtener los mejores resultados debe aplicarse a los proyectos que posean las siguientes características: 1. Que el proyecto sea único, no repetitivo, en algunas partes o en su totalidad. 2. Que se deba ejecutar todo el proyecto o parte de el, en un tiempo mínimo, sin variaciones, es decir, en tiempo crítico. 3. Que se desee el costo de operación más bajo posible dentro de un tiempo disponible. Dentro del ámbito aplicación, el método se ha estado usando para la planeación y control de diversas actividades, tales como construcción de presas, apertura de caminos, pavimentación, construcción de casas y edificios, reparación de barcos, investigación de mercados, movimientos de colonización, estudios económicos regionales, auditorias, planeación de carreras universitarias, distribución de tiempos de salas de operaciones, ampliaciones de fábrica, planeación de itinerarios para cobranzas, planes de venta, censos de población, etcétera. 2.4 DISEÑO DEL DIAGRAMA DE RED Para aplicar CPM o PERT se requiere conocer la lista de actividades que incluye un proyecto. Se considera que el proyecto esta terminado cuando todas las actividades han sido completadas. Para cada actividad, puede existir un conjunto de actividades predecesoras que deben ser completadas antes de que comience la nueva actividad. Se construye una malla o red del proyecto
  • 24. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 10 - para graficar las relaciones de precedencia entre las actividades. En dicha representación grafica, cada actividad es representada como un arco y cada nodo (etapa) ilustra la culminación de una o varias actividades. Consideremos un proyecto que consta de solo dos actividades A y B. Supongamos que la actividad A es predecesora de la actividad B. La representación grafica de este proyecto se muestra en la figura. Así, el nodo 2 representa la culminación de la actividad A y el comienzo de la actividad B. Si suponemos ahora que las actividades A y B deben ser terminadas antes que una actividad C pueda comenzar, la malla del proyecto queda como se muestra en la ilustración 2. En este caso, el nodo representa que las actividades A y B se han terminado, además del inicio de la actividad C. Si la actividad A fuera predecesora de las actividades B y C, la red quedara como se muestra en la ilustración 3. Dado un conjunto de actividades y sus relaciones de predecisión o sucesión, se puede construir una representación grafica de acuerdo a las siguientes reglas: A B 1 2 3 Ilustración 2.1 – Diagrama de red de dos actividades 3 2 1 A C B 21 A B C Ilustración 2.2 – A y B preceden a C Ilustración 2.3 – A precede a B y C
  • 25. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 11 - • El nodo 1 representa el inicio del proyecto. Por lo tanto, las actividades que parten del nodo 1 no pueden tener predecesoras. • El nodo Terminal o final del proyecto debe representar el término de todas las actividades incluidas en la red. • Una actividad no puede ser representada por más de un arco en la red. • Dos nodos deben estar conectados como máximo por un arco. Para no violar las reglas 3 y 4, a veces es necesario introducir una actividad ficticia o dummy que posee tiempo de duración nulo. Por ejemplo, supongamos que las actividades A y B tienen como actividad sucesora a la actividad C y además comienzan al mismo tiempo o en la misma etapa. En este caso, una primera representación podría ser la indicada en la figura siguiente. Ilustración 2.4 – Representación errónea de sucesión sin actividad ficticia Sin embargo, la red de la ilustración 4 viola el cuarto punto. Para corregir este problema, se introduce una actividad ficticia indicada con un arco segmentado en la figura.
  • 26. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 12 - Ilustración 2.5 – Actividad dummy La red de la ilustración 5 refleja el hecho de que la actividad C tiene como predecesoras a A y B, pero sin violar el punto 4. En otros casos, se deben agregar actividades dummy para no violar la regla 3. En la siguiente figura se muestra la lógica para construir un diagrama de red. Ilustración 2.6 – Lógica de construcción del diagrama de red
  • 27. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 13 - 2.5 EL MÉTODO CPM 2.5.1 APLICACIÓN DEL MÉTODO CPM Los pasos a seguir para plantear un proyecto con el método del camino crítico CPM son: Especificar las actividades individuales. Se realiza una lista de todas las actividades de las que se compone el proyecto. En este listado se puede añadir un identificador a cada actividad y una descripción de la misma. Es obligado estimar la duración de cada actividad, modelarla según la función de probabilidad a la que se ajuste o representarla mediante un número borroso que se explicara en el siguiente apartado del proyecto. Determinar la secuencia de las actividades. Algunas actividades son dependientes en la terminación de otras, es decir son las sucesoras de otras actividades que necesitan completarse antes de que éstas empiecen. Un listado de los precursores inmediatos de cada actividad o un listado de los sucesores de cada actividad es útil para construir el diagrama de la red del CPM. Dibujar el diagrama de la red. Una vez que se hayan definido las actividades, el diagrama del CPM puede ser dibujado. El CPM fue desarrollado originalmente como actividad en red del nodo (AON), pero algunos planificadores del proyecto prefieren especificar las actividades en los arcos. Hay que tener en cuenta las reglas para la construcción del diagrama descritas anteriormente.
  • 28. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 14 - Añadir la información al diagrama de red. La información recopilada para cada actividad es aconsejable añadirla en el diagrama. La etapa inicial se numerará con un uno. Se irán numerando las diferentes etapas hasta llegar a la final del proyecto que tendrá el número mayor. En la figura siguiente se representa la información que debería contener el diagrama en este apartado. Ilustración 2.7 – Información primaria de un diagrama de red Fase hacia delante. En esta fase se pretende determinar los instantes más tempranos o la fecha prevista para cada etapa o nodo. Para ello se asigna al nodo inicial la fecha prevista cero. Luego se elige un nodo tal que todos los anteriores que estén unidos directamente a él por una actividad ya tengan fecha prevista. Se etiqueta el nodo elegido con la duración máxima de la suma de la duración cada actividad más la fecha prevista del nodo del que proviene. Por tanto, usando la notación tk para la fecha prevista del nodo k y ti,k para la duración de la actividad que va del nodo i al k, la formula a emplear es: },...,,max{ ,,22,11 knmnmknnknnk ttttttt +++= Ecuación 2.1
  • 29. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 15 - Este paso se repite hasta etiquetar el nodo final, entonces esta será la duración mínima del proyecto. Fase hacia atrás. En esta fase se pretende determinar los instantes más tardíos o la fecha límite para cada etapa o nodo. Para ello se asigna al nodo final la fecha límite, siendo esta la misma que su fecha prevista. Luego se elige un nodo tal que todos los siguientes que estén unidos directamente a él por una actividad ya tengan fecha límite. Se etiqueta el nodo elegido con la duración mínima de la resta de la fecha límite del nodo al que llega menos la duración de la actividad que los une. Por tanto, usando la notación ti* para la fecha límite del nodo i y ti,k para la duración de la actividad que va del nodo i al k, la formula a emplear es: },...,,min{* ,2,21,1 nminmninnini ttttttt −−−= Ecuación 2.2 Este paso se repite hasta etiquetar el nodo inicial, debiendo ser éste igual a su fecha prevista, es decir, cero. Identificar las actividades críticas. Habiendo determinado las fechas previstas y límites de todos los nodos de la red, la identificación del camino crítico es sencilla. Las actividades críticas de la red serán aquellas que unan aquellos nodos cuyas fechas previstas y límites sean iguales (las etapas con intervalo de flotamiento igual a cero). Estos nodos también forman parte del camino crítico.
  • 30. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 16 - Calcular los márgenes de cada actividad. Los márgenes u holguras de cada actividad son los retrasos que puede tener cada actividad. Se calcula tanto el margen libre como el total denotándolos con Li,k y Si,k respectivamente. kiikki kiikki tttS tttL ,, ,, * −−= −−= Ecuación 2.3 Por tanto el margen libre de la actividad que va del nodo i al k será el retraso que puede existir en el comienzo o en la ejecución de la actividad que va de i a k sin modificar la fecha prevista de la etapa k. El margen total de la actividad que va del nodo i al k será el retraso que puede existir en el comienzo o en la ejecución de una actividad que va de i a k sin modificar la fecha prevista de finalización del proyecto. Cabe destacar que las actividades que formen parte de la ruta crítica tendrán ambos márgenes iguales a cero. Los datos ahora de los cuales se compone el diagrama y los lugares donde se sitúan se muestran en la imagen 8. Ilustración 2.8 – Información completa de un diagrama de red
  • 31. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 17 - Realizar el diagrama de Gantt. El diagrama de es una popular herramienta gráfica cuyo objetivo es el de mostrar el tiempo de dedicación previsto para diferentes actividades a lo largo de un tiempo total determinado. A pesar de que, en principio, el diagrama de Gantt no indica las relaciones existentes entre actividades, la posición de cada tarea a lo largo del tiempo hace que se puedan identificar dichas relaciones e interdependencias. En gestión de proyectos, el diagrama de Gantt muestra el origen y final de las diferentes actividades y las dependencias entre las mismas. Desde su introducción los diagramas de Gantt se han convertido en una herramienta básica en la gestión de proyectos de todo tipo, con la finalidad de representar las diferentes actividades programadas como parte de un proyecto o para mostrar una línea de tiempo en las diferentes actividades haciendo el método más eficiente. Aunque un diagrama de Gantt es fácilmente comprensible para proyectos pequeños en los que el diagrama cabe en una única hoja de papel o en una pantalla, puede ser bastante engorroso para proyectos con más de unas 30 actividades. Actualizar el diagrama según progresa el proyecto. Los tiempos reales de la terminación de la tarea serán sabidos y el diagrama de la red se puede poner al día para incluir esta información. Una trayectoria crítica nueva puede emerger, y los cambios estructurales se pueden realizar en la red si los requisitos del proyecto cambian.
  • 32. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 18 - 2.5.2 EJEMPLO DE CPM A continuación se muestra un ejemplo siguiendo los pasos para resolver una red de actividades CPM: Especificar las actividades individuales y determinar la secuencia de las actividades. Tabla 2.1 – Descripción de las actividades del proyecto Dibujar el diagrama de la red y añadirle la información Ilustración 2.9 – Diagrama de red con información básica
  • 33. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 19 - Fase hacia delante. Ilustración 2.10 – Diagrama de red tras la fase hacia delante Fase hacia atrás. Ilustración 2.11 – Diagrama de red tras la fase hacia atrás
  • 34. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 20 - Identificar las actividades críticas. Ilustración 2.12 – Identificación del camino crítico Calcular los márgenes de cada actividad. Ilustración 2.13– Diagrama de red con información completa
  • 35. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 21 - Realizar el diagrama de Gantt. Ilustración 2.14 – Diagrama de red proporcionado por la aplicación 2.5.3 LIMITACIONES DEL CPM El CPM fue desarrollado para proyectos bastante rutinarios con incertidumbre mínima en los tiempos de la terminación del proyecto. Para otros proyectos menos rutinarios hay más incertidumbre en los tiempos de terminación, ello trae consigo las limitaciones del modelo determinista del CPM al introducir incertidumbre. Una alternativa al CPM es el modelo del planeamiento del proyecto del PERT, que permite que una gama de duraciones sea especificada para cada actividad.
  • 36. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 22 - 2.6 EL MÉTODO PERT En CPM se asume que la duración de cada actividad es conocida con certeza. Claramente, en muchas ocasiones este supuesto no es valido. PERT intenta corregir este error suponiendo que la duración de cada actividad es una variable aleatoria. 2.6.1 TIEMPOS DE ESTIMACIÓN DE ACTIVIDAD Para cada activad, se requiere estimar las siguientes cantidades: a = Tiempo Optimista. Duración de la actividad bajo las condiciones más favorables b = Tiempo Pesimista. Duración de la actividad bajo las condiciones más desfavorables m = Tiempo Normal. El valor más probable de la duración de la actividad. La forma de la distribución se muestra en la Ilustración 15. El tiempo más probable es el tiempo requerido para completar la actividad bajo condiciones normales. Los tiempos optimistas y pesimistas proporcionan una medida de la incertidumbre inherente en la actividad, incluyendo desperfectos en el equipo, disponibilidad de mano de obra, retardo en los materiales y otros factores.
  • 37. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 23 - Ilustración 2.15 – Estimación del tiempo optimista, pesimista y normal Con la distribución definida, la media (esperada) y la desviación están- dar, respectivamente, del tiempo de la actividad para la actividad Z puede calcularse por medio de las fórmulas de aproximación: ( ) ( ) 6 6 4 ab Z bma ZTe − = ++ = σ Ecuación 2.4 El tiempo esperado de finalización de un proyecto es la suma de todos los tiempos esperados de las actividades sobre la ruta crítica. De modo similar, suponiendo que las distribuciones de los tiempos de las actividades son independientes (una suposición fuertemente cuestionable), la varianza del proyecto es la suma de las varianzas de las actividades en la ruta crítica. Si Tij es la variable aleatoria asociada a la duración de la actividad (i,j), PERT asume que Tij sigue una distribución Beta. Sin entrar en mayores
  • 38. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 24 - detalles de esta distribución, se puede demostrar que el valor esperado y la varianza de la variable aleatoria Tij quedan definidas por: [ ] ( ) [ ] ( ) 36 6 4 2 ab TijV bma ZTijE e − = ++ = Ecuación 2.5 Por lo tanto, el valor esperado y la varianza de una ruta pueden ser estimadas según: [ ] ( ) ∑∈Rutaij Tij = Duración esperada de la ruta [ ] ( ) ∑∈Rutaij Vij = Variación de la duración de la ruta 2.6.2 DETERMINAR LA RUTA CRÍTICA La ruta crítica es determinada agregando los tiempos para las actividades en cada secuencia y determinando la ruta mas larga del proyecto. La ruta crítica determina el tiempo total del calendario requerido para el proyecto. Si las actividades fuera de la ruta cítrica aceleran o retrasaron el tiempo (dentro de los límites), entonces el tiempo total de proyecto no varía. Al tiempo de una actividad no crítica de la ruta, que no altera la duración del proyecto, se denomina tiempo flojo. Si la ruta crítica del proyecto no resulta obvia, entonces puede ser provechoso determinar las cuatro cantidades siguientes para cada actividad:
  • 39. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 25 - • ES, principio temprano. • EF, principio tardío. • LS, terminación temprana. • LF, terminación tardía. Se calculan estos tiempos usando la duración prevista para las actividades relevantes. Los tiempos más tempranos del comienzo y del final de cada actividad son determinados trabajando adelante a través de la red y determinando el tiempo más temprano en el cual una actividad puede comenzar y acabar a considerar sus actividades del precursor. Los tiempos más tardíos del comienzo y del final son los tiempos más tardíos en que una actividad puede comenzar y acabar sin variar el proyecto. El LS y el LF son encontrados trabajando al revés a través de la red. La diferencia en el final más tardío y más temprano de cada actividad es holgura de esa actividad. La ruta crítica entonces es la trayectoria a través de la red en la cual ningunas de las actividades tienen holgura. La variación en el tiempo de la terminación del proyecto puede ser calculada sumando las variaciones en los tiempos de la terminación de las actividades en la ruta crítica. Dado esta variación, se puede calcular la probabilidad que el proyecto será terminado por cierta fecha si se asume que una distribución normal de la probabilidad para la trayectoria crítica. Sea CP la variable aleatoria asociada a la duración total de las actividades de la ruta crítica determinadas mediante CPM. PERT asume que la
  • 40. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 26 - ruta crítica encontrada a través de CPM contiene suficientes actividades para emplear el Teorema Central del Límite y concluir que CP se distribuye normalmente. ( ) TijCP Rutaij ∑∈ = Ecuación 2.6 Puesto que la ruta crítica determina la fecha de la terminación del proyecto, el proyecto puede ser acelerado agregando los recursos requeridos para disminuir la duración para las actividades en la ruta crítica. 2.6.3 VENTAJAS DEL PERT El PERT es útil porque proporciona la información siguiente: • Tiempo previsto de la terminación del proyecto. • Probabilidad de la terminación antes de una fecha especificada. • Las actividades de la trayectoria crítica que afectan directamente el tiempo de la terminación. • Las actividades que tienen tiempo flojo y que pueden prestar recursos a las actividades de la trayectoria crítica. • Fechas del comienzo y de fin de la actividad.
  • 41. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 27 - 2.6.4 LIMITACIONES A continuación se describen algunas de las debilidades del PERT: • Las estimaciones del tiempo de la actividad son algo subjetivas y dependen del juicio. En casos donde hay poca experiencia en la ejecución de una actividad, los números pueden ser solamente una conjetura. En otros casos, si la persona o el grupo que realiza la actividad estiman el tiempo puede haber una mejor estimación. • Incluso si se estiman correctamente los tiempos de la actividad, el PERT asume una distribución beta para éstos aunque la distribución real puede ser diferente. • El PERT asume que la distribución de la probabilidad del tiempo de la terminación del proyecto es igual que el de la ruta crítica. Otras trayectorias pueden convertirse en la ruta crítica si se retrasan sus actividades asociadas, el PERT subestima constantemente el tiempo previsto de la terminación del proyecto. 2.7 CONCLUSIONES El PERT y CPM han sido aplicados a numerosos proyectos. El PERT se desarrolló para proyectos en donde hubiera incertidumbre en el tiempo de las actividades (usualmente debido a que el proyecto nunca se había intentado antes y por tanto no había bases de datos para los tiempos de las actividades). Esto condujo al enfoque probabilístico que se tomó. La principal desventaja es que no es funcional para grandes proyectos, debido a los tres
  • 42. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 28 - estimados de tiempo que se requieren en cada. Además, el coste de actualizar y mantener la información del proyecto con el tiempo en ambientes tan dinámi- cos, puede ser excesivamente trabajoso. Por otra parte, el CPM se desarrolló para manejar proyectos repetitivos. Obviamente, se gana gran cantidad de experiencia con el tiempo en tales circunstancias, aun cuando dos proyectos puede que no sean iguales. Esta experiencia llevó al análisis de técnicas de colisión utilizadas en las redes CPM.
  • 43. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 29 - 3. LA LÓGICA BORROSA En 1965, L. A. Zadeh introduce la teoría de conjuntos borrosos (ZADE65), como un mecanismo para representar la vaguedad e imprecisión de los conceptos empleados en el lenguaje natural. Estos conjuntos borrosos fueron definidos como una extensión de los conjuntos clásicos capaz de modelar la imprecisión propia de los conceptos humanos. A mediados de los 70 llega la ampliación del concepto de conjunto al de lógica, apareciendo las lógicas borrosas y las aplicaciones a sistemas de control. Hoy en día son muchas las aplicaciones tanto industriales como domésticas que hacen uso de este paradigma. 3.1 CONJUNTOS CLÁSICOS Como se ha apuntado, el origen de la lógica borrosa es la noción de conjunto borroso. Antes de abordar el estudio de la Teoría de Conjuntos Borrosos, se revisarán algunos de los conceptos básicos de la Teoría Clásica, con el objeto de alcanzar una mayor comprensión de ambas. El punto de partida de la teoría de conjuntos son las nociones de elemento y de conjunto. Un conjunto se define genéricamente como una colección de elementos. Típicamente los elementos que forman parte de un conjunto tienen algún tipo de propiedad en común que les haga susceptibles de pertenecer al conjunto, pero tal requisito es meramente anecdótico. El conjunto se suele representar con una letra mayúscula, tipo A, B, C, etc., y los elementos del mismo se representan con una letra minúscula (a, b, c, etc.).
  • 44. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 30 - Sobre los conjuntos se define una relación de pertenencia, la cual se denota con el símbolo ∈. Así pues, si el elemento a pertenece al conjunto A, este hecho se formaliza mediante la expresión Aa ∈ y en el caso en que b no pertenezca a A se escribe Ab ∉ . Respecto a la forma de descripción del conjunto, ésta se puede realizar de manera enumerativa, },...,,{ 21 naaaA = , o bien, mediante la ley de formación a la que se ha hecho referencia A =”los diez primeros números naturales”. Tal definición, como puede imaginarse, es equivalente a escribir de forma enumerativa }10,...,2,1{=A . Se define el cardinal de un conjunto como el número de elementos que forman parte de dicho conjunto. Si dicho cardinal es un número finito, el conjunto se denominará finito. Caso contrario será infinito. Dentro de estos últimos, deben distinguirse los de cardinal numerable, que serán aquellos cuyos elementos se pueden poner en relación 1:1 con los números enteros (por ejemplo, el conjunto de los números pares), por otra parte nos encontraremos conjuntos de cardinal no numerable, como, por ejemplo, el conjunto de los números reales comprendidos entre dos números a y b. La relación de inclusión se deriva de la relación de pertenencia; un conjunto B se dice que está incluido dentro de un conjunto A cuando todos los elementos de B están en A. Si tal es el caso, podemos expresar de forma abreviada que AB ⊂ , o bien que BA ⊃ . Si se verifica que AB ⊂ y que BA ⊃ de forma simultánea, entonces es que los dos conjuntos son iguales.
  • 45. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 31 - Dos conjuntos de dice que son disjuntos si no tienen ningún elemento en común. A estos conjuntos se les denomina también mutuamente excluyentes. Dado un problema, el conjunto universal, denotado por S, será el conjunto formado por todos los elementos del problema. De forma complementaria, el conjunto vacío, denotado por ∅, será un conjunto sin ningún elemento. Como es natural, los conjuntos S y ∅ son mutuamente excluyentes. Sea S un universo del cual cualquier conjunto A es subconjunto, esto es: SA ⊆ , A∀ Ecuación 3.1 En teoría clásica de conjuntos cualquier elemento x perteneciente a S pertenece o no pertenece al subconjunto A de manera clara e inequívoca, sin que exista ninguna otra posibilidad al margen de estas dos. La pertenencia o no de un elemento arbitrario x a un subconjunto A viene dada en la mayoría de los casos por la verificación o no de un predicado que caracteriza a A y da lugar a una bipartición del universo de discurso S. 3.1.1 FUNCIÓN CARTESIANA El concepto de pertenencia o no de un elemento a un conjunto A puede expresarse numéricamente mediante una función característica. Esta función
  • 46. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 32 - asigna a cada elemento x del universo de discurso un dígito binario (1 ó 0) según x pertenezca o no al conjunto A.    ∉ ∈ = → Axsi Axsi x Sx A A 0 1 )( }1,0{:)( ϕ ϕ Ecuación 3.2 Por ejemplo, el conjunto }10,9,8,7,6,5,4,3{=A se puede representar por su función característica    ∈ = casootroen xpara xA 0 }10,9,8,7,6,5,4,3{1 )(ϕ Ecuación 3.3 3.1.2 OPERACIONES BÁSICAS ENTRE CONJUNTOS Dados dos conjuntos cualesquiera A y B incluidos en S es posible definir un conjunto de operaciones básicas entre ellos: Complemento: El complemento de A se denota por A, y está formado por todos los elementos de S que no pertenecen a A (operador unario). AxsiAx ∉∈ Ecuación 3.4 Su función de característica será: )(1)( xx AA ϕϕ −= Ecuación 3.5
  • 47. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 33 - Intersección: se denota por BA ∩ y se define como el conjunto formado por aquellos elementos de S que pertenecen a A y a B simultáneamente: BxyAxsiBAx ∈∈∩∈ Ecuación 3.6 Su función de característica será: ))(),(min()( xxx BABA ϕϕϕ =∩ Ecuación 3.7 Unión: Es el conjunto formado por aquellos elementos que pertenecen a A, o pertenecen a B, o bien a ambos simultáneamente. Se denota por BA ∪ . BxóAxsiBAx ∈∈∪∈ Ecuación 3.8 Su función de característica será: ))(),(max()( xxx BABA ϕϕϕ =∪ Ecuación 3.9 3.1.3 PROPIEDADES DE LOS CONJUNTOS CLÁSICOS Las operaciones entre conjuntos clásicos presentan ciertas leyes y propiedades: 1. Propiedad conmutativa ABBA ABBA ∩=∩ ∪=∪ Ecuación 3.10 2. Propiedad asociativa
  • 48. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 34 - )()( )()( CBACBA CBACBA ∩∩=∩∩ ∪∪=∪∪ Ecuación 3.11 3. Leyes de idempotencia AAA AAA =∩ =∪ Ecuación 3.12 4. Leyes de absorción AABA AABA =∪∩ =∩∪ )( )( Ecuación 3.13 5. Propiedad distributiva )()()( )()()( CABACBA CABACBA ∩∪∩=∪∩ ∪∩∪=∩∪ Ecuación 3.14 6. Propiedades de absorción por S y ∅ ∅=∅∩ =∪ A SSA Ecuación 3.15 7. Propiedades de identidad AA ASA =∅∪ =∩ Ecuación 3.16 8. Involución del complemento
  • 49. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 35 - AA = Ecuación 3.17 9. Leyes de Morgan BABA BABA ∪=∩ ∩=∪ Ecuación 3.18 10. Leyes complementarias ∅=∩ =∪ AA SAA Ecuación 3.19 3.2 CONJUNTOS BORROSOS En la sección anterior se ha visto cómo la mayoría de las veces los conjuntos clásicos se definen mediante un predicado que da lugar a una clara bipartición del universo de discurso S. Sin embargo, el razonamiento humano utiliza frecuentemente predicados de los cuales no resulta esa bipartición; son los denominados predicados vagos. Como ejemplo, se propone la variable edad y tres conjuntos para definir a los individuos; joven, maduro y viejo. Por supuesto, es imposible dar a una persona una definición clásica, ya que su correspondiente predicado no divide el universo en tres partes claramente diferenciadas. No resulta nada fácil afirmar con rotundidad que una persona es joven o no lo es. El problema podría resolverse en parte considerando que una persona es joven cuando su edad supera cierto umbral
  • 50. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 36 - fijado de antemano. Decimos que el problema tan sólo se resuelve en parte, y de manera no muy convincente, por dos motivos: de una parte el umbral mencionado se establece de una manera arbitraria, y por otro lado podría darse el caso de que dos personas con edades muy diferentes fuesen considerados ambos como jóvenes. Evidentemente, el concepto joven así definido nos daría una información muy pobre sobre la edad de la persona en cuestión. La manera más apropiada de dar solución a este problema es considerar que la pertenencia o no pertenencia de una persona x al conjunto joven no es absoluta sino gradual. En definitiva, definiremos joven como un conjunto borroso. Su función característica (ahora “de pertenencia") ya no adoptará valores en el conjunto discreto {0,1}, sino en el intervalo cerrado [0,1]. Mediante notación matemática se define un conjunto borroso A como: }|))(,{( SxxxA A ∈= µ Ecuación 3.20 3.2.1 FUNCIÓN DE PERTENENCIA La función característica es reemplazada por una función de pertenencia que se define ]1,0[: →SAµ Ecuación 3.21 de tal modo que ]1,0[)( ∈xAµ es el grado con el que un elemento Sx ∈ (siendo S el universo de discurso) pertenece al conjunto borroso A. Cuando 0)( =xAµ el elemento no pertenece al conjunto, y cuando 1)( =xAµ pertenece totalmente.
  • 51. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 37 - La forma de la función de pertenencia tiene una cierta componente subjetiva, frente a la forma rígida (objetiva) de las funciones características de la lógica clásica. En función de la aplicación de los conjuntos o de los conceptos representados por ellos, estas funciones pueden adquirir muy diversas formas, y muchas veces pueden ser elegidas con un amplio grado de libertad por parte del diseñador, lo que en la práctica puede traducirse como la posibilidad de incluir cierto conocimiento experto. A pesar de que las funciones podrían tener cualquier forma, en la literatura se tiende a trabajar con funciones de pertenencia estándares: 1. Funciones Gaussianas o con forma de “S”. Usan la fórmula ( )         − = 2 2 2 exp 2 1 )( d mx s x π µ Ecuación 3.22 Ilustración 3.1 – Función Gaussiana Permiten modelar fácilmente modificadores pero son complicadas para el cálculo. 2. Funciones triangulares o trapezoidales. Se definen en función de los vértices de las funciones; ∆ (a,b,c) para las triangulares
  • 52. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 38 - Ilustración 3.2 – Función Triangular y T(a,b,c,d) para las trapezoidales. Son sencillas de manejar en algoritmos numéricos. Ilustración 3.3 – Función Trapezoidal Zeng y Singh definen un modelo de función de pertenencia que agrupa a las principales clases, la función Pseudo-trapezoidal (Del inglés pseudo trapezoid-shaped (PTS)) es una función continua dada por        ∉∈=−∈ ∈ ∈ ∈ = ]},[,|{],[0 ],()( ],[ ),[)( ),,,,;( daxUxxdaUx dcxxD cbxh baxxI hdcbaxA Ecuación 3.23 donde a≤b≤c≤d, a<d, 0)( ≥xI es una función monótona estrictamente creciente en [a,b) y 0)( ≥xD es una función monótona estrictamente decreciente en (c,d]. Cuando la función de pertenencia de un conjunto borroso A es una función PTS, se llama función de pertenencia PTS y se denota por
  • 53. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 39 - ),,,,;()( hdcbaxAxA = . Cuando el conjunto borroso es normal (es decir, h = 1), su función de pertenencia se denota simplemente por ),,,;()( dcbaxAxA = . Ilustración 3.4 – Función Trapezoidal normal De acuerdo con esta definición, las funciones trapezoidales son un caso especial de las funciones PTS cuando b < c y cd xd xD ab ax xI − − = − − = )( )( Ecuación 3.24 y las funciones triangulares es el caso especial cuando b = c y bd xd cd xd xD ac ax ab ax xI − − = − − = − − = − − = )( )( Ecuación 3.25 Como ejemplo, en la siguiente figura se muestran algunos conjuntos borrosos definidos en el universo de discurso Edad anteriormente mencionado. El conjunto borroso “Joven" representa el grado de pertenencia respecto al parámetro juventud que tendrían los individuos de cada edad. Dicho de otra manera, el conjunto expresa la posibilidad de que un individuo sea
  • 54. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 40 - caracterizado como “Joven". Un conjunto borroso podría ser considerado una distribución de posibilidad, que es diferente a una distribución de probabilidad. Ilustración 3.5 – Representación de los conjuntos joven, maduro y viejo Puede verse que los conjuntos borrosos de la figura se superponen, entonces un individuo x con edad de 30 años, podría tener un grado de pertenencia en dos conjuntos: “Joven" y “Maduro", indicando que posee cualidades asociadas con ambos conjuntos. Por razones prácticas, muchas veces se asume que el universo de discurso S es finito, esto es { }nxxS ,...,1= , y el par )}),({( xxAµ se denota por xxA /)(µ , y cada par xxA /)(µ se denomina individualidad borrosa (fuzzy singleton). El conjunto borroso A se puede reescribir como ∑= =++=== n i iiAnnAAAA xxxxxxxxxxA 1 11 /)(/)(.../)(}/)({)}),({( µµµµµ Ecuación 3.26 donde + y Σ deben entenderse en el sentido de la teoría de conjuntos. Por convenio, los pares xxA /)(µ con 0)( =xAµ se omiten. 3.2.2 DEFINICIONES BÁSICAS SOBRE CONJUNTOS BORROSOS
  • 55. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 41 - A continuación se presentan una serie de definiciones básicas de utilidad en el manejo de los conjuntos borrosos: Conjunto vacío: Se dice que un conjunto borroso A está vacío, y se escribe ∅=A , si y sólo si UxxA ∈∀= 0)(µ Ecuación 3.27 Igualdad: Se dice que dos conjuntos borrosos A y B definidos sobre el mismo universo de discurso U son iguales, y se escribe BA = si y sólo si Uxxx BA ∈∀= )()( µµ Ecuación 3.28 Contención: Se dice que un conjunto borroso A definido en U está contenido en B definido en U también (o alternativamente, es un subconjunto de B ), y se escribe BA ⊆ , si y sólo si Uxxx BA ∈∀≤ )()( µµ Ecuación 3.29 Normalidad: Se dice que un conjunto borroso A definido en U es normal si y sólo si 1)(max = ∈ xA Ux µ Ecuación 3.30 Soporte: El soporte de un conjunto borroso A en U (escrito AS ) es el conjunto no borroso
  • 56. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 42 - USyxUxS AAA ⊆⊆∅>∈= }0)(:{ µ Ecuación 3.31 Núcleo: El núcleo de un conjunto borroso A en U (escrito AN ) es el conjunto no borroso UNyxUxN AAA ⊆⊆∅=∈= }0)(:{ µ Ecuación 3.32 Partición completa: Se dice que los conjuntos borrosos NAAA ,..., 21 son una partición completa de U si Ux ∈∀ existe al menos un )1( NiiAi ≤≤= tal que 0)( >xAi . Por simplicidad, se dice que los conjuntos NAAA ,..., 21 son completos si forman una partición completa. Consistencia: Se dice que los conjuntos borrosos NAAA ,..., 21 son consistentes si se verifica que si 1)( =xAi para algún Ux ∈0 , entonces 0)(, 0 =≠∀ xAij j . Subconjunto Normal de un Conjunto Borroso Normal: Se define el subconjunto normal de un conjunto borroso normal A como { }1)(|)( =∈= xAyUxxAM Ecuación 3.33 que es un subconjunto de AS (el soporte del conjunto borroso A ). Si el conjunto borroso normal A tiene función de pertenencia PTS, entonces ],[)( cbAM = .
  • 57. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 43 - Orden entre Conjuntos Borrosos Normales: Para dos conjuntos borrosos normales A y UB ⊂ , se dice que BA > si )()( BMAM > , definiéndose esta desigualdad como )(max)(max BMAM xx > Ecuación 3.34 3.2.3 OPERACIONES BÁSICAS ENTRE CONJUNTOS BORROSOS Las tres operaciones básicas definidas sobre los conjuntos clásicos (complemento, intersección y unión) pueden ser generalizadas a los conjuntos borrosos de diversas formas. Ilustración 3.6 – Operaciones básicas de los conjuntos borrosos Dentro de la teoría de los conjuntos borrosos tiene especial relevancia la que hace uso de operaciones conocidas como operaciones estándar, definidas como: Intersección (T-norma): ))(),(min()( xxx BABA µµµ =∩ Unión (T-conorma): ))(),(max()( xxx BABA µµµ =∪ Complemento: )(1)( xx AA µµ −=
  • 58. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 44 - No obstante, al contrario que pasa con los conjuntos clásicos, ésta no es la única forma posible de definir estas operaciones; diferentes funciones pueden ser apropiadas para representarlas en diferentes contextos. Por lo tanto, no sólo las funciones de pertenencia de los conjuntos borrosos van a ser dependientes del contexto sino también las operaciones sobre dichos conjuntos. En este proyecto no se comentarán con más detalle. 3.2.4 PRINCIPIO DE EXTENSIÓN Este principio proporciona un mecanismo para calcular los conjuntos borrosos obtenidos por medio de una transformación concreta (no borrosa) de cierto número ( N ) de conjuntos borrosos. Específicamente, si NXXX ,..., 21 son conjuntos borrosos con funciones de pertenencia )(),...(),( 2211 NN xxx µµµ , el nuevo conjunto borroso ),...,( 21 NXXXfY = tendrá como función de pertenencia:     = == − )(minmax)( 1)()1( ii N iyfx yy µµ Ecuación 3.35
  • 59. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 45 - 3.2.5 α-CORTES Existe una manera directa de pasar de conjuntos borrosos a conjuntos clásicos mediante los llamados α -cortes. Dado un número ]1,0[∈α y un conjunto borroso A , definimos el α -corte de A como el conjunto αA , cuya función característica se define:    ≥ = otro x x A A 0 )(1 )( αµ ϕ α Ecuación 3.36 En definitiva, el α -corte se compone de aquellos elementos cuyo grado de pertenencia supera o iguala el umbral α . Hablamos de α -cortes estrictos si:    > = otro x x A A 0 )(1 )( αµ ϕ α Ecuación 3.37 Cualquier conjunto borroso A se puede representar mediante la unión de sus α -cortes de la siguiente manera: )]([max)( ]1,0[ xx AA α ϕαµ α ×= ∈ Ecuación 3.38 Los α -cortes son de especial utilidad en el estudio de propiedades tales como la reflexividad, simetría y transitividad en conjuntos borrosos.
  • 60. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 46 - 3.3 NÚMEROS BORROSOS A. Kaufmann emplea el término “Subconjunto borroso” contra “Conjunto borroso” (KAUF86) ya que siendo el referencial siempre un conjunto vulgar, es decir tal y como se define intuitivamente en matemáticas modernas, o sea una colección de objetos bien especificados y bien distintos, el subconjunto borroso es subconjunto de este referencial. Un caso particular y de especial interés de los conjuntos borrosos son los llamados números borrosos. Surgen éstos como un intento de introducir vaguedad en los números reales. Un número borroso es un conjunto borroso A definido en la recta real R y que cumple además las siguientes propiedades: 1. Es normal, o lo que es lo mismo, existe al menos un elemento x de R tal que 1)( =xAµ . 2. Es convexo, lo cual quiere decir que ))(),(min())1(( ,]1,0[ yxyx Ryx AAA µµδδµ δ ≥−+ ∈∀∈∀ Ecuación 3.39 Geométricamente esta propiedad quiere decir que todos los α -cortes de A son intervalos cerrados en R . La función de pertenencia es creciente hasta llegar al punto en que 1)( =xAµ y decreciente a partir de él. 3. La función de pertenencia es continua en intervalos.
  • 61. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 47 - 4. El soporte de A es acotado. Para este proyecto se van a usar únicamente los números borrosos trapezoidales. Definidas ya las propiedades que ha de cumplir nos dispondremos a conocer sus principales variantes. Ilustración 3.7 – Número borroso trapezoidal Llamaremos número borroso trapezoidal ),,,( dcbaA = a un número borroso que cumple que dcba ≤≤≤ y que el grado de pertenencia de a y d es siempre 0 y el de b y c es siempre 1. De este principio se pueden obtener cuatro patrones diferentes: Número (Escalar): en caso de que dcba === . Número borroso lineal: en caso de que dcba =<= . Número borroso piramidal (triangular): en caso de que dcba <=≤ ó dcba ≤=< . Número borroso trapezoidal: en caso de que dcba <<≤ ó dcba ≤<< . El tratamiento a los números borrosos que se va a dar en el proyecto se puede ver en el apartado 12.2.
  • 62. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 48 - 4. PLANTEAMIENTO Y OBJETIVOS DEL PROYECTO Después de analizar los contextos en los que se va a trabajar se recuerda que como se vio en el capítulo dos, el método PERT es una técnica fundamental para la planificación de proyectos especialmente en casos en que las duraciones de las diferentes actividades de la red o son aleatorias o, siendo de naturaleza determinista pero de tipo novedoso, su valor solo puede ser estimado de forma vaga o imprecisa a través de la opinión de expertos en actividades semejantes. El modelo CPM expone el camino crítico de un proyecto a partir de una serie de actividades con duraciones fijas bien conocidas. Las actividades con duraciones que no son perfectamente conocidas introducen aleatoriedad dentro del proyecto haciendo trabajosa la determinación de la ruta crítica. En un conjunto clásico definido sobre un intervalo U se asigna el valor 0 ó 1 a cada elemento del mismo para indicar la pertenencia o no a dicho conjunto. Esta función puede generalizarse de forma que a cada elemento de U se le asigne un valor del intervalo [0,1] que indique el grado de pertenencia de ese elemento al conjunto en cuestión. A esta función se la llama “función de pertenencia” y al conjunto que define se denomina “Conjunto Borroso”. Es decir, en la lógica borrosa los elementos de un conjunto pertenecen con un cierto grado al intervalo [0,1].
  • 63. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 49 - Mediante la estimación de la duración de las actividades con números borrosos, se obtienen las ventajas que ellos proporcionan, como la aritmética. Utilizando también la lógica borrosa se puede estimar cada duración por medio de la desborrosificación y sus diferentes variantes para llegar a una solución determinista. 4.1 PLANTEAMIENTO DEL PROYECTO El proyecto se plantea como: “Extender el algoritmo clásico del PERT-CPM basado en programación dinámica, que permite estudiar una red de actividades, al caso en el que se tiene un conocimiento vago de las duraciones de las diferentes actividades de la red. Este conocimiento puede ser modelado mediante números borrosos trapezoidales (y, como casos particulares, intervalos constantes y números borrosos piramidales). Al modelo se le dará el adecuado tratamiento informático”. 4.2 OBJETIVOS DEL PROYECTO Por tanto el proyecto se define con los siguientes objetivos: Modelar el comportamiento de las actividades según se ajusten a unos determinados patrones como son: números borrosos trapezoidales, piramidales o constantes. Programar una aplicación que permita al usuario crear un diagrama PRET/CMP en el que pueda establecer su propia red
  • 64. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 50 - de actividades y etapas del proyecto con sus correspondientes duraciones: nítidas y borrosas. Crear un motor de resolución del diagrama PERT/CMP que sea capaz de calcular los caminos críticos a partir de actividades de duración fija así como los márgenes libres y totales de cada actividad y las fechas previstas y límites de las etapas del proyecto. Analizar el problema de las duraciones aleatorias derivado de los números borrosos e integrarlo en el motor de resolución. Al considerar algunas de las duraciones como borrosas, los resultados vendrán dados en forma de número borroso, y por tanto habrá que hacer una estimación de los resultados para poder trabajar con ellos. Para ello se han elegido diferentes métodos de desborrosificación que han de ser implementados y ofrecidos al usuario para seleccionar. Crear una arquitectura cliente-servidor de tal manera que el usuario (cliente) sea capaz de diseñar su red y poder modificarla o actualizarla en cualquier momento enviando así al motor de resolución (servidor) las modificaciones y devolverle a éste los resultados para que se le puedan presentar al usuario en la aplicación cliente.
  • 65. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 51 - Presentar al usuario las actividades y etapas correspondientes al camino crítico y las relaciones existentes entre ellas así como un diagrama de Gantt que permita determinar fácilmente la ejecución del proyecto desde su fecha de inicio.
  • 66. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 52 - 5. SOLUCIÓN PROPUESTA Se ha descrito cómo se estudia y modela un proyecto a partir de un conjunto de actividades y cuáles son los principales problemas derivados de la metodología utilizada. Ante esto, se propone un sistema de bajo coste, basado en una aplicación interactiva capaz de permitir crear proyectos a partir de un conjunto de actividades definidas y determinar la ruta o las rutas críticas que lo forman. Se trata de implementar un sistema de cálculo de duraciones basado en la interacción con el usuario. Se presentarán una secuencia de formularios al usuario que le permitan gestionar las actividades que componen el proyecto (crearlas, añadirlas, modificarlas y borrarlas). El motor de resolución tiene la función de construir el diagrama de red a partir de los atributos de las actividades que compongan el proyecto y proponer la solución al problema en función de la opción de solución que elija el usuario. Los atributos de las actividades se transmiten por Internet hasta el motor de resolución donde mediante algoritmos y técnicas de lógica borrosa se soluciona el proyecto. En los puntos sucesivos se especifica el proceso seguido para la elaboración de la aplicación utilizando la ingeniería del software.
  • 67. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 53 - 6. DIAGRAMA DE CONTEXTO En este diagrama se reflejan las relaciones que el sistema tiene con las entidades externas con las que interacciona. Una entidad externa simboliza cualquier otro sistema o elemento del entorno que interacciona con el sistema, pero que está fuera de su alcance de definición. Diagrama 6.1 – Diagrama de contexto del sistema Se observa que el usuario interacciona con el sistema mediante la aplicación cliente y que ésta a su vez se relaciona con el motor de resolución para solucionar las peticiones que solicite el usuario. El usuario interacciona con la aplicación cliente por medio del interfaz gráfico de la aplicación y tanto el motor de resolución como la aplicación cliente se comunican mediante un protocolo con conexión a nivel de aplicación.
  • 68. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 54 - 7. PERFILES Y ÁMBITO Un usuario sólo tiene un único perfil en la aplicación. El perfil se define como “Usuario” que engloba lo siguiente: - Usuario: Será la persona que podrá crear, modificar y eliminar actividades para la red que representa el proyecto (y sus parámetros básicos) así como salvar y guardar los datos y solicitar la solución al servidor. Se podría incluir el perfil de administrador del motor de resolución. El perfil se definiría como “Administrador” y sería el encargado de iniciar el motor de resolución y seleccionar el puerto de entrada de las conexiones al mismo.
  • 69. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 55 - 8. ANÁLISIS 8.1 ANÁLISIS DE REQUISITOS El objetivo de este apartado del Análisis es alcanzar un conocimiento suficiente del sistema, definiendo las necesidades, problemas y requisitos del usuario, para expresarlo posteriormente mediante los modelos de procesos y de datos. 8.1.1 REQUISITOS FUNCIONALES Modelar el problema: El modelado es la primera actividad que debe llevar a cabo el sistema. Dicho modelado consiste en la creación de un esquema de información basado en la información inherente a las actividades: su identificador unívoco, su descripción, sus actividades sucesoras y su duración. Modelar el comportamiento de las duraciones borrosas: Su objetivo es poder trabajar con ellas aritméticamente para poder extender el método del camino crítico CPM y permitir darlas un valor plausible mediante diferentes técnicas de desborrosificación. Permitir la gestión del proyecto: Esta acción consiste en ofrecer al usuario la creación de proyectos nuevos, incrementar y eliminar las actividades que lo componen y modificarlas en cualquier momento. Permitir la conexión entre los subsistemas: Crear un protocolo con conexión capaz de comunicar al cliente con el servidor de manera síncrona y que permita enviarle la lista de actividades y
  • 70. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 56 - este le devuelva el diagrama PERT/CPM solucionado dependiendo de la opción de solución elegida. Ofrecer varias formas de solucionar el diagrama: Al trabajar con números borrosos, se obtiene una mayor cantidad de los mismos y su interpretación no resulta determinista, por ello se incluyen varias formas de desborrosificación. Generación del diagrama de red: Poder transformar un conjunto de actividades con sus datos en un conjunto de actividades y etapas consistente y fácilmente entendible por el usuario siguiendo el modelo de diagrama de red. Permitir el salvaguardado: Hacer posible en todo momento el salvado de la información, tanto del proyecto solucionado como someramente planteado, y poder cargarlo. Asimismo se permitirá el salvaguardado de los gráficos mostrados. 8.1.2 REQUISITOS NO FUNCIONALES Requisitos de calidad: La aplicación debe de responder a todos los requisitos de calidad de la normativa ISO. Se hace especial hincapié en la velocidad de respuesta, en el control de errores y en la amigabilidad de la aplicación para el usuario. Requisitos de interfaces externas: A continuación se describen las interfaces externas que requiere el sistema con el usuario y
  • 71. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 57 - con otros sistemas, cuyos requisitos son importantes para el correcto desarrollo y funcionamiento. Interfaz de usuario: El objeto del interfaz de usuario es establecer un medio interactivo por el que el usuario pueda gestionar el conjunto de las actividades que compone el proyecto y por otro ejecutar las funcionalidades de la aplicación. Interfaz de datos: El objeto del interfaz de datos es establecer un medio interactivo por el que el usuario pueda guardar y cargar el conjunto de las actividades que compone el proyecto y los gráficos que genera. Interfaz de conexión: El objeto del interfaz de conexión es establecer protocolo por el que la aplicación cliente se comunicará con el servidor de resolución a través de Internet. Requisitos de seguridad y control: Estos requisitos abarcan el control de los valores de los datos que introduce el usuario, la detección de bucles, y el mantenimiento de la consistencia de la información.
  • 72. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 58 - 8.2 ANÁLISIS FUNCIONAL DETALLADO En este apartado se describe la funcionalidad detallada de la aplicación, es decir, las acciones básicas que deberá realizar la aplicación para obtener los objetivos necesarios. Las funciones que debe realizar el sistema son las siguientes: 8.2.1 CREACIÓN DEL PROYECTO, INSERCIÓN, MODIFICACIÓN Y ELIMINACIÓN DE ACTIVIDADES El sistema deberá permitir la gestión de estos conceptos pertenecientes al sistema. Para la creación de un proyecto el deberá introducir la fecha de inicio del mismo y el numero de actividades que lo componen. Posteriormente el sistema iniciará las actividades por defecto y le solicitará al usuario los datos propios de cada actividad haciendo especial hincapié en el campo de las duraciones de las actividades para que sean validadas. Tras terminar este proceso se solicitará que designe las actividades sucesoras para cada una de las generadas comprobando que no se formen bucles entre ellas. Para la inserción de actividades en el sistema, el usuario deberá indicar el número de actividades a insertar. Se inicializarán por defecto y se solicitará al usuario los datos que la representan al igual que la información de la relación de anterioridad que tienen con las actividades ya creadas. El sistema mantendrá la consistencia de las ya creadas y de las actividades nuevas especialmente en las duraciones y en las relaciones de sucesión.
  • 73. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 59 - En el caso de modificación de actividades en el sistema, el usuario deberá interaccionar con los datos y relaciones ya creados, y el sistema mantener la consistencia de las duraciones y las precedencias. En la eliminación el sistema deberá controlar que un proyecto no pueda tener un número menor de dos actividades y ofrecer nuevas relaciones si existen entre las predecesoras de la actividad eliminada y sus sucesoras. Del mismo modo se garantizará la consistencia de la información. Todos los campos podrán ser modificados menos el código identificador unívoco de cada actividad. 8.2.2 TRATAMIENTO DE LAS DURACIONES BORROSAS Se modelará convenientemente el tratamiento de la aritmética borrosa en las operaciones básica se suma y resta entre duraciones borrosas y de duraciones borrosas con duraciones fijas para la fase hacia delante y la fase hacia atrás del modelo CMP. También se modelarán varias opciones de desborrosificación entre las que se incluirán valoraciones optimistas y pesimistas de cada duración en función de un α -corte introducido por el usuario y técnicas de desborrosificación básicas y complejas como la media máxima, el centro de área y la media borrosa para la parte PERT. 8.2.3 CREACIÓN DEL ALGORITMO DE SOLUCIÓN El motor de resolución será capaz de recibir un conjunto de actividades con la información introducida para el usuario y obtener el diagrama de red
  • 74. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 60 - equivalente más optimo de todos los posibles, creando los nodos o etapas de la red y asignando las fechas de inicio y finalización de cada etapa y los márgenes u holguras libres y totales de cada actividad. Se contemplará la posibilidad de introducir actividades dummy (actividades de tiempo nulo) para ceñirse al formato de diagrama de red. El conjunto de actividades y etapas esta relacionado entre si consistentemente conociendo cada actividad su etapa de inicio y fin y poder acceder a su información. Análogamente las etapas conocen las actividades que acaban en ella y las que se inician en ella y pueden acceder a su información. Por otra parte se incluye el tratamiento de las duraciones borrosas y funciones aritméticas básicas y de desborrosificación para las mismas. 8.2.4 PROTOCOLO DE CONEXIÓN Se creará un protocolo con conexión a través del cual se comunique la aplicación cliente con el servidor de resolución de manera que la aplicación cliente se mantiene a la espera de la solución del servidor usando como soporte Internet. El formato de los datos deberá ser consistente con el protocolo tanto para el envió como para la recepción de información. El cliente deberá conocer la dirección IP del servidor y el puerto de entrada. El comportamiento del servidor se modelará con un socket multihilo capaz de procesar varias peticiones a la vez manteniendo la integridad de los datos y enviándolos de nuevo al cliente que envió la petición de resolución.
  • 75. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 61 - 8.2.5 PRESENTACIÓN DE LOS DATOS Cuando exista un proyecto en la aplicación, toda información susceptible de ser mostrada se representará fácilmente mediante tablas no editables en los siguientes conjuntos: Actividades, Actividades ficticias (dummy) y Etapas. La tabla de etapas se mostrará en caso de que esté solucionado el diagrama y la tabla de actividades dummy en caso de que esté solucionado el diagrama y de que existan. Los informes de cada unidad deberán ser mostrados de forma ordenada, de mayor a menor identificador en el caso de las actividades y actividades nuevas, y en orden cronológico el de las etapas. Como se explicó anteriormente la aplicación genera informes cuyo resultado son los datos previstos, es decir, los datos que se esperan obtener en el futuro. Estos datos deben aproximarse lo más posible a los datos reales, que son aquellos que efectivamente se obtienen en la realidad. 8.2.6 PRESENTACIÓN DE LOS GRÁFICOS Los gráficos de apoyo al programa se generarán para representar un proyecto solucionado mediante un diagrama de Gantt con la fecha de inicio del proyecto como inicio del mismo. En caso de que la solución (fecha fin del proyecto) sea una duración borrosa se mostrará por pantalla. Como ayuda a la creación de las duraciones borrosas, éstas se representarán en forma gráfica. En cualquier caso los gráficos serán susceptibles de ser guardados en un formato de imagen o impresos.
  • 76. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 62 - 8.2.7 ALMACENAMIENTO DE LOS DATOS Todos los datos, tanto los generados como los introducidos deberán ser almacenados en el sistema. Estarán almacenados en ficheros. Todos los informes serán almacenados automáticamente por el sistema en el momento posterior a su generación o a su modificación por parte del usuario. Se proporcionará un proceso de guardado de datos al iniciar operaciones que puedan variar o eliminar los datos existentes y al salir de la aplicación. Los datos se guardarán y cargarán de ficheros con extensión pert. Dichos ficheros tendrán un formato determinado único, legible e interpretable por la aplicación. 8.2.8 MODIFICACIÓN DE PARÁMETROS DEL PROYECTO Y DEL PROGRAMA Se proporcionará la opción de cambiar la fecha de inicio del proyecto tanto si es anterior a la actual como si se necesita posponerla. Análogamente la configuración de conexión al servidor se proporcionará en un formulario que contenga un campo para la dirección IP del servidor y el puerto de entrada al mismo.
  • 77. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 63 - 9. ESTUDIO DE LA ARQUITECTURA A la hora de elegir la plataforma más conveniente para la explotación del Sistema se han valorado una serie de factores: - El volumen de información a almacenar - Necesidades planteadas en el análisis - Disponibilidad de herramientas software - Facilidad de tratamiento y acceso a la información Dichos factores han llevado a elegir un sistema cliente-servidor, con las siguientes características: 9.1 EL LENGUAJE JAVA Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems. Las aplicaciones Java están típicamente compiladas en un bytecode, aunque la compilación en código máquina nativo también es posible. En el tiempo de ejecución, el bytecode es normalmente interpretado o compilado a código nativo para la ejecución, aunque la ejecución directa por hardware del bytecode por un procesador Java también es posible. El lenguaje en sí mismo toma mucha de su sintaxis de C y C++, pero tiene un modelo de objetos más simple y elimina herramientas de bajo nivel como punteros. Sun Microsystems proporciona una implementación GNU General Public License de un compilador Java y una máquina virtual Java, conforme a
  • 78. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 64 - las especificaciones del Java Community Process, aunque la biblioteca de clases que se requiere para ejecutar los programas Java no es software libre. Entre noviembre de 2006 y mayo de 2007, Sun Microsystems liberó la mayor parte de sus tecnologías Java bajo la licencia GNU GPL, de acuerdo con las especificaciones del Java Community Process, de tal forma que prácticamente todo el Java de Sun es ahora software libre. El lenguaje de programación Java ha sido totalmente mejorado, ampliado y probado por una comunidad activa de unos cuatro millones de desarrolladores de software. Se ha escogido Java para la realización del proyecto porque la tecnología Java es una tecnología madura, extremadamente eficaz y sorprendentemente versátil, se ha convertido en un recurso inestimable ya que permite a los desarrolladores: • Desarrollar software en una plataforma y ejecutarlo en prácticamente cualquier otra plataforma. • Crear programas para que funcionen en un navegador Web y en servicios Web. • Diseñar aplicaciones con interfaz grafico para el usuario con todos los componentes necesarios y su fácil gestión de eventos. • Desarrollar aplicaciones para servidores como foros en línea, tiendas, encuestas, procesamiento de formularios HTML, etc.
  • 79. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 65 - • Combinar aplicaciones o servicios basados en la tecnología Java para crear servicios o aplicaciones totalmente personalizados. • Desarrollar potentes y eficientes aplicaciones para teléfonos móviles, procesadores remotos, productos de consumo de bajo coste y prácticamente cualquier dispositivo digital. • Tener gran versatilidad en sistemas para aplicaciones con conexión. 9.2 ESTRUCTURA DEL SISTEMA Hardware: Ordenador con Intel Pentium a 2.4 GHz Memoria RAM de 512 MB Conexión a Internet de 5Mbps Software: Sistema operativo Windows/Linux Versión Java: Java Runtime Environment Version 6 Update 2 Plataforma de desarrollo Eclipse. Software conseguido: Aplicación capaz de mostrar la programación de un proyecto mediante el uso de la lógica borrosa.
  • 80. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 66 - Servidor de resolución multihilo a través de Internet. Amos en formato autoejecutable JAR.
  • 81. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 67 - 10. DISEÑO DE LA APLICACIÓN Se va a optar por un diseño de la aplicación en dos fases a nivel conceptual del funcionamiento de la aplicación. Por un lado tenemos el programa que se presenta al usuario y con el que éste interactúa, y por otro el motor de resolución que es el encargado de procesar la información. La siguiente representa el primer nivel conceptual del funcionamiento de la aplicación: Diagrama 10.1 – Diagrama de contexto del sistema En este primer nivel la aplicación queda dividida en dos sistemas: 1. Aplicación cliente: Adquisición de información a través del interfaz grafico del usuario así como su edición y el guardado y recuperación de los datos desde disco. Garantizando la corrección y consistencia de la información introducida para enviarla al motor de resolución a través de la red con el protocolo diseñado así como su recepción y mostrar los resultados obtenidos por pantalla. 2. Motor de resolución: Análisis del conjunto de las actividades del proyecto y su distribución en un diagrama de red. Cálculos de resolución dependiendo de la opción seleccionada. Recepción y transmisión de los datos por el protocolo diseñado a través de la red.
  • 82. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 68 - 10.1 MODELO DE DOMINIO El modelo de dominio diseñado para la aplicación desarrollada es el siguiente: Diagrama 10.2 – Modelo de dominio del sistema Como se puede observar en la figura superior la complejidad del problema reside en lo que llamaremos PertCpm y sus relaciones. Se han representado los atributos de todos los componentes del proyecto y sus
  • 83. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 69 - relaciones entre los mismos. La aplicación cliente y el motor de resolución dependen del PertCpm para poder funcionar. 10.2 MODELO DE DATOS El objetivo de este apartado es realizar una representación lógica de la información que maneja el sistema. Por lo tanto este modelo se realiza para especificar los datos que se manejan y las relaciones entre ellos se han mostrado en el modelo de dominio. Existirán tres tablas de datos como máximo en la aplicación. No se usan bases de datos pero la información se mantiene en un estado conforme mediante el objeto PertCpm. En él se ha visto que contiene tres listas: la de actividades, la de actividades ficticias o dummy y la de etapas. Cada uno de los componentes de esta lista está en la región de memoria asociada al PertCpm. Todas las relaciones que existen entre ellas están establecidas mediante punteros a sus datos asociados. Es decir, la actividad C ocupa un lugar en memoria y es apuntada por las actividades que la precedan, y por las que la sucedan al igual que su etapa inicial y final, reduciendo así el tamaño de los datos en memoria. El fichero de los datos en que se guarda la información, aparte de otros parámetros de configuración, guarda el PertCpm como una totalidad beneficiándose de las ventajas apuntadas en el párrafo anterior. 10.2.1 TABLA DE ACTIVIDADES La tabla de actividades se muestra durante toda la ejecución del programa. Sus campos son:
  • 84. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 70 - Ilustración 10.1 – Tabla de actividades con información básica Id: Es el identificador unívoco de cada actividad asignado por la aplicación cliente. Es lo que se conoce como campo clave en una base de datos. Es una cadena de caracteres ascendentes que empieza en A, al llegar a Z pasa a AA y así sucesivamente. No puede ser nulo. Nombre: Es la descripción de la actividad. Es una cadena de caracteres y puede tener valor nulo. Duración: Es la representación de la duración de la actividad en forma de cadena de caracteres. Ninguna duración será negativa. Puede tomar cuatro formas diferentes: Conocida (escalar): Es el número decimal que la representa. Borrosa constante: Representada por Lin(A,B) siendo A y B las duraciones conocidas que la representan. Borrosa piramidal: Representada por Pir(a,B,b) siendo a, B y b las duraciones conocidas que la definen.
  • 85. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 71 - Borrosa trapezoidal: Representada por Tra(a,A,B,b) siendo a, A, B y b las duraciones conocidas que la representan. Actividades Anteriores: Es el conjunto de actividades inmediatamente anteriores asociadas por punteros representado por una cadena de caracteres. En caso de ser nulo se declara como “ninguna”. Actividades Siguientes: Es el conjunto de actividades inmediatamente posteriores asociadas por punteros representado por una cadena de caracteres. En caso de ser nulo se declara como “ninguna”. Ilustración 10.2 – Tabla de actividades con información completa Etapa Inicial: Es la etapa de la que parte la actividad (en la que se inicia). Está representada por un número entero mayor que cero. Puede tener valor nulo si el diagrama no esta solucionado y se representa por una cadena de caracteres vacía. Etapa Final: Es la etapa a la que llega la actividad (en la que se termina). Está representada por un número entero mayor que
  • 86. ANÁLISIS DE UNA RED DE ACTIVIDADES CON DURACIONES CONOCIDAS Y BORROSAS - 72 - cero. Puede tener valor nulo si el diagrama no esta solucionado y se representa por una cadena de caracteres vacía. Margen Libre: Es la representación del margen libre de la actividad en forma de cadena de caracteres. Ninguna duración será negativa. Puede tener valor nulo si el diagrama no esta solucionado y toma cualquiera de las cuatro formas diferentes descritas en el campo duración. Margen Total: Es la representación del margen total de la actividad en forma de cadena de caracteres. Ninguna duración será negativa. Puede tener valor nulo si el diagrama no esta solucionado y toma cualquiera de las cuatro formas diferentes descritas en el campo duración. Como se ve en la ilustración superior se enfatiza el camino crítico con color rojo. 10.2.2 TABLA DE ETAPAS La tabla de etapas se muestra una vez que se haya solucionado el diagrama de red. Sus campos son: Id: Es el identificador unívoco de cada etapa asignado por el motor de resolución. Es lo que se conoce como campo clave en una base de datos. Es un entero ascendentes que empieza en 1. No puede ser nulo.