The topic of this module emerges again...
Some of the techniques involved in optimizing machine-learning models are heuristics. Also computer vision and NLP will recurr to heuristics when solutions for NP-hard problems are needed quickly and suboptimality is tolerated as a trade-off for the speed.
Optimization in exact terms is the focus of CCCS 640, if you have not taken that yet. You could propose and evaluate a heuristic in CCCS 690 as an applied research project, if you want to venture deeper into how this works.