02/12/2009 Elaborado por Juan Antonio Danilow Fragachan.

Slides:



Advertisements
Presentaciones similares
IBD Clase 8.
Advertisements

Jacqueline Chávez Cuzcano
Generación de variables aleatorias
Diseño y análisis de algoritmos
Diseño y análisis de algoritmos
Números Aleatorios Simulación.
Planificación de Monoprocesadores
Generación de Números Seudo-Aleatorios
Simulación Dr. Ignacio Ponzoni
Estructura de Datos Hugo Araya Carrasco Hugo Araya Carrasco.
Grupo 4 Matías Melgar Pablo Carbonell
Cooperación entre plantas y animales en múltiples niveles
Analisis deAlgoritmos
Resolución de Problemas Algoritmos y Programación
Método para resolver colisiones
Danilo Yáñez Alarcón. Avance II
COMPONENTIZACIÓN DE ALGORITMOS GENETICOS Y SU IMPLEMENTACIÓN EN UNA PLATAFORMA ABIERTA PARA APRENDIZAJE COMPUTACIONAL.
Generación de Números y Variable aleatorias
PROGRAMACION DE ESTRUCTURAS DE DATOS
UNIVERSIDAD LATINA (UNILA) II.- ANALISIS DE ALGORITMOS
Muestreo Obtención de evidencia confiable y pertinente, suficiente para brindar una base razonable sobre la cual emitir una opinión. Procedimientos que.
M.I.A Daniel Alejandro García López.  Primer componente: Arreglo de cubetas.- Es una arreglo A de tamaño N, en el que se puede considerar que cada celda.
Definición Los Algoritmos Genéticos son métodos adaptativos que pueden usarse para resolver problemas de búsqueda y optimización. los Algoritmos Genéticos.
Almacenamiento y Recuperacion de Información TAD_ABB Ana Lilia Laureano Cruces Universidad Autónoma Metroplotiana.
Reguladores Autoajustables (STR) Introducción ANTE EL CASO DE UN PROCESO NO LINEAL O CUYOS PARÁMETROS CAMBIEN CON EL TIEMPO, SE PLANTEA UNA ESTRUCTURA.
NUMEROS PSEUDO ALEATORIOS
Taller de Base de Datos Búsqueda de Reglas de Asociación Agrawal, Imielinski, Swami. “Mining Association Rules Between Sets for items in Large Databases”,
Análisis y Diseño de Algoritmos
MÉTODO BOOTSTRAP Considere una muestra aleatoria de tamaño n = 10 con las siguientes observaciones: X1 = -2.41, X2 = 4.86, X3 = 6.06, X4 = 9.11 X5 = 10.2,
OBJETIVOS Determinar si existe en los Servicios de Urgencia de la Comunidad Autónoma de Cantabria un documento, en formato póster, que recoja el protocolo.
HAWKES LEARNING SYSTEMS math courseware specialists Copyright © 2010 by Hawkes Learning Systems/Quant Systems, Inc. All rights reserved. Capítulo 12 Más.
Algoritmos.
 La empresa que he escogido es el Supermercado Betancur, en esta empresa no hay una dependencia directa encargada del manejo de la documentación, hay.
