heurÍstica -...

48
Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] // twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay 1 HEURÍSTICA República Bolivariana de Venezuela Ministerio del Poder Popular para la Educación Superior Instituto Universitario Politécnico “Santiago Mariño” Extensión Maracay Escuela de Ingeniería de Sistemas Elaborado por: TSU. Brito Jennifer TSU. Ramírez María TSU. Izquierdo Paúl Docente: ING. Zapata José Cátedra: Investigación de Operaciones II

Upload: duongthuy

Post on 19-Sep-2018

224 views

Category:

Documents


2 download

TRANSCRIPT

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

1

HEURÍSTICA

República Bolivariana de Venezuela Ministerio del Poder Popular para la Educación Superior

Instituto Universitario Politécnico “Santiago Mariño” Extensión Maracay

Escuela de Ingeniería de Sistemas

Elaborado por: TSU. Brito Jennifer TSU. Ramírez María TSU. Izquierdo Paúl Docente: ING. Zapata José Cátedra: Investigación de Operaciones II

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

2

HEURÍSTICA

1.) HEURÍSTICA.

La Heurística es la capacidad que ostenta un sistema determinado para realizar de manera

inmediata innovaciones positivas para sí mismo y sus propósitos.

Esta capacidad es una característica inherente a los seres humanos, ya que a través de esta

los individuos podemos descubrir cosas, inventar otras tantas, resolver problemas mediante la

creatividad o el pensamiento lateral, entre otras alternativas.

2.) ETIMOLOGÍA HEURÍSTICA.

La enorme popularidad del término se le debe al matemático George Pólya, quien a

través de varias propuestas heurísticas que volcó en su libro Cómo Resolverlo, se convirtió en

una invalorable ayuda para sus alumnos a la hora de las tareas matemáticas.

Entre otras cosas, Pólya, allí les aconsejaba, que en el caso de no comprender un

problema, lo mejor sería dibujar un esquema sobre el, si el problema en cuestión es abstracto,

probar de pasarlo a un tema concreto, sin dudas,

ejemplos, que ilustran mejor que nada el concepto de

heurística.

Como buena disciplina científica, la Heurística

es plausible de ser aplicada a cualquier ciencia,

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

3

HEURÍSTICA

incluyendo la elaboración de medios auxiliares, reglas, principios, estrategias, programas, entre

otros, que faciliten distintas alternativas para la solución de los problemas.

El método Heurístico, entonces, está compuesto por los siguientes elementos: principios

(sugerencias para hallar la solución: analogía y reducción); reglas (ayudan a encontrar los

medios para resolver los problemas, entre las más empleadas se cuentan: separar lo dado de

aquello buscado, confección de mapas, esquemas, utilización de números, reformulación de

problemas) y estrategias (recursos organizativos funcionales al proceso de resolución, pueden

ser de dos tipos: el trabajo hacia delante o el trabajo hacia atrás).

En el ámbito de la Psicología, la heurística se encuentra estrictamente relacionada a la

creatividad y se dice que la misma es fundamental a la hora de orientar en la toma de

decisiones y para explicar cómo se llega a un juicio o a la solución de un problema

determinado. Suele estar asociada a lo que en este contexto se denomina atajo mental. Uno de

los tipos de atajo más comunes es el del estereotipo, se juzga a un individuo en relación, por

ejemplo, del grupo social al cual pertenece, aunque claro, esta cuestión puede hacernos incurrir

en errores o interpretaciones incorrectas.

3.) INTRODUCCIÓN A LOS PROCESOS HEURÍSTICOS.

Los métodos heurísticos son estrategias generales de resolución y reglas de decisión

utilizadas por los que desean solucionar problemas, basadas en la experiencia previa con

problemas similares. Estas estrategias indican las vías o posibles enfoques a seguir para

alcanzar una solución.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

4

HEURÍSTICA

Los métodos heurísticos pueden variar en el grado de generalidad. Algunos son muy

generales y se pueden aplicar a una gran variedad de dominios, otros pueden ser más

específicos y se limitan a un área particular del conocimiento.

3.1.) Los Procedimientos Heurísticos.

Son formas de trabajo y de pensamiento que apoyan la realización consciente de

actividades mentales exigentes. Los Procedimientos Heurísticos como Método científico

pueden dividirse en principios, reglas y estrategias.

Principios Heurísticos.

Constituyen sugerencias para encontrar (directamente) la idea de solución; posibilita

determinar, por tanto, a la vez, los medios y la vía de solución. Dentro de estos principios se

destacan la analogía y la reducción.

3.2.) REGLAS HEURÍSTICAS.

► Reglas Heurísticas: actúan como impulsos generales dentro del proceso de búsqueda y

ayudan a encontrar, especialmente, los medios para resolver los problemas. Las Reglas

Heurísticas que más se emplean son:

► Separar lo dado de lo buscado.

► Confeccionar figuras de análisis:

esquemas, tablas, mapas, etc.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

5

HEURÍSTICA

► Representar magnitudes dadas y buscadas con variables.

► Determinar si se tienen fórmulas adecuadas.

► Utilizar números (estructuras más simples) en lugar de datos.

► Reformular el problema.

3.3.) ESTRATEGIAS HEURÍSTICAS.

► Estrategias Heurísticas: se comportan como recursos organizativos del proceso de

resolución, que contribuyen especialmente a determinar la vía de solución del problema

abordado. Existen dos estrategias:

► El trabajo hacia adelante: se parte de lo dado para realizar las reflexiones que han de

conducir a la solución del problema.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

6

HEURÍSTICA

► El trabajo hacia atrás: se examina primeramente lo que se busca y, apoyándose de

los conocimientos que se tienen, se analizan posibles resultados intermedios de lo que se puede

deducir lo buscado, hasta llegar a los dados.

4.) MÉTODOS HEURÍSTICOS DE SOLUCIÓN

Dadas las desventajas del método de Wagner-Whitiny la relativa complejidad de los

modelos de programación matemática, es muy útil describir algunas técnicas heurísticas que

han demostrado alta eficiencia y eficacia en la solución de problemas prácticos de inventarios

con demanda variable con el tiempo.

Un método heurístico resulta ser un enfoque que aprovecha la estructura del problema.

Mediante el uso de un conjunto de reglas “racionales”, obteniendo una solución buena, es decir

cercana a la óptima o en ocasiones la óptima.

Los métodos heurísticos se usan cuando no es posible o no es computacionalmente

factible obtener el óptimo. Se presentan 3 enfoques heurísticos.

► SILVER-MEAL SM

► COSTO UNITARIO MÍNIMO CUM

► BALANCEO DE PARTE DEL PERIODO BPF.

4.1.) El heurístico de Silver-Meal

Este método fue desarrollado por Silvery Meal (1973) y ha demostrado un

funcionamiento satisfactorio cuando el patrón de demanda es muy variable, es decir; cuando el

método del lote económico de pedido y otros métodos heurísticos no producen buenos

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

7

HEURÍSTICA

