Sei sulla pagina 1di 6

Heurística

Curso Inteligencia Artificial


I.S.C. Grissel Anahi Cruz Arriaga
¿Qué es Heurística?
El término heurística se define como la capacidad que tiene el hombre de crear o
inventar algo, con la finalidad de proporcionar estrategias que ayuden a la resolución de
un problema. Los seres humanos a través de su creatividad, pensamiento divergente y
en algunos casos de experiencias propias, son capaces de encontrar la solución más
viable para resolver algún conflicto.

Su importancia radica en que permite a la persona manifestar una conducta proactiva y


beneficiosa en la búsqueda de soluciones, caso contrario sería que el individuo se
quedará con los brazos cruzados sin hacer nada por remediar el conflicto.

Como disciplina científica la heurística puede ser aplicada en diversas ciencias con el
objetivo de crear medios, estrategias y principios como ayuda para alcanzar la solución
más eficaz y eficiente al problema que estudia el individuo. Como método científico la
heurística está compuesta por tres procedimientos llamados “procedimientos
heurísticos”, los cuales consisten en formas de trabajo y de pensamiento que favorecen
la realización consciente de rigurosas actividades mentales. Estos procedimientos se
dividen en principios, reglas y estrategias.

Los principios heurísticos, tienen que ver con las sugerencias que se facilitan para
encontrar de manera directa, la idea de solución. Las reglas heurísticas, intervienen
como impulsos comunes dentro del proceso de búsqueda, ayudando a encontrar los
medios para resolver el problema. Por su parte, las estrategias heurísticas, son utilizadas
como recurso organizativo dentro del proceso de resolución, con la finalidad de
determinar el camino que lleve a la solución del problema abordado. En este caso existen
dos estrategias a aplicar:

 El trabajo hacia adelante: esta estrategia parte de lo que se ha transmitido para


realizar las reflexiones que lleven a la solución del problema.
 El trabajo hacia atrás: esta estrategia analiza primero lo que se busca, para luego
basarse en los conocimientos obtenidos, estudiando los posibles resultados a fin
de deducir lo buscado.

I.S.C. Grissel Anahi Cruz Arriaga – Curso Inteligencia Artificial Página 2


Cabe destacar que la palabra heurística tuvo éxito, gracias al matemático George Polya,
quien por medio de diferentes propuestas heurísticas, las cuales plasmó en su libro “cómo
resolverlo”, fue de gran ayuda para los jóvenes al momento de resolver sus tareas de
matemáticas.

Heurística (informática)
En ciencias de la 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 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.

Principios de la usabilidad
Son similares a los principios del diseño, pero cuando los objetivos de la usabilidad se
ponen en práctica para evaluar productos o prototipos se les denomina principios de
usabilidad o heurísticos.

Los 10 principios desarrollados por Jakob Nielsen (2001) constituyen la base de la


evaluación heurística:

Visibilidad del estado del sistema

I.S.C. Grissel Anahi Cruz Arriaga – Curso Inteligencia Artificial Página 3


El sistema siempre debería mantener informados a los usuarios de lo que está ocurriendo,
a través de retroalimentación apropiada dentro de un tiempo razonable. En los
videojuegos esto sucede gracias a la forma en que los datos son presentados por medio
de alertas hacia el jugador, como lo es la barra de HUD, dándole al jugador información
acerca de lo que está sucediendo dentro de este.

Relación entre el sistema y el mundo real

El sistema debería hablar el lenguaje de los usuarios mediante palabras, frases y


conceptos que sean familiares al usuario, más que con términos relacionados con el
sistema. Seguir las convenciones del mundo real, haciendo que la información aparezca
en un orden natural y lógico.En este caso es muchísimo más fácil relacionarlo conforme
es la idea de abstracción del mundo real para llevarlo al virtual como puede ser eventos
históricos, costumbres, vestimenta, etc.

De este modo muchos juegos son inspirados por la vida cotidiana o cierto contexto para
llevarse dentro de este.

Control y libertad del usuario

Hay ocasiones en que los usuarios elegirán las funciones del sistema por error y
necesitarán una “salida de emergencia” claramente marcada para dejar el estado no
deseado al que accedieron, sin tener que pasar por una serie de pasos. Se deben apoyar
las funciones de deshacer y rehacer. En este caso los videojuegos tienen un sistema de
guardado el cual ayuda al jugador a rehacer las decisiones tomadas de manera en que
pueda repetir sus decisiones para irse por una más sencilla y menos complicada, en
algunos casos los puntos de guardado tienen un impacto más serio.

