Learning-Based Optimization