10
Arquitectura de Sistema de Comunicaciones para Mediaciones Sociales en Redes Inalámbricas Punto a Punto 1 Sergio Oyarce, Miguel Nussbaum { [email protected], [email protected] } Fax: + (56-2)-686-4444, Casilla 306 Santiago 22 Departamento de Ciencia de la Computación Escuela de Ingeniería Pontificia Universidad Católica de Chile Abstract La tecnología introduce el concepto de “computación ubicua” a través de dispositivos “portables” (wearable), con procesamiento, almacenamiento y comunicación que dan presencia permanente en cualquier lugar, formando espontánea y naturalmente redes distribuidas móviles, con características adecuadas para afianzar relaciones interpersonales. La relación interpersonal, por su parte, está determinada por factores que gatillan el encuentro inicial y otros que favorecen una relación de más largo plazo. Se propone una arquitectura para ambientes móviles que ofrece comunicación, búsqueda y selección de personas, para lograr relaciones más probables de ser estables. Se muestran resultados de aplicar esta arquitectura durante 3 meses en un entorno académico, con 40 alumnos de primer año. Se concluye que factores críticos de redes móviles (energía, cobertura de antena) deben ser resueltos previamente para un adecuado ambiente de análisis. Palabras Clave Computación ubicua, Ad-Hoc, Agentes Distribuidos, Sistema Distribuido Móvil, Búsqueda de Perfiles, Redes P2P, Pocket PC, Wi-Fi, 802.11b, Redes Inalámbricas 1. Definición del problema En comunidades que cuentan con tecnología, se forman redes de comunicación que pueden tener almacenamiento distribuido, usando dispositivos móviles en modo Punto a Punto 2 . Dichas redes de comunicación contienen recursos, que implican buscar información o personas. En particular, buscar personas implica a su vez buscar perfiles (de personalidad, gustos, etc.). La Figura 1 muestra un Mapa Conceptual del Problema que se aborda, el cual sirve de guía para indicar el contexto dentro del cual se trabaja. Todas las líneas gruesas y las palabras subrayadas indican los aspectos considerados. Se busca determinar una forma de buscar perfiles en redes móviles P2P para fomentar el acercamiento entre personas y/o aumentar la probabilidad de una relación duradera. A continuación se ve cómo enfrentar el problema. 1.1 Introducción Formalmente, el tema relacionado con el inicio y desarrollo de relaciones interpersonales ha sido investigado ampliamente en el campo de la Psicología Social, proponiendo modelos que involucran una serie de factores que 1 Este trabajo fue parcialmente financiado por Microsoft Research y Fondecyt 1020734 2 P2P: Peer to Peer, traducido al español como Punto a Punto. En adelante, Peer es sinónimo de, Par, Nodo o Punto en redes móviles. Figura 1. Mapa Conceptual del Problema

Arquitectura de Sistema de Comunicaciones para …users.dcc.uchile.cl/~mmarin/revista-sccc/sccc-web/Vol5/ecc2.pdf · Arquitectura de Sistema de Comunicaciones para Mediaciones Sociales

Embed Size (px)

Citation preview

Arquitectura de Sistema de Comunicaciones para Mediaciones Sociales en RedesInalámbricas Punto a Punto1

Sergio Oyarce, Miguel Nussbaum{ [email protected], [email protected] }

Fax: + (56-2)-686-4444, Casilla 306 Santiago 22Departamento de Ciencia de la Computación

Escuela de IngenieríaPontificia Universidad Católica de Chile

AbstractLa tecnología introduce el concepto de “computación ubicua” a través de dispositivos “portables” (wearable), conprocesamiento, almacenamiento y comunicación que dan presencia permanente en cualquier lugar, formandoespontánea y naturalmente redes distribuidas móviles, con características adecuadas para afianzar relacionesinterpersonales. La relación interpersonal, por su parte, está determinada por factores que gatillan el encuentroinicial y otros que favorecen una relación de más largo plazo.Se propone una arquitectura para ambientes móviles que ofrece comunicación, búsqueda y selección de personas,para lograr relaciones más probables de ser estables. Se muestran resultados de aplicar esta arquitectura durante 3meses en un entorno académico, con 40 alumnos de primer año. Se concluye que factores críticos de redes móviles(energía, cobertura de antena) deben ser resueltos previamente para un adecuado ambiente de análisis.

Palabras ClaveComputación ubicua, Ad-Hoc, Agentes Distribuidos, Sistema Distribuido Móvil, Búsqueda de Perfiles, Redes P2P,Pocket PC, Wi-Fi, 802.11b, Redes Inalámbricas

1. Definición del problema

En comunidades que cuentan con tecnología, seforman redes de comunicación que pueden teneralmacenamiento distribuido, usando dispositivosmóviles en modo Punto a Punto2. Dichas redes decomunicación contienen recursos, que implicanbuscar información o personas. En particular, buscarpersonas implica a su vez buscar perfiles (depersonalidad, gustos, etc.). La Figura 1 muestra unMapa Conceptual del Problema que se aborda, el cualsirve de guía para indicar el contexto dentro del cualse trabaja. Todas las líneas gruesas y las palabrassubrayadas indican los aspectos considerados. Sebusca determinar una forma de buscar perfiles enredes móviles P2P para fomentar el acercamientoentre personas y/o aumentar la probabilidad de unarelación duradera. A continuación se ve cómoenfrentar el problema.

1.1 Introducción

Formalmente, el tema relacionado con el inicio y desarrollo de relaciones interpersonales ha sido investigadoampliamente en el campo de la Psicología Social, proponiendo modelos que involucran una serie de factores que

