Вы находитесь на странице: 1из 25

SOLUCIN DEL PROBLEMA 3-SAT CON LA METAHEURSTICA GRAPS.

PRESENTA
VELSQUEZ OJEDA MAYRA ALEJANDRA
MATERIA
TALLER DE INVESTIGACIN II.
ASESOR
M.C. CARLOS ALBERTO CAMACHO ANDRADE

ZIHUATANEJO GUERRERO, MXICO
JULIO, 2014
Instituto Tecnolgico
De La Costa Grande
i

NDICE DE CONTENIDO
NDICE DE CONTENIDO i
1 INTRODUCCIN 1
2 DESARROLLO 2
2.1 Evolucin de las aplicaciones Web... 2

2.1.1 Historia de internet..

2
2.1.2 Historia de la Web... 2
2.1.3 El primer navegador 4

2.1.4 Generaciones de los sitios Web

4

2.1.4.1 Primera generacin
4

2.1.4.2 Segunda generacin..
5


2.1.4.3 Tercera generacin. 6

2.1.4.4 Cuarta generacin

6
2.2 Arquitectura de las aplicaciones Web 7
2.2.1 Aplicaciones Web.. 7

2.2.2 Arquitectura clsica

7

2.2.3 Arquitectura actual: Tres niveles.
8

2.2.4 Arquitectura del cliente Web
9


2.2.4.1 Cliente Web ligero 9




ii



2.2.4.2 Cliente Web pesado 10
2.2.4.3 Cliente Web distribuido... 10
2.2.5 Otras opciones arquitectnicas 10
2.2.5.1 Cuatro niveles.. 10
2.3 Tecnologa para el desarrollo de aplicaciones Web 11
2.3.1 Aplicaciones Web 12
2.3.2 Tecnologa Web.. 13
2.3.2.1 Cliente.. 13
2.3.2.2 Servidor 15
2.4 Planificacin de aplicaciones Web. 16
2.4.1 Planificacin. 16
2.4.2 Equipo de trabajo. 17
2.4.3 Flujo de trabajo 17
2.4.4 Estructura de la informacin.. 17
2.4.5 Diagrama de interfaz 17
2.4.6 Boceto de interfaz. 17
2.4.7 Manejo de color.. 18
2.4.8 Construccin de sitio Web 18
2.4.9 Estructura de archivos.. 18
iii







2.4.10 Publicacin y medicin del desempeo de un sitio Web 18
3 CONCLUSIONES 20
4 REFERENCIAS BIBLIOGRFICAS 21

24

1. ANTECEDENTES.
La metaheurstica apareci por primera vez en el artculo seminal sobre bsqueda tab de
Fred Glover en 1986. A partir de entonces han surgido multitud de propuestas de pautas
para disear buenos procedimientos para resolver ciertos problemas que, al ampliar su
campo de aplicacin, han adoptado la denominacin de metaheursticas.
Las metaheursticas son procesos iterativos que gua a la heurstica combinando distintos
aspectos para explorar el espacio de bsqueda usando estrategias de aprendizaje para
estructurar la informacin con el objetivo de encontrar soluciones a problemas muy
complejos y generalmente con un alto grado de combinatoria para los cuales no existe una
manera de encontrar el ptimo en un tiempo razonable.
Heurstica, tambin conocida como denominada principio Heurstico (PH) o criterio
heurstico, consiste en una regla de razonamiento de utilidad prctica pero solo
aproximada para la solucin de problemas matemticos, su objetivo es intentar crear un
puente comunicacional es el que tanto la persona como el sistema se entiendan y
trabajen juntos para alcanzar un objetivo.
Las tcnicas metaheursticas son procedimientos de bsqueda que tampoco garantizan la
obtencin del ptimo del problema considerado y que tambin se basan en la aplicacin
de reglas relativamente sencillas. Estas tcnicas tratan de huir de ptimos locales
orientando la bsqueda en cada momento dependiendo de la evolucin del proceso de
bsqueda.
Algunas de las tcnicas metaheursticas ms extendidas son los algoritmos genticos, la
bsqueda tab, el recocido simulado, la bsqueda scatter, las colonias de hormigas, la
tcnica GRASP (Greedy Randomized Adaptive Search Procedure), tambin las redes
neuronales estn incluidas en esta tcnicas metaheursticas.
Actualmente son muy variados los problemas que resuelve la metaheurstica, algunos de
ellos son; Ruteo de Arcos Capacitados (CARP), Problema del viajante de comercio (TSP),
Problema de asignacin cuadrtica (QAP), Satisfactibilidad (SAT-3), por el cual se
mencionar en que consiste cada uno de ellos.

