



Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
En este documento se presenta el cuaderno del seminario 4 de matemática discreta, donde se profundiza en la utilidad de asignar importancia a los nodos de un grafo y se resuelven diferentes retos relacionados con este tema. Se discuten medidas de importancia, como la basada en grado, y se analiza cómo pueden ser engañados al asignar importancia a los nodos. Se propone un algoritmo para contar todos los nodos de alguna de las n generaciones anteriores y se preguntan sobre la eficiencia de estas medidas. Además, se discute el concepto de centralismo en grafos y se propone un algoritmo para obtener el centro de un grafo.
Tipo: Apuntes
1 / 5
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!




En la sesión anterior, visteis que la estructura de un grafo se puede utilizar para extraer información acerca de sus nodos. Además, visteis la utilidad de hacer esto en el grafo de la WWW, y conseguisteis mejorar vuestro algoritmo de exploración para conseguir precisamente el grafo de la WWW.
En esta sesión, vais a profundizar en esta utilidad, resolviendo el último reto de vuestro buscador. Más concretamente, partís de la base de que ya tenéis disponible vuestro grafo de la WWW. El objetivo del seminario anterior era el de asignar una importancia (un número) a cada nodo de vuestro grafo. Una vez sepáis hacer esto, también sabréis cómo ordenar cualquier lista de resultados.
Al final de la sesión podréis saber todos los detalles sobre el entregable final.
Have a lot of fun...
4.1 Lo falso de la fama
Una medida de importancia dentro de la teoría de grafos se puede definir como una función que, dado un grafo G y un nodo n devuelve un número. Este número puede ser cualquiera, pero debe cumplir una condición: debe ser más alto cuanto más importante sea el nodo n en G.
En el último cuaderno de trabajo, se os pedía asignar importancia a usuarios de facebook y twitter en función del número de seguidores/amigos (esta medida es simplemente el grado de entrada de un nodo). Según esta medida, ¿cuáles es el nodo más importante en el grafo de debajo? (Olvidaros que es dirigido).
¿Y cuál es el nodo más importante en el grafo de debajo?
En el último entregable, se os pedía definir un algoritmo que contase el número de “abuelos” de un nodo. Según ese algoritmo, ¿cuál es el nodo más importante en el grafo de arriba?
Pensad ahora que este grafo representa una porción de la WWW. Imaginad que cada una de las páginas (nodos) rojos son independientes, es decir, las han creado webmasters que compiten entre sí por aparecer más alto en vuestro buscador. Ahora imaginad que las páginas lilas son en realidad falsas. Esto es, son páginas vacías que sólo contienen un vínculo, y que las ha creado el webmaster de la página a quien apuntan. ¿Consigue esto engañar a la medida que usásteis para dar importancia a los usuarios de twitter? ¿Consigue engañar a la medida que cuenta “abuelos”?
Imaginemos ahora que estos mismos webmasters tramposos crean 30 páginas por cada una de las lilas, y que estas páginas verdes apuntan a la página lila correspondiente. ¿Engaña esto a la medida que cuenta “abuelos”? ¿Se os ocurre como mejorar la medida “abuelos” para que no se deje engañar? Este proceso puede repetirse varias veces. Definid un algoritmo que cuente todos los nodos que sean de alguna de las N generaciones anteriores. Esta función debe tomar tres argumentos: el grafo, el nodo y el número de generaciones N:
Ahora pensad que el grafo A representa una gran red de comunicaciones, donde los nodos son máquinas y las aristas los enlaces físicos entre ellas. Imaginad también que todos los enlaces son igual de rápidos. Si tenéis que instalar un servicio que deba poder responder lo más rápido posible, ¿en qué máquina lo pondríais? ¿depende de qué otras máquinas vayan a utilizar el servicio? El nodo que habéis elegido, ¿coincide con el del almacén de la empresa de distribución?
4.3 Centralismo
Una posible respuesta a las preguntas anteriores es “en el centro”. Esto también solucionaría problemas como “dónde situar el router WiFi de casa para que llegue al mayor número de habitaciones”. El problema es decidir qué es el centro en un grafo. En el grafo B del Apartado 4.2 podéis ver un grafo donde los nodos centrales son los más importantes. Para identificar cuán céntricos son los nodos ¿es suficiente con dibujar el grafo y quedarse con el centro geométrico? ¿Por qué? ¿Qué ventajas y desventajas presenta el centralismo del grafo B con respecto al del grafo C? ¿Por qué? ¿Qué diferencias veis en los grafos B y D? ¿Hay una única manera de dibujar cada grafo? ¿Debería influir la manera de dibujar el grafo en la coloración?
Nos gustaría saber cómo caracterizar el centro de un grafo. Pero antes, pensemos primero en el concepto habitual de centro. ¿Qué propiedad con respecto a todos los puntos define al centro? Pensad en las siguientes curvas y superficies para ayudaros: (a) una circunferencia (b) el borde de una elipse (c) un círculo (d) un cuadrado (e) un triángulo.
Pista: la propiedad tiene que ver con la distancia.
4.4 ¿Generalizar es siempre malo?
Spoiler: l a propiedad que he pensado en el 4.3 es “estar a la menor distancia media de los puntos de la curva o superficie”.
La belleza y la potencia de las matemáticas se nutren de la libertad para generalizar conceptos. Generalizad el concepto de centro para poder aplicarlo a grafos. A estas alturas, conocéis un algoritmo que es capaz de generar una matriz de distancias mínimas entre cualquier par de nodos. Digamos que DM(a,b) devuelve este valor para cualquier par de nodos a y b. Diseñad un algoritmo que, dado DM, sea capaz de obtener el centro de un grafo. Una vez tengáis vuestra idea, expresadla en forma de pseudocódigo. Vuestra función debe llamarse calcular_centro(grafo, DM) y debe devolver el nodo central. Podéis usar grafo.nodos() para obtener una lista de todos los nodos.
Entregable
1. Explicación detallada de las ventajas y desventajas del centralismo, qué es, propiedades, eficiencia, …
Al final de la sesión se explicarán todos detalles del entregable final (Seminario 5). El enunciado completo está disponible en el Campus Virtual.
Entrega: Fichero en PDF al email: [email protected] Nombre del fichero : Seminario4_grupoXX.pdf, donde XX es el número completo de vuestro grupo (por ejemplo: 41_1_1).
Datos en el encabezamiento del documento: título: Seminario 4, nombre y dos apellidos de todos los miembros que conforman el grupo, sus respectivos NIUs y el nombre completo del grupo.
Al grupo que entregue el documento sin estos datos, no se le evaluará el entregable!!!
Fecha límite Seminario 4 : 15:00 del 09/05/2016. Fecha límite Seminario 5 : 15:00 del 18/05/2016.