1 Este trabajo fue parcialmente financiado por Microsoft Research y Fondecyt 10207342 P2P: Peer to Peer, traducido al español como Punto a Punto. En adelante, Peer es sinónimo de, Par, Nodo o Puntoen redes móviles.

Figura 1. Mapa Conceptual del Problema

gatillan el contacto inicial, y otros factores generadores y sustentadores de relaciones más profundas. Dentro de losmodelos desarrollados más importantes, destacan el de Perlman y Cozby [1] y el de Hewston et al. [2]. En ambosmodelos se definen etapas graduales en el conocimiento interpersonal, con sus respectivos factores para cada nivel.Mencionan que existen factores relacionados con la cercanía de los individuos (proximidad física, trabajar cerca),mientras que otros están relacionados con el perfil de los individuos (semejanza de actitud, conocimiento previo,semejanza de intereses / valores / hobbies, semejanza de actividades preferidas). Una característica importante es queambos aspectos son susceptibles de ser controlados o medidos. No es el caso de otros factores, que adolecen ya seade control o de una métrica muy clara (normas sociales, atractivo físico, ser agradable y de fácil comunicación), porlo que no se consideran en esta oportunidad.Por otro lado, la comunicación mediada por computador (Computer Mediated Communication, CMC) ha sidoinvestigada por Dietz-Uhler et al. [3] en comparación al encuentro cara-a-cara. De estos estudios se desprende queeste tipo de comunicación incorporando el uso del computador cuenta con factores que facilitan el contactointerpersonal, rompiendo incluso barreras de tiempo y espacio. La CMC sería menos personal y socioemocional quela comunicación tradicional cara-a-cara [4]. Según Johnson [5], se pierde información que entrega el lenguaje noverbal (ver reacciones físicas o faciales, dirección de la mirada, postura física, entradas de contexto social como: lavestimenta; higiene personal, etc.). Todo esto hace que la CMC haga a sus participantes sentirse más libres, máscómodos y menos inhibidos, permitiendo igualdad entre los miembros, dando paso al proceso psicológico conocidocomo desindividuación (desindividuation), que es una disminución de la conciencia de las restricciones internascomo: autopresentación, atención a las normas sociales y el focalizarse en sí mismo [3]. El estudio de Dietz, &Bishop [3] encontró que cuando una CMC precede a una discusión cara-a-cara, esta última es percibida como másagradable y en la cual se pueden incluir distintas perspectivas, lo cual no sucede en las discusiones cara-a-cara queno han sido precedidas por CMC.Todo lo anterior fortalece la idea que los dispositivos móviles hagan las veces de un computador que mediecomunicaciones entre personas. Al tener la capacidad de almacenar información, puede registrar el perfil delpropietario del dispositivo, quien estará conectado a través de redes inalámbricas a sus pares, pudiendo intercambiarinformación y seleccionar respuestas de acuerdo a los perfiles que más se adecuen al del propietario. Al contar conuna cercanía de la persona seleccionada, se puede establecer una comunicación que puede concluir en una relacióncara-a-cara, respaldada por perfiles que aumentan la probabilidad de mantener dicha relación en el tiempo.

2. Antecedentes

El agente más relevante en la arquitectura propuesta es el de Búsqueda, ya que en él se centra la responsabilidad deencontrar no sólo un recurso parcial, como es la información (de acuerdo a la Figura 1), sino además tiene la funciónde seleccionar los candidatos más adecuados entre los que responden la consulta. Esto quiere decir que se deberetornar un recurso completo (perfil + información) de la siguiente manera:

Persona = Búsqueda ( Información, Perfil_Personal )

Esto quiere decir, que se entrega una información como objeto de búsqueda, y de los resultados se compara el perfilpersonal de quien consulta con el de los que tienen la información, resultando así una lista de personas compatibles.Esta será la forma de buscar en la arquitectura propuesta, cuyo algoritmo se explica más adelante.En Internet se ha realizado una serie de avances en torno a los “buscadores”, cuya palabra técnica es “motor debúsqueda” (search engine). Cabe mencionar por ejemplo, que existe un agente muy especializado que es el crawler,spider, robot o simplemente “BOT”, que es un agente usado por motores de búsqueda y está encargado de rastrearsitios de Internet relacionados con un tema de búsqueda, e indexar sitios / páginas siguiendo los hiper-enlaces(hyperlinks) dentro de las páginas que encuentra en su recorrido. Existe un gran número de ellos, pero se hará unaclasificación para poder administrar de mejor manera el problema.

2.1 Búsqueda en Redes Fijas Centralizadas [6]

En redes distribuidas con dispositivos fijos y arquitectura cliente-servidor, o con dispositivos móviles con modoinfraestructura, se cuenta con buscadores como Lycos, Alta Vista, Google, Yahoo (que usa Google) dentro de losmás conocidos. Todos ellos funcionan recibiendo palabras clave (keywords), las cuales les sirve de entrada a uníndice gigantesco llamado “catálogo”, que tiene todas las páginas que se han recopilado y están correlacionadas con

