Los científicos más codos

Por María de la Lama

Se dice que la filosofía es el amor al conocimiento. Y se dice que conocimiento es una creencia verdadera y justificada. Ambas tesis siguen y seguirán en disputa, pero para quien las acepta, se deriva la conclusión de que la filosofía es en parte amor a la verdad. Me acordé de esta conclusión al leer una cita de un científico de la computación: “[mientras que] el objeto de estudio de las matemáticas es la verdad; el objeto de estudio de la ciencia de la computación es la complejidad”.

Aunque el departamento de filosofía y el de matemáticas (entre otras ciencias “puras”) suelen estar muy separados, esta distancia no es para nada esencial. Todas las ciencias son de cierta forma hijas de la filosofía, especializaciones, es tanto que estudian tipos de verdad específicas en vez de estudiar, como el filósofo, la Verdad, con mayúscula (o la pregunta de si esta existe). Pero como señala el científico de la computación, esta otra ciencia parece un cuento aparte: a diferencia de sus hermanas y de su madre, no ama la verdad.

Wikipedia describe a la ciencia de la computación como “el estudio sistemático de los procedimientos metódicos (algoritmos) que describen y transforman información”. En mis palabras torpes pero mías, el científico de la computación no estudia la información, como las otras ciencias, sino las maneras de obtenerla y utilizarla. Le interesa el costo de obtener ciertas verdades: resolver problemas de forma práctica, y no solo perseguir la verdad a cualquier costo. Esta diferencia puede ser ilustrada por un concepto interesante de la ciencia de la computación: los problemas “inherentemente difíciles”.

Un problema inherentemente difícil es aquel para el que no existe un algoritmo eficiente que lo resuelva. Un algoritmo es un conjunto de reglas o instrucciones —un procedimiento. Es decir, de este tipo de problemas no existe un procedimiento eficiente (poco costoso) que lleve a la solución. Un ejemplo es el problema de cómo encontrar números primos (números enteros que solamente son divisibles por ellos mismos, en positivo y negativo, y por el número 1, en positivo y negativo). Sabiendo solo esta definición podemos checar si un número en particular es primo o no (el 2, por ejemplo, es un número primo, porque solamente es divisible entre 2, -2, 1 y -1) pero no podemos obtener una lista de todos los números primos más que revisando uno por uno si cada número es primo o no. El único algoritmo para encontrar un número primo no es mucho más eficiente que esta operación —un procedimiento sumamente costoso, sobre todo si quieres encontrar muchos o todos los números primos.

Bueno: pues el científico de la computación no se contenta con señalar la verdad: que este problema es inherentemente difícil y que el algoritmo que lo resuelve es X. Va más allá: busca maneras más eficientes de más o menos resolver el problema. No es posible un algoritmo eficiente que lleve a la verdad redonda, con V mayúscula, pero ¿y si hay algún algoritmo menos costoso, en tiempo, dinero o esfuerzo, que nos dé una lista de números que probablemente son primos? El científico de la computación es codo (¿flojo? ¿práctico?): no pretende gastar de más en resolver un problema, si puede por un precio mucho menor resolverlo a medias. Y de hecho, en este ejemplo en particular, lo logra: existen algoritmos que arrojan números que son probablemente primos. ¿Será que la idealista filosofía es de cierta forma enemiga de la práctica y realista ciencia de la computación? Eso me quedé pensando, pero me parece precipitado y soberbio creer que la dificultad de un problema, el costo de su solución, es realmente irrelevante para el filósofo. ¿Y si , por ejemplo, resulta que el problema de cuál es la mejor forma de organizar a la sociedad (una clásica pregunta filosófica) es inherentemente difícil? ¿Y si tratar de encontrar la verdad redonda, definitiva, requiere tanto tiempo y energía que se necesitaría poner a millones de filósofos a aplicar un algoritmo durante toda la edad del universo? ¿Y si además existiera un algoritmo que puede con cierto grado de certeza encontrar una respuesta probablemente verdadera? Si este fuera el caso, ¿no la pregunta que trata el científico de la computación es fundamental para el filósofo? Estoy inventando, pero a lo mejor la ciencia computacional es la abuela de todas las ciencias.

Leave a Reply

Tu dirección de correo electrónico no será publicada.