resultados. El criterio básico de este método es el de minimizar los costos de ordenamiento y

mantenimiento del inventario por unidad de tiempo. Como antes, las cantidades de pedido están

restringidas a lo necesario para cubrir un número entero de períodos.

Sea TRC(T) el costo total relevante asociado con un pedido que dura T períodos. El

costo total relevante por unidad de tiempo, TRCUT(T), será entonces RC(T)/T, o más

precisamente:

El método inicia con el período 1, para el cual TRC(1)/1 =A/1 =A; continúa con el período 2,

para el cual TRC(2)/2= [A+D2vr(1)]/2; luego, con el período 3, para el cualTRC(3)/3 =

[A+D2vr(2) +D3vr(1)]/3; y así sucesivamente hasta que se observe que el costo por unidad de

tiempo se incrementa de un período a otro. En este momento se para el proceso y se define la

cantidad a ordenar en el período 1 igual a la suma de las demandas de los períodos para los

cuales no se incrementó el costo total relevante por unidad de tiempo. El proceso comienza de

nuevo a partir del período T para el cual se incrementó el TRC (T) T por primera vez, y se

continúa de esta manera hasta el final del horizonte de planeación. Este método no garantiza la

optimización porque puede verse atrapado en un mínimo local, pero ha demostrado tener muy

buenos resultados en la práctica

En el siguiente ejemplo se debe comprobar que el algoritmo de Silver-Meal produce la

solución óptima.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

8

HEURÍSTICA

Como puede observarse, el primer período para el cual el costo total relevante por unidad

de tiempo se incrementa, es el mes 4. Por lo tanto, el método nos sugiere ordenar en el mes 1la

demanda correspondiente a los meses 1, 2 y 3. El proceso continúa entonces a partir del mes 4.

Se sugiere al lector completar los cálculos hasta el mes 12, y comprobar lo expresado

anteriormente en el sentido que este algoritmo produce la solución óptima para este ejemplo.

Cuando la demanda no es muy variable, la diferencia entre los resultados de este método

y el del EOQ no difiere significativamente. Para determinar cuando utilizar uno u otro método,

recuérdese el coeficiente VC definido anteriormente en la expresión (4.11). Se ha encontrado a

través de estudios experimentales lo siguiente:

► Si VC < 0.2, entonces puede utilizarse el método del EOQ con la demanda promedio

sobre el horizonte de planeación, ya que produce buenos resultados.

►Si VC ≥ 0.2, entonces se sugiere utilizar el heurístico de Silver-Meal.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

9

HEURÍSTICA

Es importante notar que se ha encontrado que la aplicación del heurístico de Silver-Meal

en casos para los cuales el patrón de demanda decrece rápidamente con el tiempo a través de

varios períodos, o cuando existe un gran número de períodos con cero demanda, no

ha producido buenos resultados. Para estos casos, por lo tanto, sería recomendable utilizar el

método de Wagner-Whitin o el de modelación matemática.

El manejo de descuentos por cantidad

Una extensión importante del heurístico de Silver-Meal es la de permitir el manejo de

descuentos por cantidad. Considérese, el ejemplo, donde el valor unitario del ítem bajo

consideración viene dado por:

En este caso, no necesariamente debe ordenarse una cantidad para cubrir los

requerimientos de un número entero de períodos, ya que es posible que la mejor política sea

ordenar una cantidad igual al punto de quiebre, Q 1, la cual no necesariamente cubre una

cantidad entera de períodos. Lamarre y Baier (1981) desarrollaron una variante del algoritmo

de Silver-Meal para tener en cuenta esta consideración, a través de

extensiva experimentación. Sea T1 el número de períodos (no necesariamente entero) que

podría cubrir la cantidad Q1. Se calcula entonces los costos totales por unidad de tiempo

para T1, o sea:

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

10

HEURÍSTICA

Donde [T1] es la parte entera de T1 (por ejemplo, si T1 = 4.6, entonces [T1] = 4) y d es la

fracción de descuento obtenida por cantidades iguales o superiores aQ1. Igualmente, deben

calcularse los costos por unidad de tiempo para cantidades enteras de T, de acuerdo con las

siguientes expresiones

5.) APLICACIONES DE HEURÍSTICA EN LA CIENCIA.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

11

HEURÍSTICA

Como disciplina científica, la heurística es aplicable a cualquier ciencia e incluye la

elaboración de medios auxiliares, principios, reglas, estrategias y programas que faciliten la

búsqueda de vías de solución a problemas; o sea, para resolver tareas de cualquier tipo para las

que no se cuente con un procedimiento algorítmico de solución. Los Procedimientos

Heurísticos como Método científico pueden dividirse en principios, reglas y

estrategias. Principios Heurísticos: constituyen sugerencias para encontrar (directamente) la

idea de solución; posibilita determinar, por tanto, a la vez, los medios y la vía de solución.

Dentro de estos principios se destacan la analogía y la reducción. Reglas Heurísticas: actúan

como impulsos generales dentro del proceso de búsqueda y ayudan a encontrar, especialmente,

los medios para resolver los problemas.

Ejemplo

Los métodos de búsqueda heurística disponen de alguna información sobre la proximidad

de cada estado a un estado objetivo, lo que permite explorar en primer lugar los caminos más

prometedores.

► Son características de los métodos heurísticos:

► No garantizan que se encuentre una solución, aunque existan soluciones.

► Si encuentran una solución, no se asegura que ésta tenga las mejores propiedades (que

sean de longitud mínima o de coste óptimo).

► En algunas ocasiones (que, en general, no se podrán determinar a priori), encontrarán

una solución (aceptablemente buena) en un tiempo razonable.

Actividad: Problema de Guarini (1512). En el siguiente tablero 3x3 intercambiar la

posición de los caballos blancos y negros en el menor número de movimientos.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

12

HEURÍSTICA

Actividad: Se trata de “girar” los caballos alrededor del tablero en la misma dirección.

Como en cada fase se mueven los 4 caballos, hacen falta 16 movimientos.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

13

HEURÍSTICA

5.1) LA HEURÍSTICA EN LA INFORMÁTICA

En computación, dos objetivos fundamentales son encontrar algoritmos con buenos

tiempos de ejecución y buenas soluciones, usualmente las óptimas. Una heurística es un

algoritmo que abandona uno o ambos objetivos; por ejemplo, normalmente encuentran buenas

soluciones, aunque no hay pruebas de que la solución no pueda ser arbitrariamente errónea en

algunos casos; o se ejecuta razonablemente rápido, aunque no existe tampoco prueba de que

siempre será así. Las heurísticas generalmente son usadas cuando no existe una solución

óptima bajo las restricciones dadas (tiempo, espacio, etc.), o cuando no existe del todo.

A menudo, pueden encontrarse instancias concretas del problema donde la heurística

producirá resultados muy malos o se ejecutará muy lentamente. Aun así, estas instancias

concretas pueden ser ignoradas porque no deberían ocurrir nunca en la práctica por ser de

origen teórico. Por tanto, el uso de heurísticas es muy común en el mundo real.