palabras clave. De ellas obtiene los resultados y los entrega en una lista ordenados de acuerdo a algún algoritmo,propio de cada buscador, que mide la precisión de la respuesta. A su vez, el BOT antes mencionado toma laspalabras clave de la búsqueda y aprovecha de mantener su base de datos de sitios leídos actualizadacorrelacionándolas con el índice o catálogo. De esta manera, cada consulta va actualizando la base de datos (BD).Google por ejemplo, dice contar con 2 mil millones de páginas web en su BD. Aun así, pueden existir millones desitios sin visitar si nadie ingresa una palabra clave que permita al BOT rastrear enlaces relacionados. Por otro lado, laBD es una foto estática de la última vez que se consultó, por lo que si un sitio se movió, tendremos un resultado“añejo” sin sitio. Además, los millones de sitios diarios nuevos requerirán ser referenciados en alguna página,asociados a palabras clave, y consultados alguna vez para que un BOT actualice su BD con ellos.

2.2 Búsqueda en Redes P2P Centralizadas [6]

La búsqueda en redes distribuidas con dispositivos fijos y arquitectura P2P centralizadas, se facilita por la presenciade un único sistema servidor, el que mantiene directorios de los archivos compartidos en los respectivoscomputadores de cada miembro de la red. Cuando un usuario busca un archivo, el servidor crea una lista de archivosque satisfacen el requerimiento de búsqueda, cruzándolo con todos los miembros que se encuentren en línea en esemomento. Una vez que el servidor da la lista resultante a quien solicitara el recurso, éste puede elegir los archivos dela lista y establecer contacto con el computador que es propietario del archivo (no el servidor). Esto requiere que losmiembros de la comunidad se registren para que la central de búsqueda sepa quiénes están en línea y así asegurar queel archivo realmente existe. Sin embargo, el contar con un servidor central es riesgoso, y es un blanco perfecto paraataques en la red, incluso legales. Además, el mantener el índice de su BD periódicamente puede provocar que unmiembro reciba información obsoleta. Dentro de los buscadores en funcionamiento con este sistema se encuentran:

• OpenNap: (Open Source Napster Server) es una red de servidores corriendo el protocolo cliente-servidorpropietario Napster. No hay archivos (MP3) guardados en el servidor, no necesita usernames (podría haberhecho un servicio anónimo), no necesita guardar dirección IP entre sesiones (muchas se asignan en formadinámica), la interacción P2P entre clientes usa protocolos standard. Es un servicio gratuito (open source).

• eDonkey: también es una red semi-centralizada, en que cualquiera es libre de ejecutar un servidor. Hayservidores de índice separados, escasamente conectados. Cuando un cliente (miembro) envía unrequerimiento a un servidor, sólo se busca en ese servidor. Una vez que la búsqueda se completa, el clientepuede enviar el mismo requerimiento al siguiente servidor en su lista si es necesario. Una vez que el archivoestá en la cola de “transmisión” o “bajada” ( download), se continúa preguntando a otros servidores. Esto esporque eDonkey fue la primera aplicación cliente que baja simultáneamente de múltiples fuentes, y quesoporta compartir archivos bajados parcialmente, de manera de permitir a otros clientes comenzar a bajar unarchivo de esta lista, mientras ese archivo aún está siendo bajado.

• Filetopia: una aplicación cliente-servidor creada por españoles, que usa fuerte encriptación de llave pública(256 bits) para garantizar a sus miembros seguridad y anonimato.

Al continuar con la arquitectura del modelo cliente-servidor, se ha distribuido al servidor en diferentes zonas, y laconexión entre miembros (clientes) es P2P. Pero se sigue entregando recursos de información, aun cuando existe yaun leve atisbo de contacto con el dueño del recurso. No existe nada como filtro a través de un perfil de los miembrosde la comunidad.

2.3 Búsqueda en Redes P2P Descentralizadas [6]

La búsqueda en redes distribuidas con dispositivos fijos yarquitectura P2P descentralizadas, se realiza sacando de la red laestructura central de manera que cada par (peer) se pueda comunicarde manera equitativa, igualitaria con otro par. Cuando un par (A) seconecta a una red descentralizada, se conecta a un par (B) paraavisarle que está vivo. El par (B) a su vez informa a toda lacomunidad a la que está conectado (C, D, E F, etc.) de la presencia de(A). Se repite el patrón con el resto de la comunidad (C, D, E, F,etc.). Una vez que (A) ha anunciado que está vivo, puede enviar unrequerimiento de búsqueda a (B) (Figura 2), quien lo traspasa a (C),(D), (E), (F), etc. Si por ejemplo (C) tiene una copia del archivo Figura 2. Búsqueda P2P Descentralizada

requerido por (A), transmite a (B) una respuesta quien la pasa a (A), quien finalmente puede abrir una conexióndirecta con (C) y bajar el archivo. En la práctica se utiliza un TTL (Time To Live) para controlar la propagación, esdecir el número de nodos a los que puede alcanzar un requerimiento. Tiene la ventaja que ya no existe un únicoservidor, y que es mucho más difícil “matar” los múltiples servidores. Tiene la clara desventaja que una búsqueda eneste entorno es mucho más lento que en uno centralizado. Además no garantiza encontrar un archivo, incluso siexiste en la red, porque puede estar muy lejos como para que un requerimiento de búsqueda alcance a un peer que lotenga antes de cumplir su TTL. Algunas redes P2P descentralizadas actualmente en operaciones son:

• Gnutella: lejos es la más popular a la red OpenNap. A su protocolo se le hizo ingeniería inversa y se colocóbajo el control de una fundación de fuente abierta (open source). También se extendió para soportarhashing, calidad de servicio y bajadas multi-fuente. La desventaja principal es la ineficiencia en redes muypobladas, porque cada búsqueda puede generar muchos mensajes de solicitud “inundando” la red. Otradesventaja es el monitoreo de la solicitud, pues viene con HTTP standard sin seguridad.

