radarweb: navegación predictiva en internet en base … · los mecanismos más usuales para...

10
RadarWeb: Navegación Predictiva en Internet en base a las preferencias de usuario Roberto F. Arroyo, Moisés Fernández, Miguel Gea GEDES – Departamento de Lenguajes y Sistemas Informáticos  E.T.S. de Ingeniería Informática y T., Periodista Daniel Sucedo Aranda s/n Universidad de Granada 18071 Granada [email protected][email protected][email protected] Resumen Internet se ha convertido en un medio de publicación, comercio y difusión muy importante aunque con la dificultad que supone encontrar  la información que se desea. En este artículo se analizan las técnicas más usuales para la búsqueda y presentación de la información, estudiando sus ventajas e inconvenientes como tareas de usuario. Finalmente se propone una nueva técnica de navegación basada en las preferencias del usuario que permite orientar al usuario en la elección del siguiente enlace. Esta propuesta se desarrolla como una extensión que se integra en la parte del cliente de navegación y que se usa como radar sensible al contexto. 1. Introducción  Internet supone una gran fuente de información, accesible de forma sencilla a través de hiperenlaces. Sin embargo, un problema que nos encontramos es el poder buscar entre millones de páginas webs las cosas que realmente nos interesan. En este sentido, se debe cuidar la ubicación de los elementos, la navegación, su rotulación, la facilidad de búsqueda, etc. en lo que se denomina como arquitectura de la información [27]. Estas técnicas basadas en aspectos usabilidad permiten detectar problemas en el diseño y concepción de un sitio Web a través de pruebas heurísticas y evaluación con usuarios [16]. Sin embargo, este problema es inherente a la propia estructura Web, ya que para seleccionar el sitio adecuado, el usuario debe escoger entre miles de páginas con características similares. Los mecanismos más usuales para orientarse en Internet y obtener la información deseada son los buscadores (como el caso de Google, Yahoo, etc.), las clasificaciones por categorías [10], los sistemas basados en agentes [4,15], y más recientemente, mecanismos de sindicación com RSS y herramientas para la gestión social como las nubes de etiquetas [20]. Estos métodos se engloban dentro de la minería de datos, y se basan en la creación de algoritmos eficientes para el filtrado de la información, agrupamiento (clustering) y  representación (browsing) [11].  En las siguientes secciones analizaremos la problemática de las técnicas de búsqueda y visualización como tareas de usuario. A continuación, propondremos una alternativa de navegación denominada navegación predictiva que permite conocer el lugar y la distancia a los resultados esperados en la página actual según las preferencias actuales del usuario. A partir de ese modelo de representación de los datos, desarrollaremos un algoritmo de exploración predictiva que incluiremos como extensión en el cliente de navegación y que actúa como un radar que facilita la elección del siguiente enlace en base a las preferencias del usuario. Concluiremos con diferentes campos de aplicación y líneas de trabajo futuro. 2. Búsqueda Existen estudios donde estiman que más del 85% 

Upload: vophuc

Post on 24-Sep-2018

225 views

Category:

Documents


0 download

TRANSCRIPT

RadarWeb: Navegación Predictiva en Internet en base a las preferencias de usuario

Roberto F. Arroyo, Moisés Fernández, Miguel GeaGEDES – Departamento de Lenguajes y Sistemas Informáticos

 E.T.S. de Ingeniería Informática y T., Periodista Daniel Sucedo Aranda s/nUniversidad de Granada 

18071 [email protected][email protected][email protected]

Resumen

Internet   se   ha   convertido   en   un   medio   de publicación, comercio y difusión muy importante aunque con la dificultad que supone encontrar  la información   que   se   desea.   En   este   artículo   se analizan las técnicas más usuales para la búsqueda y presentación de la información, estudiando sus ventajas e inconvenientes como tareas de usuario. Finalmente   se   propone   una   nueva   técnica   de navegación basada en las preferencias del usuario que permite orientar al usuario en la elección del siguiente   enlace.   Esta   propuesta   se   desarrolla como una extensión que se integra en la parte del cliente  de  navegación y  que  se  usa  como  radar sensible al contexto.

1. Introducción

  Internet supone una gran fuente de información, accesible   de   forma   sencilla   a   través   de hiperenlaces. Sin embargo, un problema que nos encontramos es el poder buscar entre millones de páginas   webs   las   cosas   que   realmente   nos interesan.   En   este   sentido,   se   debe   cuidar   la ubicación   de   los   elementos,   la   navegación,   su rotulación, la facilidad de búsqueda, etc. en lo que se denomina como arquitectura de la información [27]. Estas técnicas basadas en aspectos usabilidad permiten   detectar   problemas   en   el   diseño   y concepción de un sitio Web a  través de pruebas heurísticas y evaluación con usuarios [16].

Sin embargo, este problema es inherente a la propia estructura Web, ya que para seleccionar el 

sitio adecuado, el usuario debe escoger entre miles de páginas con características similares.