Heurísticas para encontrar el camino más corto.

Para problemas de búsqueda del camino más corto el término tiene un significado más

específico. En este caso una heurística es una función matemática, h(n) definida en los nodos

de un árbol de búsqueda , que sirve como una estimación del coste del camino más económico

de un nodo dado hasta el nodo objetivo. Las heurísticas se usan en los algoritmos de búsqueda

informada como la búsqueda egoísta. La búsqueda egoísta escogerá el nodo que tiene el valor

más bajo en la función heurística. A* expandirá los nodos que tienen el valor más bajo

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

14

HEURÍSTICA

para g(n)+h(n), donde g(n) es el coste (exacto) del camino desde el estado inicial al nodo

actual. Cuando h(n) es admisible, esto es si h(n) nunca sobrestima los costes de encontrar el

objetivo; A* es probablemente óptimo.

Un problema clásico que usa heurísticas es el puzzle-n. Contar el número de casillas mal

colocadas y encontrar la suma de la distancia Manhattan entre cada bloque y su posición al

objetivo son heurísticas usadas a menudo para este problema.

Efecto de las heurísticas en el rendimiento computacional.

En cualquier problema de búsqueda donde hay b opciones en cada nodo y una

profundidad d al nodo objetivo, un algoritmo de búsqueda ingenuo deberá buscar

potencialmente entre bd nodos antes de encontrar la solución. Las heurísticas mejoran la

eficiencia de los algoritmos de búsqueda reduciendo el factor de ramificación de b a

(idealmente) una constante b*.

Aunque cualquier heurística admisible devolverá una respuesta óptima, una heurística que

devuelve un factor de ramificación más bajo es computacionalmente más eficiente para el

problema en particular. Puede demostrarse que una heurística h2(n) es mejor que otra h1(n),

si h2(n) domina h1(n), esto quiere decir que h1(n)<h2(n) para todo n</h

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

15

HEURÍSTICA

Heurísticas en la inteligencia artificial

Muchos algoritmos en la inteligencia artificial son heurísticos por naturaleza, o usan

reglas heurísticas. Un ejemplo reciente es SpamAssassin que usa una amplia variedad de reglas

heurísticas para determinar cuando un correo electrónico es spam. Cualquiera de las reglas

usadas de forma independiente pueden llevar a errores de clasificación, pero cuando se unen

múltiples reglas heurísticas, la solución es más robusta y creíble. Esto se llama alta credibilidad

en el reconocimiento de patrones (extraído de las estadísticas en las que se basa). Cuando se

usa la palabra heurística en el procesamiento del lenguaje basado en reglas, el reconocimiento

de patrones o el procesamiento de imágenes, es usada para referirse a las reglas.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

16

HEURÍSTICA

6.) PARADIGMA HEURÍSTICO.

Muchas de las tareas más interesantes y difíciles de programación implican utilizar el

ordenador para resolver problemas del tipo: "¿Cuál es el camino más corto?" "Listar todos los

casos posibles", "¿Existe una disposición de elementos que satisfaga?. Las características de

estos problemas implica potencialmente una búsqueda exhaustiva de todas las posibles

combinaciones de algún conjunto finito, que si no está controlado puede producir una

"explosión combinatoria" (incremento exponencial del espacio de búsqueda con la dimensión

del problema) imposible de tratar.

La Programación Heurística ha venido a significar el uso del conocimiento específico del

dominio para cubrir esta explosión de posibilidades guiando la búsqueda por las direcciones

más prometedoras. Se puede definir como "aquel tipo de programación computacional que

aplica para la resolución de problemas reglas de buena lógica (reglas del pulgar). denominadas

heurísticas, las cuales proporcionan entre varios cursos de acción uno que presenta visos de ser

el más prometedor, pero no garantiza necesariamente el curso de acción más efectivo."

La Programación Heurística implica una forma de modelizar el problema en lo que

respecta a la representación de su estructura, estrategias de búsqueda y métodos de resolución,

que configuran el Paradigma Heurístico.

Este tipo de programación se aplica con

mayor intensidad en el campo de la Inteligencia

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

17

HEURÍSTICA

Artificial (IA), y en especial, en el de la Ingeniería del Conocimiento, dado que el ser humano

opera la mayor parte de las veces utilizando heurísticas, un hecho cierto que una heurística es la

conclusión del razonamiento humano en un dominio específico, por lo que es normal que este

tipo de programación que encuadrado en el área de la I.A., ya que implementa el conocimiento

humano, dado por la experiencia, utilizando reglas de buena lógica.

Como se ha señalado inicialmente, un paradigma de programación es un modelo básico

de diseño e implementación de programas. Un modelo que permite producir programas de

acuerdo con una metodología específica. Así, el paradigma de programación estructurada se

basa en estructuras modulares, con fuerte cohesión en el módulo y bajo acoplamiento entre

ellos, desarrollo "top-down", utilización de diagramas privilegiados, etc.

El Paradigma Heurístico define pues, un modelo de resolución de problemas en el que se

incorpora alguna componente heurística sobre la base de:

Una representación más apropiada de la estructura del problema para su resolución con

técnicas heurísticas

La utilización de métodos de resolución de problemas aplicando funciones de evaluación

con procedimientos específicos de búsqueda heurística para la consecución de las metas.

Por otra parte, la Programación Heurística se presenta y utiliza desde diferentes puntos

de vista.

Como técnica de búsqueda para la obtención de metas en problemas no algorítmicos, o

con algoritmos que generan explosión combinatoria (ej. damas. ajedrez, etc.).

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

18

HEURÍSTICA

En Herramientas

► Tratamiento fundamentalmente simbólico, dado que la mayor parte de los problemas

que precisan tratamiento heurístico tienen estructura simbólica.

► Unidades funcionales autónomas que posibiliten modelar una heurística y su

mecanismo de ejecución, definiendo módulos independientes.

► Estructuras de datos que permitan describir estados de problemas y relaciones entre

estados.

► Estructuras procedimentales de control y de proceso (o de definición) que permitan la

ejecución coherente del modelo heurístico, y posibiliten la adquisición y utilización del

conocimiento adquirido en el proceso de resolución del problema.

7.) PASOS DEL MÉTODO HEURÍSTICO

1.- Comprender el problema

Es importante reflexionar en cuestiones como “que se pide” “que se tiene” y “a donde se

quiere llegar”. Algunas preguntas que debemos hacernos: ¿Cuál es la incógnita? ¿Es la

condición suficiente para determinar la incógnita? ¿Es suficiente?

En la siguiente se muestran los siente puentes de Koninsberg ¿Es posible hacer el

recorrido sin pasar dos veces por el mismo puente?.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

19

HEURÍSTICA

2.-. Concebir un plan.

Puedes usar la estrategia que creas conveniente. Cada quien puede establecer el camino

o caminos a seguir. Algunas preguntas que debemos hacernos: ¿Se ha encontrado con un

problema semejante? ¿Ha visto el mismo problema planteado en otra forma? ¿Conoce