• mNet: (MojoNet) nació de un producto comercial – “ MojoNation”. Es un espacio de archivos universal,aunque la primera aplicación desarrollada para él fue una aplicación para compartir archivos.

• FreeNet: el proyecto es más que una aplicación P2P que comparte archivos. Permite intercambio deinformación de forma completamente anónima. También implementa el uso de memoria caché (caching) ya cada nombre de archivo se le aplica una función de hash, de manera que los servidores no sepan lo quealmacenan, y usa encriptación fuerte. En este caso, los intermediarios almacenan todos los resultados(esparce la responsabilidad), usa protocolo propietario (elimina monitoreabilidad de HTTP).

• GnuNet [7]: es un intento de crear una red anónima, distribuida, que utiliza el modelo económico basado enla reputación o confianza (reputation-based, trust-based), en la que todas las conexiones son autenticadas,encriptadas y evaluadas según un nivel de confianza que varía de acuerdo a cómo responda a las búsquedas.Un nodo aumenta su confianza en nodos que responden a consultas y baja su confianza en nodos quesolicitan como respuesta más información. Estas evaluaciones públicas sirven para guiar futuras consultasde otros nodos.

Al utilizar arquitectura P2P descentralizadas para redes distribuidas con dispositivos fijos, se cambia el modelo conindependencia de cliente-servidor a que cada peer es cliente y a la vez servidor. Existe mayor tendencia a establecerun contacto directo con otro miembro de la comunidad, y el propósito final es obtener información (un documento)que se comparte. Esto se acerca mucho al contexto dentro del cual se propone la arquitectura de un sistemadistribuido móvil en este trabajo, pero nuevamente todos los casos adolecen del problema de buscar sólo recursos deinformación (datos), sin interés en el perfil de los propietarios de los recursos, que finalmente es lo que permitefavorecer el establecer un contacto duradero entre los miembros.

2.4 Búsqueda de Perfiles

La búsqueda de perfiles se ha resuelto con la recolección de información relevante a un contexto determinado através de:

• Encuestas: aplicables a un contexto particular• Formularios Predefinidos: aplicables a contextos más generales (Por ejemplo: Currículo Vitae para

contextos laborales, Fichas Personales para match de parejas, etc.)

En el presente trabajo se considera como “perfil” el “Modelo Mental” [8] del propietario del dispositivo decomunicación. Se utiliza la hipótesis de atracción por similitud [9], que es la teoría que contribuye de mejor manera aexplicar la atracción interpersonal. A pesar que existen otros factores como actitud, orientación religiosa [10], yalgunos otros, los más significativos para el comienzo de una relación son: afinidad en valores básicos, intereses yhobbies [9].Dado lo anterior, interesa capturar la información relevante de cada persona por lo que se somete a cada miembro dela comunidad a una encuesta que involucra preferencias que pueden ser agrupadas en Grupos de intereses. Alanalizar de manera estadística los puntajes de cada Preferencia, se determinan una cantidad de Grupos de interés, queaglutinan preferencias de acuerdo a la muestra realizada. Al graficar los puntajes promedio de cada miembro de lacomunidad encuestada, surgen a su vez grupos de personas que tienen curvas similares, definiendo así perfilesdeterminados de preferencias que se denominan “ cluster”.

Por ejemplo, en la Figura 3 se muestra 5 grupos deintereses (compras, deporte, intelectual, social einformación) que resumen una cantidad depreferencias consultadas. A su vez, se grafican 5curvas diferentes que definen los “ cluster” depersonas que tienen perfiles de Preferencia similar, yque por tanto debieran tener mayor probabilidad deestablecer relaciones duraderas. Este método será elutilizado para la búsqueda de perfiles en el presentetrabajo, que “asegura” resultados con mayorprobabilidad de inicio y permanencia en lasrelaciones.En este trabajo se modelan los perfiles a través de unaencuesta que involucra una cantidad de preferenciasacordes a un contexto de interés. Cada preferencia esevaluada por cada miembro de la comunidad de 1 (elmenor interés en la preferencia) a 5 (el mayor interés),con lo cual el conjunto de puntuaciones de la encuesta forman el perfil de intereses en BD de cada miembro.

3. Implementación

Dada las características de las relacionesinterpersonales que se pretende lograr, es fundamentalque la implementación sea diseñada para undispositivo inalámbrico móvil. De esta forma elusuario es capaz de llevarlo consigo, el dispositivo espersonal, independiente, capaz de almacenarinformación, con capacidad de procesamiento y concaracterísticas que permiten comunicación. Esto escrucial para introducir un nuevo concepto, el deAGENTE (conocido también por Agente Inteligente).Una breve inspección por algunas definiciones ensitios Internet de Tecnologías de Información (IT)[11], [12], [13], [14], da una idea clara del concepto.De ellos se deduce que un agente es un programa querealiza una labor específica (recopila / procesainformación), de manera “invisible”, que toma ciertasdecisiones dependiendo de lo que reciba. Simulaademás una actividad humana, lo que explica el adjetivo de “inteligente”, funcionando efectivamente como unaespecie de agente o secretario, para un usuario o para otro programa. Ya se mencionó el caso más común presente enabsolutamente todas las búsquedas en Internet (los crawlers o spiders). La arquitectura propuesta utiliza una agencia(conjunto de agentes), contando con uno específico para su búsqueda, además de otros que realizan labores bastanteespecíficas como se verá. La Figura 4 sirve como guía para las capas que se detallan a continuación.

3.1 Arquitectura de Comunicaciones