Estructura de Datos II Equipo 4 Equipo 7 Acosta Montiel Miguel A.
Tablas de Hash.
(Organización y Manejo de Archivos)
Diseños, diagramas y tablas
Continuación Unidad 3 Generación de variables aleatorias.
Generación de variables aleatorias
OSCILADORES DE INTEGRACIÓN Y DISPARO
Un número aleatorio es aquel obtenido al azar, es decir, que todo número tenga la misma probabilidad de ser elegido y que la elección de uno no dependa.
METODOS CUANTITATIVOS PARA LA TOMA DE DECISIONES
Simular: Representar una cosa, fingiendo o imitando lo que no es.
Son la base para la búsqueda de soluciones o problemas comunes en el desarrollo de software y otros ámbitos referentes al diseño de interacción o interfaces.
Descifrado de un hash mediante Fuerza Bruta: GPU vs CPU
Agustín J. González ELO320: Estructura de Datos y Algoritmos
Unidad 1. PROGRAMACION ALGORITMICA
Modelos de Sistemas con
ESTADÍSTICA DESCRIPTIVA
Análisis y Diseño de Algoritmos
TPE 1 - Sistemas de Producción: Rolling Cubes Sistemas de Inteligencia Artifcial Bergez, Brasca y García.
SIG. LAURA VELAZQUEZ MORELOS. Hace referencia a un refrán que implica resolver un problema difícil, dividiéndolo en partes más simples tantas veces como.
1 Tablas HASH Agustín J. González ELO320: Estructura de Datos y Algoritmos.
1. 2 Problema Telemóviles, una gran companía de telefonía, requiere mejorar la capacidad de identificación del usuario que llama: –dado un número de usuario,
Modelación de Datos de Entrada
Práctica No. 5 Lectura de datos en Excel. Objetivo Que el estudiante sea capaz de conocer y aplicar las técnicas de lectura de datos en Excel y graficar.
Francisco Gamboa Herrera Tanya Pérez Herrera 26 Noviembre 2010.
OBJETIVOS Determinar si existe en los Servicios de Urgencia de la Comunidad Autónoma de Cantabria un documento, en formato póster, que recoja el protocolo.
Maracaibo, 26 de Mayo de 2006 Universidad del Zulia Facultad de Ingeniería División de Postgrado Maestría en Computación Aplicada Universidad del Zulia.
DISEÑAR Y ELABORAR ALGORITMOS Nombre: anayeli hernandez peralta Grado y grupo: 1 “3” Materia: Informática y computación Maestro: Ángel Buendía Turno: Vespertino.
AUTONOMA SAN FRANCISCO

ESTE TERMINO SE DEFINE COMO : UN PROCESO EN EL CUAL SE NOS DESCRIBE UN PROBLEMA (EN LENGUAJE NATURAL), LUEGO DE ESTO SE PLANTEAN POSIBLES RESOLUCIONES.
Marco de Trabajo para Indexación, Clasificación y Recopilación Automática de Documentos Digitales Javier Caicedo Espinoza Gonzalo Parra Chico.
Modelos de líneas de espera ó Teoría de colas.
Diseño experimental I.
Generación de Variables Aleatorias
Simulacion. Simulación Es la construcción de modelos informáticos que describen la parte esencial del comportamiento de un sistema de interés, así como.
José Luis Vergara Soberanis..   Una tabla hash requiere mucho menos espacio de almacenamiento si el conjunto K es mucho menos pequeño que el universo.
FUNCIÓN CUADRÁTICA—FUNCIÓN LINEAL.
Transcripción de la presentación:

02/12/2009 Elaborado por Juan Antonio Danilow Fragachan

1/15 HASHING UNIVERSAL ALGORITMOS ONLINE CONCLUSIONES MOTIVACIÓN minutos

2/15 Escoger una estrategia al azar Encontrar un caso que sea “difícil” para todos lo algoritmos planteados o un grupo de ellos. Algoritmos Determinísticos Casos que estresan el comportamiento de un algoritmo determínistico dado Algoritmo Input (entrada) Diseñador de AlgoritmosAdversario

3/ … … i … m – 1 a2 a3a5 a2 T h U S a1 a5 a2 a3 a4 slot (tabla de hash) Mapping(S)=O(|S|/|T|) h debe ser computada eficientemente leer las anotaciones de la presentación

4/ … … i … m – 1 a2 a3a5 a2 T h U S a1 a5 a2 a4 slot (tabla de hash) Se requiere Prob (h(x)=i)=1/m (Distribución uniforme) S se escoge aleatoriamente, puede no haber una distribución uniforme a3 U h,i Búsqueda lineal L-elementos (L/2 en promedio)

5/15 (i) Distribución uniforme y n=m  Prob (colisión)<1/2 Sea |S|=n y |T|=m Definición: colisión el hecho de que dos elementos sean asignados a un mismo slot L La probabilidad que mas de una clave sea asignada al mismo slot es menor a 1/2

