[Discussion] How can one get hands on experience with optimization problems (as opposed to supervised learning problems)?
I would like to learn more about optimization. Right now I get to do some regression and various classification type stuff, but no real world experience with optimization (other than whatever optimizers are being run to fit the supervised learning methods I use).
I know the basics of the theory and algorithms behind it (LP, QP, IP, Genetic Algorithms, etc…), and I’ve packaged optimization ERP tools, but I don’t see how I can extend that knowledge to real world data sets and hands on use cases where I solve new problems.
For supervised learning, there is Kaggle, and hundreds of other open data sets which you can practice on, but for optimization I can’t find any similar competitions or data sets. Moreover the popular tools (Gurobi, Cplex, etc…) seem to be more proprietary and lack the community resources that ML and Stats open source tools have (i.e open source isn’t as much of a thing for optimization as it is for ML)
Also: Even if one had access to the right data and the right tools, how does one validate the quality of their Optimization solution? With supervised problems you have the ground truth to compare against. With clustering you have information theoretic and visual methods to examine your data.
But with optimization and search problems, how do you evaluate your solution in a real world use case? You can try fake data such that the global optimum is known before hand, but those will always be toy examples. For real world data sets, you don’t know what the global optima are, by definition, otherwise you wouldn’t have to use optimization algorithms and search heuristics to solve the problem in the first place?
Any advice and resources on how to get hands experience with optimization and OR problems in general?