De acuerdo con la Figura 4, el sistema de comunicaciones tiene diversos módulos. Todos ellos son propios decualquier sistema de comunicaciones. Sin embargo la característica subyacente de dos de ellos (Búsqueda yComunicación) es el ambiente móvil, que determina su implementación adecuada. La característica más importantees el hecho de estar o no en línea con la red, cuya topología es variable. La segunda característica más importante esconsiderar las acciones que son propias del dispositivo local junto con las del dispositivo remoto, ya que es la mismaarquitectura la que debe administrar los procesos tanto de inicio de una acción o evento, como el de ser receptor deuna acción o un evento.

11,5

22,5

3

3,5

4

4,5

5

Shopping

Sports

Inte

llect

ual

Social

Info

rmat

ion

Pre

fere

nces

Sco

res

Cluster 1

Cluster 2

Cluster 3

Cluster 4

Cluster 5

Figura 3. Ejemplo de Clusters y Preferencias

Figura 4. Niveles de interacción del sistema

• Comunicación, involucra todo lo que signifique intercambio de información entre usuarios: correo, chat,voz, avisos de incorporación de un miembro de la comunidad a la red inalámbrica. Se puede presentar dostipos de comunicación: síncrona (chat / voz) cada vez que dos dispositivos pertenecientes a la red (y portanto dos miembros de la comunidad) se encuentran en el mismo instante comunicándose; asíncrona(correo) cada vez que el dispositivo se encuentra incomunicado del resto de la red, pudiendo funcionar enforma independiente. En el caso de la comunicación síncrona existe previamente un proceso de negociaciónen la solicitud a iniciar una sesión en línea, donde son consultados los perfiles de usuario y los permisos deacceso, con el fin de evitar contactar personas que por alguna razón se ha informado al sistema que son noaptas de contactar. De esta forma, sólo se informa de una solicitud de conexión cuando tanto el agente localcomo el remoto hayan determinado que los participantes no tienen restricción de contactarse mutuamente.

• Búsqueda, involucra los recursos que se desea buscar, y los perfiles que se desea compatibilizar. Se cuentacon dos tipos de búsqueda: estructurada y no estructurada. La Búsqueda Estructurada envía una búsquedade un recurso en forma de texto, y posteriormente el agente de búsqueda se encargará de su transformación(asociación) a un Grupo de intereses y posterior transmisión de dicho Grupo. El texto a solicitar seencuentra dentro de un contexto de categorías que selecciona el usuario, lo que internamente corresponde auna Preferencia específica, a través de la cual se guía la búsqueda. Por ejemplo, Categoría: Cultural,Preferencia: Asistir a Obras de Teatro, el texto a ingresar puede ser: “Tengo 2 entradas para ver Hamlet”.Esto provoca una búsqueda a través de la red por la Preferencia indicada, a partir del nodo solicitante. Alfinal del proceso de búsqueda, que sigue un algoritmo que se explica más adelante, se obtiene una lista denodos que pueden responder al requerimiento solicitado. Todos los nodos respuesta tienen perfiles que seasemejan al nodo solicitante, de modo que si se efectúa un contacto posterior, existe mayor probabilidad deuna relación exitosa en su inicio, y/o duradera en el tiempo. La Búsqueda No Estructurada, llamada Panel,funciona como un panel dinámico público de Ofertas y Necesidades, que varía dependiendo de losmiembros visibles en el momento de la consulta. Esta búsqueda no cuenta con el filtro o selección porperfil, debido a que la búsqueda de recurso, al no poder clasificarse como estructurada, es tan específica queno permite restringir los resultados.

• Agenda, involucra dar a las comunicaciones sentido (semántica), de manera de integrar los medios decomunicación disponibles con los contactos (miembros de la comunidad). Cuenta con los servicios derecordatorio de tareas, concertación de reuniones con otros miembros de la red, directorio de miembros,solicitud de avisos de llegada de un miembro al entorno, configurar accesos a cada miembro, formación degrupos personalizados para envío de correo.

3.2 Arquitectura de Agentes

Los agentes forman una base sobre la cual descansa la arquitectura de comunicaciones, y cada uno de ellos sepreocupa de labores específicas que dan vida a las abstracciones del nivel anterior. Existe además comunicaciónentre los agentes, que para simplificar el contexto no aparece en la Figura 4.

• Búsqueda, se encarga de producir la compatibilidad (match) entre los perfiles de quien solicita y quienresponde, además de asociar la Preferencia con un Grupo de intereses, para clasificar las respuestas. De estaforma, sólo responden quienes tengan interés en la Preferencia y se clasifica aquellos que además tieneninterés en el Grupo de intereses involucrado, de manera de acercarse al perfil del solicitante. Los que notienen interés en el Grupo asociado, pero sí en la Preferencia son también respuesta, pero la posibilidad deuna relación más duradera con ellos es más baja.

• VoIP, se encarga de la comunicación oral a través de la red inalámbrica entre miembros visibles dentro delrango de acción de la antena del dispositivo. Este agente funciona como un teléfono, pudiendo sólocontactar a los miembros de la comunidad.

• Mensajes XML, se encarga de todo el intercambio de información entre los dispositivos. Esto involucra:correo, solicitud de información pública de usuario remoto antes de un contacto (foto, gustos, etc.),solicitudes de aviso por llegada de algún miembro, solicitud de necesidades y ofertas públicas para labúsqueda no estructurada (panel), envío de registros de BD para monitoreo, solicitudes de búsquedaestructurada, respuestas de búsquedas, etc.

• Chronos, se encarga de controlar el cumplimiento de un tiempo determinado para activar alarmasconfiguradas por el usuario, activar procesos como limpieza de documentos para fechas determinadas, etc.Todo lo relacionado con cumplimiento de plazos o tiempos (fecha - hora).

