3. Técnicas de diseño de algoritmos

Tamaño: px
Comenzar la demostración a partir de la página:

Download "3. Técnicas de diseño de algoritmos"

Transcripción

1 3. Técnicas de diseño de algoritmos 1. Métodos Generales de Soluciones de Problemas 2. Técnicas de diseño de algoritmos 1. ecursividad básica 2. Divide y vencerás 3. Backtracking Bibliografía Aho, Hopcroft y Ullman, ap. 10 Brassard y Bratley, aps. 7 y 9 airó y Guardati, ap. 4 Weiss, aps. 1 y 10 Wirth, ap Métodos Generales de Solución de Problemas (GPSM) Existen problemas tipo o clases de problemas genéricos: - dar el cambio, el problema de la mochila,... (optimización) - el problema del viajante, el problema de las N-reinas,... (búsqueda) Buscamos algoritmos genéricos Existen técnicas o algoritmos eficientes para abordarlos: divide y vencerás, backtracking algoritmos voraces (greedy), programación dinámica Solución: a qué clase pertenece el enunciado de un problema dado? 1

2 ecursividad básica como método de diseño de soluciones Definiciones recursivas sencillas Fácil obtener equivalente iterativo Ejemplos que ya hemos visto: -factorial, - términos de Fibonacci, eglas fundamentales para resolver un problema mediante recursión 1. ASOS BASE Deben existir algún/algunos casos base que se puedan resolver sin recursión 2. POGESO Los casos que se resuelven de forma recursiva deben progresar hacia algún caso base 3. EGLA DE DISEÑO Supóngase que todas las llamadas recursivas van a funcionar 4. EGLA DE INTEÉS OMPUESTO El trabajo nunca se debe duplicar Técnica Divide y Vencerás Bibliografía (Divide and conquer): Weiss, ap. 10, Brassard y Bratley, ap, 7, Aho, Hopcroft y Ullman, ap. 10) Las Torres de Hanoi Llevar todos los discos del poste 1 al 2; sólo se puede mover un disco de cada vez; nunca puede haber un disco más grande sobre uno más pequeño: 20 discos x 1 minuto x disco minutos 7281 días 19,95 años 2

3 Podemos especificar un algoritmo iterativo que nos diga cómo mover los discos? A poste inicial, B poste auxiliar, poste destino Solución: disponer los postes: A B A, de tal forma que se puedan mover los bloques circularmente mover la pieza pequeña un número impar de veces en el sentido de las agujas del reloj realizar el único movimiento válido que no implique al disco más pequeño con un número de movimientos pares Divide y Vencerás Dado un problema arbitrariamente grande y un algoritmo ad hoc (denominado sub-algoritmo) que lo resuelve de forma eficiente para un caso (arbitrariamente) pequeño Algoritmo DV (x, sol) es x: T; {par. dato;} sol:v; {par. dato-resultado;} INIIO si x es suficientemente pequeño o sencillo entonces ad hoc (x, sol); sino {dividir el problema x en r sub-problemas} descomponer x en x 1, x 2,..., x r ; para i desde 1 hasta r hacer DV (x i, sol i ); fin para; recombinar las sol i para obtener sol; finsi FIN 3

4 En algunos casos es necesario modificar el esquema anterior, e ir obteniendo progresivamente la solución general, sol, a partir de las soluciones parciales, sol i Algoritmo DV (x, sol) es x: T; {par. dato;} sol: V; {par. dato-resultado;} INIIO si x es suficientemente pequeño o sencillo entonces ad hoc (x, sol); sino {dividir el problema en r sub-problemas} descomponer x en x 1, x 2,..., x r ; para i desde 1 hasta r hacer DV (x i, sol i ); recombinar sol i para obtener sol; {sol es una solución parcial} fin para; {sol es la solución final} fin si FIN El para puede no ser necesario (p.e. si hay 2 sub-ejemplares) Torres de Hanoi (solución recursiva): Mover 2 discos desde Origen hasta Destino usando Aux como auxiliar OIGEN DESTINO AUX 4

5 Torres de Hanoi (solución recursiva): Mover 3 discos desde Origen hasta Destino usando Aux como auxiliar OIGEN DESTINO AUX Principio de diseño: supongamos que sabemos la solución para N-1 discos Torres de Hanoi: Mover n discos desde Origen hasta Destino usando Aux como auxiliar Solución recursiva: Disponer los postes: Origen Destino Aux Los discos se numeran 1, 2,..., n-1, n de menor a mayor aso básico: Sólo se mueve un disco desde origen a destino aso general: 1. Mover n-1 discos más pequeños desde Origen hasta el auxiliar, Aux 2. Mover el disco más grande, n, desde Origen hasta Destino 3. Mover los n-1 discos desde Aux hasta Destino 5

6 El número de sub-ejemplares x r debe ser r > 1 Si r = 1, no se habla de Divide y Vencerás, sino de educción Ejemplos de educción: - Búsqueda binaria o dicotómica - Exponenciación (a n ) álculo de la potencia a n de un número Solución iterativa Algoritmo pot_it (a, n, pot) es a, n: {p. dato}numérico; pot {p. resultado}: numérico; i: numérico; INIIO pot := 1; para i desde 1 hasta n hacer pot := pot * a; fin para FIN Exponenciación (a n ), solución recursiva solución de pot (a, n) {casos básicos} es 1 si n = 0 es a si n = 1 {casos generales: sub-ejemplares} es (a n/2 ) (a n/2 ) si n es par es a (a n-1 ) si n es impar ada sub-ejemplar se soluciona con una llamada recursiva omprueba cuál es el número de multiplicaciones que se hace cuando: n=7 n=15 qué método hace menos multiplicaciones? cuándo podría ser útil? 6

7 Solución recursiva Algoritmo pot_r (a, n, pot) es a, n: numérico; {p. dato} pot: numérico; {p. resultado} INIIO {casos básicos} si n = 0 entonces pot := 1; sino si n = 1 entonces pot := a; sino {casos generales} si n mod 2 = 0 entonces pot_r (a, n div 2, pot); pot := pot * pot; sino {a es impar} pot_r (a, n-1, pot); pot := a * pot; finsi {casos generales} finsi {caso básico 2} finsi {caso básico 1} FIN Técnica de etroceso o Backtracking Bibliografía: Wirth, ap. 3.4 ussell y Norvig, Bloque II. ap. 3 Brassard y Bratley, ap. 9.6 Una de las técnicas de solución de problemas es la búsqueda (relacionado con temas de Grafos y Árboles) Hemos visto casos muy sencillos: búsqueda asociativa y búsqueda binaria, aplicadas sobre estructuras de datos lineales 7