Los mecanismos más usuales para orientarse en Internet y obtener la información deseada son los buscadores (como el caso de Google, Yahoo, etc.),   las   clasificaciones  por   categorías   [10],   los sistemas   basados   en   agentes   [4,15],   y   más recientemente,   mecanismos   de   sindicación   com RSS y herramientas para la gestión social como las   nubes   de   etiquetas   [20].   Estos   métodos   se engloban dentro de la minería de datos, y se basan en   la   creación   de   algoritmos   eficientes   para   el filtrado   de   la   información,   agrupamiento (clustering) y  representación (browsing) [11]. 

 En   las   siguientes   secciones   analizaremos   la 

problemática   de   las   técnicas   de   búsqueda   y visualización   como   tareas   de   usuario.   A continuación,   propondremos   una   alternativa   de navegación denominada navegación predictiva que permite   conocer   el   lugar   y   la   distancia   a   los resultados esperados en la página actual según las preferencias actuales del usuario. A partir de ese modelo   de   representación   de   los   datos, desarrollaremos   un   algoritmo   de   exploración predictiva que incluiremos como extensión en el cliente de navegación y que actúa como un radar que   facilita   la   elección   del   siguiente   enlace   en base a las preferencias del usuario. Concluiremos con diferentes campos de aplicación y  líneas de trabajo futuro.

2. Búsqueda

Existen estudios donde estiman que más del 85% 

de   los  usuarios  de   Internet  usan   los  buscadores para algún propósito, e incluso se pueden realizar consultas   por   los   términos   de   búsqueda   más usados [14]. La tarea de búsqueda es muy sencilla e   intuitiva   para   el   usuario   y   se   basa   en   dos procesos   bien   diferenciados:   especificación   del término a buscar y exploración de los resultados.

La descripción del término a buscar se realiza generalmente introduciendo una serie de palabras clave en una entrada de texto. La precisión de la búsqueda   está   condicionada   por   una   buena selección   de   los   términos   de   búsqueda   y generalmente   se   permite   la   introducción   de criterios en la búsqueda (búsqueda avanzada) para delimitar el dominio de búsqueda con expresiones complejas. Por ejemplo, se puede indicar que sólo busque en un determinado idioma, determinar el grado  de  coincidencia  de   las  palabras,  dominio, etc.   En   la   Figura   1   se   muestra   la   pantalla   de búsqueda avanzada de Google [8, 13] 

Figura 1. Mecanismos de búsqueda avanzada

Google   proporciona   un   API   [12,   19]   para personalizar búsquedas en webs. Como resultado, se obtiene una lista de páginas en las que se utiliza como criterio de ordenación el grado de afinidad con la consulta realizada y su relevancia social. La técnica PageRank [7] evalua la relevancia de los resultados   con   los   términos   encontrados.   Este método se basa en propagar la importancia de una página   a   las   que  enlaza.  Al   diferencia   de  otros métodos, además de contar el número de enlaces que   posee   la   página,   también   considera   la importancia   de   quién   la   enlaza.   La   relevancia social de este modo viene dada por el prestigio de quien   la   enlaza  y  por   los  votos   que   le   dan   los usuarios.

Este modo de búsqueda, si bien tiene grandes ventajas como pudiera ser una mayor precisión a la hora de discernir el espacio de resultados, o la 

rapidez tanto de la obtención de los mismos como del acceso a las páginas objetivo, también posee los siguientes problemas desde el punto de vista del usuario:

1)  Pérdida del contexto actual de navegación. Cuando un usuario está visitando una determinada web y hace uso de este   tipo de buscadores,   los resultados a los que se tiene acceso pueden formar parte   de   otro   contexto   totalmente   distinto.   Para evitarlo,   hay   que   indicar   explícitamente   en   la interfaz que la búsqueda se debe realizar sobre el dominio   en   el   que   se   encuentra   el   usuario.   A menudo   esta   opción   no   está   habilitada   en   la página o no la percibe el usuario, lo que puede dar lugar a confusión. En el caso de la UGR, se posee una opción excluyente para restringir la búsqueda (por defecto está activada, como se puede ver en la Figura 2a). Si estamos usando Google, se puede restringir el  dominio de búsqueda incluyendo en las palabras clave de búsqueda la directiva :inurl, que   tampoco   es   intuitivo   para   un   usuario   no experimentado   con   este   tipo   de   sistemas.   Otra alternativa   sería   usar   siempre   el   mecanismo   de búsqueda   avanzada   delimitando   el   dominio   de búsqueda,   lo   que   tampoco   resulta   útil   para   un manejo cotidiano.

Figura 2. Búsqueda usando Google dentro de la UGR (con motor de Google), y la misma búsqueda en Google.

2)  Pérdida   de   la   orientación.   Si   bien   con   la búsqueda   restringida   a  un   determinado  dominio podemos solventar el  caso anterior, a la hora de devolver   la   página,  no   sabemos  a  qué   distancia (recorrido)  se  encuentra  desde  la  posición en la que   nos   encontramos   en   la   red   hipermedia. Obtenemos   el   nodo   final   resultantes   pero perdemos la información relativa del camino que debemos   seguir   para   alcanzarlo.   En   muchas ocasiones,   principalmente   cuando   se   está navegando   por   portales   de   contenido   como   los relativos a instituciones, lo importante no es tanto 