• BD, se encarga de mantener actualizado el monitoreo capturando la información de rastreo cada vez queaparezca el nodo especial recolector. Esta actividad es completamente transparente al usuario.

• Red, se encarga de revisar la red cada cierto tiempo para avisar la presencia del nodo local, detectar lallegada de nodos remotos a la red, e inclusive mantener conversación escrita vía chat.

• Actualizador, que se encarga de actualizar módulos de cada agente recibidos desde una antena emisora,totalmente en línea, sin detener la aplicación principal. Una vez recibida la actualización la levanta yprosigue con la aplicación principal. Este agente sólo tiene fines de mantención.

3.3 Arquitectura del Sistema

La Figura 5 muestra un escenario de trabajo, con algunos delos servicios que el sistema ofrece. Se aprecia que cada unode los dispositivos móviles cuenta con su agente (círculos) yel entorno que lo rodea. El agente A está transmitiendo unaconversación de voz con el agente B. El agente B ademásestá recibiendo un correo que le envía el agente C que pasapor su entorno. Los agentes D y E se encuentran en unaconversación escrita (chat). El agente F está fuera del radiode cobertura de todos los demás, pero tiene activa su agenda,en la que podrá almacenar correo, programar citas conmiembros de la comunidad, anotar recordatorios, etc. Elagente X es un agente que está conectado a través deInternet a un computador que registra la actividad de todoslos que están en su entorno. El entorno del agente X

visualiza a los agentes B, C, D. Nótese que los agentes A, Eno están en su área de cobertura, pese a que ambos estánconectados a otros agentes que sí son visibles por X.Para integrar todo lo antes mencionado, y contar con posibilidades de mantener información que permita determinarestados de un usuario, es imprescindible contar con una BD en el dispositivo. Esto involucra definir tablas yrelaciones de las cuales las más destacables se explican a continuación:

• Tabla: Perfil de Usuario, mantiene toda la información del usuario, la cual es de dos características:Pública, que contiene información que el usuario puede seleccionar para mostrar u ocultar al resto de losmiembros de la comunidad; Privada, que contiene información propia del sistema primordialmente paramonitoreo del usuario, invisible a él.

• Tabla: Intereses, mantiene toda la puntuación que el usuario obtuvo en la encuesta hecha a todos losmiembros de la comunidad. A través de ella se tiene el Perfil de intereses del usuario, el cual es utilizadopara el algoritmo de búsqueda estructurada explicado más adelante en la Figura 5.

• Tabla: Panel, mantiene toda la información pública de Ofertas y Necesidades del usuario, la cual esconsultada cada vez que un miembro de la comunidad en el entorno entra al Panel de Búsqueda.

• Relación: Tabla de Permisos, mantiene todos los permisos de acceso que el usuario local da a los restantesmiembros de la comunidad a su perfil de usuario.

• Relación: Tabla de Registros, mantiene toda la información requerida para hacer un rastreo de lasactividades de un usuario. Caber hacer notar que todo lo que se almacena es de carácter neutro, sininvolucrar información “personal” del usuario para no invadir su privacidad. Es por esta razón que todo semaneja al nivel de identificadores, como por ejemplo: IP1 incorpora IP2 en grupo ID_Grupo4 comoidentificador, que es el resultado de que Juan Pérez incorpora a Juan Moya al grupo “Los Malos”, siendoesta información mantenida sólo en el dispositivo.

Un claro ejemplo que integra la BD con la arquitectura del sistema, y la de los agentes la constituye el Algoritmo deBúsqueda Estructurada, el cual es propietario del sistema propuesto. La Figura 6 muestra las etapas que se realizany que se resumen como sigue:1. Un nodo (A) solicita un recurso (texto) asociado a una Preferencia determinada “x”.2. El agente transmite (A, x) a todos los nodos presentes en la red.3. Un nodo (B) recibe el requerimiento y consulta si tiene interés por la Preferencia “x” en la BD.

Figura 5. Escenario de Trabajo

4. Si tiene interés, responde (B, puntaje(x), puntaje( Grupo(x) )) al agente.5. El agente transmite directamente al origen (A) la respuesta.6. Nodo (A) clasifica respuestas por orden de puntaje en la Preferencia “x”

en primer lugar para los que tienen interés en el Grupo de interés queincluye esa Preferencia, y después para los que no lo tienen. De estamanera se asegura que sólo responden quienes tienen interés en laPreferencia, y se cuenta con dos niveles de respuesta, siendo el primernivel el más probable de establecer contacto exitoso dada la similitud enel Grupo de intereses, lo que se acerca al perfil de intereses delsolicitante. El segundo nivel, puede responder a la solicitud específica,pero al distanciarse del Grupo de interés puede no ser una relación tanexitosa como los del nivel anterior.

7. Un nodo (B) recibe el requerimiento y consulta si tiene interés por laPreferencia “x” en la BD.

8. Si no tiene interés por la Preferencia “x”, informa al agente y éste NOCONTESTA.

4. Pruebas y Resultados Empíricos

