Как подобрать товар на необходиму сумму
В голову приходит "сумма всевозможных произведений n/2 Xi" - если, конечно, требуется не более n/2 нулевых.
По крайней мере автоматизирует проверку
посмотри в сторону задачи укладки рюкзака
лучше посмотри на решение задачи о рюкзаке методом динамического программирования и добавь там ещё одно измерение — количество использованных типов предметов.
Что то помнится мне, что задача уже давно формулизована и имеется алгоритм решения - блин тока я название забыл этой байды (в техникуах подобные задачи как раз проходят).
я не вижу способа к ней это свести без изврата.
да и задача целочисленного линейного пограммирования вроде NP-трудна.
А вот были ли там целые или не целые числа уж и не помню - только дюже похоже формулировалась.
глобально-то чего хочется? какую жизненную задачу ты пытаешься формализовать и решить?
Есть перечень блюд с известными ценами Ai
Есть перечень продуктов на складе с известным остатком
Есть сумма выручка за день S
Известны рецептуры приготовления каждого блюда.
Бухгалтеру нужно найти хотя-бы пару наборов решений (Xi - натуральное или ноль)
уравенения СУММА(Ai*Xi) = S
Требования:
1. количества продуктов на складе должно хватить на приготовление блюд.
(рецептуры приготовления всех блюд, наличие продуктов на складе известно)
тут, понятно, система неравенств СУММА(Вji*Xi)<=Di (где 1<= j <= m - m зависит от выбранных блюд)
2. чтобы ненулевых значений в наборе решения было ну скажем 10 (или 15, 20) - (немогу формализовать ето).
Вторым условием в принципе можно пренебречь если можно найти некоторое количество решений, чтобы человек сам выбирал удобоваримое.
что похоже на симплекс метод (задачи линейного программирования но там функция, значение которой максимизируют или минимизируют, а у меня строгое равенство.
эксель\поиск решения. Вручную -геморно решать
Excel тут не помощник
поясни,чем эксель тут плох
типичная задача ЛПКатя, она такой будет, если ты придумаешь линейную функцию выдающую (x>0)?1:0 хотябы приблизительно
что похоже на симплекс метод (задачи линейного программирования но там функция, значение которой максимизируют или минимизируют, а у меня строгое равенство.в экселе это; "установить целевую ячейку равной= (твое число)
открой для себя булевы переменные.Они в экселе есть.
я не знаю что там умеет эксель, но в задаче линейного программирования всё по-определению линейно относительно неизвестных.
Оставить комментарий
aaaa1
Здравствуйте!Помогите формализовать задачу, пожалуйста.
Нужно найти хотя-бы несколько наборов решений (Xi - натуральное или ноль) уравенения СУММА(Ai*Xi) = S
Требования:
1. Нужно, чтобы ненулевых Xi в решении было, скажем, половина - (немогу формализовать ето).
Как к этому подступиться?
Есть какой-нибудь более оптимальный путь, чтобы не тупо перебирать все возможные варианты?