25

Ruteo de Arcos Capacitados (CARP), consiste en atender las demandas sobre
determinadas calles de una red vial a travs de una flota homognea de vehculos, los
cuales inician y finalizan sus recorridos desde un nico depsito. El objetivo del problema
es minimizar el costo total de recorrido de manera tal de atender todas las demandas sin
acceder la capacidad de carga de los vehculos involucrados.
Problema del viajante de comercio (TSP), consiste en un conjunto finito de ciudades y
costos de viaje, para encontrar la forma ms barata de visitar todas las ciudades
exactamente una vez y volver al punto de partida.
Problema de asignacin cuadrtica (QAP), es considerado como un problema complejo y
dificultoso de resolver y puede establecerse como un conjunto de n elementos distintos
que deben ser localizados en n localidades distintas de forma ptima.
Satisfactibilidad (SAT-3), es un problema de lgica matemtica y la teora de la
computacin, que consiste en encontrar alguna asignacin de valores de verdad que
logren satisfacer una coleccin de condiciones en forma cognitiva.
La tcnica metaheurstica GRASP, es unas de las tcnicas que pueden solucionar
algunos de estos problemas, por lo que esta tcnica aplica una gran gama de problemas
de optimizacin, pero garantiza una buena solucin al problema aunque no
necesariamente ptima.






26

2. INTRODUCCIN
2.1 JUSTIFICACIN
En la actualidad existen diferentes problemas complejos que se pueden presentar en la
vida cotidiana y en las empresas de gran auge, algunos de estos problemas complejos ya
establecidos son el viajante de comercio, ruta de los vehculos, asignacin cuadrtica, la
mochila, etc. Para la solucin de estos problemas complejos, las nuevas tecnologas se
han realizados estudios y se han puesto en prctica diversas tcnicas para la solucin de
estos problemas y con ello dan lugar al surgimiento de las tcnicas metaheursticas.
Las tcnicas metaheursticas son las ms efectivas para la solucin de estos problemas,
estos utilizan procedimientos de bsqueda, pero no garantizan la solucin ptima del
problema, se basan en aplicaciones de reglas relativamente sencillas. La aplicacin de
estas tcnicas, son diseadas especialmente para problemas de optimizacin, con la
implementacin de estas tcnicas se obtienen diferentes resultados, y estos se comparan
y se decide cul de ellos satisface la solucin del problema.
Con las tcnicas metaheursticas ya establecidas, se pretende desarrollar un algoritmo con
la tcnica GRAPS capaz de dar solucin a diferentes problemas ya establecidos algunos
de estos ya fueron mencionados anteriormente, todo esto surge a partir de los problemas
que se presenta en las diversas empresas, y los dueos de estos buscan la solucin
rpida y ptima para cada uno de ellos.








27

2.2 DEFINICION DEL PROBLEMA.
Diseo y elaboracin de un algoritmo que solucione el problema de satisfactibilidad (SAT-
3) con la tcnica metaheurstica GRASP.
2.3 OBJETIVO GENERAL.
Solucin de un problema no determinstico.
2.4 OBJETIVOS ESPECFICOS.
- Anlisis de la informacin de satisfactibilidad (SAT-3).
- Anlisis de la informacin de metaheuristica y sus tcnicas.
- Anlisis de la informacin de heurstica.
- Anlisis de los tipos de problemas de la heurstica.
- Proponer el algoritmo para resolver el problema de satisfactibilidad (SAT-3).
- Desarrollar el algoritmo mediante la programacin.
- Realizar las pruebas necesarias para el correcto funcionamiento del algoritmo
propuesto.



28