problemas relacionados con este? ¿Se podría utilizar el problema relacionado con este ya

resuelto? ¿Podría enunciar el problema en otra forma? ¿Se necesita algún elemento auxiliar?

¿Podría emplear su resultado y método?

3.- Ejecutar el plan

En la formación de conceptos matemáticos, se requiere emplear

un pensamiento móvil y flexible, debemos ser capaces de encontrar

distintos caminos, rodeos, asociaciones, para llegar a una solución;

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

20

HEURÍSTICA

retornar después de un cambio al punto de partida. De esta forma debemos revisar lo que

hemos hecho y de ser necesario anularlo previamente y entonces estructurar las relaciones de lo

encontrado.

4.- Examinar la solución obtenida.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

21

HEURÍSTICA

Comprobar y examinar la solución obtenida debemos hacernos las preguntas siguientes:

¿Puede verificarse el resultado? ¿Puede verificarse el razonamiento? ¿Puede obtenerse el

resultado en forma diferente? ¿Puede verse de golpe? ¿Puede emplearse el resultado o el

método en otro problema? La retrospectiva permite revisar como se pensó inicialmente, como

se encamino una estrategia, como e efectuaron los cálculos; en fin, todo el camino recorrido

para obtener la solución.

En el problema de grafos que admiten un recorrido euleriano se tiene, que ocurre cuando

se tienen al menos dos puntos a los que llegan un número par de líneas.

8.) CLASIFICACIÓN MÉTODOS HEURÍSTICOS

Existen diferentes métodos heurísticos, esto está dado por su naturaleza compleja y

variada, es difícil definir una clasificación por esta razón ya que la mayoría de ellos se

construyen para un problema en particular, lo que significa que su aplicación a otros

problemas similares sea casi imposible.

El siguiente esquema muestra categorías más amplia, no excluyentes, en donde se ubican

a los métodos heurísticos más conocidos.

► Métodos de Descomposición: el problema original se descompone en sub problemas

más sencillos de resolver.

► Métodos Inductivos: es generalizar de de versiones más pequeñas a lo más

complejos.

► Métodos de Reducción: el objetivo es restringir el espacio de soluciones

simplificando el problema.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

22

HEURÍSTICA

► Métodos Constructivos: consisten en construir literalmente paso a paso la solución

del problema. Usualmente son métodos deterministas y suelen estar basados en la mejor

elección de cada iteración.

► Métodos de Búsqueda Local: a diferencia de los métodos anteriores, el

procedimiento de búsqueda o mejora local, comienza con una solución del problema y la

mejoran progresivamente, el método finaliza cuando no existe ninguna solución accesible que

mejore la anterior.

Los métodos constructivos y los de búsqueda local son la base de los métodos Meta-

heurísticos

8.1.) MÉTODOS META-HEURÍSTICOS

En las últimas décadas han aparecidos una serie de métodos bajo el nombre de Meta-

heurísticos con el objetivo optar a mejores resultados que los métodos heurísticos

tradicionales.

Los métodos Meta-heurísticos son estrategias para diseñar o mejorar procedimientos

heurísticos con miras a obtener un alto rendimiento de soluciones en dominios donde la

ejecución de procesos se vuelve compleja. Las meta-heurística se aplican a problemas

clasificados como NP-Hard, como también se aplican a problemas de combinatoria en los

cuales existe una solución de tiempo polinómico pero que no es práctica.

La Meta-heurísticas se pueden clasificar como:

► Meta-heurísticos constructivas: Este tipo de meta-heurística va incorporando

elementos a una estructura inicialmente vacía que representa la solución.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

23

HEURÍSTICA

► Meta-heurísticos evolutivas: Son métodos que van construyendo un conjunto

de soluciones a diferencia de los otros métodos que solo pasan de una solución a otra en cada

iteración.

► Meta-heurísticos de búsqueda: Son métodos que presuponen que existe una solución y

realizan procedimientos de búsqueda, la diferencia con los métodos analíticos es que no

necesariamente se encontrará la solución óptima.

8.2.) METODOLOGÍA BÚSQUEDA TABÚ o TABÚ SEARSH “TS”

Es sabido que los humanos posee un mecanismo de intuición que nos permite funcionar

con un mínimo o nada de información, por lo general se introduce una variable aleatoria en

nuestras decisiones lo cual promueve un nivel de inconsistencia en nuestro comportamiento, la

tendencia de estos comportamiento suele encaminarnos a dos caminos “los errores” y a una

“buena solución”. La Búsqueda Tabú quiere emular este comportamiento humano pero sin

utilizar elementos aleatorios. De acuerdo a esto esta metodología busca la mejor solución

posible de acuerdo al planteamiento del problema.

La Búsqueda Tabú es un procedimiento de búsqueda que utiliza memoria adaptativa y un

plan estratégico de resolución de problemas, en lo medular este tipo de procedimiento meta-

heurístico se basa en el aprovechamiento de diversas estrategias basadas en procedimiento de

aprendizaje, en otras palabras, la Búsqueda Tabú puede ser descrita como una búsqueda

inteligente para dirigir el proceso de búsqueda lejos de las soluciones locales, de este modo

encontrar mejores soluciones. La Búsqueda Tabú mejora los métodos locales de búsqueda

usando estructuras de memoria. Una vez que la solución potencial ha sido determinada ésta es

marcada como taboo (lista tabú), así el algoritmo no visita una posibilidad iterativamente.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

24

HEURÍSTICA

Búsqueda Tabú da origen al enfoque basado en memoria y estrategia intensiva, en la

literatura de la meta-heurística Búsqueda Tabú esta en contraposición con los métodos que

no tienen memoria o que sólo usan una débil memoria basada en herencia, también es

responsable de enfatizar el uso de los diseños estructurados para explotar los patrones

históricos de la búsqueda. Los principios fundamentales de la Búsqueda Tabú fueron

elaborados en una serie de artículos a finales de los años 80 y principios de los 90, y han sido

unificados en el libro “Tabú Search”

La Búsqueda Tabú estipula un procedimiento de búsqueda local para la búsqueda de la

atomicidad global, su política se basa en un marco de memoria adaptativa. La Búsqueda Tabú

está basada en la premisa de que para clasificar un procedimiento de resolución de problema

como inteligente, es necesario que este incorpore Memoria Adaptativa y Exploración

Inteligente. La memoria adaptativa permite procedimientos capaces de realizar búsqueda en un

espacio de soluciones eficaces y eficientes, debido a que las decisiones locales están guiadas

por la información obtenidas del proceso de búsqueda, la Búsqueda Tabú se contrasta con

procedimientos aleatorios que buscan un muestreo de la información.

El énfasis en la exploración inteligente deriva de la estrategia, que una mala elección

entrega más información que una buena elección realizada al azar, debido a que una elección

estrategia puede guiar a zonas más prometedoras.

La arquitectura de la Búsqueda Tabú funciona mediante referencia a cuatro dimensiones