8 La solución de problemas mediante búsqueda consiste en: representar el problema mediante un estado (configuración), definir el conjunto de operadores o acciones que nos permiten modificar el estado (configuración), especificar una estrategia de búsqueda de la secuencia de operaciones que nos lleven del estado inicial (configuración inicial en la definición del problema) a un estado meta (que se corresponda con una solución al problema) Formulando los problemas de esta manera definimos (implícitamente ) un grafo (particularmente un árbol) Encontrar la solución al problema consiste en recorrer el árbol o grafo buscando un nodo (o conjunto de nodos) meta (solución) Ejemplos de problemas tipo que se solucionan mediante búsqueda N einas: se pueden disponer N reinas/damas en un tablero de ajedrez sin que se ataquen? 8

9 9 Los métodos deben ser exhaustivos, pero además pueden ser: no informados o informados irrevocables (anchura o profundidad) que recorren TODA la estructura sin replantearse decisiones intermedias o tentativos, como el retroceso puzzle

10 Búsqueda con retroceso Modificación de la búsqueda en profundidad Método tentativo: prueba y error Explora sub-problemas, intentando podar el espacio de búsqueda Ejemplo: Amueblar una casa nueva Disponemos de un conjunto de muebles Solución exhaustiva: Prueba todas las combinaciones posibles Solución tentativa: Sabemos que existen disposiciones que no pertenecen a la solución final deseada: Frigorífico en el salón Sofá en la cocina ama en el baño No es necesario estudiar configuraciones que las contengan LOS MOVIMIENTOS DEL ABALLO DE AJEDEZ Puede recorrerse exhaustivamente un tablero de ajedrez usando los movimientos del caballo y pasando una única vez por cada casilla? 10

11 No sabemos, a priori, si existe solución 8 x 8 posiciones iniciales 8 posibles desplazamientos en cada nueva jugada omplejidad exponencial Solución más sencilla: Probar una nueva jugada Anotarla, como parte de la posible solución, si se puede avanzar Descartar la jugada si no puede avanzar, quitándola de la posible solución ETOESO: desandamos el camino, paso a paso, cuando no podemos avanzar Algoritmo genérico de retroceso Número de movimientos (jugadas) posibles es finito en cada paso Algoritmo Ensayar_etroceso es Inicio Inicializar conjunto posibles movimientos; {para nivel actual de la solución} repetir seleccionar siguiente movimiento; {de este nivel} si aceptable entonces anotarlo; {como parte solución hasta ahora} si solución incompleta entonces Ensayar_etroceso; {siguiente nivel} si no hubo éxito entonces cancelar anotación; {retroceso, se elimina última anotación de la solución} finsi; fin si; { solución incompleta?} fin si; { aceptable?} hasta que éxito o no haya más posibilidades Fin 11

12 Puede acotarse la profundidad de búsqueda Pueden indicarse número máximo de candidatos por nivel Esta versión ya NO ES EXHAUSTIVA Algoritmo Ensayar_etroceso_2 (nivel) es nivel: numérico; {p. dato-resultado} k: numérico; {número de candidatos por nivel} Inicio Inicializar conjunto posibles movimientos; k := 0; repetir k := k + 1: seleccionar movimiento k-ésimo; si aceptable entonces anotarlo; {como parte solución hasta ahora} si solución incompleta AND nivel < n entonces Ensayar_etroceso_2 (nivel + 1); si no hubo éxito entonces cancelar anotación; finsi; fin si { solución incompleta?} fin si { aceptable?} hasta que éxito o k = m {nº máximo candidatos} Fin ecorrido del tablero con el caballo Estructuras básicas {tipo} Tablero = vector[1..8,1..8] de numérico; {Variables} T: Tablero; { T(x,y) = 0; si no ha sido visitada T(x,y) = i; si ha sido visitada en la jugada i (1 i n 2 )} resp: lógico; {ierto=éxito, Falso= fracaso} Siguiente jugada o movimiento oordenadas (u, v) a partir de las actuales (x,y) i := i + 1 Jugada aceptable T(u,v) = 0 AND 1 u n y 1 v n Éxito i = n 2 12

13 Algoritmo ensayar_caballo_ (i, x, y, resp, T) es i, x, y: numérico; {p. dato-resultado} resp: lógico; {p. resultado} T: Tablero; {p. dato-resultado} J: Jugadas; {variable interna} u, v: numérico; {variable interna} resp2: lógico; {variable interna} Inicio alcular_jugadas_posibles (J, x, y); repetir alcular_siguiente (J, u, v); si 1 u and u n and 1 v and v n and T(u, v) = 0 entonces T(u, v) := i; {provisionalmente} si i < n 2 entonces ensayar_caballo_(i+1,u, v, resp2, T); si resp2 = falso entonces T(u,v) := 0; {retroceso} finsi; {not resp2} sino resp2 := cierto; finsi; { llegó solución?} finsi; { jugada aceptable?} hasta que resp2 = cierto O no haya más jugadas; resp := resp2; Fin Ejercicio: Plantead una solución utilizando retroceso para el problema de las 8-reinas 13

Ejemplo: El problema de la mochila. Algoritmos golosos. Algoritmos y Estructuras de Datos III. Segundo cuatrimestre 2013

Ejemplo: El problema de la mochila. Algoritmos golosos. Algoritmos y Estructuras de Datos III. Segundo cuatrimestre 2013 Técnicas de diseño de algoritmos Algoritmos y Estructuras de Datos III Segundo cuatrimestre 2013 Técnicas de diseño de algoritmos Algoritmos golosos Backtracking (búsqueda con retroceso) Divide and conquer

Más detalles

ÍNDICE INTRODUCCIÓN...13

ÍNDICE INTRODUCCIÓN...13 ÍNDICE INTRODUCCIÓN...13 CAPÍTULO 1. LENGUAJE ALGORÍTMICO...15 1.1 DEFINICIÓN DE ALGORITMO...16 1.2 LA ROTACIÓN DE UNA LISTA DE NÚMEROS NATURALES...20 1.3 CUESTIONES...23 1.3.1 Dos comerciales en el restaurante...23

Más detalles

Estado 3.2 (coste = 9)

Estado 3.2 (coste = 9) Búsqueda heurística Fernando Berzal, berzal@acm.org Búsqueda heurística Búsqueda primero el mejor p.ej. búsqueda de coste uniforme [UCS] Heurísticas Búsqueda greedy El algoritmo A* Heurísticas admisibles

Más detalles

Estrategias de Diseño de Algoritmos