Se realiza una experiencia aplicando la arquitectura propuesta en un entorno académico con los siguientes datosrelevantes:Duración: 3 meses (período: 1º de Abril al 22 de Junio de 2003).Comunidad: se seleccionó a 40 estudiantes de primer año de entre 400 de la carrera de Ingeniería de la PontificiaUniversidad Católica de Chile, filtrando de manera de verificar que resultaran desconocidos entre sí.Red: Los dispositivos personales entregados fueron Pocket PC (70% Toshiba e740, 30% HP Jornada 568) contecnología inalámbrica (Wi-Fi: Wireless Fidelity, conocida también como IEEE 802.11b), cuyo rango de acciónoscila cerca de los 80 metros en promedio en exterior abierto, y 30 metros en interior. Utilizando toda la potencia dela antena en forma permanente para facilitar la visualización, junto con mantener otras aplicaciones que requierenrecursos del dispositivo, provocan que las baterías duren como máximo 2 horas.Perfiles: La encuesta que se realizó contempló 99 Preferencias, de las cuales luego del análisis estadístico resultaron5 Grupos de interés: Tecnología, Diversión, Información, Intelectual, Deporte. Los cluster finalmente no fueronconsiderados para la entrega de resultados en la búsqueda, sino solamente el interés en la Preferencia solicitada, conel fin de no forzar respuestas del sistema restringidas a un cluster definido. Además no se consideró el puntaje de laPreferencia, sino más bien sólo si tenía interés, con lo cual quien solicita cuenta con respuestas equitativamenteválidas, sin tener forma de ordenarlas.Aplicación: El programa integrado, bautizado como ProyectoZ, incorpora diversos servicios (Agenda, Contactos,Chat con Teléfono incluido [VoIP], Búsqueda estructurada, Panel [búsqueda no estructurada]). Además, con fines depromover la cultura de uso de estos dispositivos, se agregó los servicios utilitarios de Calculadora e Internet (esteúltimo sólo dentro del campus).Registro: se instalaron 7 antenas para recibir y registrar información fresca de cada alumno, cada vez que circularacerca de alguna de ellas, todas comunicadas a un servidor de BD donde se hizo acopio de toda la información.A continuación, se presenta las pruebas y resultados obtenidos dado el contexto recién detallado.

4.1 Tipo de Pruebas en vacío

Se realizó todo tipo de pruebas que consideraron diferentes aspectos en los cuales el programa debe permaneceríntegro, con el fin de no producir en los usuarios alguna sensación de frustración. Para ello se considera todos lospasos que sigue una búsqueda desde su inicio hasta el contacto con una de sus respuestas, ya sea estructurada comono estructurada, pues recorre todo el ciclo de posibilidades. Además se realizó todas estas pruebas en tres escenariosdistintos: en un área aislada sin ningún dispositivo alrededor ni antena para registro de datos, en un área con otrosdispositivos en el área de cobertura pero aun sin antena de registro de datos, y en un área donde hubiera otrosdispositivos móviles y una antena para los registros.

Figura 6. Algoritmo Búsqueda

• Consistencia en la BD, de manera que la información almacenada corresponda a lo que la interfaz estápresentando: Agregar, Modificar y Borrar registros en lista de Contactos, en formación de Grupos deContactos y en registros de Necesidades / Ofertas para el Panel.

• Consistencia de respuestas en búsquedas estructuradas y no estructuradas, realizando búsquedas, avisos dellegada y cotejando los resultados con los dispositivos existentes. Se revisa que concuerde con laconfiguración programada, es decir, no obtener respuestas no deseadas (bloqueadas), u obtener respuestasal modificar las configuraciones bloqueadas.

• Consistencia de tiempos, realizando y cotejando los avisos con los tiempos programados en losrecordatorios y citas.

4.2 Evolución: Pruebas experimentales (Gráficos)

La Figura 7 muestra un gráfico con la evolución que tuvieronel total de transacciones durante el período de observación.Estas transacciones consideran Agregar, Modificar y Borrar:Grupos de Contactos, Notas de la Agenda (Recordatorio,Reuniones, Avisos, Correo), Búsquedas, Panel (Ofertas,Necesidades), Permisos, Contactos, Ver Internet. Seconfeccionó una página web conectada directamente a la BDque permitió ver la evolución día a día de estastransacciones, dando información tanto en forma de tablacomo gráfica, separado por semanas, y seleccionando tantola evolución de transacciones en el tiempo como laevolución por usuario en el tiempo, lo que servía de guíapara estimular el uso de los aspectos que se considerabaestaban débiles, y monitorear lo que sucedía con los miembros de la comunidad en forma remota.

4.3 Mantención: Pruebas en terreno con el usuario

En el transcurso de la experiencia, se citó esporádicamente a los usuarios (miembros de la comunidad) a reunionesindividuales y algunas colectivas, para consultar de primera fuente qué problemas tenían en el uso del sistema. Estopermitió mejorar ciertos procesos que presentaban pequeños errores, detectar situaciones que motivaron desarrollosparalelos (como la vital administración de antenas de las cuales se nutría de información el sistema), o mejoras a lainterfaz en pro de una mejor usabilidad de la aplicación, lo que redundó en un mayor y mejor uso cada dos semanascomo muestra la Figura 7, existiendo por tanto aumento de la probabilidad de encuentro entre los miembros. De estasreuniones también se hizo necesario una capacitación más detallada que al momento inicial de la entrega dedispositivos, pues esta nueva forma de buscar personas es algo que requiere ser asimilado. Sin embargo, en la Figura7 se ve que la tendencia final es que decae el uso hacia fines de la experiencia, se explica a continuación.

5. Conclusiones

Previo a una experiencia como ésta, se deben cumplir ciertas condiciones mínimas con relación a contar con energíaojalá permanente en el dispositivo, de modo que permita mantenerlo activo el mayor tiempo posible, y por tantoaumentar drásticamente la “visibilidad” y presencia de los miembros de la comunidad, aumentando así laprobabilidad de contacto. Por su parte, ayudaría también mayor cobertura de antena, pues aumenta también lavisibilidad del entorno, pero afecta directamente el consumo de energía, por lo que también debe ser resuelto.

