Я думаю, что вы указали форму проблемы с рюкзаком с некоторыми дополнительными сложностями - проблема с рюкзаком - NP-Complete (с. 247, Гэри и Джонсон). Основная проблема рюкзака заключается в том, что у вас есть несколько объектов, каждый из которых имеет объем и значение - вы хотите заполнить рюкзак фиксированного объема объектами, чтобы максимизировать значение без превышения вместимости рюкзака.
Учитывая, что у вас есть этапы (дни) и ресурсы (деньги), а ресурсы меняются день ото дня, пока вы решаете, какие покупки делать, я бы привел к использованию метода динамического программирования, а не модели прямой оптимизации.
Не могли бы вы уточнить в комментариях "минимизация отклонений"? Я не уверен, что понимаю эту часть.
Кстати, mathoverflow.com, вероятно, не поможет в этом. Если вы посмотрите на вопросы алгоритма, 50 по стеку потока и 50 по mathoverflow, вы обнаружите, что вопросы (и ответы) по стеку потока имеют гораздо больше общего с проблемой, которую вы рассматриваете. Существует новый сайт, который называется OR Exchange, но трафика там пока немного.