Estrategias de Diseño de Algoritmos Estrategias de Diseño de Algoritmos Introducción A través de los años, los científicos de la computación han identificado diversas técnicas generales que a menudo producen algorit mos eficientes para la

Más detalles

Complejidad computacional (Análisis de Algoritmos)

Complejidad computacional (Análisis de Algoritmos) Definición. Complejidad computacional (Análisis de Algoritmos) Es la rama de las ciencias de la computación que estudia, de manera teórica, la optimización de los recursos requeridos durante la ejecución

Más detalles

Problema de las N Reinas. Resolución paralela

Problema de las N Reinas. Resolución paralela Problema de las N Reinas Resolución paralela Indice Introducción al problema Representación y Soluciones Resolución secuencial Resolución paralela Conclusiones Bibliografía 2 3 Introducción Introducción

Más detalles

UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO.

UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO. UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO. TRUJILLO Recursividad: La recursividad es una técnica de programación

Más detalles

Introducción a la Computación (para Matemática) Primer Cuatrimestre de 2015

Introducción a la Computación (para Matemática) Primer Cuatrimestre de 2015 Primer Cuatrimestre de 2015 Docentes: Agustín Gravano (Profesor) Hernán Czemerinski (JTP) Thomas Fischer (Ayudante de 1ra) Luciano Leveroni (Ayudante de 2da) Clase de hoy: Cuestiones administrativas: horarios,

Más detalles

Tema 2. Recursividad. Fundamentos de Programación II. Luís Rodríguez Baena (luis.rodriguez@upsam.net)

Tema 2. Recursividad. Fundamentos de Programación II. Luís Rodríguez Baena (luis.rodriguez@upsam.net) Fundamentos de Programación II Tema 2. Recursividad Luís Rodríguez Baena (luis.rodriguez@upsam.net) Universidad Pontificia de Salamanca (campus Madrid) Escuela Superior de Ingeniería y Arquitectura Naturaleza

Más detalles

Algoritmos y Estructuras de Datos Curso 06/07. Ejercicios

Algoritmos y Estructuras de Datos Curso 06/07. Ejercicios 9..En un problema de backtracking estamos interesados en almacenar de forma explícita el árbol recorrido por el algoritmo. De cada nodo del árbol sólo necesitamos saber un número, que indica el orden en

Más detalles

Algoritmos glotones. mat-151

Algoritmos glotones. mat-151 Algoritmos glotones (greedy) mat-151 Alonso Ramirez Manzanares Computación y Algoritmos 04.06.2009 Algoritmos glotones Algoritmos utilizados en problemas de optimización. Estos algoritmos siguen típicamente

Más detalles

Grafos. Amalia Duch Brown Octubre de 2007

Grafos. Amalia Duch Brown Octubre de 2007 Grafos Amalia Duch Brown Octubre de 2007 Índice 1. Definiciones Básicas Intuitivamente un grafo es un conjunto de vértices unidos por un conjunto de líneas o flechas dependiendo de si el grafo es dirigido

Más detalles

Acuerdo 286 Matemáticas

Acuerdo 286 Matemáticas Acuerdo 286 Matemáticas Habilidad Matemática Fausto Zarate Melchor Habilidad Matemática. La habilidad matemática se compone de dos tipos de habilidad: la espacial y la numérica. a) Representación del espacio.

Más detalles

Programación Dinámica 1

Programación Dinámica 1 Programación Dinámica 1 El método de programación dinámica sirve para resolver problemas combinando las soluciones de subproblemas. Normalmente es usada para resolver problemas de optimización. Al construir

Más detalles

Alonso Ramírez Manzanares Computación y Algoritmos 10.03

Alonso Ramírez Manzanares Computación y Algoritmos 10.03 Recursividad mat-151 1 Ejercicio de recursión: dibujando una regla Queremos dibujar las marcas de diferentes tamaños de una regla. Marcas grandes cada 1/2 cm, marcas más pequeñas cada 1/4 cm... hasta una

Más detalles

4ta. Práctica. Búsqueda en árbol con contrincante: MiniMax con poda Alfa-Beta. Inteligencia Artificial Prácticas 2004/2005

4ta. Práctica. Búsqueda en árbol con contrincante: MiniMax con poda Alfa-Beta. Inteligencia Artificial Prácticas 2004/2005 4ta. Práctica Búsqueda en árbol con contrincante: MiniMax con poda Alfa-Beta Inteligencia Artificial Prácticas 2004/2005 Decisiones Perfectas en Juegos de DOS Participantes Definición de Juego Estado Inicial:

Más detalles

Exterior del algoritmo. Entorno. Usuario. Procesador. Escribir. v1 v2 v3. Leer. <acción> {; <acción>}

Exterior del algoritmo. Entorno. Usuario. Procesador. Escribir. v1 v2 v3. Leer. <acción> {; <acción>} Bloque II. 2. Objetos y acciones elementales Bloque II. 2. Objetos y acciones elementales Objetivos: Familiarizarse con conceptos de entorno, objeto y tipo Entender qué significa que un objeto sea de un

Más detalles

MODELOS DE COMPUTACION I Preguntas Tipo Test. 1. El lema de bombeo puede usarse para demostrar que un lenguaje determinado es regular.

MODELOS DE COMPUTACION I Preguntas Tipo Test. 1. El lema de bombeo puede usarse para demostrar que un lenguaje determinado es regular. MODELOS DE COMPUTACION I Preguntas Tipo Test Indicar si son verdaderas o falsas las siguientes afirmaciones: 1. El lema de bombeo puede usarse para demostrar que un lenguaje determinado es regular. 2.

Más detalles

Semana de las Matemáticas e Ingeniería. Desarrollo de algoritmos recursivos empleando la aplicación PseInt

Semana de las Matemáticas e Ingeniería. Desarrollo de algoritmos recursivos empleando la aplicación PseInt Semana de las Matemáticas e Ingeniería Desarrollo de algoritmos recursivos empleando la aplicación PseInt 21 de Noviembre de 2013 Agenda Desarrollo de algoritmos recursivos empleando la aplicación PSeInt

Más detalles

7.4. UTILIDADES DE LAS PILAS

7.4. UTILIDADES DE LAS PILAS 7.4. UTILIDADES DE LAS PILAS o Llamadas a subprogramas o Paso de programas recursivos a iterativos o Un caso especial, quick_sort iterativo. o Equilibrado de símbolos o Tratamiento de expresiones aritméticas

Más detalles

Tema 3. Análisis de costes

Tema 3. Análisis de costes Tema 3. Análisis de costes http://aulavirtual.uji.es José M. Badía, Begoña Martínez, Antonio Morales y José M. Sanchiz {badia, bmartine, morales, sanchiz}@icc.uji.es Estructuras de datos y de la información

