近日,一篇題為《基於混合整數目標規劃的使用者自定義份量粒度的個性化膳食最佳化》的論文在arXiv上預印發布。該研究由Francisco Aguilera Moreno完成,旨在解決個性化膳食最佳化中長期存在的兩個核心問題:一是連續變數導致不切實際的分數份量(例如1.7個雞蛋、0.37根香蕉),二是硬性營養約束在目標衝突時導致無可行解。
研究團隊首先對56篇膳食最佳化相關論文進行了系統性回顧,發現沒有任何一項工作同時採用整數規劃和目標規劃來應對這兩個挑戰。基於這一空白,作者提出了混合整數目標規劃(Mixed Integer Goal Programming, MIGP)方法。MIGP的創新之處在於:使用整數變數表示每種食物的份數,從而自然地得到可操作的整數解(如1個雞蛋、1湯匙油),無需事後舍入;同時引入目標規劃中的偏差變數,將營養約束軟化為目標,並透過逆目標歸一化技術平衡多種營養成分的最佳化目標。
論文進一步分析了整數性間隙在目標規劃背景下的表現,發現了一個關鍵性質——偏差吸收特性:目標規劃中的偏差變數能夠吸收整數約束帶來的成本,使得整數性間隙在結構上小於傳統的硬約束混合整數規劃。實驗表明,當餐食包含15種以上食物時,MIGP的整數解在所有基準例項中均與連續最優解完全一致。
在計算評估中,研究使用了810個測試例項(涵蓋30種USDA食品、9種配置和3種方法),MIGP在66%的情況下找到嚴格優於事後舍入目標規劃方法的解,並且從未更差,同時保持100%的可行性。相比之下,硬約束整數規劃的可行性僅為48%。求解效率方面,使用開源HiGHS求解器,典型餐食的求解時間低於100毫秒,完全滿足實際應用需求。
目前,該研究的實現已作為開源Python模組釋出,並整合到一個互動式膳食規劃應用中,使用者可以根據自己的偏好(如食物種類、份量粒度、營養目標)進行個性化最佳化。這項工作不僅為膳食最佳化領域提供了新的數學工具,也為個性化營養推薦系統的實用化奠定了基礎。