el encontrar un determinado nodo de información puntual, sino el conocer cómo acceder hasta dicho nodo, ya que te permite conocer, por ejemplo, de qué   organismo   universitario   depende   la tramitación de becas  Erasmus.  Esta   información no se puede proporcionar mediante los métodos de búsqueda expuesto, o bien es  difícil de expresar.

3. Visualización de la información

En  la   exploración   de   la   información  nos encontramos  a   menudo   con  sobrecarga   de información y ansiedad [26]. En este sentido, los mecanismos de visualización están pensados para ayudar al usuario a comprender la estructura de un sitio Web y sus relaciones visualmente [14].

La   dificultad   en   la   exploración   aumenta conforme crece el volumen y la diversidad de la información.   Existen   varias   propuestas   para   la representación visual de la información   según el tipo de dato que se utilice [22]. Destacamos las representaciones   lineares   1­D   (Document   Lens, SeeSoft,   Information   Mural),   mapas   2­D   (GIS, Arcinfo,   ThemeMap,   LyberWorld),   mundo   3­D (Escritorios,   WebBook,   VRML),   temporal (Perspective   Wall,   ESDA,   LifeLines),   multi­dimensionales   (Coordenadas   paralelas,   Starfield, Visage   Influence   Explorer,   TableLens),   árbol (Outliners,  Superbook,  FileManager,  Hyperbolic, TreeBrowser,   Treemaps)   o   redes   (Netmap, SemNet, SeeNet, Butterfly). En [25] encontramos una gran variedad de mecanismos de visualización adaptados a diferentes propósitos. 

Independientemente   del   método   de visualización   empleado   se   necesita   un   conjunto básico   de   manipulación   de   dicha   visualización. Las   operaciones   básicas   son   una   vista   general (overview)   del   conjunto   completo,   zoom  en   los elementos de interés, filtrado, petición de detalles bajo   demanda,   ver   las   relaciones   entre   los elementos, mantener un histórico de las acciones, y   extraer   subcolecciones   y   parámetros   de   la búsqueda usada.

  Dada   la   extensión   de   la   estructura 

hipermedia,   la   representación  en  grafos   guiados por   nodos   es   sumamente   compleja   (por   el volumen que se debe visualizar). Aún cuando se maneja de forma local y parcial, muchas páginas contienen decenas de enlaces  a  otras  páginas,  y representar una profundidad sencilla como tres o cuatro   niveles   ya   genera   un   número   muy considerable de nodos. 

Otra forma de mostrar y filtrar la información es   atendiendo   al   concepto   que   representa.   Un ejemplo de esto son las nubes de etiquetas, figura 3,   que   emplean   variaciones   en   la   tipografía (tamaño   y   color)   para   enfatizar   dicho   elemento (denotando su relevancia), mientras se muestra la lista de términos en orden alfabético.  

Figura 3. Nube de etiquetado de IBM [17]

Otros   mecanismos   de   representación   de conceptos   son   los   grafos   circulares   [3]   o   de asociaciones   simples   de   conceptos   [11],   aunque todos ellos están basados en representar una serie de   palabras   claves   indicando   visualmente   su importancia   y   el   grado   de   afinidad   con   otros conceptos.

Se   pueden   combinar   varias   representaciones para visualizar el contenido de diferentes modos siguiendo   una   representación   estructural.   Un ejemplo   de   esta   fusión   es   TouchGraph   [23]. TouchGraph proporciona una manera sencilla de visualizar  redes  de  información  interrelacionada. Las redes se representan como grafos interactivos, que permiten una variedad  de   transformaciones. Un ejemplo de ello es la Figura 4 que representa el mapa  conceptual  de   la  Universidad  de   Granada con los enlaces a otras Universidades. 

Figura 4. Representación de la Universidad de Granada usando TouchGraph

Si bien este tipo de representaciones consigue representar   una   gran   cantidad   de   información estructural   o   conceptual,   y   establecer   relaciones entre   las   mismas,   presenta   una   serie   de inconvenientes  de navegación desde el  punto de vista de la tareas a realizar por el usuario:1)   Estructura   frente   a   Contenido.    La representación se centra casi exclusivamente en la organización estructural de la información (nodos y   enlaces)   mostrando   el   grafo   de   relaciones,   y prestando   poca   atención   al   contenido.   De   este modo,   el   foco   de   atención   del   usuario   (la organización)   es   diferente   a   lo   que   realmente busca   (el   contenido).   Se   podría   minimizar   este efecto usando varios  paneles,  en el  cual  uno de ellos   muestra   la   estructura   visual.   Este   tipo   de representación   induce   un   comportamiento   de navegación orientado por palabras clave en lugar de por contenido de la página. El usuario tiende a navegar entre los nodos atendiendo únicamente a las   palabras   clave   que   quedan   resaltadas   por   el mecanismo de representación visual,  dejando de revisar el contenido explícito de dicha página.