Más detalles

Algoritmos y programas. Algoritmos y Estructuras de Datos I

Algoritmos y programas. Algoritmos y Estructuras de Datos I Algoritmos y programas Algoritmos y Estructuras de Datos I Primer cuatrimestre de 2012 Departamento de Computación - FCEyN - UBA Programación funcional - clase 1 Funciones Simples - Recursión - Tipos de

Más detalles

Inteligencia Artificial

Inteligencia Artificial Inteligencia Artificial Tema 2 Búsquedas Ivan Olmos Pineda Contenido Estructura General de un PSA Formulación de un PSA Algoritmos de Búsqueda de Soluciones Aplicaciones BUAP Inteligencia Artificial 2

Más detalles

Algoritmos y Estructuras de Datos

Algoritmos y Estructuras de Datos PLANIFICACIÓN 2013 Algoritmos y Estructuras de Datos INFORMACIÓN GENERAL Carrera Ingeniería en Informática Departamento Informática Plan de Estudios Plan 2006 Docente Responsable Mario Alberto Storti Carga

Más detalles

Algoritmos para determinar Caminos Mínimos en Grafos

Algoritmos para determinar Caminos Mínimos en Grafos Problemas de camino mínimo Algoritmos para determinar Caminos Mínimos en Grafos Algoritmos y Estructuras de Datos III DC, FCEN, UBA, C 202 Problemas de camino mínimo Dado un grafo orientado G = (V, E)

Más detalles

Desigualdades o inecuaciones lineales en una variable. Prof. Caroline Rodriguez Departamento de Matemáticas UPR - Arecibo

Desigualdades o inecuaciones lineales en una variable. Prof. Caroline Rodriguez Departamento de Matemáticas UPR - Arecibo Desigualdades o inecuaciones lineales en una variable Prof. Caroline Rodriguez Departamento de Matemáticas UPR - Arecibo Desigualdades Una desigualdad o inecuación usa símbolos como ,, para representar

Más detalles

A B MIN C D E F MAX x E.T.S.I. INFORMÁTICA 4º CURSO. INTELIGENCIA ARTIFICIAL E INGENIERÍA DEL CONOCIMIENTO

A B MIN C D E F MAX x E.T.S.I. INFORMÁTICA 4º CURSO. INTELIGENCIA ARTIFICIAL E INGENIERÍA DEL CONOCIMIENTO E.T.S.I. INFORMÁTICA 4º CURSO. INTELIGENCIA ARTIFICIAL E INGENIERÍA DEL CONOCIMIENTO UNIVERSIDAD DE MÁLAGA Dpto. Lenguajes y Ciencias de la Computación RELACIÓN DE PROBLEMAS. TEMA IV. PROBLEMAS DE JUEGOS.

Más detalles

Resolución de problemas de búsqueda

Resolución de problemas de búsqueda Resolución de problemas de búsqueda Memoria de Prácticas de Segunda Entrega 26 de noviembre de 2007 Autores: Mariano Cabrero Canosa cicanosa@udc.es Elena Hernández Pereira elena@udc.es Directorio de entrega:

Más detalles

Factorización de polinomios FACTORIZACIÓN DE POLINOMIOS

Factorización de polinomios FACTORIZACIÓN DE POLINOMIOS FACTORIZACIÓN DE POLINOMIOS 1. Polinomios Un monomio es el producto de un número real por una o más letras que pueden estar elevadas a exponentes que sean números naturales. La suma de los exponentes de

Más detalles

I. Complejidad de Problemas

I. Complejidad de Problemas I. Complejidad de Problemas 1. Complejidad de Problemas Tópicos Clasificación de Problemas Clasificación por su Naturaleza Clasificación por su Tratabilidad Clasificación por el tipo de Respuesta 1.1 Clasificación

Más detalles

Estructuras en LabVIEW.

Estructuras en LabVIEW. Estructuras en LabVIEW. Sumario: 1. Ejecución según el flujo de datos. 2. Estructuras básicas disponibles en LabVIEW. a) Estructura Sequence. b) Estructura Case. c) Estructura For Loop. d) Estructura While

Más detalles

Benemérita Universidad Autónoma de Puebla

Benemérita Universidad Autónoma de Puebla Tarea No. 1 Matemáticas Elementales Profesor Fco. Javier Robles Mendoza Benemérita Universidad Autónoma de Puebla Facultad de Ciencias de la Computación Lógica y Conjuntos 1. Considere las proposiciones

Más detalles

La eficiencia de los programas

La eficiencia de los programas La eficiencia de los programas Jordi Linares Pellicer EPSA-DSIC Índice General 1 Introducción... 2 2 El coste temporal y espacial de los programas... 2 2.1 El coste temporal medido en función de tiempos

Más detalles

UNIVERSIDAD MAYOR DE SAN SIMÓN FACULTAD DE CIENCIAS Y TECNOLOGÍA INGENIERÍA DE SISTEMAS BÚSQUEDA PRIMERO EL MEJOR

UNIVERSIDAD MAYOR DE SAN SIMÓN FACULTAD DE CIENCIAS Y TECNOLOGÍA INGENIERÍA DE SISTEMAS BÚSQUEDA PRIMERO EL MEJOR UNIVERSIDAD MAYOR DE SAN SIMÓN FACULTAD DE CIENCIAS Y TECNOLOGÍA INGENIERÍA DE SISTEMAS BÚSQUEDA PRIMERO EL MEJOR INTEGRANTES: Caricari Cala Aquilardo Villarroel Fernandez Fructuoso DOCENTE: Lic. Garcia

Más detalles

CI-6675 Algoritmos y Estructuras Optimizadas para Videojuegos

CI-6675 Algoritmos y Estructuras Optimizadas para Videojuegos Especialización en Creación y Programación de Videojuegos CI-6675 Algoritmos y Estructuras Optimizadas para Videojuegos Agenda de hoy Juegos Combinatorios Información en un Juego La suma de un Juego s

Más detalles

El conjunto de las operaciones de simetría que se pueden aplicar a una molécula tienen las propiedades de un grupo matemático.

El conjunto de las operaciones de simetría que se pueden aplicar a una molécula tienen las propiedades de un grupo matemático. TEORIA DE GRUPOS El conjunto de las operaciones de simetría que se pueden aplicar a una molécula tienen las propiedades de un grupo matemático. Propiedades de un grupo Existe un operador identidad (E)

Más detalles

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

Tema 2 Conceptos básicos de programación. Fundamentos de Informática Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis

Más detalles