principales, consistentes en la propiedad de ser residente, en frecuencia, en calidad y en

influencia. Las memorias basadas en lo reciente y en frecuencia se complementan la una a la

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

25

HEURÍSTICA

otra para lograr el balance entre intensificación y diversificación, la dimensión de calidad hace

referencia habilidad para diferenciar la bondad de las soluciones visitadas a lo largo del

proceso de búsqueda. La flexibilidad de las estructuras de memorias mencionadas hasta este

momento guía la búsqueda en un entorno multi-objetivo, dado que determinan la bondad de

búsqueda particular mediante más de una función. La memoria referida a la influencia

considera el impacto a la calidad de las decisiones tomadas durante la búsqueda, no sólo en lo

referente a la calidad de las soluciones si no también referente a las mimas.

Dentro de la memoria del procedimiento de Búsqueda Tabú se almacenan las soluciones

completas, soluciones que fueron visitadas durante la búsqueda y otro segmento de memoria

almacena información sobre determinados atributos de las soluciones que cambian al pasar por

una solución a otra. De cualquier manera estos segmentos de memoria son complementarios,

puesto que uno permite expandir los entornos de búsqueda usados durante un proceso de

búsqueda local mediante la inclusión de soluciones superiores mientras que el otro segmento

reduce determinados movimientos sobre las soluciones ya buscadas.

En la Búsqueda Tabú, tienen estrategias de intensificación y diversificación las cuales

constituyen dos elementos importantes ya que se encargan de la modificación de las reglas

para favorecer la elección de buenas combinaciones de movimientos y de características de

soluciones encontradas, además por otro lado tratan de conducir la búsqueda a zonas del

espacio de soluciones no visitadas anteriormente y generar nuevas soluciones que difieran

significativamente de las ya evaluadas. Los componentes básicos de la Búsqueda Tabú son: el

entorno, la lista tabú, el criterio de aspiración y el criterio de parada. De lo anterior el proceso

interno de la Búsqueda Tabú se puede resumir del siguiente modo:

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

26

HEURÍSTICA

► Mientras el criterio de parada sea falso

- Generar lista de candidatos de movimientos-vecinos

- Escoger el mejor vecino no tabú o que verifique el criterio de aspiración x�

- Actualizar la solución actual, x=x�

► Salida: la mejor solución encontrada.

Un ejemplo clásico son las permutaciones, que son ejemplos típicos de optimización, los

ejemplos más citados de problemas de permutaciones incluyen el problema del viajante de

comercio, asignación cuadrática, secuenciación de la producción, asignación de tareas.

Un ejemplo es la permutación de tareas de una maquina en donde se persigue el objetivo

de minimizar el retraso total de en la ejecución de las tareas, secuenciando las tareas de esta, en

este ejemplo la solución inicial se basa en encontrar una permutación de las tareas lo más

cercana a la óptima, la Búsqueda Tabú funciona bajo el supuesto que se puede construir un

entorno para identificar “soluciones adyacentes” que puedan ser alcanzadas bajo la solución

actual. Para este caso los intercambios de tareas son frecuentemente usados para definir

entornos de permutaciones, identificando movimientos que conducen a una solución a la

siguiente. Los movimientos proporcionan una base fundamental para evaluar la calidad de los

mismos, teniendo encuentra que otros criterios pueden ser importantes. Un mecanismo de

Búsqueda Tabú es clasificar un conjunto de movimientos que se marcaran como tabú o

prohibidos, esta clasificación depende la búsqueda determinada por los recientes o frecuentes

que ciertos movimientos o componentes de soluciones, llamados atributos que han participado

en la generación de soluciones pasadas, por ejemplo en el Cuadro 1 muestra el intercambio de

tareas con un mismo movimiento identificando el par de movimientos como idénticos, de esta

forma se busca evitar movimientos de búsqueda repetidos.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

27

HEURÍSTICA

Para el caso anterior las tareas enumeras 2 y 5 se resuelven como pares ordenados (2,5)

por tanto la permutación de (5,2) debe llevar al mismo valor de búsqueda de una solución

como en par de (2,5). De esta forma se clasifica como tabú el par (5,2).

Búsqueda Tabú puede ser convenientemente caracterizado en su búsqueda por entorno

(Glover & Batista, 1986), es decir una búsqueda en el entorno identifica para cada solución x

X, un conjunto asociados de vecinos N(x) X llamado entorno de x, los entornos se asumen

simétricos, es decir x' es un vecino de x y sólo si x es un vecino de x'.

Un vecino es un posible movimiento, el cual consiste en cambiar un atributo a la solución

actual por otro y el vecindario consiste en los vecinos que se pueden acceder desde una

solución X en particular.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

28

HEURÍSTICA

Los pasos de búsqueda por entorno se muestran a continuación:

Paso 1 (Inicialización).

(A) Seleccionar una solución de arranque xActual X.

(B) Almacenar la mejor solución actual conocida haciendo xMejor =

xActual y definiendo MejorCoste = c(xMejor).

Paso 2 (Elección y finalización).

Elegir una solucion xSiguiente 2 N(xActual). Si los criterios de elección

empleados no pueden ser satisfechos por ningún miembro de N(xActual),

o si se aplican otros criterios de parada, entonces el método para.

Paso 3 (Actualización).

Rehacer xActual = xSi

El método de búsqueda en el entorno puede ser alterado fácilmente añadiendo

provisiones especiales para generar una variedad de procedimientos clásicos.

La Búsqueda Tabú, emplea una filosofía diferente a otros métodos heurísticos para ir más

allá del criterio de finalizar en un óptimo local. Se reduce el énfasis en que sea aleatorio y

generalmente se usa en un modo altamente restringido, con el supuesto de que la búsqueda

inteligente debería estar basada en formas más sistemáticas de dirección. Por consiguiente,

muchas implementaciones de Búsqueda Tabú son en gran parte deterministas, es decir, la

Búsqueda Tabú “determinística” selecciona movimientos según probabilidades basadas en el

estado y en las evaluaciones asignadas a estos movimientos por los principios básicos de la

Búsqueda Tabú.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

29

HEURÍSTICA

En Conclusión, la Búsqueda Tabú se fundamenta en tres premisas:

1. El uso de estructuras flexibles de memorias basadas en atributos, diseñadas para

permitir una mejor explotación de los criterios de evaluación e información histórica de la

búsqueda.

2. Un mecanismo de control, para emplear las estructuras de memoria, este mecanismo se

basará en la interacción entre las condiciones que limitan y hacen más flexibles el procesos de

búsqueda. Este mecanismo se encuentra inmerso en la técnica en la forma de restricciones y

criterios de aspiración (criterio que permite que un movimiento pierda el estatus de “tabú”

debido que proporciona una mejor solución que la actual).

3. La incorporación de memorias, memorias de corto y largo plazo, para implementar

estrategias que intensifiquen la búsqueda y la diversifiquen, las estrategias de intensificación

refuerzan las propiedades de las combinaciones de movimiento que han demostrado ser buenas,

