Sección: Quantum Computing

En esta sección se encuentran alojados distintos ejercicios de los diversos IBM Quantum Challenge que he completado, desde las nociones más básicas de la computación cuántica, compuertas, algoritmos, hasta aplicaciones con módulos enfocados a Finanzas, Machine Learning, etc. Adicionalmente se encuentra un ejercicio que resolví para aplicar al IQOSF Mentorship Program que resolví aplicando el concepto de la QRAM.
La totalidad de los proyectos han sido realizados en Python utilizando la librería Qiskit.

IQOSF Mentorship Program:
Task 1

Solución a un problema para aplicar al programa de mentorías IQOSF, consiste en construir un circuito cuántico que recibe un vector de valores reales $\footnotesize{[1~5~7~10]}$ como entrada y devuelve a la salida el estado cuántico $\footnotesize{\frac{1}{\sqrt{2}}(|00\rangle + |11\rangle)} $
La lógica de la solución consiste en marcar y devolver los índices para los cuales su valor binario cuenta con todos los bits adyacentes diferentes entre sí.

Toffoli Gate

Introducción a las compuertas cuánticas y circuitos cuánticos, introducción al uso del compositor de circuitos y creación de una compuerta de Toffoli a partir de compuertas de rotación básicas.

Basic Rotations, Multi-Qubit Gates and
Deutsch-Jozsa Algorithm

Introducción a las rotaciones básicas efectuadas por las compuertas cuánticas, concepto de la Esfera de Bloch para visualizar rotaciones, a las compuertas multi-Qubit y concepto e implementación del algoritmo de Deutsch-Jozsa.

Shor's Algorithm

Implementación del famoso Algoritmo de Shor, documentando la historia y enfoque del algoritmo, el modelo matemático del mismo y su implementación den Qiskit por medio de compuertas cuánticas. Para posteriormente utilizarlo para factorizar el número 35 (límite permitido por el número de Qubits disponibles) y ejecutarlo en un computador cuántico real.

Introduction to Variational Algorithms

Introducción a los Algoritmos Variacionales Cuánticos, en particular con el VQE. Además de mostrar la creación de circuitos parametrizados, el Quadratic Program en Qiskit y cómo resolver problemas de optimización utilizando QAOA.

Quantum Kernels and Support Vector Machines

Implementación de Quantum Feature Maps, Quantum Kernels para concluir con la realización de un clasificador de imágenes utilizando Quantum Support Vector Machines.

Training Parameterized Quantum Circuits

Se profundiza en la creación de distintos clasificadores variacionales cuánticos, en cómo utilizar distintas técnicas de entrenamiento, especialmente los basados en gradientes; y sobre cuáles son las restricciones de los modelos basados en técnicas variacionales.

Hardware Efficient Ansatze for
Quantum Machine Learning

Lab que muestra los efectos del ruido en un circuito parametrizado típico usado en Machine Learning , además se introduce al uso de Circuitos de Tomografía de Proceso Cuántico.

Crop-Yield Problem

Introducción al Quadratic Problem para después solucionar el Crop-Yield problem, modelando el problema a través del Quadratic Problem utilizando Circuitos Cuánticos y el QAOA.

Quantum speedups in finance

Introducción a los instrumentos financieros típicos del modelos de Monte Carlo. Además de implementar un Algoritmo Cuántico para calcular el precio de instrumentos financieros. Esto utilizando el módulo de Finanzas de Qiskit.

Quantum Chemistry for HIV

Aplicación del módulo de Química de Qiskit para resolver problemas de definición geométrica de moléculas, cálculo del Hamiltoniano, conversión de Qubits Hamiltonianos, uso de VQE y cálculo del estado de mínima energia.
Todo esto con el fin de simular una molécula proteasa y un antirretroviral que formarán una macromolécula que simulará la interacción entre estos y cómo es que se podrían diseñar nuevos fármacos aprovechando sistemas cuánticos en conjunto con sistemas clásicos dentro de sistemas híbridos.