2) Estructura frente a Preferencias (objetivos). La estructura no está adaptada a las preferencias del  usuario.  Las   representaciones  persiguen  una estructuración   y   valoración   lo   más   objetiva posible  del  dominio  del  búsqueda  en base  a  un conjunto   de   palabras   más   o   menos   relevantes (clustering). Sin embargo, esas palabras puede que directamente  no sean  lo  que  realmente  busca el usuario (no coincide con sus preferencias), por lo que se obliga a redefinir sus objetivos en base al conjunto actual de palabras y relaciones.

Por ejemplo, usando TouchGraph para buscar «estudiantes de  la Universidad de Granada» nos muestra   una   visualización   que   aparece   en   la Figura 4, en la que se muestran enlaces propios de centros   y   sedes   de   la   universidad,   pero   se muestran información no relevante para el usuario (enlaces   a   otras   universidades)   e   iconos duplicados que no dan información suficiente para distinguir uno de otro.

Como   conclusión,   las   técnicas   de visualización y  búsqueda  son  dos  métodos  muy interesantes  desde  el  punto de  vista  del  usuario para   ayudar   a   encontrar   la   información   en   un espacio de búsqueda muy complejo, si bien cada uno de ellos tiene inconvenientes que dificultan el uso por parte del usuario. En la siguiente sección presentaremos una propuesta sobre un sistema de ayuda   a   la   navegación   que   pretende   aunar   las características   de   estos   métodos   usando   un mecanismo más intuitivo y menos intrusivo para el usuario, basado en sus preferencias.

4. Exploración predictiva

Las páginas web se encuentran enlazadas entre sí, formando un grafo hipermedia. Cuando un usuario visita una de ellas, es muy probable que visite un nodo enlazado desde dicha página.  Usando esta premisa, se pueden evaluar los gustos e intereses del   usuario   para   predecir   las   páginas   más relevantes desde la ubicación actual en la que se encuentra   [1].   Nuestro   interés   es   mejorar   la interfaz   para   adecuar   la   visualización,   cuando explora  grandes  volúmenes  de   información,     en base   a   las   preferencias   del   usuario.   Para   ello, utilizaremos   la  metáfora   de   radar  como mecanismo de orientación dentro de un espacio de información   multidimensional.   Vamos   a desarrollar una ayuda a la navegación partiendo de las siguientes premisas:

1) El usuario conoce a priori sus preferencias. Estas preferencias o gustos establecen el conjunto de   páginas   objetivo   potenciales   en   las   que   está interesado el usuario. El usuario es responsable de definir   en   qué   está   interesado   al   inicio   de   su navegación,  de   forma que  el   sistema ya  conoce 

desde  el  principio   las  distintas   temáticas   en   las que el usuario solicita información. Pueden existir distintos puntos de interés en un momento dado, ya   sean   estos   disjuntos   o   no.   Durante   la navegación, el usuario puede añadir o eliminar los distintos   elementos   en   los   que   se   encuentra interesado,   regenerando   un   nuevo   panorama   de interés desde el nodo en el que se encuentra.

2) La navegación es dirigida, el usuario realiza una exploración sobre un sitio en profundidad, y está interesado en encontrar tanto la información como el mecanismo para  llegar a   la misma. No nos basta con ser capaces de acceder al contenido buscado. El objetivo es guiar al usuario a través de la   web con una búsqueda dirigida.  El sistema de navegación   pretende   servir   de   guía   en   una navegación   tradicional,   y   no   convertirse   en   un conjunto de «enlaces rápidos» para saltar a sitios concretos.

Estas   dos   premisas   no   suponen   ninguna restricción   fuerte,   sino   que   representan   una navegación   habitual   del   usuario.   De   hecho, cuando una página es de interés, se almacena en el bookmark, y generalmente se hace una indagación exploratoria   sobre   un   sitio   en   internet.   A continuación   veremos   mediante   dos   técnicas diferentes   cómo   la   navegación   predictiva   puede ser   útil   para   encontrar   la   información   que   es relevante para el usuario.

4.1. Búsqueda predictiva

Una   búsqueda   mediante   buscador   (por ejemplo,   Google)  proporciona   una   serie   de resultados   ordenados   por   orden   de   relevancia objetiva, en formato de lista. Se puede restringir el espacio de búsqueda a un dominio determinado, para   acotar   la   localización   de   los   resultados obtenidos.   Nuestra   propuesta   consiste   en representar sobre la página actual la distancia que existe   en   los   enlaces   a   la   información   deseada. Como   primer   experimento,   compararemos   los resultados obtenidos por este motor de búsqueda (empleando  becas   erasmus   inurl:ugr.es  como cadena de búsqueda), y una ayuda de navegación consistente   en   contar   las   ocurrencias   de   un conjunto   de   palabras   de   interés   en   los   nodos 