3. ESQUEMA DE FUNDAMENTOS.
3.1 Inteligencia artificial
Es el desarrollo y utilizacin de ordenadores con los que intenta reproducir los procesos de
la inteligencia humana, su objetivo es hacer que los computadores razonen de manera
similar a los seres vivos.
En la inteligencia Artificial (IA) se emplea el calificativo heurstico, en un sentido muy
genrico tienen que ver con el empleo de conocimiento en la realizacin dinmica de
tareas. En especial, se usa el termino heurstico para referirse a un procedimiento que
trata de aportar soluciones a un problema con un buen rendimiento, en lo referente a la
calidad de soluciones y a los recursos empleados.
En la resolucin de problemas especficos han surgido procedimientos heursticos
exitosos, de los que se ha tratado de extraer lo que es esencial en su xito para aplicarlo a
otros problemas o en contextos ms extensos. Como ha ocurrido claramente en diversos
campos de la IA, en especial con los sistemas expertos, esta lnea de investigacin ha
contribuido al desarrollo cientfico del campo de las heursticas y a extender la aplicacin
de sus resultados. De esta forma se han obtenido, tanto tcnicas y recursos
computacionales especficos, como estrategias de diseo generales para procedimientos
heursticos de resolucin de problemas. Estas estrategias generales para construir
algoritmos, quedan por encima de las heursticas, y van algo ms all, se denominan
metaheursticas
3.2 Metaheurstica.
El trmino metaheurstica se obtiene de anteponer a heurstica el sufijo meta que significa
ms all o a un nivel superior, las metaheursticas son procesos iterativos que gua a la
heurstica combinando distintos aspectos para explorar el espacio de bsqueda usando
estrategias de aprendizaje para estructurar la informacin con el objetivo de encontrar
soluciones a problemas muy complejos y generalmente con un alto grado de combinatoria
para los cuales no existe una manera de encontrar el ptimo en un tiempo razonable.


29

Caractersticas
- Propsito general: no se relacionan con problemas especficos, sino ms bien que
son de uso general y aplicable a un amplio conjunto de problemas.
- Fcil implementacin: son en general de fcil implementacin, dado que
normalmente no implican muchas lneas de cdigo, y su amplio espectro de uso las
hace naturalmente re-utilizables.
- Aproximados: se caracterizan por encontrar soluciones cercanas al ptimo, en
tiempos de procesamiento relativamente cortos.
- Poca base terica: generalmente se cuenta con muy poca base terica, y los
estudios en este campo son limitados.
- Estructura: es relativamente sencillo definir implementaciones para las diferentes
tcnicas metaheurstica existentes.
3.2.1 Tcnicas mataheursticas.
Son procedimientos de bsqueda que tampoco garantizan la obtencin del ptimo del
problema considerado y que tambin se basan en la aplicacin de reglas relativamente
sencillas. Estas tcnicas tratan de huir de ptimos locales orientando la bsqueda en cada
momento dependiendo de la evolucin del proceso de bsqueda.
La lgica de las tcnicas metaheursticas es similar: el punto de partida es una solucin (o
conjunto de soluciones) que tpicamente no es ptima. A partir de ella se obtienen otras
parecidas, de entre las cuales se elige una que satisface algn criterio, a partir de la cual
comienza de nuevo el proceso. Este procese se detiene cuando se cumple alguna
condicin establecida previamente.
Las tcnica metaheursticas ms extendidas con las siguientes:
- Algoritmos genticos
- Recosido simulado
- Bsqueda tab
- GRASP

30

3.2.2 Algoritmos genticos.
Los algoritmos genticos son las tcnicas de bsquedas y optimizacin ms utilizadas
dentro del campo de los algoritmos evolutivos. Esta tcnica es un algoritmo de bsqueda
basada en los mecanismos de seleccin natural y gentica natural. Ellos combinan la
supervivencia del ms apto en forma de representaciones estructuradas de soluciones al
problema, llamadas individuos, con mecanismos de intercambio de informacin para la
generacin de nuevas soluciones. De esta manera, se le da forma a un proceso de
bsqueda basado en la informacin que se obtiene del problema, y a medida que se
recorre el espacio de soluciones posibles se direcciona la bsqueda hacia los valores
mejores. En la tabla 3.1 se muestra el algoritmo gentico simple, la cual fue desarrollada
por John Holland, sus colegas y estudiantes en la universidad de Michigan.
Los operadores que evalan el algoritmo gentico simple son los siguientes:
- Seleccin, con este operador se obtiene el conjunto de individuos de la poblacin
actual que va a generar la descendencia de una poblacin dada, que formarn
parte de individuos de la siguiente poblacin.
- Cruce, este operador, conocido tambin como el de recombinacin, es el ms
importante de esta tcnica metaheurstica. El objetivo del cruce es combinar
elementos de informacin de diferentes individuos, de modo que las caractersticas
interesantes que estaban dispersas en diferentes individuos queden reunidas en
uno nuevo, confiando en que los individuos obtenidos de esta manera representen
soluciones de mejor calidad.
- Reproduccin, en trminos biolgicos, los individuos mejor adaptados perduran
durante varias operaciones. Por eso, el operador de seleccin escoge aquellos
individuos con buenas caractersticas y que deben perdurar a lo largo del tiempo y
no desperdigarse entre otros individuos nuevos. El operador de reproduccin
selecciona a los individuos de una determinada poblacin que pertenecen tambin
a la siguiente, sin sufrir ningn otro tipo de modificacin.
- Mutacin, con los operadores anteriores se obtienen individuos que combinan
rasgos que estn presentes en los individuos de la poblacin. Sin embargo, pueden

