2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу Пред.  1, 2, 3  След.
 
 Re: Задача по математическому программированию
Сообщение02.06.2015, 16:17 
Потому что при выборе одного ПП12 будут получены лишь функции E и K.

 
 
 
 Re: Задача по математическому программированию
Сообщение02.06.2015, 16:53 
Taurus в сообщении #1022803 писал(а):
лишь
А! То бишь, вы понимаете! Теперь запишите ваше понимание математически. Функции E и K будут получены, и это условие входит в условия задачи — как вы догадались? А раз «лишь», значит, какие-то функции не будут получены, и это не удовлетворяет задаче? Опять же, как вы догадались? И как это записать математически?
Ну же, вы всё, что нужно, знаете!

 
 
 
 Re: Задача по математическому программированию
Сообщение02.06.2015, 21:20 
Мне не представляется математическая запись условия наличия 8 функций из заданного списка. :? Какая-то принадлежность множеству...
Не вручную же все подходящие комбинации перебирать.

 
 
 
 Re: Задача по математическому программированию
Сообщение03.06.2015, 01:07 
А придётся. Напомню: задачу вам ставил не я :wink:
Подсказываю: вам необходимо наличие восьми функций. То бишь, первой; второй; третьей; ну и далее. Система из восьми условий.

 
 
 
 Re: Задача по математическому программированию
Сообщение03.06.2015, 19:08 
$A: x_1+x_6+x_8+x_{11}+x_{13}=1\\
C: x_2+x_5+x_9+x_{13}=1\\
E: x_1+x_3+x_{10 }+x_{12}=1\\
F: x_3+x_7+x_{10}=1\\
G: x_1+x_4+x_8+x_{11}=1\\
H: x_2+x_3+x_8+x_{13}=1\\
I: x_4+x_9+x_{10}+x_{11}=1\\
K: x_5+x_6+x_7+x_{12}=1$

 
 
 
 Re: Задача по математическому программированию
Сообщение04.06.2015, 00:53 
Ну, там везде $\geq$, не равенства. Не факт, что удастся обойтись без дублирования функций. Ну и полагаюсь на вашу аккуратность, проверять индексы не стану. В принципе, да, так выглядят условия из основной задачи.

 
 
 
 Re: Задача по математическому программированию
Сообщение05.06.2015, 11:26 
В общем, оптимальное решение начальной задачи: 122 при выборе продуктов 1, 2, 10, 12.
С условиями из а ничего не меняется.
С условиями б: 227 при 3, 7, 11, 13.
Для в ответ не меняется.
Для первой части условий г ответ не меняется, для второй: 140 при 1, 3, 9, 12.

Осталось разобраться с д.

 
 
 
 Re: Задача по математическому программированию
Сообщение05.06.2015, 13:28 
Taurus в сообщении #1023588 писал(а):
С условиями б: 227 при 3, 7, 11, 13
Не, что-то вы не так решили. Изначальное решение удовлетворяет условию б.
Taurus в сообщении #1023588 писал(а):
Для первой части условий г ответ не меняется, для второй: 140 при 1, 3, 9, 12
Последнего шага не сделали. Посчитали для первой части, посчитали для второй — и из них двоих выбираем оптимальный, то бишь, опять же, изначальное решение. Собственно, вторую часть можно было не решать: если изначальное, самое оптимальное удовлетворяет первой части, для второй оно лучше не станет.
Taurus в сообщении #1023588 писал(а):
Осталось разобраться с д
iifat в сообщении #1021947 писал(а):
Крутится в голове что-то типа решить задачу, зафиксировать x в 1, добавить условие «целевая функция меньше (больше) найденного значения», в качестве целевой взять цену и максимизировать
В принципе, думаю, так и нужно. По крайней мере, можно: подставляем в ограничения вместо соответствующего $x$ 1; добавляем ограничение «целевая функция с соответствующим $x$ заменнным на 1, а соответствующей ценой на $y$ не более 122», в качестве целевой функции берём $y$ (уго будем максимизировать) и решаем смешанную целочисленную задачу, точнее, смешанную булеву, где $x_i$ булевы (0 либо 1), а $y$ — действительный.

 
 
 
 Re: Задача по математическому программированию
Сообщение06.06.2015, 12:44 
iifat в сообщении #1023624 писал(а):
Не, что-то вы не так решили. Изначальное решение удовлетворяет условию б.
Ну, если отталкиваться от того, что в оптимальном решении $x_3$ из условия б не участвует, то да, ответ будет таким же, как и в решении начальной задачи.
Просто я включил $x_3$, а, следовательно, требуемые к нему $x_7$ и $x_{13}$, тогда и получил 227. Значит это было лишним.