accesibles desde cada enlace de la página actual. La Figura 5 muestra el resultado obtenido. Google devuelve 433 entradas ordenadas por el orden de importancia,  mientras que nuestro sistema rotula cada enlace  de  la  página actual  con un  número indicativo de la relevancia del enlace con respecto a nuestras preferencias activas.

Figura 5. Resultados de  la  búsqueda sobre  «becas erasmus»   en   el   motor   Google   (a),   y   la   ayuda   a   la navegación obtenida in situ (b)

Podemos observar que el primer resultado de Google hace referencia a la Oficina de Relaciones Internacionales   de   la   Facultad   de   Ciencias (http://erasmus.ugr.es),   y   no   a   la   ORI   de   la Universidad   de   Granada,   el   organismo   oficial (http://www.ugr.es/~ofirint/erasmus/),   que   recibe 2 puntos favorables  en el  sistema de ayuda a  la navegación.

4.2. Visualización basada en mapa de navegación

El mapa de navegación es otro mecanismo que proporciona   visualmente   el   conjunto   de   nodos accesibles  desde  la  posición actual  mediante  un árbol jerárquico,  con una función de relevancia de cada nodo según su afinidad con las preferencias del usuario. La figura 6 muestra en el marco de la derecha el grafo desplegado para una distancia de dos niveles desde la posición actual del usuario y mostrando en color rojo los nodos más afines a los criterios de preferencias.  

Figura   6.   Representación   conjunta   del   mapa   de navegación (derecha) y la representaciópn predictiva de la distancia de los nodos a las preferencias de usuario.

El mapa permite desplazarse por la estructura para   conocer   la   afinidad   de   páginas   futuras enlazadas   a   una   distancia   de   (en   este   caso)   2 niveles de la actual sin necesidad de moverse. Los índice que aparecen en cada nodo refleja el grado de   relevancia   de   esa   página   respecto   a   las preferencias de usuario. 

Como   la   exploración,   por   el   volumen   de información y número de enlaces, puede ser difícil de   manejar   de   forma   interactiva,   se   plantean mecanismos   eficientes   y   personalizables   para podar   nodos   que   no   aporten   información suficiente por encima de un umbral de interés. Se pueden usar otros mecanismos de representación visual  de  la  importancia  relativa de un nodo en base a su tamaño y opacidad. Esto es, los nodos más   interesantes   serán   de   mayor   tamaño   y pigmentación,   mientras   que   los   menos interesantes   tenderán   a   desaparecer   tanto   en tamaño como en color. 

Adicionalmente, hay que tener en cuenta que el interés de un nodo se mide según la adecuación de sus  contenidos a   las preferencias  del  usuario activas. La forma de estimar el grado de interés de cada nodo puede venir dado por expresiones todo lo   complejas  que   se  quiera  y  que    puedan   sere evaluadas numéricamente.

Hay que tener en cuenta que en todo momento los   mecanismos   que   se   ofrecen   se   pueden enmarcar como ayudas a la navegación (basado en 

la metáfora de radar). El objetivo no consiste tanto en lograr mecanismos automáticos de busqueda y selección de   información al   estilo  de  un  agente software   [4,15],   sino   la   de   mostrar   y   ayudar (visualmente) al usuario a tomar decisiones de la mejor   ruta   desde   su   actual   ubicación.   En   la siguiente   sección   analizaremos   el   mecanismo seguido   para   obtener   una   implementación eficiente y que pueda usarse de modo interactivo en   la   navegación   por   páginas   Web   con   gran volumen de información. 

5. Implementación sobre un navegador

Partiendo   del   concepto   de   navegación predictiva  y  en   las  dos  propuestas  de  búsqueda (búsqueda   predictiva)   y   visualización   (mapa   de navegación), vamos a desarrollar un prototipo de este   sistema   sobre   un   cliente   de   navegación   en Internet para comprobar el grado de utilidad que pueda tener de cara al usuario. Estos mecanismos se van a integrar en el navegador usando para ello la   tecnología   de   extensiones   de   Firefox   [6].   A continuación   revisaremos   las   características  más relevantes   de   la   programación   en   Firefox,   e incluiremos   el   algoritmo   para   realizar   la navegación predictiva. Fnalmente, analizaremos la funcionalidad que poseen los paneles que se han añadido.

5.1. Extensiones de los navegadores

Mozilla es una plataforma Open Source [18], que  facilita  la  programación de alto nivel, lo  que facilita   el  desarrollo  de   aplicaciones   visuales   e interactivas   mediante   XUL,   JavaScript,   RDF   y XPCOM. XUL está basado en XML y se utiliza para la construcción de interfaces de usuario. RDF se   emplea   para   el   almacenamiento   de   datos     y XPCOM   (Cross   Platform   Component   Object Model)   es   un   sistema   de   descubrimiento   y administración de  objetos.   JavaScript  permite   el desarrollo de comportamientos dinámicos. 

La propuesta se plantea integrada dentro de la propia interfaz de Mozilla, por lo que usaremos la 

tecnología de extensiones XPI, que almacenan el contenido   (en   XUL),   hojas   de   estilos   e internacionalización (etiquetado adaptado a  cada idioma). La ventaja de esta aproximación reside en aplicar   la   lógica   de   navegación   en   el   cliente (navegador)   en   lugar   de   obligar   al   usuario   a conectarse a algun servidor proxy para canalizar las   peticiones.   Las   preferencias   y   resultados   se almacenan   localmente,   e   incluso   se   da   la posibilidad   de   tener   una   caché   de   búsquedas previas   precalculadas   para   el   conjunto   de preferencias activo. 

5.2. Algoritmo de búsqueda

El  algorimto  de búsqueda predictiva se basa en un conjunto de conceptos que en un momento dado   el   usuario   tiene   activos   (de   un   conjunto posiblemente   mayor)   y   de   una   URL   que   es   la localización actual del usuario. Normalmente, este subconjunto de conceptos se puede definir como parte de sus perfil de usuario, determinar a partir de palabras clave del bookmark, nube de etiquetas asociadas,   etc.   El   objetivo   del   algoritmo   es recorrer los enlaces para determinar si existe algún grado de afinidad en el contenido de esas páginas con   respecto   a   las   preferencias   del   usuario.   El mecanismo   de   búsqueda   empleado   sigue   un procedimiento   recursivo   multi­nivel   de exploración   que   presenta   el   pseudocódigo   del Algoritmo 1. 

función puntúa(Z, prof):  valor <­ interés de Z  V <­ lista vacía  si prof > 0:     A <­ lista de enlaces desde Z    para cada nodo Y de la lista A:      si Y <> Z:        V[] <­ puntúa(Y, prof ­ 1)  resultado = valora(valor, V)  devolver resultado función valora(valor, V):  si V no es vacío:    maxV = max(V)  si no:    maxV = 0  devolver maxV + valor

Algoritmo 1. Pseudocódigo que implementa la búsqueda multi­nivel

Partiendo   del   nodo   actual   visitado   y   fijada 

previamente una profundidad máxima a explorar hacia delante, se procede a visitar el conjunto de nodos directamente enlazados desde él. Para uno de esos nodos se calcula su valor de interés. La ramificación máxima se controla atendiendo a una profundidad máxima fijada en  la variable  prof, que   indica   la   distancia   máxima   a   la   que   se explorará en el mejor de los casos.

Hay que tener en cuenta que, si se incrementa el  nivel  de  profundidad,   el  volumen de  páginas posibles a explorar crece de manera exponencial. A partir de dos o tres niveles, el tamaño del árbol se  hace  difícil  de  manejar,  pudiendo  constar  de cientos  de nodos.  Existe  la posibilidad de hacer que   el   usuario   se   restringa a  una  búsqueda   sea local (es decir,  sin tener en cuenta los enlaces a otros  dominios)  ya que con bastante   frecuencia, sobre   todo   en   sitios   institucionales   como   una universidad, la información que se busca es local.

  Por   otra   parte,   debe   evaluarse   el   grado   de interés que presenta una página explorada según el contexto de  interés  del  usuario.  Para ello,  se  ha usado como primera aproximación el enfoque más sencillo.   Cada   vez   que   una   página   presenta   un término   sintáctico   asociado   a   las   categorías   de interés   activas   en   el   contexto,   se   incrementa   el interés   de   dicha   página   en   una   unidad.   Así,   el interés   de   una   página   viene   determinado únicamente por el  número de apariciones de las palabras   que   pertenecen   a   las   categorías   del contexto. Se ha empleado este método sencillo y simple para hacer las pruebas iniciales de ayuda a la navegación. Adicionalmente, se considera como interés de una página la suma del valor de dicha página con el mayor valor de sus hijos hasta una profundidad determinada.

5.3. Interfaz

En la  Figura  8 podemos ver el resultado del interfaz, donde  aparecen  dos paneles. El inferior es   el   contexto   y   en   la   derecha   el   denominado radar. En la barra de marcadores se encuentran los enlaces   para   activar/desactivar   estos   paneles   así como   para   activar/desactivar   la   navegación predictiva en la página visitada.

Figura 8. Apariencia de la interfaz de usuario en el navegador con los paneles de radar y contexto abiertos.

RadarEl   radar   es  panel  derecho   emergente   y   que 

permite controlar las preferencias del usuario para la   navegación.   Desde   este   panel   podemos gestionar las categorías, el mapa de navegación y las opciones de navegación.

Las categorías representan las preferencias del usuario. Para activar la ayuda en la navegación, lo primero que se debe hacer es definir los temas de interés   del   usuario.   El   interés   puede   ser   tanto positivo   (el   usuario   desea   que   las   páginas contengan la mayor cantidad de dichos términos) o   negativo   (el   usuario   no   desea   que   aparezcan dichos términos bien en la medida de lo posible, bien   de   manera   tajante).   Estas   categorías   se definen   mediante   la   intervención   del   usuario, responsable de definirlas mediante palabras clave. 

Desde este mismo panel podemos acceder al mapa de navegación, que consiste en un esquema visual   representando   el   camino   seguido   por   el usuario a través de la estructura del sitio Web, y explicado en la Sección 4.2.

ContextoEl contexto, mostrado como el panel inferior 

de la ventana, establece el conjunto de categorías en   las   que,   en   un  instante  dado,   el   usuario   se encuentra interesado y actúa como información de feedback   al   usuario   para   saber   sobre   qué   está restringiendo   la   consulta.   Esta   expresión   puede contener elementos tanto positivos (que se buscan) como negativos (que se evitan).  Cada categorías 

se evalúa atendiendo a la frecuencia de aparición de dicha categoría en la página a la que apunta un nodo enlace, y se aplica el nivel de profundidad y umbral que estén definidos por el usuario.

6. Campos de aplicación 

Una vez establecidas las bases del método de navegación   predicitva   y   explicado   parte   de   su implementación   sobre   un   navegador,   nos planteamos algunos de campo de aplicación en los que vamos a usar este método por ser de especial relevancia.

Ayuda a la navegaciónUna   de   las  primeras  aplicaciones   de   este 

sistema   es   su   uso   como   radar   para   señalar   el camino óptimo (mediante   la   función de   interés) indicando la distancia a una página relevante en función de las categorías. De esta forma podemos conocer hacia dónde conduce un enlace antes de visitarlo,   según   las   categorías   activas   en   ese momento. De este modo, usuarios con diferentes preferencias   tendrán   diferentes   recomendaciones sobre un mismo sitio. Esto lo aplicaremos para el análisis de sitios basados en comercio electrónico como por ejemplo, banca electrónica o tiendas.

Herramienta de evaluación de sitios webOtra   aplicación   inmediata  será  su   uso   para 

evaluar la usabilidad de un sitio en desarrollo. Los usuarios pueden navegar sobre las páginas con o sin ayuda, y se puede estimar el número de veces que el  usuario necesita  ayuda para  encontrar un objetivo.   Este   tipo   de   técnica   puede   ser complementaria a la utilizada para la evaluación usando   pruebas   de   usuario   remotas   [5]   y   a   las pruebas en laboratorio. Una de las ventajas como método   de   evaluación   es   que   se   puede   tener precalculadas   todas   las   funciones   de   interés   a priori, por lo que se puede analizar la navegación del usuario sobre la estimación real. Esto permite evaluar si la sucesión de enlaces para navegar por un   determinado   fragmento   de   información   es correcto.

Interacción en contextoOtro campo que es de indudable interés es la 

interacción  situada  en   un   contexto   [9].   En   el proyecto U­CAT [24] planteamos un mecanismo de   representación   del   contexto   (localización, identidad,   actividades)   sobre   un   entorno inteligente.  Este  mecanismo   puede   ser   útil   para recuperar en las «categorías» actuales el contexto actual del usuario, como por ejemplo, la tarea que actualmente está realizando, y las personas con las que está colaborando. En este caso, la información por la que se navega consiste en la información y actividades relacionadas con la situación actual en la que se encuentra el usuario. Actualmente se está aplicando   a   entornos   colaborativos   para   la educación   usando   un   mecanismos   hipermedia para representar la información [2].

7. Conclusiones y Trabajos Futuros

En   este   artículo   hemos   analizado   diferentes mecanismos   de   búsqueda   y   clasificación   de   la información que se usan en Internet, considerando sus   ventajas   e   inconvenientes   de   cara   a   la búsqueda  de   información  por   parte   del   usuario.

Hemos   presentado   nuestra   propuesta   que consiste en una herramienta que se  incorpora al navegador Firefox como extensión, y que permite gestionar   la   navegación   predictiva   del   usuario. Esta   forma   de   navegación   tiene   como   objetivo ayudar al usuario a encontrar de forma sistemática páginas   de   su   preferencia   en   el   contexto   de   su ubicación   sin   necesidad   de   estar   continuamente usando   mecanismos   de   búsquedas   (Google, Yahoo…). Las aportaciones de esta investigación se   centran   en   las   posibilidades   que   ofrece   este mecanismo para su uso como mecanismo de radar, guiando los pasos del usuario y permitiendo una personalización   de   las   páginas.   Algunas limitaciones que nos hemos encontrado a la hora de implementar el algoritmo son las siguientes:

• Tiempo  de   respuesta   en   la   exploración.  La exploración   predictiva   necesita   estimar   la distancias   desde   la   página   actual   a   las categorías   seleccionadas,   lo   cual   consume tiempo, por lo que el algoritmo se ejecuta de modo   asíncrono   y   bajo   demanda   (sólo 

cuando   sea   necesario).   También   se   puede controlar   por   el   usuario   el   nivel   de profundidad a estimar.

• Afinidad   del   contenido   con   la   categoría. Actualmente   realizamos   una   búsqueda sintáctica.   Existen   distintos   trabajos   que permiten   generar   una   red   semántica   de términos   dado   un   vocablo,   así   como   su distancia semántica al mismo. La generación de  categorías   se  puede  extender   integrando estos generadores semánticos [21].

Como   trabajos   futuros   nos   planteamos continuar   con   la   mejoras   de   del   mapa   de navegación   (actualmente   representa   un   árbol   de distancias) incluyendo más información visual y el análisis de los perfiles de usuario (se almacena la ruta de navegación para su análisis offline).  Uno de los primeros estudios se centrará en evaluar la usabilidad   de   la   Web   de   la   Universidad   de Granada (http://www.ugr.es/)  estimando el  grado de   ayuda   necesario   para   encontrar   información concreta conociendo el interés del usuario en ella. También   se   encuentra   en   estado   avanzado   la conexión con información contextual.

AgradecimientosEsta   investigación   está   parcialmente subvencionada   por   el   Proyecto   Español   I+D TIN2004­03140,   Ubiquitous   Collaborative Adaptive Trainig (U­CAT).

Referencias

[1] Agichtein, E., Brill, E., Dumais, S., Ragno, R.;   Learning   user   interaction   models   for predicting   web   search   result   preferences. 29th   ACM   Conference   on   Research   and Development   in   Information   Retrieval (SIGIR) (2006)

[2] Arroyo  R.F.,  Gea  M.,  Garrido,   J.L.  Haya, P.A.,   Carro,   R.M.   Smart   Group­Aware Navigation   for   Active   Spaces.   A3H:   Fifth International   Workshop   on   Authoring   of Adaptive and Adaptable Hypermedia at the 11th   International   Conference   on   User Modeling. Press (2007)

[3] Aumann,Y.,   Feldman,   R.:   Circle   Graphs: New   Visualization   Tools   for   Text­Mining. Lecture   Notes   In   Computer   Science;   Vol. 1704.   Proceedings   of   the   Third   European Conference   on   Principles   of   Data   Mining and Knowledge Discovery

[4] Bauer, M., Dengler, D., PaulInstructible, G.: Information   Agents   for   Web   Mining.     in proc.   Intelligent   User   Interfaces,   p21­28. 2000.

[5] Biosca, E., Gea, M.: Usabilidad en Internet. Las   pruebas   de   usuario   remotas.   VI Congreso   de   IPO   (INTERACCIÓN’2005) en Cedi05, ed. Thomson (2005) 315­322

[6] Boswell,D.; King, B.; Oeschger, I.: Creating Applications with Mozilla. O'Reilly & Ass (2002)

[7] Brin, S.; Page, L.: The Anatomy of a Large­Scale   Hypertextual   Web   Search   Engine. Proceedings   of   the   seventh   international conference on WWW vol 30, (1998), 107­117,

[8] Calishain,   T;   Dornfest,   R.:   Google,   los mejores trucos. O'Reilly (2004)

[9] Ceri,  S.;  Daniel,  F.; Matera, M; Facca, F.: Model­Driven   Development   of   Context­Aware   Web   Applications.   ACM Transactions on Internet Technology, Vol. 7, No. 1, (2007)

[10] Di   Giacomo,   E.   Didimo,   W.   Grilli,   L. Liotta,  G.  Graph  Visualization Techniques for Web Clustering Engines

[11] Feldman,   R.,   James   Sanger:   The   Text Mining   Handbook:   Advanced   Approaches in Analyzing Unstructured Data. Cambridge Univ. Press, (2007)

[12] Google,   AJAX   Search   API http://code.google.com/apis/ajaxsearch/documentation/reference.html

[13] Google,   Búsqueda   Avanzada. http://www.google.es/advanced_search

[14] Kobayashi, M., Koichi Takeda. Information retrieval   on   the   web,   ACM   Computing Surveys (CSUR) vol 32, No 2, (2000)

[15] Krulwich,   B.:   Automating   the   Internet. Agents   as  User   Surrogates.   IEEE  Internet Computing, Vol 1, nº4, 1997.

[16] Lorés, J.; Granollers, T. La Ingeniería de la Usabilidad i de la Accesibilidad aplicda al 

diseño i desarrollo de sitios web. Edicions de la Universitat de Lleida (2004)

[17] ManyEyes http://services.alphaworks.ibm.com/manyeyes/page/Tag_Cloud.html

[18] Mozilla http://www.mozilla.org/[19] Mueller, J.P.: Mining Google web services : 

building applications with the Google API. SYBEX (2004)

[20] Murison   J:   Messageboard   topic   tagging: user   tagging   of   collectively   owned community content

[21] RDF   Graph   Visualization   Tool. http://semweb.salzburgresearch.at/apps/rdf­gravity/index.html

[22] Shneiderman, Ben. Tree visualization with tree­maps: 2­d space­filling approach. ACM Trans. Graph. vol 1 No 11, (1992), 92­99

[23] TouchGraph http://www.touchgraph.com/[24] U­CAT http://orestes.ii.uam.es/ucat/[25] VisualComplexity 

http://www.visualcomplexity.com/vc/[26] Wurman,   R.S.,   Information   Anxiety, 

Doubleday New York (1989)[27] Wurman,   R.S.;   Bradford,   P.;   eds. 

Information   Architects.   Zurich, Switzerland: Graphis Press (1996)