6/15 (ii) Distribución uniforme  De un conjunto S escogido aleatoriamente, el número esperado de elementos para ser asignado a un slot L es a lo sumo n/m+1 (ii) Distribución uniforme  De un conjunto S escogido aleatoriamente, el número esperado de elementos para ser asignado a un slot L es a lo sumo n/m+1 Sea |S|=n y |T|=m Si exactamente k elementos son asignados a un mismo slot L, existen C(k,2) colisiones en dicho slot. Igualando, Finalmente,

7/15 No toda la data en el Universo del discurso está distribuido uniformemente. Supongamos una empresa donde se registre el género de los empleados y que todos sus empleado sean mujeres. =n =0 De igual forma podríamos demostrar que los cumpleaños no son distribuidos uniformemente a lo largo de un año. Por esta razón la escogencia de funciones hash aleatoriamente sobre el conjunto total de funciones en U podría no tender a computar eficientemente el input del adversario (bad input) U S U S H S U Datos UniformesDatos NO Uniformes Selección Inteligente de las Posibles h y es llamado Universal sii k<|H|/m+1 leer las anotaciones de la presentación

8/15 Sol(input) X1X2X3X4X5…XnX1X2X3X4X5……Xn SolParcial X1X2X3X4X5 ……Xn SolParcial Solución ¿Cómo preparar una estrategia eficiente para estos casos? Dado una solución parcial el adversario es capaz de preparar su próxima jugada para ganar.

9/ Minimizar el tiempo de espera promedio por doctor Minimizar el tiempo máximo de espera Otros ejemplos: Problema del Pagineo Problemas de Scheduling

10/15 Remitiendo al problema TSP, en un grafo “full conected” en donde existe una arista por cada par de nodos (ciudades) podemos notar que existes (n-1)!/2 posibles soluciones por lo tanto no basta con sólo hallar la solución sino de manera eficiente Definamos Opt(I) el costo de la solución optima para el input I. Definamos cost (Sol(I)) el costo de la solución encontrada por el algoritmo online Podemos definir un radio de comparación que nos muestre que tan lejos estamos del costo optimo.

11/15 tiempo operación53533   73 cache lectura tiempo operación107  330   3030   7373   30 cache lectura costo =4 costo =7

12/15 tiempo operación53533535535335355353353553533535 cache lectura Supongamos que tenemos en cache pagina C= 1,2…. k Se requiere leer k+1, luego para todo c є C, el adversario requiere leer la pagina que fue llevada a memoria principal en el paso anterior. Cost(Sol)=k Luego podemos ver que Opt = 1 ya que todas las paginas las tenemos desde un principio excepto k+1. Finalmente comp (I) = k, los cual nos indica que la solución online es k% veces peor que la solución optima. ¿Qué podemos hacer? Conocer el problema, saber que las ultimas páginas cargadas en cache tienen mayor probabilidad de ser leídas y hacer uso de algoritmos aleatorizados.

13/15 Supongamos una fabrica con n diferentes estaciones de trabajo, las cuales corresponden a máquinas que pueden llevar a cabo una tarea. Supongamos que n=4 y que existen dos cliente A1 y A2 que requieren el siguiente procesamiento: A1 = (1,2,3,4), A2 = (3,2,1,4) s s t A1 A2 Estrategia: Tratar de llegar de S a T sin desviarse de la diagonal principal. s s t A1 A2 Adversario: supongamos que sólo sabemos la tarea inicial. Entonces, por cada movida del algoritmo diseñado el adversario coloca un obstáculo en frente.

14/15 Sabiendo que se puede demostrar que la mejor solución del algoritmo anterior, en el caso de conocerse el input completo desde un principio es de m + sqrt (m). Además sabiendo que el costo de un algoritmo aleatorizado es de m + m/4 y que en inputs de gran tamaño ambos algoritmos se comportan igual (en costo). Entonces hemos encontrado una buena solución. Sin perdida de generalidad suponemos que m=k*k. Puede demostrarse que existen 2k+1 estrategias de diagonal posibles para completar las tareas. Suponiendo que en m tareas existen 1 que es la de peor caso, entonces la probabilidad de escoger dicha diagonal de manera aleatorizada es 1/(sqrt(m)+1) d 2d g h ¿Como convencernos con nuestro argumento? Tratemos de ver si aquellas soluciones que son dos veces menos eficientes que la solución promedio es menor que aquellas que se acercan al promedio.

15/15