Planificaciones Algoritmos y Programación II. Docente responsable: CALVO PATRICIA MABEL. 1 de 6

Planificaciones Algoritmos y Programación II. Docente responsable: CALVO PATRICIA MABEL. 1 de 6 Planificaciones 7504 - Algoritmos y Programación II Docente responsable: CALVO PATRICIA MABEL 1 de 6 OBJETIVOS Que el alumno maneje de modo correcto el diseño de un TDA de acuerdo a las exigencias de una

Más detalles

Algoritmos y estructuras de datos

Algoritmos y estructuras de datos Algoritmos y estructuras de datos Dr. Eduardo A. Rodríguez Tello Laboratorio de Tecnologías de Información Cinvestav Tamaulipas ertello@tamps.cinvestav.mx Cursos de inducción a la MCC Cinvestav Tamaulipas

Más detalles

Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1

Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1 Prologo Agradecimientos Nota de los autores Índice general I III V VII 1 Problemas, algoritmos y programas 1 1.1 Programas y la actividad de la programación.................... 4 1.2 Lenguajes y modelos

Más detalles

Complejidad de los Algoritmos

Complejidad de los Algoritmos Que es un Algoritmo? Complejidad de los Algoritmos Webster: cualquier método especial para resolver cierta clase de problemas. Horowitz: método preciso utilizable en una computadora para la solución de

Más detalles

Introducción a la Teoría de Grafos

Introducción a la Teoría de Grafos Introducción a la Teoría de Grafos Flavia Bonomo fbonomo@dc.uba.ar do. Cuatrimestre 009 Programa Introducción a la teoría de grafos Problemas de camino mínimo Problemas de flujo máximo Programación lineal

Más detalles

Tipos algebraicos y abstractos. Algoritmos y Estructuras de Datos I. Tipos algebraicos

Tipos algebraicos y abstractos. Algoritmos y Estructuras de Datos I. Tipos algebraicos Algoritmos y Estructuras de Datos I 1 cuatrimestre de 009 Departamento de Computación - FCEyN - UBA Programación funcional - clase Tipos algebraicos Tipos algebraicos y abstractos ya vimos los tipos básicos

Más detalles

Algoritmos. Diseño de algoritmos por inducción. Alberto Valderruten. alberto.valderruten@udc.es. Dept. de Computación, Universidade da Coruña

Algoritmos. Diseño de algoritmos por inducción. Alberto Valderruten. alberto.valderruten@udc.es. Dept. de Computación, Universidade da Coruña Divide y Vencerás Diseño de algoritmos por inducción Dept. de Computación, Universidade da Coruña alberto.valderruten@udc.es Contenido Divide y Vencerás 1 Divide y Vencerás 2 Índice Divide y Vencerás 1

Más detalles

Práctica N o 8 Desigualdades Válidas - Algoritmos de Planos de Corte - Algoritmos Branch & Cut

Práctica N o 8 Desigualdades Válidas - Algoritmos de Planos de Corte - Algoritmos Branch & Cut Práctica N o 8 Desigualdades Válidas - Algoritmos de Planos de Corte - Algoritmos Branch & Cut 8.1 Para cada uno de los siguientes conjuntos, encontrar una desigualdad válida que agregada a la formulación

Más detalles

APUNTADORES. Un apuntador es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable.

APUNTADORES. Un apuntador es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable. APUNTADORES Un apuntador es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable. No hay que confundir una dirección de memoria con el contenido

Más detalles

Programación Lineal. Modelo de Redes. Alcance de las aplicaciones. Curso: Investigación de Operaciones Ing. Javier Villatoro

Programación Lineal. Modelo de Redes. Alcance de las aplicaciones. Curso: Investigación de Operaciones Ing. Javier Villatoro Programación Lineal Modelo de Redes Alcance de las aplicaciones Curso: Investigación de Operaciones Ing. Javier Villatoro ALCANCE DE LAS APLICACONES DE REDES ALCANCE DE LAS APLICACIONES Muchas situaciones

Más detalles

C a l ses P P y y NP C a l se P C a l se N P N P [No N n o -De D te t rmin i i n s i ti t c i Polynomial-tim i e]

C a l ses P P y y NP C a l se P C a l se N P N P [No N n o -De D te t rmin i i n s i ti t c i Polynomial-tim i e] Análisis y Diseño de Algoritmos Introducción Análisis y Diseño de Algoritmos Concepto de algoritmo Resolución de problemas Clasificación de problemas Algorítmica Análisis de la eficiencia de los algoritmos

Más detalles

Algoritmos y solución de problemas. Fundamentos de Programación Otoño 2008 Mtro. Luis Eduardo Pérez Bernal

Algoritmos y solución de problemas. Fundamentos de Programación Otoño 2008 Mtro. Luis Eduardo Pérez Bernal Algoritmos y solución de problemas Fundamentos de Programación Otoño 2008 Mtro. Luis Eduardo Pérez Bernal Introducción Departamento de Electrónica, Sistemas e Informática En las ciencias de la computación

Más detalles

Operadores lógicos y de comparación en programación. Not, and, or Ejemplos. (CU00132A)

Operadores lógicos y de comparación en programación. Not, and, or Ejemplos. (CU00132A) aprenderaprogramar.com Operadores lógicos y de comparación en programación. Not, and, or Ejemplos. (CU00132A) Sección: Cursos Categoría: Curso Bases de la programación Nivel I Fecha revisión: 2024 Autor:

Más detalles

Ruta más Corta con una sóla Fuente de Inicio (Single-Source Shortest Paths) DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE

Ruta más Corta con una sóla Fuente de Inicio (Single-Source Shortest Paths) DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE Ruta más Corta con una sóla Fuente de Inicio (Single-Source Shortest Paths) 1 DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE Problema de Encontrar la Ruta más Corta 2 Se requiere llegar de

Más detalles

Algoritmos y Estructuras de Datos III Segundo cuatrimestre 2011

Algoritmos y Estructuras de Datos III Segundo cuatrimestre 2011 Algoritmos y Estructuras de Datos III Segundo cuatrimestre 2011 Programa 1. Algoritmos: Definición de algoritmo. Máquina RAM. Complejidad. Algoritmos de tiempo polinomial y no polinomial. Límite inferior.

Más detalles

Distinguir las diferentes estructuras de repetición utilizadas en problemas con bucles: mientras, repetir mientras, para.

Distinguir las diferentes estructuras de repetición utilizadas en problemas con bucles: mientras, repetir mientras, para. ESTRUCTURAS ITERATIVAS 1 ESTRUCTURAS ITERATIVAS OBJETIVOS Aprender a resolver problemas mediante la ejecución repetida de una secuencia de proposiciones llamados bucle o estructuras repetitivas o iterativas.