Consistencia y estándares

Los usuarios no deberían cuestionarse si acciones, situaciones o palabras diferentes


significan en realidad la misma cosa; siga las convenciones establecidas.Todo en los
juegos debe ser claro y no debe confundir a los jugadores, de cualquier manera los iconos
y las acciones tomadas deben ser claras y precisas.

Prevención de errores

Mucho mejor que un buen diseño de mensajes de error es realizar un diseño cuidadoso
que prevenga la ocurrencia de problemas. En este caso los bugs o el mal entendimiento
de las interfaces es un error muy común por lo que es importante que se hagan las
pruebas necesarias para evitar esto.

Reconocimiento antes que recuerdo

Se deben hacer visibles los objetos, acciones y opciones, El usuario no tendría que
recordar la información que se le da en una parte del proceso, para seguir adelante. El

I.S.C. Grissel Anahi Cruz Arriaga – Curso Inteligencia Artificial Página 4


jugador en este caso deberá de tener todo el concepto fluidamente sin importarle que
signifiquen los elementos tan solo jugando sin importar qué pasa.

Flexibilidad y eficiencia de uso

La presencia de aceleradores, que no son vistos por los usuarios novatos, puede ofrecer
una interacción más rápida a los usuarios expertos que la que el sistema puede proveer a
los usuarios de todo tipo. Se debe permitir que los usuarios adapten el sistema para usos
frecuentes. En este caso los menús de pausa tienen que darle al jugador las herramientas
necesarias para personalizar el juego a su gusto.

Estética y diseño minimalista

Los diálogos no deben contener información que es irrelevante o poco usada. Cada
unidad extra de información en un diálogo, compite con las unidades de información
relevante y disminuye su visibilidad relativa. Entre menos diálogo o elementos en una
pantalla haya mejor, ya que al jugador no le interesa demasiado lo que pasa, tan solo le
interesa jugar y avanzar.

Ayudar a los usuarios a reconocer

Diagnosticar y recuperarse de errores: los mensajes de error se deben entregar en un


lenguaje claro y simple, indicando en forma precisa el problema y sugerir una solución
constructiva al problema. En este caso al jugador se le debe de avisar si lo que hace está
erróneamente, si una acción es tomada “mala” se deberá de cambiar la actitud de esta.

Ayuda y documentación

Incluso en los casos en que el sistema pueda ser usado sin documentación, podría ser
necesario ofrecer ayuda y documentación. Dicha información debería ser fácil de buscar,
estar enfocada en las tareas del usuario, con una lista concreta de pasos a desarrollar y
no ser demasiado extensa. En el último punto es necesario incluir una ventana de ayuda o
de controles que le digan al jugador como jugar, no todas las personas entienden los
conceptos a la primera.

Ejemplos
Simplificación de problemas

Una manera de conseguir una solución al problema principal es proponer un problema


más sencillo cuya solución es igual al problema principal. Dicha heurística puede no ser
capaz de encontrar todas las soluciones del problema principal, pero puede encontrar una
más rápido porque el problema simplificado es mucho más fácil de resolver.

Búsqueda

Un ejemplo de un algoritmo heurístico puede encontrarse en los motores de búsqueda.


Inicialmente, el heurístico intenta todas las posibilidades en cada paso, como el algoritmo

I.S.C. Grissel Anahi Cruz Arriaga – Curso Inteligencia Artificial Página 5


de búsqueda más complejo. Pero puede parar de buscar si la posibilidad actual es peor
que la mejor solución ya encontrada. En dichos problemas de búsqueda, la heurística se
puede utilizar para que los peores caminos sean eliminados cuanto antes.

Virus scanning

Muchos escáneres de virus utilizan formas heurísticas con el fin de detectar virus u otras
formas de malware. El escáner heurístico busca familias de virus para relacionarlos con
virus ya existentes, con un tipo de reglas diferentes dependiendo del virus. Si se observa
que un archivo o un ejecutable tiene partes de código que lo relacionan con el virus y está
realizando ese tipo de actividad, entonces el escáner detecta que el archivo está
infectado. La parte más avanzada de estos motores heurísticos es que puede trabajar
contra virus altamente polimerizados, contra los que un escáner simple no puede hacer
nada al no estar en su base de datos.

I.S.C. Grissel Anahi Cruz Arriaga – Curso Inteligencia Artificial Página 6

Potrebbero piacerti anche