31

existir caractersticas que quedan sin explorar si slo se emplean los operadores
anteriores. Con la mutacin se introducen modificaciones en los individuos de la
descendencia.
- Reduccin, el objetivo de este operador no es modificar las caractersticas de
ningn individuo ni obtener alguna nueva, sino realizar modificaciones en las
representaciones de tal manera que la probabilidad de que los individuos
resultantes del cruce en posteriores iteraciones tengan ms probabilidad de ser
individuos mejor adaptados.











3.2.3 Recosido simulado.
Este algoritmo es una metaheurstica de optimizacin global. Est inspirado en los
procesos de coccin de metales y cermicas. La tcnica implica un proceso de
calentamiento y luego un proceso de enfriamiento controlado. La aplicacin de este
procedimiento trmico incrementa los cristales y reduce los defectos del material. Por
analoga al proceso fsico, a partir de la presente solucin se genera una nueva en forma

Algoritmo gentico simple.
1 I nicio /*Algoritmo gentico simple */
2 Generar una poblacin inicial
3 Computar la funcin de evaluacin de cada individuo
4 Mientras No terminado hacer
5 /* Producir nueva generacin*/
6 Para Tamao poblacin/2 hacer
7 /*Ciclo reproductivo*/
8 Seleccionar dos individuos de la anterior generacin, para el cruce
(probabilidad de seleccin proporcional)
9 Cruzar con cierta probabilidad los dos individuos obteniendo dos
Descendientes
10 Mutar los dos descendientes con cierta probabilidad
11 Computar la funcin de evaluacin de los dos descendientes Mutados.
12 Insertar los dos descendientes mutados en la nueva generacin
13 Fin Para
14 Si la poblacin ha convergido entonces
15 Terminado = true
16 Fin Si
17 Fin Mientras
18 Fin


3.1 Tabla del algoritmo gentico simple.

32

aleatoria. La misma es aceptada con una probabilidad que depende de la diferencia en la
funcin de aptitud de ambas soluciones y un parmetro T (enfriamiento) que decrece con
el paso del tiempo.
Esta tcnica fue desarrollada en forma independiente por dos grupos de investigacin a
principios de los 80. El rendimiento del algoritmo es dependiente del proceso en el cual se
eleva la temperatura de un slido hasta el punto que se vuelve lquido, a continuacin la
temperatura se disminuye de forma paulatina para obtener una estructura cristalina sin
defectos.
En la tabla 3.2 se muestra el proceso del algoritmo recosido simulado, por lo que es
necesario definir cada uno de sus elementos que lo conforman.
- Solucin inicial, la solucin de partida puede ser una solucin obtenida a partir de
una tcnica ms sencilla, o de forma aleatoria o bien a partir de una solucin
conocida del problema considerado.
- Vecindario, debe establecerse cmo se generan las soluciones que conforman el
vecindario dada una determinada solucin y la forma de seleccionar una de ellas,
como candidata a ser la nueva solucin.
- Temperatura inicial Conviene definir una temperatura inicial de manera que la
aplicacin de la tcnica sea suficientemente robusta, es decir, que la solucin
alcanzada no dependa de la solucin de partida. Esto se traduce en una
temperatura inicial suficientemente alta que permita movimientos errticos al
principio del proceso.
- Velocidad de enfriamiento, la velocidad de enfriamiento puede ser de tipo
aritmtico, geomtrico, etc. Existen estudios que analizan diferentes velocidades.
- Temperatura final, el proceso de bsqueda debera ser 0.Sin embargo, la
probabilidad de aceptar movimientos de empeoramiento se hace muy pequea so
necesidad de alcanzar los 0 grados.

33