Más detalles

Para definir en formalmente el juego se deberá establecer:

Para definir en formalmente el juego se deberá establecer: INTRODUCCION A LA INTELIGENCIA ARTIFICIAL MÓDULO 5- JUEGOS COMO PROBLEMA DE BÚSQUEDA Referencias: Inteligencia Artificial Russell and Norvig Cap.5. Artificial Intellingence Nils Nilsson Ch.3 Se trata el

Más detalles

Tema 2: Búsqueda. Formalización de la resolución de problemas Ejemplos Procedimiento general de búsqueda Estrategias de control Búsqueda heurística

Tema 2: Búsqueda. Formalización de la resolución de problemas Ejemplos Procedimiento general de búsqueda Estrategias de control Búsqueda heurística Tema 2: Búsqueda Formalización de la resolución de problemas Ejemplos Procedimiento general de búsqueda Estrategias de control Búsqueda heurística 1 Resolución de problemas: formalización CONCEPTO BÁSICO:

Más detalles

1. Conceptos básicos sobre el problema en cuestión y cuestiones afines. 2. Formulación de los correspondientes algoritmos y su pseudocódigo.

1. Conceptos básicos sobre el problema en cuestión y cuestiones afines. 2. Formulación de los correspondientes algoritmos y su pseudocódigo. Análisis de Algoritmos Ingeniería Informática, EPS-UAM Información general Organización del curso: 13-15 (mínimo-máximo) semanas docentes: 30-33 clases teóricas. 9-12 clases de problemas 26-30 clases prácticas

Más detalles

TEMA 7. EL TDA PILA. 7.1. Definición

TEMA 7. EL TDA PILA. 7.1. Definición TEM 7. EL TD PIL 7.1. Definición 7.2. Operaciones del TD PIL 7.3. Implementaciones más usuales: vectores y listas enlazadas 7.4. Utilidades de las Pilas ibliografía Weiss Cairó y Guardati ho, Hopcroft

Más detalles

El TAD Grafo. El TAD Grafo

El TAD Grafo. El TAD Grafo ! Esta representación resulta útil cuando el número de vértices se conoce previamente y permanecerá fijo durante la resolución del problema, pero resulta ineficiente si necesitamos añadir o eliminar vértices

Más detalles

El Juego como Problema de Búsqueda

El Juego como Problema de Búsqueda El Juego como Problema de Búsqueda En este algoritmo identificamos dos jugadores: max y min. El objetivo es encontrar la mejor movida para max. Supondremos que max mueve inicialmente y que luego se turnan

Más detalles

Metodología de la Programación II. Recursividad

Metodología de la Programación II. Recursividad Metodología de la Programación II Recursividad Objetivos Entender el concepto de recursividad. Conocer los fundamentos del diseño de algoritmos recursivos. Comprender la ejecución de algoritmos recursivos.

Más detalles

Programación NO Lineal (PNL) Optimización sin restricciones

Programación NO Lineal (PNL) Optimización sin restricciones Programación NO Lineal (PNL) Optimización sin restricciones Ejemplos de los problemas que se aplica la programación NO Lineal: Problema de transporte con descuentos por cantidad : El precio unitario de

Más detalles

La segunda observación permite reformular el problema de una manera más simple:

La segunda observación permite reformular el problema de una manera más simple: Problema partición Enunciado A: dados N enteros positivos, N>1, decir si estos pueden dividirse en dos grupos cuya suma sea la misma. Ejemplo: si el conjunto es {1,2,3,9,2,11,4}, una forma de partirlo

Más detalles

Método de diferencias finitas para ecuaciones diferenciales parciales elípticas. (Parte II)

Método de diferencias finitas para ecuaciones diferenciales parciales elípticas. (Parte II) Método de diferencias finitas para ecuaciones diferenciales parciales elípticas (Parte II) Métodos numéricos para sistemas lineales Solución numérica de EDPs requiere resolver sistemas de ecuaciones lineales

Más detalles

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo TEMA 2: CONCEPTOS BÁSICOS DE ALGORÍTMICA 1. Definición de Algoritmo 1.1. Propiedades de los Algoritmos 2. Qué es un Programa? 2.1. Cómo se construye un Programa 3. Definición y uso de herramientas para

Más detalles

Introducción al tipo Vector Cómo guardar una colección de datos conceptualmente relacionados? - almacenar los 100 primeros números primos, - al

Introducción al tipo Vector Cómo guardar una colección de datos conceptualmente relacionados? - almacenar los 100 primeros números primos, - al Tema 6. Vectores 1. Introducción y Definiciones 2. Operaciones elementales con vectores 3. Definición y manejo de vectores (arrays arrays) en C 4. Operación de Recorrido secuencial de un vector 5. Operación

Más detalles

Aritmética de Enteros

Aritmética de Enteros Aritmética de Enteros La aritmética de los computadores difiere de la aritmética usada por nosotros. La diferencia más importante es que los computadores realizan operaciones con números cuya precisión

Más detalles

Práctica N 6 Modelos de Programación Lineal Entera

Práctica N 6 Modelos de Programación Lineal Entera Práctica N 6 Modelos de Programación Lineal Entera 6.1 Una empresa textil fabrica 3 tipos de ropa: camisas, pantalones y shorts. Las máquinas necesarias para la confección deben ser alquiladas a los siguientes

Más detalles

SISTEMAS INFORMÁTICOS PROGRAMACION I - Contenidos Analíticos Ing. Alejandro Guzmán M. TEMA 2. Diseño de Algoritmos

