Quantum Computing For Optimization And Machine Learning