По скидке.
К примеру, я хочу узнать при какой скидке войдёт 6-й ПП. Я пишу целевую функцию без участия $30x_6$: $L=37x_1+18x_2+55x_3+64x_4+22x_5+70x_7+57x_8+29x_9+48x_{10}+60x_{11}+19x_{12}+42x_{13}\to \max$
, а в условиях
$x_6=1$
и
$37x_1+18x_2+55x_3+64x_4+22x_5+30x_6+70x_7+57x_8+29x_9+48x_{10}+60x_{11}+19x_{12}+42x_{13}<122$
После таких действий я получаю ответ $92$. То есть $122-92=30$, что и будет скидкой, совпадающей с ценой 6-го ПП. Так?

 
 
 
 Re: Задача по математическому программированию
Сообщение06.06.2015, 13:29 
Taurus в сообщении #1023933 писал(а):
это было лишним
Не нравится мне такая формулировка. Либо вы неудачно подобрали слова, либо не поняли, что такое «при установке ПП3 необходимы ПП7 и ПП13». На случай второго варианта, поясню: эти слова на математическом языке означают, что включение ПП3 требует ПП7 и ПП13; невключение ПП3 требует ничего. От слова «абсолютно».
Taurus в сообщении #1023933 писал(а):
По скидке
Опять не понял. Либо вы приняли мой способ решения и последовали ему крайне неудачно (от того же слова), либо вы придумали свой, и тогда я его не понимаю.

 
 
 
 Re: Задача по математическому программированию
Сообщение06.06.2015, 13:39 
Про 3, 7, 11 я так и понял.

Вариант со скидкой - это то, как у меня сейчас вышло записать в LINDO. По-другому пока не получилось.

 
 
 
 Re: Задача по математическому программированию
Сообщение06.06.2015, 16:02 
Как-то печально это всё звучит. Не знаю, что такое LINDO, но аргумент «так у меня вышло записать в...» — это, ну, не знаю, представьте себе: берёте в хлебном магазине две булки хлеба, а вам говорят — 128 рублей. А на вопрос: «Почему?» отвечают: «Ну, так у меня вышло вбить в калькулятор»

 
 
 
 Re: Задача по математическому программированию
Сообщение06.06.2015, 16:05 
iifat в сообщении #1023624 писал(а):
подставляем в ограничения вместо соответствующего $x$ 1; добавляем ограничение «целевая функция с соответствующим $x$ заменнным на 1, а соответствующей ценой на $y$ не более 122», в качестве целевой функции берём $y$ (уго будем максимизировать)
То есть на примере $x_6$ надо поменять условия с этой переменной (первые два)?
$x_1+x_8+x_{11}+x_{13}\geqslant 0\\ x_5+x_7+x_{12}\geqslant 0\\ x_2+x_5+x_9+x_{13}\geqslant 1\\ x_1+x_3+x_{10 }+x_{12}\geqslant 1\\ x_3+x_7+x_{10}\geqslant 1\\ x_1+x_4+x_8+x_{11}\geqslant 1\\ x_2+x_3+x_8+x_{13}\geqslant 1\\ x_4+x_9+x_{10}+x_{11}\geqslant 1$
Записать условие на сумму (без $x_6$)
$37x_1+18x_2+55x_3+64x_4+22x_5+70x_7+57x_8+29x_9+48x_{10}+60x_{11}+19x_{12}+42x_{13}\leqslant 122$
И взять целевую функцию
$37x_1+18x_2+55x_3+64x_4+22x_5+30x_6+70x_7+57x_8+29x_9+48x_{10}+60x_{11}+19x_{12}+42x_{13}\to \max$
?
Так я получаю 152.

 
 
 
 Re: Задача по математическому программированию
Сообщение06.06.2015, 16:28 
Taurus в сообщении #1023992 писал(а):
То есть на примере $x_6$ надо поменять условия с этой переменной (первые два)?
Именно. После этого первые два неравенства можно вычеркнуть — они ничего не добавляют к задаче (резонно: раз уж мы твёрдо решили покупать ПП6, который закрывает функции A и K, соответствующие ограничения нам не нужны).
Taurus в сообщении #1023992 писал(а):
Записать условие на сумму
Прошу прощения, но что именно оказалось непонятным во фразе «целевая функция с соответствующим $x$ заменнным на 1, а соответствующей ценой на $y$»? И в следующей за ней «в качестве целевой функции берём $y$ (уго будем максимизировать)»? Да, там описка — «его будем максимизировать», признаю.

 
 
 
 Re: Задача по математическому программированию
Сообщение06.06.2015, 17:12 
Я понял, что $30x_6$ заменяется на $y\cdot1$.
$37x_1+18x_2+55x_3+64x_4+22x_5+y+70x_7+57x_8+29x_9+48x_{10}+60x_{11}+19x_{12}+42x_{13}\leqslant 122$
iifat в сообщении #1023624 писал(а):
в качестве целевой функции берём $y$
$y$ выразить из предыдущего неравенства?
$y = -37x_1-18x_2-55x_3-64x_4-22x_5-70x_7-57x_8-29x_9-48x_{10}-60x_{11}-19x_{12}-42x_{13}$

 
 
 [ Сообщений: 37 ]  На страницу Пред.  1, 2, 3  След.


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group