Variational Quantum Algorithms