Optimization-related functions