El algoritmo de resolución de los Problemas 4.32 a 4.37 se basa en una búsqueda transversal por nivel con diversos criterios de corte (Nguyen y Bagajewicz, 2011). El
procedimiento explora por niveles de tal forma que primero se analiza el que tiene un solo elemento y luego se va incrementando un elemento por cada nivel. En cada uno de ellos se examinan todas las combinaciones con igual cantidad de mediciones (por ejemplo en el nivel k=2 se analizan todas las combinaciones con dos instrumentos). Al examinar un nodo, primero se calcula el costo de la RS para la combinación de variables que se miden, y luego se verifica el cumplimiento de las restricciones de O, OD, D y DD. Cuando se encuentra una solución factible (por ejemplo, una solución dada por el nodo 124 de la Figura 4.2), esta se almacena y se continúa con el análisis del resto del nivel, al menos que la solución encontrada cumpla con algún criterio de corte. Estos se presentan en la siguiente subsección.
Figura 4.2. Búsqueda Transversal 4.4.1 Criterios de Corte
A continuación se introducen algunos términos relacionados con la búsqueda transversal. Estos son los siguientes:
1. Nodo: combinación de sensores activos;
3. Nodos Hermanos: son aquellos nodos que se encuentran en el mismo nivel i y provienen del mismo nodo padre situado en el nivel i-1. Por ejemplo los nodos 123, 124 y 125 en el nivel 3 son nodos hermanos, cuyo nodo padre es el 12;
4. Familias de Nodos: una familia de nodos ubicados en el nivel i tiene la misma cantidad de instrumentos activos y comparten la misma raíz, que está en el nivel i-2. Por ejemplo los nodos 123, 124 y 125, junto con los nodos 134, 135 y el nodo 145 son una familia de nodos cuyo nodo raíz es el nodo 1;
5. Cabeza de Familia: es el nodo ubicado en el extremo izquierdo de una familia de nodos, y por lo tanto el más económico de dicha familia. Los nodos 123, 134 y 145 son nodos cabeza de familia;
6. Nodo Factible: es el nodo que cumple con todas las restricciones impuestas en el problema de optimización;
7. Nodo Óptimo: Es el nodo factible de mínimo costo.
Cuando se explora el árbol de búsqueda transversal usando el criterio de solución de mínimo costo, se observan algunas propiedades:
Propiedad 1: El costo de los nodos es monótonamente creciente entre los nodos que forman una familia en el sentido de izquierda a derecha en el mismo nivel.
Propiedad 2: El costo es monótonamente creciente entre los nodos cabeza de familia que comparten el mismo nodo raíz.
Ambas propiedades se utilizan eficientemente para la elaboración de los siguientes criterios de corte. Si los sensores están ordenados de menor a mayor costo:
Criterio de Corte 1: Cuando el algoritmo de búsqueda encuentra un nodo factible, la búsqueda de nodos factibles continúa en la siguiente familia de nodos. Este criterio de
corte resulta de aplicar la Propiedad 1 y evita explorar nodos de mayor costo dentro de una familia de nodos.
Criterio de Corte 2: Cuando el algoritmo de búsqueda encuentra un nodo factible se verifica si el mismo es cabeza de familia. Dado que las Propiedades 1 y 2 implican que todos los nodos ubicados a la derecha del nodo factible son más caros, la búsqueda se detiene en esa familia y se prosigue en las siguientes familias de nodos ubicadas en el mismo nivel. Por ejemplo si la solución se encuentra en el nodo 134, todos los nodos del nivel 3 que se encuentran a la derecha del mismo y cuyo nodo raíz en el nv=1 es el nodo 1, son de costo más caro, por lo que la búsqueda continua en las familias de nodos cuyo nodo raíz en el nv=1 es el nodo 2. Si el nodo cabeza de familia es de costo mayor al nodo factible, la búsqueda se corta en el nivel 3 y se prosigue en el nivel 4.
Criterio de Corte 3: Si el nodo factible es el primer nodo cabeza de familia de un conjunto de familias de nodos, todos los nodos del mismo nivel ubicados a su derecha son de costo mayor; la búsqueda se detiene y continúa en el siguiente nivel. Del mismo modo, si el costo del primer nodo cabeza de familia de un conjunto de familias de nodos es mayor al costo del nodo factible, la búsqueda se detiene en el nivel que se está analizando y se continúa en el nivel siguiente. Por ejemplo si la solución factible se encontró en el nodo 234, todos los nodos ubicados a su derecha son de costo mayor, por lo tanto la búsqueda en dicho nivel se detiene y se continúa en el siguiente.
Criterio de Corte 4: Si el nodo factible es el primer nodo cabeza de familia del nv que se está analizando, el algoritmo de búsqueda se detiene y se reporta la solución encontrada como solución óptima ya que todos los nodos ubicados a su derecha y en los niveles siguientes son de mayor costo. De la misma manera, si el costo del primer nodo cabeza de familia de un nivel es mayor al costo del nodo factible, la búsqueda se detiene. Por
ejemplo si el nodo 123 es un nodo factible, todos los nodos ubicados a su derecha y en los niveles siguientes son de mayor costo por lo tanto, la solución correspondiente al nodo 123 es una solución óptima y la búsqueda se termina.
4.4.2 Características de la Búsqueda Transversal en Árbol
La búsqueda transversal en árbol es un método muy eficiente si la solución óptima se encuentra en los primeros niveles y en el extremo izquierdo (nodos de menor costo) del árbol de búsqueda. Por otro lado, si la solución se encuentra en el extremo derecho (nodos más caros) o en los niveles más avanzados del árbol de búsqueda, el algoritmo tendrá que explorar una gran cantidad de nodos para encontrar la solución óptima, por lo que el tiempo de resolución puede ser muy elevado.
4.4.3 Algoritmo de Búsqueda Transversal Modificado
Para la resolución de los PDRS con restricciones de O y D y O, OD, D y DD, Problemas 4.33, 4.35, 4.36 y 4.37, el algoritmo de búsqueda transversal con criterio de corte se modifica para evitar la exploración de los niveles inferiores que no satisfagan las restricciones de O.
Los problemas citados presentan un conjunto de restricciones lineales y otro de naturaleza no lineal. En esta tesis se propone dividir estos problemas de optimización en dos subproblemas de resolución consecutiva. En el primero, se minimiza el costo sujeto a J restricciones lineales de O para los Problemas 4.33 y 4.35, o a (J+ts*S) condiciones de O y OD para los Problemas 4.36 y 4.37. En el segundo subproblema, se minimiza el costo sujeto a las restricciones de O anteriores más J condiciones de D para los Problemas 4.33 y 4.35, o a (J+ts*S) restricciones de O y OD y (J+ts*S) condiciones de D y DD para los Problemas 4.36 y 4.37.
Dado que la O es una condición necesaria (Wang y col. 2002a) pero no suficiente para la D de una falla, la resolución del primer subproblema da el nivel inferior a partir del cual se debe comenzar la exploración en el árbol de búsqueda transversal y un límite inferior de costo (Figura 4.3). Luego el algoritmo explora los nodos en dirección de costo creciente como se indica en la sección anterior. De esta manera el algoritmo de búsqueda transversal modificado mejora el desempeño de la búsqueda con respecto al convencional.
Figura 4.3. Búsqueda Transversal Modificada
Además al examinar un nodo, primero se analizan las restricciones lineales de O y OD, y si éstas se satisfacen, luego se verifica si se cumplen las de D y DD. De esta manera se evita evaluar las restricciones no lineales, que requieren un tiempo de evaluación unas 100 veces superior al de las primeras.