Se ha mencionado que los datos son las creaturas que habitan el mundo de la computación y que, por lo tanto, los problemas que en él se encuentran tienen que ver con el procesamiento y almacenamiento de datos. Este tema comenzará tratando de entender lo que es un problema y cómo se presenta en la vida cotidiana.
Arcadio no tenía aún una idea clara acerca de qué regalo sorpresa debía comprarle a Úrsula, pero pensó que, una vez en la tienda, algo se le ocurriría. Desde que entró, en efecto, la isla de joyería de fantasía le dio varias ideas. Podía comprarle una pulsera de cristales, un dije de corazón o un par de aretes. De hecho, pensó que no necesariamente tenía que ser un solo regalo; podrían ser varios, siempre y cuando no excedieran los mil pesos que le prestó su madre.
Ahora el problema era decidir cuál o cuáles eran los regalos adecuados. Arcadio no tardó en percatarse de la primera dificultad. Había muchas posibilidades: elegir tres y comprar uno (tres posibilidades), comprar dos de ellos (tres posibilidades, dependiendo de cuál elija no comprar), comprar los tres (una posibilidad), e inclusive la salida fácil de no comprar ninguno. Para cada una de estas ocho posibilidades, tendría que calcular si le alcanzaban sus mil pesos.
Mientras reflexionaba cuánto tiempo le tomaría evaluar tantas opciones, le surgió una duda: ¿no le había regalado su ex novio a Úrsula un par de aretes en su cumpleaños pasado? Fue entonces cuando se dio cuenta de que no tenía mucho caso evaluar cada una de las posibilidades antes de conocer los gustos de Úrsula y estar seguro de qué regalo apreciaría más.
Después de 20 minutos de no saber qué hacer, decidió hablarle a Diana, la mejor amiga de Úrsula, para preguntarle su opinión. En vez de ayudar a Arcadio a decidirse por alguna de las opciones que había considerado, Diana le dio nuevas alternativas: "¿Qué tal un CD de Robbie Williams o el DVD de la última película de Harry Potter?", sugirió. Bueno, ahora la cosa estaba peor. En efecto, la idea de Diana era buena y Arcadio encontró fácilmente el DVD de la última película de la saga de Harry Potter y los últimos tres discos de Robbie Williams. Ahora el número de opciones era mayor. En medio del vértigo que comenzó a sentir, se le ocurrió que quizá sería mejor comprarle cosas pequeñas, pero muchas. Y ya totalmente confundido, pensó que, dado que no tenía idea de qué hacer, mejor aprovecharía para comprarse unos audífonos que le hacían falta y, con lo que sobrara, le compraría a Úrsula el regalo más costoso.
Arcadio se dio cuenta de que lo primero que tenía que hacer era discernir cuál era exactamente el problema que debía resolver. Antes que nada, cuando se presenta un problema, éste viene acompañado de un conjunto de datos que lo determinan: un número, un mapa, algo sobre lo que se trabajará para encontrar la solución. Lo anterior se denomina la entrada al problema. En segundo lugar, resolver un problema significa producir una salida que indica la solución; por ejemplo: tomar una decisión, encontrar un camino en un mapa o calcular un número. Finalmente, no se trata de calcular cualquier número o de decidir cualquier cosa; se tiene una relación entrada/salida acerca del objetivo que se quiere alcanzar. Esta relación explica cuál es el vínculo entre la salida que se debe producir y la entrada que se recibe. Como ejemplos de problemas se pueden mencionar los siguientes:
1] Elevar un número al cuadrado. La entrada es un número x, la salida un número y. La relación entre el número de entrada x y el de salida y es que y debe ser igual a x 2.
2] Encontrar la salida de un laberinto. La entrada es un laberinto que tiene marcado un lugar por donde entrar y uno por donde salir. La salida es un camino. La relación específica: que el camino producido debe comenzar en la entrada del laberinto, terminar en la salida y ser un camino válido del laberinto (no brincar las paredes).
3] Colorear mapas. La entrada es un mapa de países. La salida es un color para cada país. La relación específica: que cada país debe ser coloreado con un solo color, de manera que si dos países tienen una frontera común sus colores sean diferentes. Además, debe usarse el menor número de colores posible.
Concepto
Un problema consiste en la especificación de un conjunto de posibles entradas, y una relación de salidas para cada entrada.
Curiosidades
Probablemente el primer laberinto fue una prisión en la isla de Creta. Según la mitología griega, ahí vivía el Minotauro. El algoritmo que utilizó Teseo para recorrer el laberinto consistió en el uso de una cuerda que desenrollaba conforme iba avanzando por el laberinto y que luego enrollaba para salir.
Para exponer puntualmente el problema de Arcadio, se comienza por identificar los datos con los que se trabajará.
Entrada:
1] Una cantidad de dinero inicial de mil pesos.
2] Un conjunto de regalos posibles, S = {pulsera, dije, aretes}. Debido a la recomendación de Diana, se define el conjunto S1 = {pulsera, dije, aretes, CD, DVD}.
3] Cada regalo posible de S1 tiene un precio en pesos y un valor emocional distinto para Úrsula. La cuestión entonces consiste en procurar una adquisición óptima; elegir objetos cuyo costo sea accesible y que el aprecio de Úrsula sea considerable. Así, los regalos poseen un valor emocional para Úrsula que se puede expresar como un valor numérico entre 0 (no le gusta) y 10 (le encanta).
Supóngase que los valores están dados como en la siguiente tabla:
Una vez decidida la entrada al problema, puede pensarse en lo que se desea obtener como salida.
Salida:
1] Uno o más regalos para Úrsula. Es decir, un subconjunto T de S1 (o de S).
2] Quizá con lo que sobre de los mil pesos Arcadio pueda comprarse algo para él. Arcadio debe aclarar qué opción es la más conveniente para el regalo de Úrsula: comprarle la mayor cantidad de regalos posible; evitar a toda costa comprarle algo que un ex novio le obsequió en el pasado; comprarle un solo regalo que le guste mucho; mostrarle, a través de su elección, algo acerca de su personalidad y sensibilidad; o asegurarse de que le sobre dinero para comprarse algo él mismo. Cada una de estas posibilidades implica un problema distinto. El problema de Arcadio está dado por lo que se plantea a continuación.
Arcadio debe aclarar qué opción es la más conveniente para el regalo de Úrsula: comprarle la mayor cantidad de regalos posible; evitar a toda costa comprarle algo que un exnovio le obsequió en el pasado; comprarle un solo regalo que le guste mucho; mostrarle,a través de su elección, algo acerca de su personalidad y sensibilidad; o asegurarse de que le sobre dinero para comprarse algo él mismo. Cada una de estas posibilidades implica un problema distinto. El problema de Arcadio está dado por lo que se plantea a continuación.
Relación entrada/salida:
Los regalos elegidos, es decir, los del conjunto T, no deben costar más de mil pesos en total. Además, no debe existir otra elección de regalos que coincida con esta característica y que tenga un valor emocional total mayor. Es decir, los regalos elegidos deben tener el mayor valor emocional posible y costar máximo mil pesos.
Una salida posible al problema sería {aretes, CD}, ya que el costo de estos regalos es de $400 + $500 = $900 con un valor emocional de 5 +
4 =
9. Pero esta salida no resuelve el problema; hay mejores salidas, como {aretes, CD, DVD}, que tampoco rebasa los mil pesos, pero que tiene un valor emocional mayor para Úrsula, de
10. El problema se habrá resuelto una vez que Arcadio elija los regalos con mayor valor emocional, sin que rebasen los mil pesos. ¿La solución es {aretes, CD, DVD}? No, porque si se cambian los aretes por el dije, el costo total baja a $900 obteniéndose una combinación de mayor valor emocional, es decir,
15. Aparentemente, la opción {dije, CD, DVD} es una buena solución al problema. Pero, ¿cómo se puede estar seguro de ello?