mientras que las estrategias de diversificación dirigen la búsqueda hacia nuevas regiones del

espacio de soluciones factibles. Estos dos mecanismos evitan que una solución quede en un

óptimo local, es decir, el primer mecanismo nos permite delimitar la región del espacio de

búsqueda, mientras que la segunda permite saltar a nuevas regiones del mismo.

Esta metodología parte de la premisa que ya hay una solución dada o se busca una al

azar, de este modo se trabaja sobre una solución dada aunque esta no sea óptima.

Llevando el análisis teórico de la metodología al problema de asignación de salas se

puede observar que esta metodología puede encontrar soluciones factibles de considerar

buenas, sí consideramos no aplicar ninguna restricción al hacer el proceso de búsqueda y

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

30

HEURÍSTICA

asignación, de otro modo este método puede transformarse en algo inmanejable debido a que

tendría que integrar las restricciones y requerimientos propios de una distribución de cursos a

las salas de clases.

8.3.) METODOLOGÍA PROCEDIMIENTO DE BÚSQUEDA BASADOS EN

FUNCIONES “GREEDY” ALEATORIZADAS ADAPTATIVAS. “GRASP”

La metodología GRASP fue desarrollada al final de la década de los 80 con el objetivo

inicial de resolver problemas de cubrimientos de conjuntos (Feo & Resende, A probabilistic

heuristic for a computationally difficult set covering problem., 1989) esta metodología ha sido

uno de los métodos meta-heurísticos más exitosos de los últimos años. El término GRASP fue

introducido por Feo y Resende en 1995 (Feo & Resende, Greedy randomized adaptive search

procedures, 1995) como una nueva técnica meta-heurística de propósito general. GRASP es el

acrónimo de Greedy Randomized Adaptive Search Procedure que significa Procedimiento de

Búsqueda Basados en Funciones “Greedy” Aleatorizadas Adaptativas.

Al definir la metodología GRASP es conveniente que podamos relacionarlo a otros

métodos, dentro del conjunto de las meta-heurísticas para entender su procedimiento, lo más

similar a este método sea referirse al método Multi-start el cual consiste en generar múltiples

soluciones iníciales aleatorias de tal forma que a cada una de ellas se le pueda aplicar una

búsqueda local. Pues bien, GRASP es similar salvo que las soluciones sobre las que se aplica la

búsqueda local no son completamente aleatorias, tienen un componente de aleatoriedad el cual

está controlado y enmarcado dentro de un proceso constructivo. Así pues, GRASP consiste en

repetir múltiples veces un esquema de dos fases: construir una solución y aplicarle búsqueda

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

31

HEURÍSTICA

local. La segunda fase (búsqueda local) se puede aplicar una búsqueda local convencional (o

incluso una Búsqueda en Vecindad Variables, VNS, si se desea).

Entonces GRASP consiste de dos fases: la constructiva donde se produce una solución

factible, aunque no necesariamente es óptima y la segunda fase es una búsqueda local, en la

cual se examinan vecindades de la solución de la fase anterior, esta fase usa la solución inicial

como punto de partida de la fase de búsqueda local.

8.4.) ALGORITMOS GENÉTICOS (AGS)

Los algoritmos genéticos caen dentro de los métodos evolutivos debido a que estos están

basados en poblaciones de soluciones a diferencia de los métodos basados en el seguimiento de

trayectorias. Esta técnica de algoritmo evolutivo se puede clasificar en tres categorías

principales: Algoritmo Genéticos (AG), Estrategias Evolutivas (EE) y la programación

Evolutiva (PE). Todas estas estrategias se basan en un en un esquema común que es la

generación de un conjunto de elementos llamados población inicial (conjunto de soluciones),

esta población inicial es sometida a una serie de transformaciones que da lugar a una nueva

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

32

HEURÍSTICA

población de soluciones, de esto se valora la adaptabilidad al medio de cada una de estas

soluciones, de esto se desprende que la elección de los mejores individuos o soluciones para

conformar la siguiente generación, este proceso se repite un número determinado de veces

(ciclos) esperando que los individuos de la población haya evolucionado hacia una mejor

adaptación al medio.

Las diferencias fundamentales entre cada una de las técnicas antes mencionadas radica en

los tipo de alteraciones que se realizan en las soluciones para obtener nuevos individuos y en

los métodos empleados para la selección de la nueva generación.

En los años 1970, de la mano de John Henry Holland, surgió una de las líneas más

prometedoras de la inteligencia artificial, la de los Algoritmos Genéticos (AG), son llamados

así porque se inspiran en la evolución biológica y su base genético molecular. Estos algoritmos

hacen evolucionar una población de individuos sometiéndola a acciones aleatorias semejantes

a las que actúan en la evolución biológica (mutaciones y recombinaciones genéticas), así

como también a una selección de acuerdo con algún criterio, en función del cual se decide

cuáles son los individuos más adaptados, que sobreviven, y cuáles los menos aptos, que son

descartados. También este algoritmo es denominado “algoritmo evolutivo” e incluye las

estrategias de evolución, la programación evolutiva y la programación genética.

Los Algoritmos genéticos ocupan un lugar determinante dentro de la Programación

Evolutiva debido a:

► Son flexibles y adaptables a una gran cantidad de problemas diferentes y distintas

áreas, este algoritmo permite ser combinado con otros técnicas diferentes aunque no sean

evolutivas.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

33

HEURÍSTICA

► Los algoritmos genéticos tienen una mejor base teórica.

► Poseen una gran versatilidad ya que no necesitan mayor conocimientos específicos del

problema para su resolución.

Los Algoritmos Genéticos (AGs) son métodos adaptativos que pueden usarse para

resolver problemas de búsqueda y optimización. Un algoritmo genético consiste en una

función matemática o una rutina de software que toma como entradas una población de

ejemplares y retorna como salidas cuáles de ellos deben generar descendencia para la nueva

generación. Versiones más complejas de algoritmos genéticos generan un ciclo iterativo que

directamente toma a la especie (el total de los ejemplares) y crea una nueva generación que

reemplaza a la antigua una cantidad de veces determinada por su propio diseño. Una de sus

características principales es la de ir perfeccionando su propia heurística en el proceso de

ejecución, por lo que no requiere largos períodos de entrenamiento especializado por parte del

ser humano, principal defecto de otros métodos para solucionar problemas, como los Sistemas

Expertos.

Los Algoritmos Genéticos trabajan con una población de individuos, cada uno de los

cuales representa una solución factible a un problema dado. A cada individuo se le asigna un

valor ó puntuación, relacionado con la bondad de dicha solución. En la naturaleza esto

equivaldría al grado de efectividad de un organismo para competir por unos determinados

recursos. Cuanto mayor sea la adaptación de un individuo al problema, mayor será la

probabilidad de que el mismo sea seleccionado para reproducirse, cruzando su material

genético con otro individuo seleccionado de igual forma. Este cruce producirá nuevos

individuos, descendientes de los anteriores, los cuales comparten algunas de las características