SISTEMAS INFORMÁTICOS PROGRAMACION I - Contenidos Analíticos Ing. Alejandro Guzmán M. TEMA 2. Diseño de Algoritmos TEMA 2 Diseño de Algoritmos 7 2. DISEÑO DE ALGORITMOS 2.1. Concepto de Algoritmo En matemáticas, ciencias de la computación y disciplinas relacionadas, un algoritmo (del griego y latín, dixit algorithmus

Más detalles

Capítulo 6. Relaciones. Continuar

Capítulo 6. Relaciones. Continuar Capítulo 6. Relaciones Continuar Introducción Una relación es una correspondencia entre dos elementos de dos conjuntos con ciertas propiedades. En computación las relaciones se utilizan en base de datos,

Más detalles

(b) Cuál es la desventaja principal de una heurística con aprendizaje? es más informada que otra función heurística optimista h 2 *?

(b) Cuál es la desventaja principal de una heurística con aprendizaje? es más informada que otra función heurística optimista h 2 *? UNIVERIDD REY JUN CRLO CURO 0-0 INTELIGENCI RTIFICIL Hoja de Problemas Tema Ejercicio : Conteste a las siguientes preguntas: (a) Cómo funciona una heurística con aprendizaje? olución: Una heurística con

Más detalles

RELACIÓN DE PROBLEMAS DE CLASE DE PROGRAMACIÓN LINEAL ENTERA

RELACIÓN DE PROBLEMAS DE CLASE DE PROGRAMACIÓN LINEAL ENTERA RELACIÓN DE PROBLEMAS DE CLASE DE PROGRAMACIÓN LINEAL ENTERA SIMPLEX Y LINEAL ENTERA a Resuelve el siguiente problema con variables continuas positivas utilizando el método simple a partir del vértice

Más detalles

un conjunto cuyos elementos denominaremos vectores y denotaremos por es un espacio vectorial si verifica las siguientes propiedades:

un conjunto cuyos elementos denominaremos vectores y denotaremos por es un espacio vectorial si verifica las siguientes propiedades: CAPÍTULO 2: ESPACIOS VECTORIALES 2.1- Definición y propiedades. 2.1.1-Definición: espacio vectorial. Sea un cuerpo conmutativo a cuyos elementos denominaremos escalares o números. No es necesario preocuparse

Más detalles

Jueves, 30 de abril. Ejemplo de recursión. Ejemplo de PD. Ejemplo de programación dinámica. Programación dinámica

Jueves, 30 de abril. Ejemplo de recursión. Ejemplo de PD. Ejemplo de programación dinámica. Programación dinámica .0 Jueves, 0 de abril Programación dinámica. Recursión. Principio de optimalidad. Entregas: material de clase. Programación dinámica Transforma un problema de optimización complejo en una secuencia problemas

Más detalles

Programa de teoría. Algoritmos y Estructuras de Datos II. 3. Algoritmos voraces. 1. Análisis de algoritmos 2. Divide y vencerás

Programa de teoría. Algoritmos y Estructuras de Datos II. 3. Algoritmos voraces. 1. Análisis de algoritmos 2. Divide y vencerás Programa de teoría Algoritmos y Estructuras de Datos II 1. Análisis de algoritmos 2. Divide y vencerás 3. Algoritmos voraces 4. Programación dinámica 5. Backtracking 6. Ramificación y poda A.E.D. II 1

Más detalles

Una actividad muy relacionada con la anterior consiste en la generación de mosaicos por medio de polígonos regulares.

Una actividad muy relacionada con la anterior consiste en la generación de mosaicos por medio de polígonos regulares. Una actividad muy relacionada con la anterior consiste en la generación de mosaicos por medio de polígonos regulares. Actividad 1 (Polígonos regulares): En esta primera actividad los y las estudiantes

Más detalles

Estructuras de datos: Conjuntos disjuntos

Estructuras de datos: Conjuntos disjuntos Estructuras de datos: Dep. de Computación - Fac. de Informática Universidad de A Coruña Santiago Jorge sjorge@udc.es Referencias bibliográficas G. Brassard y T. Bratley. Estructura de datos. En Fundamentos

Más detalles

Operaciones básicas con hojas de cálculo

Operaciones básicas con hojas de cálculo Operaciones básicas con hojas de cálculo Insertar hojas de cálculo. Para insertar rápidamente una hoja de cálculo nueva al final de las hojas de cálculo existentes, haga clic en la ficha Insertar hoja

Más detalles

Lenguajes No Regulares

Lenguajes No Regulares Lenguajes No Regulares Problemas que los Autómatas No Resuelven. Universidad de Cantabria Esquema Lema del Bombeo 1 Lema del Bombeo 2 3 Introducción Todos los lenguajes no son regulares, simplemente hay

Más detalles

Métodos de Búsqueda para juegos humano-maquina. PROF: Lic. Ana María Huayna D.

Métodos de Búsqueda para juegos humano-maquina. PROF: Lic. Ana María Huayna D. Métodos de Búsqueda para juegos humano-maquina PROF: Lic. Ana María Huayna D. Tópicos 1. Introducción 2. Juegos 3. Estrategias de Juego 4. Algoritmo Minimax 5. Algoritmo Poda Alfa-Beta 1.- Introducción

Más detalles

Especificación y uso de módulos en C++(II)

Especificación y uso de módulos en C++(II) Sesión 3 Especificación y uso de módulos en C++(II) 3.1 La clase Poli para representar polinomios Disponemos de la clase Poli que permite operar con polinomios de coeficientes enteros. Se basa en el módulo

Más detalles

Índice Proposiciones y Conectores Lógicos Tablas de Verdad Lógica de Predicados Inducción

Índice Proposiciones y Conectores Lógicos Tablas de Verdad Lógica de Predicados Inducción Curso 0: Matemáticas y sus Aplicaciones Tema 5. Lógica y Formalismo Matemático Leandro Marín Dpto. de Matemática Aplicada Universidad de Murcia 2012 1 Proposiciones y Conectores Lógicos 2 Tablas de Verdad

Más detalles

Relaciones. Estructuras Discretas. Relaciones. Relaciones en un Conjunto. Propiedades de Relaciones en A Reflexividad

Relaciones. Estructuras Discretas. Relaciones. Relaciones en un Conjunto. Propiedades de Relaciones en A Reflexividad Estructuras Discretas Relaciones Definición: relación Relaciones Claudio Lobos, Jocelyn Simmonds clobos,jsimmond@inf.utfsm.cl Universidad Técnica Federico Santa María Estructuras Discretas INF 152 Sean

Más detalles

CAPITULO 1: PERSPECTIVE GENERAL DE LA

CAPITULO 1: PERSPECTIVE GENERAL DE LA CONTENIDO CAPITULO 1: PERSPECTIVE GENERAL DE LA INVESTIGACION DE OPERACIONES 1 1.1 Modelos matemáticos de investigación de operaciones. 1 1.2 Técnicas de investigación de operaciones 3 1.3 Modelado de

Más detalles

Árboles Filogenéticos. BT7412, CC5702 Bioinformática Diego Arroyuelo. 2 de noviembre de 2010

Árboles Filogenéticos. BT7412, CC5702 Bioinformática Diego Arroyuelo. 2 de noviembre de 2010 Unidad 6: Árboles Filogenéticos BT7412, CC5702 Bioinformática Diego Arroyuelo 2 de noviembre de 2010 Temario (Introduction to Computational Molecular Biology Setubal y Meidanis Capítulo 6) 1. Introducción

Más detalles

PROGRAMACIÓN. UNIDAD II. ALGORITMO PROFA : HAU MOY

PROGRAMACIÓN. UNIDAD II. ALGORITMO PROFA : HAU MOY PROGRAMACIÓN. UNIDAD II. ALGORITMO PROFA : HAU MOY ALGORITMO DEFINICIÓN: CONSISTE EN LA DESCRIPCIÓN CLARA Y DETALLADA DEL PROCEDIMIENTO A SEGUIR PARA ALCANZAR LA SOLUCIÓN A UN PROBLEMA EN DONDE SE ESTABLECE

Más detalles

Búsqueda Heurística I

Búsqueda Heurística I Búsqueda Heurística I Pedro Meseguer IIIA-CSIC Bellaterra, Spain pedro@iiia.csic.es Introducción Temario curso Búsqueda sistemática Búsqueda ciega Búsqueda informada: primero el mejor, A* Búsqueda en memoria

Más detalles

Multiplicación de enteros Algoritmo clásico 1234*5678 = 1234* (5*1000 + 6*100+7*10+8) = 1234*5*1000 + 1234*6*100 + 1234*7*10 + 1234*8 Operaciones bási

Multiplicación de enteros Algoritmo clásico 1234*5678 = 1234* (5*1000 + 6*100+7*10+8) = 1234*5*1000 + 1234*6*100 + 1234*7*10 + 1234*8 Operaciones bási Algoritmos Divide y Vencerás Análisis y Diseño de Algoritmos Algoritmos Divide y Vencerás Ejemplo: Multiplicación de enteros grandes La técnica divide y vencerás Características Método general divide y

Más detalles

LAS TORRES DE HANOI Y EL MANDATO DE BRAHMA

LAS TORRES DE HANOI Y EL MANDATO DE BRAHMA LAS TORRES DE HANOI Y EL MANDATO DE BRAHMA SIGMA 28 Luis Balbuena Castellano (*) 1. INTRODUCCIÓN Las Torres de Hanoi es un juego inventado por el creativo matemático francés E. Lucas vendiéndose como juguete

Más detalles

Facultad De Ingeniería Programa de Ingeniería Industrial

Facultad De Ingeniería Programa de Ingeniería Industrial Facultad De Ingeniería Programa de Ingeniería Industrial Código Materia: 05252 Excel Nivel Intermedio Requisito: 09641 Habilidades Básicas en Hojas Electrónicas Programa Semestre: Ingeniería Industrial

Más detalles

ALGORITMO MINIMAX. o Nodo: Representa una situación del juego. o Sucesores de un nodo: Situaciones del juego a las que se

ALGORITMO MINIMAX. o Nodo: Representa una situación del juego. o Sucesores de un nodo: Situaciones del juego a las que se ALGORITMO MINIMAX Algoritmo de decisión para minimizar la pérdida máxima aplicada en juegos de adversarios Información completa (cada jugador conoce el estado del otro) Elección del mejor movimiento para

Más detalles

TEMA 1. Números Reales. Teoría. Matemáticas

TEMA 1. Números Reales. Teoría. Matemáticas 1 1.- Los números reales Cuáles son los números reales? Los números reales son todos los números racionales y todos los números irracionales. El conjunto de los números reales se designa con el símbolo

Más detalles

Unidad Nº V Listas Enlazadas

Unidad Nº V Listas Enlazadas Instituto Universitario Politécnico Santiago Mariño Unidad Nº V Listas Enlazadas Lista Enlazadas Es una colección o secuencia de elementos dispuestos uno detrás de otro, en la que cada elemento se conecta

Más detalles

Inteligencia Artificial Problemas de satisfacción de restricciones

Inteligencia Artificial Problemas de satisfacción de restricciones Inteligencia Artificial Problemas de satisfacción de restricciones Primavera 2007 profesor: Luigi Ceccaroni Problemas de satisfacción de restricciones (PSRs) Componentes del estado = grafo de restricciones:

Más detalles

: Algorítmica y Estructura de Datos I

: Algorítmica y Estructura de Datos I FACULTAD POLITÉCNICA DIRECCIÓN ACADÉMICA PROGRAMA DE ESTUDIO I. IDENTIFICACIÓN Carrera : Ingeniería de Sistemas CARGA HORARIA (Horas reloj) Asignatura : Algorítmica y Estructura de Datos I Carga Horaria

Más detalles

IN Guía de Problemas Resueltos de Geometría de Programación Lineal v1.0

IN Guía de Problemas Resueltos de Geometría de Programación Lineal v1.0 IN3701 - Guía de Problemas Resueltos de Geometría de Programación Lineal v1.0 Acá va una pequeña guía con problemas resueltos de Geometría en Programación Lineal con problemas básicamente extraídos del

Más detalles

No se permiten libros ni apuntes ni calculadora

No se permiten libros ni apuntes ni calculadora Ejercicio : [ puntos: respuesta acertada = +, respuesta incorrecta = ] Complete las frases que se muestran a continuación con las alternativas especificadas. En la siguiente tabla, indique "V" o "F" para

Más detalles

ORDENAMIENTO Y BÚSQUEDA EN ARREGLOS

ORDENAMIENTO Y BÚSQUEDA EN ARREGLOS 1 ORDENAMIENTO Y BÚSQUEDA EN ARREGLOS Corina Flores Villarroel ORDENAMIENTO EN ARREGLOS Y COLECCIONES Una de las tareas más comunes a la hora de procesar datos es la clasificación u ordenación de los datos.

Más detalles

Objetivos formativos de Matemática Discreta. Tema 1: Conjuntos, aplicaciones y relaciones

Objetivos formativos de Matemática Discreta. Tema 1: Conjuntos, aplicaciones y relaciones Objetivos formativos de Matemática Discreta Para cada uno de los temas el alumno debe ser capaz de hacer lo que se indica en cada bloque. Además de los objetivos que se señalan en cada tema, se considera

Más detalles

(d) Puede haber estrategias que funcionan mejor que Minimax si el contrincante es

(d) Puede haber estrategias que funcionan mejor que Minimax si el contrincante es Universidad Rey Juan Carlos Curso 2014 2015 Hoja de Problemas Tema 5 1. Cuáles de las siguientes afirmaciones acerca del algoritmo Minimax son ciertas (a) El algoritmo Minimax realiza una exploración primero

Más detalles

Inteligencia Artificial Resolver problemas mediante búsqueda

Inteligencia Artificial Resolver problemas mediante búsqueda Inteligencia Artificial Resolver problemas mediante búsqueda Primavera 2007 profesor: Luigi Ceccaroni Resolución de problemas Se quiere: Resolver automáticamente un problema Se necesita: Una representación

Más detalles