5.1 Interpretación de Resultados

El ambiente académico requiere de los alumnos de primer año concentración casi exclusiva en sus primeros cursos,por lo que el uso del dispositivo queda reducido a las horas entre clases y los módulos sin cursos. Aun cuando loutilizan en esos momentos, los demás miembros de la comunidad se ven reducidos a los pocos que cumplan lasmismas condiciones. Dentro de ellos, el problema de energía de los dispositivos les hacía apagar los dispositivos, odesconectar la antena para reducir el gasto de batería. Para quienes lo tenían encendido, ya al mediodía debían cargar

Figura 7. Evolución semanal de Transacciones

Evolución Total de Uso

11277

238 221

427

127

504

57

257

50

129

35

0

100

200

300

400

500

600

1 2 3 4 5 6 7 8 9 10 11 12

Semanas

Tran

sacc

ione

s

su dispositivo, pues de no hacerlo comprometía la memoria llegando incluso a borrarla por completo, con lo que seperdía información no registrada. Por tanto, los dispositivos móviles elegidos no están lo suficientemente maduroscomo para aplicarlos en una experiencia como ésta. Si se tratara de dispositivos con energía suficiente como paraestar todo el día encendido y antenas con cobertura muchísimo mayor, que ofrezcan un ambiente similar a loscelulares, se podría concluir algo con respecto a favorecer el encuentro entre personas o fortalecer su relación. Encuanto a la arquitectura, si bien permitió el contacto entre miembros de la comunidad al nivel escrito (chat), de voz ode reuniones, el volumen de esas transacciones dado el escaso universo con visibilidad permanente en el entorno, nopermite concluir si esta arquitectura apoya las relaciones interpersonales o no.

5.2 Límites del Diseño y Alcances Futuros

El diseño considera dispositivos móviles en redes P2P, pues favorece un encuentro inicial cara-a-cara rápido dada lacercanía física debido al radio de cobertura del dispositivo, y de acuerdo a los perfiles de intereses existe una granprobabilidad de favorecer buenas relaciones. Una limitación de este sistema es que los perfiles implican contar coninformación de los gustos de cada miembro de la comunidad, por lo que todo miembro debe contestar una encuestade preferencias. Si se aplica este sistema a otro contexto, la búsqueda quedará obsoleta, y deberá realizarse una nuevaencuesta para preferencias acordes al nuevo contexto, lo que formará nuevos grupos de interés. Esto es muydinámico y en la actualidad está parcialmente resuelto, pero se deberá flexibilizar para mejorar su dinamismo.A futuro, se puede incorporar procesos multi-usuario, ya que el diseño sólo consideró comunicaciones bi-partitas engeneral. El chat está diseñado para dos personas, aun cuando recibe de varios, pero sólo se puede escribir a uno a lavez o a todos. La incorporación de grupos nació por el correo, pero sería aplicable por tanto al chat. Lo mismosucede con la voz (VoIP), que sólo se permite entre dos personas ahora.Con la aparición de sistemas de energía más optimizados y de antenas de mayor potencia para los dispositivosportátiles, junto con el abaratamiento de costos de los mismos, existirá un mejor entorno en el cual se pueda aplicaresta arquitectura con la independencia que fue diseñado, pero una mayor cobertura atenta contra la cercanía física.

6. Bibliografía

[1] Perlman, D. & Cozby,P. (1992). Psicología Social. Mexico: Mc Graw Hill.[2] Hewstone, M., Stroebe, W., Codol, J-P. & Sthephenson, G. (1992). Introducción a la Psicología Social. (3ª

Ed.). Barcelona: Ariel.[3] Dietz-Uhler, B. & Bishop-Clark, C. (2001). The use of computer-mediated comunication to enhance

subsequent face-to-face discussions. Computers Human Behavior, 17, 269-283.[4] Walther, J. & Burgoon, J. (1992). Relational Communication in Computer-Mediated Interaction. Human

Communication Research, 19, 1, September, 50-58.[5] Johnson, N. (1989). Variables Associated With Friendship in Adult Population. The Journal of Social

Psychology, 3, 379-390.[6] Edmund So, Michael Collins, Richard Lee, Rob Lawless, Sean Reilly. P2P Search Engines, P2P Networks

(TCD 4BA2 Project 2002/03), http://ntrg.cs.tcd.ie/undergrad/4ba2.02-03/p8.html[7] GNUnet, http://www.gnu.org/software/GNUnet/gnunet.html[8] Byrne D. The Attraction Paradigm. New York: Academic Press. 1971.[9] Michinov, E., & Monteil, J. M. The similarity attraction relationships revisited: Divergence between the

affective and behavioral facets of attraction. European Journal of Social Psychology, 2002. Nro.32.,pp.485-500.

[10] Kandel, D.B. Similarity in real life adolescent friendship pairs. Journal of Personality and SocialPsychology, 1978. Nro. 65, pp. 282-292

[11] SearchCio.com, The Web’s best information resource for CIO’s and senior level IT executives,http://searchcio.techtarget.com/

[12] Webopedia.com, The only online dictionary and search engine for computer and Internet technology,http://www.webopedia.com/

[13] Hutchinson Dictionary of Computers, Multimedia, and the Internet,http://www.tiscali.co.uk/reference/dictionaries/computers/

[14] CCI Computer, http://www.currents.net/resources/dictionary/index.html