de sus padres. Cuanto menor sea la adaptación de un individuo, menor será la probabilidad de

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

34

HEURÍSTICA

que dicho individuo sea seleccionado para la reproducción, y por tanto de que su material

genético se propague en sucesivas generaciones.

De esta manera se produce una nueva población de posibles soluciones, la cual reemplaza

a la anterior y verifica la interesante propiedad de que contiene una mayor proporción de

buenas características en comparación con la población anterior. Si el Algoritmo Genético ha

sido bien diseñado, la población convergerá hacia una solución óptima del problema.

El poder del Algoritmo Genético proviene del hecho de una técnica robusta y pueden

tratar una gran variedad de problemas provenientes de diferentes áreas, sin embargo esto no

garantiza una solución óptima del problema, si existe evidencia empírica de que se encuentran

soluciones aceptables en un tiempo competitivo con el resto de los algoritmos de optimización

combinatoria.

Los componentes básicos de un algoritmo genético son:

► Operadores genéticos (mutación y cruzamiento).

► Una representación apropiada del problema a resolver.

► Una función de oportunidad o bien llamada de Aptitud.

► Un procedimiento de inicialización.

El Algoritmo Genético en su versión más básica, necesita una codificación o

representación del problema, que resulte adecuada al mismo. Además se requiere una función

de ajuste o adaptación al problema, la cual asigna un número real a cada posible solución

codificada. Durante la ejecución del algoritmo, los padres deben ser seleccionados para la

reproducción, a continuación dichos padres seleccionados se cruzaran generando dos hijos,

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

35

HEURÍSTICA

sobre cada uno de los cuales actuara un operador de mutación. El resultado de la combinación

de las anteriores funciones será un conjunto de individuos (posibles soluciones al problema),

los cuales en la evolución del Algoritmo Genético formaran parte de la siguiente población.

A continuación se muestra código algorítmico genético básico:

En la codificación del algoritmo genético supone que los individuos (posibles soluciones

al problema) pueden representarse como un conjunto de parámetros utilizando una

codificación binaria de 0 y 1 los cuales agrupados forman una lista de valores. Si bien el

alfabeto utilizado para representar los individuos no debe necesariamente estar constituido por

el (0; 1), buena parte de la teoría en la que se fundamentan los Algoritmos Genéticos utiliza

dicho alfabeto.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

36

HEURÍSTICA

Un punto importante dentro del Algoritmo genético es la adaptación de un individuo el

cuál dependerá de su genotipo, la cual puede inferirse a partir del fenotipo, es decir, puede ser

computada usando una función de evaluación. La función de adaptación debe ser diseñada para

cada problema de manera específica asignando un número real, que se supone refleja el nivel

de adaptación al problema del individuo.

En la siguiente figura se ve reflejado un esquema general del algoritmo genético, donde

en la fase reproductiva se seleccionan los individuos de la población para cruzarse y producir

descendientes, que constituirán, una vez mutados, la siguiente generación de individuos.

La selección de padres se efectúa al azar usando un procedimiento que favorezca a los

individuos mejor adaptados, ya que a cada individuo se le asigna una probabilidad de ser

seleccionado que es proporcional a su función de adaptación. Este procedimiento se dice que

está basado en la ruleta sesgada. Según dicho esquema, los individuos bien adaptados se

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

37

HEURÍSTICA

escogerán probablemente varias veces por generación, mientras que los pobremente adaptados

al problema, no se escogerán más que de vez en cuando.

Una vez seleccionados dos padres, sus cromosomas se combinan, utilizando

habitualmente los operadores de cruce y mutación. Las formas básicas de dichos operadores

se describen a continuación.

El operador de cruce, coge dos padres seleccionados y corta sus conjuntos de

cromosomas en una posición escogida al azar, para producir dos subconjuntos iniciales.

Después se intercambian las subconjunto iniciales, produciéndose dos nuevos cromosomas

completos. Ambos descendientes heredan genes de cada uno de los padres. Este operador se

conoce como operador de cruce basado en un punto. Habitualmente el operador de cruce no se

aplica a todos los pares de individuos que han sido seleccionados para emparejarse, sino que se

aplica de manera aleatoria, normalmente con una probabilidad comprendida entre 0.5 y 1.0.

8.5.) SISTEMAS BASADOS EN EL CONOCIMIENTO (SBC)

Un sistema basado en el conocimiento es aquel que basa la solución de un problema en el

conocimiento experto humano. Los sistemas basados en el conocimiento (SBC) son parte del

área de la inteligencia Artificial “IA” que es una rama de la informática, estos sistemas imitan

las actividades de un ser humano para la solución de un problema utilizando para ello el

conocimiento declarativo (hechos sobre objetos, situaciones) y el conocimiento de control

(información sobre el seguimiento de una acción) mientras operan y se adaptan a dominios

dinámicos e inciertos que no están completamente especificados.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

38

HEURÍSTICA

La IA está dividida en una serie de áreas de investigación, cada una con propósitos

específicos que permite contribuir e un propósito de un objetivo general. Entre estos están las

redes neuronales, procesamiento del lenguaje natural, robótica y sistemas basados en el

conocimiento.

Los Sistemas Basados en el Conocimiento (SBC) tratan problemas complejos en área o

dominio este sistema intenta imitar el comportamiento que podría tener un experto humano en

dominio del problema, ante los cual los SBC tienen metodologías que intentan reflejar el

conocimiento y el razonamiento que posee el experto para tomar decisiones ente una situación

puntual. Dentro de estas metodologías se encuentran los “Sistemas Expertos SE” estos

nacieron en la década de los 60, durante esta década los investigadores Alan Newell y Herbert

Simon desarrollaron un programa llamado GPS (General Problem Solver; solucionador

general de problemas), los SE son representativos de los SBC debido a su calidad y cantidad de

conocimiento que manejan en relación al experto humano.

Dentro de la definición de un SE tiene varias acepciones dentro de las cuales encontramos

las siguientes:

► Es un software que imita el comportamiento de un experto humano en la solución de

un problema. Pueden almacenar conocimientos de expertos para un campo determinado y

solucionar un problema mediante deducción lógica de conclusiones.

► Programas que manipulan conocimiento codificado para resolver problemas en un

dominio especializado, en un dominio que generalmente requiere de experiencia humana

► Programas que contienen tanto conocimiento declarativo (hechos a cerca de objetos,

eventos y/o situaciones) como conocimiento de control (información acerca de los cursos de

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

39

HEURÍSTICA

una acción), para emular el proceso de razonamiento de los expertos humanos en un dominio

en particular y/o área de experiencia.

► Software que incorpora conocimiento de experto sobre un dominio de aplicación dado,

de manera que es capaz de resolver problemas de relativa dificultad y apoyar la toma de

decisiones inteligentes en base a un proceso de razonamiento simbólico.27

Estas definiciones no son exclusivas una de otras sino que pueden conjugarse para hacer

una sola y tener más claro cuál es el comportamiento de un SE.

Los SBC se aplican por lo general, en problemas que implican procedimientos basados

