12 de mayo de 2010

Computational Complexity in a Nutshell

No estoy seguro de la traducción del título. "nutshell" es algo así como cáscara de nuez, y es un término utilizado para referirnos a que un tema esta explicado en forma breve pero completo a la vez. En este caso el tema sería Complejidad Computacional.

Complejidad computacional es un área de las ciencias de la computación teórica que estudia la dificultad de resolver problemas computacionales. La dificultad de un problema computacional se mide en términos de los recursos computacionales necesarios para resolver ese problema, por ejemplo, tiempo, memoria, conectividad en la red, número de procesadores etc. El objetivo principal es crear una clasificación (estricta) de problemas computacionales. Esa clasificación son las clases de complejidad. Por ejemplo, los problemas que no requieren mucho tiempo ni mucha memoria se les llama problemas de tipo P. Problemas que requieren mas tiempo, pero aun con poca memoria son NP, y así.

También existe la complejidad computacional cuántica, que estudia la complejidad de las máquinas cuánticas. Más adelante voy a preparar una entrada sobre el tema.

Me gustaría compartir una serie de cursos impartidos en UC Berkeley dictados por Luca Trevisan sobre complejidad computacional. Los materiales para su curso los fue distribuyendo via su propio blog. Fue capaz de explicar temas relativamente difíciles de una forma breve y a la vez clara. Simplemente me encanta las matemáticas de esta área, sin dudad una de las invenciones más bellas de la mente humana.


Para más detalles sobre el área recomiendo el libro Computational Complexity: A Modern Approach. Este libro está muy actualizado, y explica los conceptos de una forma bien clara

18 de abril de 2010

Arquitectura de Computadores Cuánticos

Rodney Van Meter es un profesor asociado en la universidade Keio, en Tokyo. Tiene un grupo de investigación en arquitectura de computadores cuánticos. Hace poco descubrí un video en youtube sobre la presentación de las investigaciones que realizan en Keio. Está muy interesante, y presentan otros temas que pueden ser llevadas a cabo por personas en ciencias de la computación. A continuación el video.

12 de abril de 2010

Papers de ICALP 2010

Ultimamente estoy con mucho trabajo, y espero dentro de poco poder presentar en este blog los avances de mi investigación.

Se acaba de publicar la lista de papers aceptados en ICALP 2010 en este link. Hay solo 3 papers en computación cuántica:

1- Hari Krovi, Frederic Magniez, Maris Ozols, and Jérémie Roland. Finding is as easy as detecting for quantum walks. [arXiv:1002.2419]
2- Bob Coecke and Aleks Kissinger. The compositional structure of multipartite quantum entanglement.
3- Ross Duncan and Simon Perdrix. Rewriting measurement-based quantum computations with generalised flow.

Solo pude encontrar la versión online del primer paper. Por suerte es un paper que está muy relacionado con lo que hago y ya lo imprimí para darle una leída.

El problema que resuelve es un pequeño problema abierto que había en algoritmos de búsqueda basados en quantum walks sobre un arreglo 2-dimensional. Algoritmos anteriores solo resolvían el caso de 1 y 2 vértices marcados sobre este arreglo 2-dimensional. Si se quería encontrar más de 2 soluciones, el número de consultas al oráculo cuántico empeoraba. En este paper se presenta un algoritmo que encuentra un número arbitrario de vértices marcados sobre la grilla casi empatando con la cota inferior (solo difiere en un término logarítmico). Esto lo hace utilizando como base quantum walks basados en producto de reflexiones [Magniez et al. 2007] que extienden las cadenas de Markov y una técnica muy interesante de interpolación entre estas cadenas de Markov clásicas.

Definitivamente un paper que tengo que leerlo bien.