先来看下整型组合优化问题,对于(图一)中的寻找最小点(红点)问题,用求导的方法不可取,用排序的方法就是NP问题,无法在多项式时间内找到最优解。
(图一)
遇到这种情况,可以采用松弛的方式来处理,首先把问题定义域X的范围从整型松弛到实值范围内,而且目标函数在整型定义域上小于或者等于原目标函数,如图二所示:
(图二)
此时可以用分析的方法(比如梯度下降等)来处理,但是仍然有个问题就是有可能陷入局部最小,解决陷入局部最小的办法就是让目标函数在定义域上是凸的,这样就不会陷入局部最小了(感觉像说了废话一样),如(图三)所示:
(图三)
这样就可以直接通过分析的方法求出逼近解,然后化整就行了。