en heurística, es decir un procedimiento de solución que utiliza estructuras que contienen

conocimiento y experiencia de los expertos humanos, deducción lógica de conclusiones,

capacidad de interpretar información ambigua y manipulación del conocimiento afectados por

datos de poca fiabilidad y evento probabilístico.

Arquitectura general de SBC

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

40

HEURÍSTICA

9.) Ejemplos de heurísticas

La vida cotidiana nos presenta distintas situaciones que nos llevan a reflexionar y a

generar cierta soluciones para sortear y superar estos problemas.

Comúnmente, situaciones aunque parezcan simples, nos llevan a enfrentar una

problemática interesante que desafía nuestra inteligencia y capacidad imaginativa para resolver

cualquier adversidad

Aquí hay unos ejemplos de ciertos problemas que de alguna manera su solución ha

ayudado a resolver situaciones aun más complejas

9.1.) 8 REINAS.

El problema de las 8 reinas fue propuesto por el ajedrecista alemán Max Bezzel en el año

1848. Consiste en la manera de situar 8 reinas en un tablero de ajedrez, sin que puedan

"amenazarse", es decir, que ninguna esté en la misma fila, columna o diagonal que la otra.

Es interesante estudiar esta problemática que ha sido resuelta de varias maneras, pero

siempre con una premisa por delante, usar una estrategia heurística para resolverla. La formula

mas común consiste en el Back Tracking. Este procedimiento consiste en ir ubicando las piezas

recordando la posición de las anteriores. Si por algún motivo una no puede ser ubicada, volver

hacia movimientos anteriores para seguir tratando por otro camino

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

41

HEURÍSTICA

9.2.) PROBLEMA A*

Desde siempre hemos tratado de

resolver de mejor manera un problema tan

común como un laberinto. La idea es que

dado un par de puntos dentro de un lugar,

buscar el camino más corto entre ellos. Al

ser una búsqueda por amplitud, el algoritmo

A* es un algoritmo completo, es decir, si

existe una solución, el algoritmo la

encontrará. La forma en que se modela la

solución es a través de un grafo en donde cada nodo es una posición valida dentro del espacio.

La función que se evalúa es de la forma F(n) = g(n) + h'(n), en donde g(n) representa el costo

total del recorrido antes de llegar al nodo n y h'(n) es el costo heurístico del nodo a evaluar.

9.3.) VENDEDOR VIAJERO.

Este es la problemática más cotidiana y más complicada de solucionar dentro de los

problemas logísticos para cualquier empresa. ¿Cual es la manera optima para repartir o recorrer

ciertos lugares de la manera más rápida y menos costosa? Esta problemática pertenece a la

categoría de NP - Completo, por ende, no posee una solución polinomial optima. Existen

aproximaciones heurísticas para esto, que llegan a buenos resultados, pero no podemos tener la

certeza de que sean óptimos.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

42

HEURÍSTICA

Una solución intuitiva para resolver esto sería evaluar cada una de las opciones, pero a

través de un cálculo simple podemos darnos cuenta que este proceso es una permutación de

todos los nodos y la complejidad de esto es de n!, lo que si utilizáramos 8 nodos, ya tenemos

que evaluar más de 40000 posibilidades. Con 20 o más, ya se hace prácticamente imposible

manejar esta cantidad de datos manualmente. Incluso a través de una computadora,

necesitamos bastante tiempo y capacidad de procesamiento para calcular estas posibilidades

Para modelar este problema se utiliza un grafo multidireccional, con un peso o costo o

determinado entre cada nodo

Aquí podemos ver 4 destinos y la oficina principal, con el costo asociado a cada camino.

Para resolver esta situación utilizaremos un software muy usado en temas de estadística y

cálculos numéricos, llamado WINQSB.

Para esto, creamos la matriz de adyacencia de este grafo

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

43

HEURÍSTICA

La forma en que calculara la solución es buscando todos los ciclos posibles para este

grafo y retornara el resultado menos, es decir, el menos costoso.

Luego de calcular, el programa nos retorna la siguiente información

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

44

HEURÍSTICA

El recorrido optimo seria entonces Oficina Central - Lugar 3 - Lugar 4 - lugar 2 - Lugar 1

- Oficina central. El costo total del ciclo es de 195. Gráficamente, el camino se ve así

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

45

HEURÍSTICA

9.4.) Búsqueda en anchura.

En Ciencias de la Computación, Búsqueda en anchura (en inglés BFS - Breadth First

Search) es un algoritmo para recorrer o buscar elementos en un grafo (usado frecuentemente

sobre árboles). Intuitivamente, se comienza en la raíz (eligiendo algún nodo como elemento

raíz en el caso de un grafo) y se exploran todos los vecinos de este nodo. A continuación para

cada uno de los vecinos se exploran sus respectivos vecinos adyacentes, y así hasta que se

recorra todo el árbol.

Formalmente, BFS es un algoritmo de búsqueda sin información, que expande y examina

todos los nodos de un árbol sistemáticamente para buscar una solución. El algoritmo no usa

ninguna estrategia heurística.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

46

HEURÍSTICA

Si las aristas tienen pesos negativos aplicaremos el algoritmo de Bellman-Ford en alguna

de sus dos versiones.

Procedimiento

► Dado un vértice fuente s, Breadth-first search sistemáticamente explora los vértices de

G para “descubrir” todos los vértices alcanzables desde s.

► Calcula la distancia (menor número de vértices) desde s a todos

los vértices alcanzables.

► Después produce un árbol BF con raíz en s y que contiene a todos

los vértices alcanzables.

► El camino desde s a cada vértice en este recorrido contiene el mínimo número

de vértice. Es el camino más corto medido en número de vértices.

► Su nombre se debe a que expande uniformemente la frontera entre lo descubierto y lo

no descubierto. Llega a los nodos de distancia k, sólo tras haber llegado a todos los nodos a

distancia k-1.

Pseudocódigo

La nomenclatura adicional utilizada es: Q = Estructura de datos cola.

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

47

HEURÍSTICA

Elaborado: Brito Jennifer – Ramírez María –Izquierdo Paúl // Docente: Zapata José //Catedra: Investigación de Operaciones II // Maracay 2012 // PSM Extesion Maracay // [email protected] //

twitter: @psmheuristica // facebook: psm.heuristica / Heuristica IPSM-Maracay

48

HEURÍSTICA

Descargas

Un programa muy utilizado para hacer cálculos para cada uno de los algoritmos usados en

informática y estadística es WinQSB

• www.pcdigital.org/descargar-winqsb-20/

Visite:

• http://psmheuristica.webnode.com.ve/

• http://www.youtube.com/watch?feature=player_embedded&v=_HjvV5nQziw&noredirect=1

• http://www.youtube.com/watch?feature=player_embedded&v=upoXlf_g-nE

• http://www.youtube.com/watch?feature=player_embedded&v=y5jQpOXEj78

• http://www.youtube.com/watch?feature=player_embedded&v=K1fgnN0WCYQ