3.2.4 Bsqueda tab.
La bsqueda tab (Tabu Search TS) es un procedimiento metaheurstico cuya
caracterstica distintiva en el uso de memoria adaptiva y de estrategias especiales de
resolucin de problemas. Su filosofa se basa en la explotacin de diversas estrategias
inteligentes para la resolucin de problemas, basadas en procedimientos de aprendizaje.
En la tabla 3.3 se muestra el proceso del algoritmo TS, por lo que es necesario definir sus
cuatro elementos que lo conforman.
- Consistentes en la propiedad de ser reciente, se complementan a una y otra
para logar el balance entre intensificacin y diversificacin que todo proceso de
bsqueda heurstica debe poseer.
- Frecuencia, permiten guiar la bsqueda en un entorno multi-objetivo, dado que se
determina la bondad de una direccin de bsqueda particular mediante ms de una
funcin.
- Calidad, hace referencia a la habilidad para diferenciar la bondad de las soluciones
visitadas a lo largo del proceso de bsqueda. De esta forma, la memoria puede ser
utilizada para identificacin de elementos comunes a soluciones buenas o ciertos
caminos que conducen a ellas.
- Influencia, considera el impacto de las decisiones tomadas durante la bsqueda,
no solo en lo referente a la calidad de las soluciones, sino tambin en lo referente a
la estructura de las mismas.

Algoritmo recosido simulado.
1 T= T
0
2 SactGenera_Solucin_Inicial
3 Mientras (T>= T
f
) haz
4 I nicio mientras
5 Para (cont1 to L) haz
6 I nicio para
7 ScandSeleccin_Sol_N(Sact)
8 =costo(Scand) - costo(Sact)
9 Si ((0,1) < e
-/T
) or (<0) entonces
10 SactScand
11 Fin para
12 T(T)
13 Fin mientras

3.2 Tabla del algoritmo recosido simulado.

34























Algoritmo de la bsqueda tab.
1 Generar solucin inicial x0
2 k := 1.
3 x= x0. (x es la solucin actual)
4 MI ENTRAS la condicin de finalizacin no se encuentre
5 HACER:
6 Identificar N(x). (Vecindario de x)
7 Identificar T(x,k). (Lista Tab )
8 Identificar A(s,k). (Conjunto de Aspirantes)
9 Determinar N*(x,k) = {N(x) T(x,k)} A(x,k). (Vecindario reducido)
10 Escoger la mejor x N*(x,k)
11 Guardar x si mejora la mejor solucin conocida xk := x.
12 Actualizar la lista tab
13 k := k+1.
14 FI N MI ENTRAS

3.3 Tabla del algoritmo de la bsqueda tab.

35

3.2.5 GRASP.
Es una metaheurstica que fue creada a fines de los 80 para resolver problemas de gran
importancia en optimizacin combinatoria. GRAPS dirige la mayor parte de su esfuerzo a
construir soluciones de alta calidad que posteriormente son procesadas con el fin de
encontrar soluciones aproximadas a problemas de optimizacin combinatoria. Se basan
en las ideas de soluciones iniciales diversas jueguen un papel importante en el xito de
mtodos locales de bsqueda.
3.3 Greedy Randomized Adaptive Search Procedures (GRASP).
Es un procedimiento iterativo donde cada paso consiste en una fase de construccin y una
de mejora. Es decir es un procedimiento de bsqueda avaricioso, aleatorio y adaptivo el
cual, aplicado a una amplia gama de problemas de optimizacin, garantiza una buena
solucin, aunque no necesariamente la ptima.
3.3.1 Caractersticas.
- Avaricioso, hace referencia a que, en cada paso, la decisin de que las diferencias
alternativas tienen en la funcin de objetivo a optimiza.
- Adaptativo, en cada paso se evala la bondad de incluir un elemento en la solucin
porque el inters de dicha decisin puede variar de un paso a otro dependiendo de
las decisiones previamente tomadas, las cuales se reflejan en cada momento en la
solucin parcial construida.
- Aleatorio, el proceso constructivo elige en cada paso de acuerdo con el valor del
ndice, si siempre se eligiera el candidato de mejor ndice entonces el proceso
constructivo sera determinista y siempre generara la misma solucin.
3.3.2 Ventajas.
- Fcil de programar.
- Muy rpida.
- Tiene muy pocos parmetros.
- Se maneja bien en presencia de restricciones.

36

- Genera buenas soluciones.
3.3.3 Desventajas
- No todos los problemas permiten definir un resultado que mida de forma efectiva el
impacto de las sucesivas decisiones en la calidad de la solucin finalmente
generada.
- Definir el proceso constructivo y en particular el resultado de forma "heurstica" para
cada problema.
3.3.4 Algoritmo.
En la tabla 3.4 se muestra el algoritmo GRAPS, el cual lleva a cabo dos fases:
construccin y bsqueda local. En el primer procedimiento una solucin inicial es
construida elemento por elemento.






Para seleccionar una componente que forme parte de la solucin, se establece un
conjunto de candidatos. stos son evaluados por una funcin, que en el problema de
satisfactibilidad obtiene el nmero de clusulas satisfechas al asignarle un valor de verdad
a una variable xi.
Posteriormente, GRASP utiliza una lista de restringida de candidatos (LRC) que constituye
el factor aleatorio del mtodo. En la tabla 3.5 se muestra el procedimiento de construccin,
lo cual se seleccionan aquellos elementos cuyo valor se encuentre en un rango dado. De
la LRC se elige un elemento para formar parte de la solucin.

Procedimiento GRASP
1 Para i= 1, 2, ..., maxiter
2 Solucin Construccin( )
3 Solucin BsquedaLocal(Solucin)
4 If Solucin es mejor MejorSolucin
5 MejorSolucin Solucin
6 Fin para
3.4 Tabla del algoritmo GRAPS.

37









Una vez que ha terminado la fase de construccin, en la tabla 3.6 se muestra el
procedimiento bsqueda local, el cual realiza la bsqueda sobre la vecindad de la solucin
obtenida. En este caso se ha implementado el algoritmo de N-vecindad progresiva el cual
consiste en realizar un flip (cambio) en cada xi, para i = 1, 2,..., N [1]. Entonces se evala
si el cambio realizado produce una mejor solucin, si es as, el cambio permanece, de lo
contrario se rechaza y se contina la bsqueda en la vecindad.






Cuando se ha encontrado la mejor solucin dentro de la vecindad, se procede a realizar
una nueva iteracin hasta llegar al nmero mximo de iteraciones establecido. El mejor
valor encontrado hasta este momento ser el resultado final de la heurstica.

Procedimiento Construccin ( )
1 Solucin { }
2 Para i= 1, 2, ..., N
3 C {I
+
i
, I
-
i
} candidatos potenciales
4 Calcular I
+
i
nmero de clusulas satisfechas si x
i
=VERDADERO
5 Calcular I
-
i
nmero de clusulas satisfechas si x
i
=FALSO
6 Vmin =min {I
+
i
, I
-
i
}
7 Vmax =max {I
+
i
, I
-
i
}
8 LRC { c e C si c s Vmin + o(Vmax Vmin) o e (0, 1]
9 x =Seleccionar un elemento al azar de LRC
10 Solucin Solucin x
11 Fin para


Procedimiento BsquedaLocal (Solucin)
1 Para i= 1, 2, ..., N
2 SolucinNueva flip (Solucin, x
i
)
3 Si SolucinNueva es mejor que Solucin
4 Solucin SolucinNueva
5 Si no
6 unflip (Solucin, x
i
)
7 Fin para

3.5 Tabla procedimiento de construccin.
3.6 Tabla procedimiento bsqueda local.

38

3.4 Heurstica.
Tambin conocido principio heurstico (PH) o criterio heurstico, son aquellos aspectos
vinculados con la utilizacin de conocimiento para realizar una tarea. Es decir consiste en
una regla de razonamiento de utilidad prctica pero solo aproximada para la solucin de
problemas matemticos, su objetivo es intentar crear un puente comunicacional es el que
tanto la persona como el sistema se entiendan y trabajen juntos para alcanzar un objetivo.
3.4.1 Ventajas.
- Es econmica en comparacin con otros mtodos de evaluacin.
- Es intuitiva y es fcil motivar a los evaluadores potenciales a que la utilicen.
- Los evaluadores no necesitan ser expertos en usabilidad.
- Pueden ser utilizada en etapas tempranas del proceso de desarrollo de sistemas,
siempre que se cuente con un prototipo a evaluar.
- Tiempo de procesamiento menor que los test de laboratorio.
3.4.2 Desventajas.
- Es recomendable que la heurstica sea realizada por ms de un evaluador porque
una sola persona no detectara la totalidad de los problemas de usabilidad del
sistema que se est evaluando.
- Los evaluadores deben conocer los principios de la usabilidad.
- La heurstica no identifica tantos atributos relacionados con la usabilidad como otras
metodologas.
- Reportes de falsas alarmas a problemas que no detectados en la aplicacin pero
que no corresponden en realidad a problemas usabilidad.
3.4.2 Clasificacin
Las heursticas se clasifican de acuerdo a su tiempo de resolucin, cuando necesitan un
tiempo polinomial para su resolucin se denomina de clase P y cuando se necesita un
tiempo exponencial se denomina NP estos a su vez se subdividen en NP duros y NP no
duros.

39

3.4.3 Problemas P, NP y NP-Completo.
Cuando nos enfrentamos a un problema concreto, habr una serie de algoritmos
aplicables. Se suele decir que el orden de complejidad de un problema es el mejor
algoritmo que se conozca para resolverlo. As se clasifican los problemas, y los estudios
sobre algoritmos que se conozcan para resolverlo. As se clasifican los problemas, y los
estudios sobre algoritmos que se aplican a la realidad. Estos estudios han llegado a la
conclusin de que existen problemas muy difciles, problemas que desafan la utilizacin
de los ordenadores para resolverlos.
La clasificacin de los tipos de problemas es:
- Clase P. Los algoritmos de complejidad polinmica se dice que son tratables en el
sentido que suelen ser abordables en la prctica. Los problemas que conocen este
tipo de algoritmo con esta complejidad se dice que forman la clase P y son
aquellos problemas que para la mejor solucin es la complejidad superior a la
polinmica, ya que estos problemas son intratables.
- Clase NP. Algunos de estos problemas intratables pueden caracterizarse por el
curioso hecho de que pueden aplicarse un algoritmo polinmico para comprobar si
una posible solucin es vlida o no. Esta caracterstica lleva a un mtodo de
resolucin no determinista consiste en aplicar heursticos para obtener soluciones
hipotticas que se van aceptando a ritmo polinmico. Los problemas de esta clase
se denominan NP (la N de no determinsticos y la P de polinmicos).
- Clase NP-Completo. Se conoce una amplia variedad de problemas de tipo NP, de
los cuales destacan algunos de ellos de extrema complejidad. Grficamente
podemos decir que algunos problemas se hallan en la frontera extrema de la clase
NP. Estos problemas se caracterizan por ser todos iguales en el sentido de que si
se descubriera una solucin P para alguno de ellos, esta solucin sera fcilmente
aplicable a todos ellos.



40

3.5 SAT (Satisfactibilidad).
El problema de Satisfactibilidad (SAT), es un problema de fundamental de la lgica
computacional que tiene relevancia desde el contexto terico y prctico, que consiste en
encontrar alguna asignacin de valores de verdad que logren satisfacer una coleccin de
clusulas en Forma Normal Conjuntiva (FNC).
El problema se define formalmente de la siguiente manera:
Dada una coleccin, de m clausulas, {C1,.., Cm}, en forma normal conjuntiva (FNC), las
clausulas se encuentran formadas por la disyuncin {v1 V V vn} de hasta n variables
lgicas seleccionadas de un conjunto V, encontrar alguna asignacin de valores de
verdad, para dichas variables, tal que C sea verdadera.
La satisfactibilidad (SAT) es de gran importancia en diferentes campos de investigacin ya
que muchos problemas pueden representarse como un problema SAT. Algunas de las
reas de estudio en donde se aplica son: Investigacin de operaciones, problemas de
planificacin de tareas, sntesis y prueba de circuitos, y el estudio de la complejidad
computacional, por mencionar algunas.
Existen otros dos tipos de problemas de satisfactibilidad los cuales son:
- 2-SAT
- 3-SAT
3.5.1 2-SAT.
2-Satisfactibilidad (abreviado como 2-SAT) es el problema que determina un conjunto de
variables bivalentes (booleanas o binario) con restricciones en los pares de variables, que
pueden ser los valores que satisfacen todas las restricciones asignadas. Es un caso
especial del problema satisfactibilidad boolean general, lo que puede implicar restricciones
en ms de dos variables y de los problemas de satisfaccin de restricciones, que pueden
permitir ms de dos opciones para el valor de cada variable. Pero en contraste con esos
problemas, que son NP-completo, que tiene una solucin conocida tiempo polinmico.

41

Instancias del problema 2-satisfactibilidad se expresan normalmente como frmulas 2-
CNF o Krom.
Un problema 2-SAT puede describirse utilizando una expresin booleana con una forma
especial restringida: una conjuncin de disyunciones (alcaldes), donde cada disyuncin
(operacin) tiene dos argumentos que pueden ser tanto variables o las negaciones de
variables. Las variables o sus negaciones que aparecen en esta frmula son conocidas
como trminos y las disyunciones de pares de trminos se conocen como clusulas. El
objetivo del problema 2-SAT es encontrar una asignacin de verdad a estas variables que
hacen que una frmula de este tipo sea verdad.
3.5.2 3-SAT.
3-Satisfactibilidad (abreviado como 3-SAT) es uno de los 21 problemas NP-completos de
Karp. Un ejemplo de un problema en el que se ha utilizado este mtodo es el problema
camarilla: dada una frmula CNF (Forma Normal Conjuntiva) que consiste en clusulas c,
el grfico correspondiente se compone de un vrtice para cada literal, y un borde entre
cada dos no contradictorias literales de diferentes clusulas, cf, imagen. La grfica tiene
un C- clique, slo si la frmula es satisfactible.
3.6 3-SAT.
3-SAT es un caso especial de satisfactibilidad, o simplemente (SAT), en la que cada
clusula contiene exactamente 3 literales. Est catalogado como un problema NP-
completo en la referencia estndar e informtica, una gua para la teora de NP-
completitud de Michael R. Garey y David S. Johnson. Se demostr ser NP-completo por
Thomas J. Schaefer como un caso especial del teorema de la dicotoma de Schaefer, que
afirma que cualquier problema generalizar satisfactibilidad booleana de una manera
determinada es o bien en la clase P o es NP -Completo.
Schaefer da una construccin que permite una reduccin de tiempo polinmico fcil a uno
de cada 3 - SAT.Que " (X o Y o Z) " sea una clusula en una frmula 3 CNF. Agrega seis
variables booleanas frescas a, b, c, d, e, y f, que se utilizarn para simular la clusula.
Entonces la frmula R ( x, a, d ) R (y , b, d ) R (a, b, e ) R ( c , d, f ) R ( z , c,

42

FALSO) es satisfactible por un cierto ajuste de las variables frescas si y slo si al menos
uno de X, Y, o Z es VERDADERO , ver figura 3.1 (izquierda) . Por lo tanto cualquier
instancia 3 -SAT con m clusulas y n variables se puede convertir en una instancia
satisfactible uno de cada tres 3 -SAT con clusulas 5m n 6 m variables. Otra reduccin
implica slo cuatro variables de frescas y tres clusulas. : R ( x, a, b) R (b, y, c) R (c,
d, z), ver figura 3.1 (a la derecha).











En la figura 3.4 se muestra del lado izquierdo: la reduccin de Schaefer de una clusula 3-
SAT X V y V Z. El resultado de R es VERDADERO (1) si exactamente uno de sus
argumentos es VERDADERO, y FALSO (0) en caso contrario. Se examinan todas las 8
combinaciones de valores para X, Y, Z, uno por lnea. Las variables frescas a,..., f se
pueden elegir para satisfacer todas las clusulas (exactamente un argumento verde para
cada R) en todas las lneas excepto la primera, donde X V y V Z es FALSO y en la
derecha su reduccin es ms simple pero con las mismas propiedades.



Figura 3.1. Reduccin de Schaefer.


1

4. PROPUESTA DE SOLUCIN.

5. PRUEBAS EXPERIMENTALES.

6. CONCLUSIN.

7. REFERENCIAS BIBLIOGRFICAS.
http://neo.lcc.uma.es/tesis/PhD-Chicano07.pdf
http://www.fing.edu.uy/inco/grupos/invop/mor/material/clase1y2.pdf
http://users.dcc.uchile.cl/~mmarin/revista-sccc/sccc-
web/Vol6/InlinigDeFunciones.pdf
http://www.fing.edu.uy/inco/pedeciba/bibliote/reptec/TR0302.pdf
http://www.iol.etsii.upm.es/arch/metaheuristicas.pdf
http://e-spacio.uned.es/fez/eserv.php?pid=tesisuned:IngInd-
Mgomez&dsID=TESIS_MGG1_Capitulo3.pdf
http://www.gi.ulpgc.es/tebadm/almacen/seminarios/MH%20Las%20Palmas%202.p
df
http://sedici.unlp.edu.ar/bitstream/handle/10915/27920/Documento_completo__.pd
f?sequence=1
file:///C:/Users/MyG/Downloads/tesisCristian18092011%20(4).pdf
http://www.cs.us.es/cursos/liis-2013/tema-03-print.pdf
http://elvex.ugr.es/decsai/iaio/slides/HX%20Metaheuristics.pdf

2

http://sci2s.ugr.es/publications/ficheros/OCH%20Modelos%20y%20Nuevos%20En
foques%20(Chapter).pdf
http://bibing.us.es/proyectos/abreproy/3888/fichero/cap3.pdf
http://catarina.udlap.mx/u_dl_a/tales/documentos/lii/martinez_g_ag/capitulo3.pdf
http://www.inf.utfsm.cl/~mcriff/IA-avanzada/Grasp.pdf
http://www.uv.es/asepuma/XII/comunica/gomez_casado_nunez_pacheco.pdf
http://pisis.fime.uanl.mx/ftp/pubs/thesis/msc/2006-fernando_perez/tesis-fer-
2006.pdf

Вам также может понравиться