Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Решение задачи максимизации без "Поиск Решения" - формулами - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Решение задачи максимизации без "Поиск Решения" - формулами (Формулы/Formulas)
Решение задачи максимизации без "Поиск Решения" - формулами
КрасноглазыйПиркаф Дата: Четверг, 17.12.2020, 09:44 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 20% ±

Excel 2013
Здравствуйте.
Помогите.

У меня есть таблица для производственной задачи, которую нужно решить в эксель.
Есть три вида изделия и четыре вида операции.
Требуется определить, сколько изделий и какого вида следует изготовить предприятию, чтобы прибыль от их реализации была бы максимальной

Но в экселе такие задачи используются при помощи надстройки "поиск решения", а мне нужно решить эту задачу формулами - без данной надстройки.
Еще раз пишу - нужно решить эту вещь формулами (поэтому я размещаю этот вопрос в разделе "Вопросы по Excel").
К сообщению приложен файл: 435547.xls (29.0 Kb)
 
Ответить
СообщениеЗдравствуйте.
Помогите.

У меня есть таблица для производственной задачи, которую нужно решить в эксель.
Есть три вида изделия и четыре вида операции.
Требуется определить, сколько изделий и какого вида следует изготовить предприятию, чтобы прибыль от их реализации была бы максимальной

Но в экселе такие задачи используются при помощи надстройки "поиск решения", а мне нужно решить эту задачу формулами - без данной надстройки.
Еще раз пишу - нужно решить эту вещь формулами (поэтому я размещаю этот вопрос в разделе "Вопросы по Excel").

Автор - КрасноглазыйПиркаф
Дата добавления - 17.12.2020 в 09:44
прохожий2019 Дата: Четверг, 17.12.2020, 10:37 | Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 1242
Репутация: 317 ±
Замечаний: 0% ±

365 Beta Channel
Цитата КрасноглазыйПиркаф, 17.12.2020 в 09:44, в сообщении № 1 ()
Еще раз пишу - нужно решить эту вещь формулами
предложите алгоритм, а уж формулы под него написать - не проблема
 
Ответить
Сообщение
Цитата КрасноглазыйПиркаф, 17.12.2020 в 09:44, в сообщении № 1 ()
Еще раз пишу - нужно решить эту вещь формулами
предложите алгоритм, а уж формулы под него написать - не проблема

Автор - прохожий2019
Дата добавления - 17.12.2020 в 10:37
КрасноглазыйПиркаф Дата: Четверг, 17.12.2020, 10:40 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 20% ±

Excel 2013
Цитата прохожий2019, 17.12.2020 в 10:37, в сообщении № 2 ()
предложите алгоритм, а уж формулы под него написать - не проблема


Алгоритм - он делается через надстройку "Поиск решения".
Как этот "Поиск решения" - заменить на формулы ?
 
Ответить
Сообщение
Цитата прохожий2019, 17.12.2020 в 10:37, в сообщении № 2 ()
предложите алгоритм, а уж формулы под него написать - не проблема


Алгоритм - он делается через надстройку "Поиск решения".
Как этот "Поиск решения" - заменить на формулы ?

Автор - КрасноглазыйПиркаф
Дата добавления - 17.12.2020 в 10:40
Gustav Дата: Четверг, 17.12.2020, 11:11 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2731
Репутация: 1132 ±
Замечаний: 0% ±

начинал с Excel 4.0, видел 2.1
В данном конкретном случае (со всеми его имеющимися предпосылками и ограничениями) общий ход решения на формулах без использования "Поиска решения" мне видится так.

Определяем максимально возможный выпуск (в штуках) каждого изделия, исходя из ограничений времени работы оборудования. На примере изделия A формула массива:
Код
=ЦЕЛОЕ(МИН($G$9:$G$12/D9:D12))

Получается следующая картина:
[vba]
Код
Изделие A - максимум можно выпустить 34 штуки
Изделие B - 30 шт
Изделие B - 24 шт
[/vba]
Далее нужно подготовить матрицу всех возможных комбинаций количеств, когда количество для каждого изделия пробегает по циклу от 0 до своего максимального значения. Всего получится таблица из трёх колонок и 27 125 строк ( 27125 = (34+1)*(30+1)*(24+1) ):
[vba]
Код
Изд.A    Изд.B    Изд.C
---------
0    0    0
0    0    1
0    0    2
0    0    3
.........
0    0    23
0    0    24
0    1    0
0    1    1
.........  
0    30    22
0    30    23
0    30    24
1    0    0
1    0    1
1    0    2
.........  
34    30    21
34    30    22
34    30    23
34    30    24
[/vba]Я сделал такую матрицу вручную за 5 минут - с протягиванием, парой элементарных формул сложения и копированием (благо эта матрица вполне конечна и не таких уж ужасающих размеров).

Далее для каждой комбинации из таблицы нужно рассчитать занятость каждого оборудования при обработке количеств этой комбинации, после чего удалить из матрицы строки, в которых затраты времени хотя бы по одному типу оборудования превышают общий фонд времени этого типа.

Наконец, для оставшихся (допустимых) строк матрицы рассчитать суммарную прибыль по каждой строке, после чего найти строку с наибольшим значением этой прибыли.


МОИ: Ник, Tip box: 41001663842605
 
Ответить
СообщениеВ данном конкретном случае (со всеми его имеющимися предпосылками и ограничениями) общий ход решения на формулах без использования "Поиска решения" мне видится так.

Определяем максимально возможный выпуск (в штуках) каждого изделия, исходя из ограничений времени работы оборудования. На примере изделия A формула массива:
Код
=ЦЕЛОЕ(МИН($G$9:$G$12/D9:D12))

Получается следующая картина:
[vba]
Код
Изделие A - максимум можно выпустить 34 штуки
Изделие B - 30 шт
Изделие B - 24 шт
[/vba]
Далее нужно подготовить матрицу всех возможных комбинаций количеств, когда количество для каждого изделия пробегает по циклу от 0 до своего максимального значения. Всего получится таблица из трёх колонок и 27 125 строк ( 27125 = (34+1)*(30+1)*(24+1) ):
[vba]
Код
Изд.A    Изд.B    Изд.C
---------
0    0    0
0    0    1
0    0    2
0    0    3
.........
0    0    23
0    0    24
0    1    0
0    1    1
.........  
0    30    22
0    30    23
0    30    24
1    0    0
1    0    1
1    0    2
.........  
34    30    21
34    30    22
34    30    23
34    30    24
[/vba]Я сделал такую матрицу вручную за 5 минут - с протягиванием, парой элементарных формул сложения и копированием (благо эта матрица вполне конечна и не таких уж ужасающих размеров).

Далее для каждой комбинации из таблицы нужно рассчитать занятость каждого оборудования при обработке количеств этой комбинации, после чего удалить из матрицы строки, в которых затраты времени хотя бы по одному типу оборудования превышают общий фонд времени этого типа.

Наконец, для оставшихся (допустимых) строк матрицы рассчитать суммарную прибыль по каждой строке, после чего найти строку с наибольшим значением этой прибыли.

Автор - Gustav
Дата добавления - 17.12.2020 в 11:11
КрасноглазыйПиркаф Дата: Четверг, 17.12.2020, 11:12 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 20% ±

Excel 2013
Gustav, наверное подойдет такое решения.
А как это в мой файл эксель добавить ?
 
Ответить
СообщениеGustav, наверное подойдет такое решения.
А как это в мой файл эксель добавить ?

Автор - КрасноглазыйПиркаф
Дата добавления - 17.12.2020 в 11:12
Gustav Дата: Четверг, 17.12.2020, 11:36 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2731
Репутация: 1132 ±
Замечаний: 0% ±

начинал с Excel 4.0, видел 2.1
Цитата КрасноглазыйПиркаф, 17.12.2020 в 11:12, в сообщении № 5 ()
А как это в мой файл эксель добавить ?

Пожалуй, помогу с таблицей-матрицей. В прилагаемый файл она полностью не поместилась, поэтому в середине - большой разрыв. Нужно самостоятельно встать на строку 1600 и протянуть диапазон A1600:C1600 вниз до строки 27125 (там несколько строк есть).

Ну, а формулы расчета загрузки оборудования и расчета прибыли для каждой строки - сами-сами! Там уже ничего сложного, чистая арифметика.
К сообщению приложен файл: 27125rows.xlsx (47.9 Kb)


МОИ: Ник, Tip box: 41001663842605
 
Ответить
Сообщение
Цитата КрасноглазыйПиркаф, 17.12.2020 в 11:12, в сообщении № 5 ()
А как это в мой файл эксель добавить ?

Пожалуй, помогу с таблицей-матрицей. В прилагаемый файл она полностью не поместилась, поэтому в середине - большой разрыв. Нужно самостоятельно встать на строку 1600 и протянуть диапазон A1600:C1600 вниз до строки 27125 (там несколько строк есть).

Ну, а формулы расчета загрузки оборудования и расчета прибыли для каждой строки - сами-сами! Там уже ничего сложного, чистая арифметика.

Автор - Gustav
Дата добавления - 17.12.2020 в 11:36
КрасноглазыйПиркаф Дата: Четверг, 17.12.2020, 12:12 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 20% ±

Excel 2013
Gustav, извините я в этом не очень разбираюсь.
Зашел в файл - так три столбца, заполненных какими-то числами.
Я просто не понимаю - как это использовать в моем исходном файле.
Чтобы это как-то применить, нужно наверное разбираться в этом.

Вы можете решить формулами мою задачу ?
Я вам заплачу.
 
Ответить
СообщениеGustav, извините я в этом не очень разбираюсь.
Зашел в файл - так три столбца, заполненных какими-то числами.
Я просто не понимаю - как это использовать в моем исходном файле.
Чтобы это как-то применить, нужно наверное разбираться в этом.

Вы можете решить формулами мою задачу ?
Я вам заплачу.

Автор - КрасноглазыйПиркаф
Дата добавления - 17.12.2020 в 12:12
vikttur Дата: Четверг, 17.12.2020, 12:19 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
Репутация: 526 ±
Замечаний: 0% ±

Помогающим и модераторам на заметку:
https://u.to/XfCLGg


Сообщение отредактировал vikttur - Четверг, 17.12.2020, 12:20
 
Ответить
СообщениеПомогающим и модераторам на заметку:
https://u.to/XfCLGg

Автор - vikttur
Дата добавления - 17.12.2020 в 12:19
КрасноглазыйПиркаф Дата: Четверг, 17.12.2020, 12:45 | Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 20% ±

Excel 2013
vikttur, и что ?
Написал в той теме вопрос.
Говорят - бесплатно помогать не будем давай за деньги.

Написал в личку местным форумчанам - давайте тогда за деньги. Все мимо ушей - не можем, у нас дела, неинтересно.
Пришел на другой форум. Предлагаю деньги за решение задачи.
Так с того форума - прибежал безумный модератор, непонятно с какой целью.
 
Ответить
Сообщениеvikttur, и что ?
Написал в той теме вопрос.
Говорят - бесплатно помогать не будем давай за деньги.

Написал в личку местным форумчанам - давайте тогда за деньги. Все мимо ушей - не можем, у нас дела, неинтересно.
Пришел на другой форум. Предлагаю деньги за решение задачи.
Так с того форума - прибежал безумный модератор, непонятно с какой целью.

Автор - КрасноглазыйПиркаф
Дата добавления - 17.12.2020 в 12:45
Pelena Дата: Четверг, 17.12.2020, 13:13 | Сообщение № 10
Группа: Админы
Ранг: Местный житель
Сообщений: 19174
Репутация: 4413 ±
Замечаний: ±

Excel 365 & Mac Excel
Так, КрасноглазыйПиркаф, полегче. Ссылку на кросспост Вы должны были дать сами в соответствии с Правилами форума. И в этих же Правилах есть пункт про оскорбительные высказывания в адрес форумчан.
Так что бан Вам. На первый раз временный, будет время подумать и перечитать Правила форума


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеТак, КрасноглазыйПиркаф, полегче. Ссылку на кросспост Вы должны были дать сами в соответствии с Правилами форума. И в этих же Правилах есть пункт про оскорбительные высказывания в адрес форумчан.
Так что бан Вам. На первый раз временный, будет время подумать и перечитать Правила форума

Автор - Pelena
Дата добавления - 17.12.2020 в 13:13
Светлый Дата: Четверг, 17.12.2020, 13:50 | Сообщение № 11
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация: 510 ±
Замечаний: 0% ±

Excel 2013, 2016
Предлагаю такое решение:
Формулы в зелёных ячейках.
*Или универсальная формула:
Код
=ОСТАТ(МАКС((МУМНОЖ(Ч(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/E16/F16)*ТРАНСП(D9:D12)+ОСТАТ(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/F16);E16)*ТРАНСП(E9:E12)+ОСТАТ(СТРОКА(ДВССЫЛ("1:"&C16))-1;F16)*ТРАНСП(F9:F12)>ТРАНСП(G9:G12));G9:G12^0)=0)*(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/E16/F16)*D13+ОСТАТ(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/F16);E16)*E13+ОСТАТ(СТРОКА(ДВССЫЛ("1:"&C16))-1;F16)*F13)+СТРОКА(ДВССЫЛ("1:"&C16))%%%);1)/1%%%-1
**В этой формуле ещё округлить до целого надо.
Файл поправил и перезалил.
***С округлением:
Код
=ОКРУГЛ(ОСТАТ(МАКС((МУМНОЖ(-(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/E16/F16)*ТРАНСП(D9:D12)+ОСТАТ(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/F16);E16)*ТРАНСП(E9:E12)+ОСТАТ(СТРОКА(ДВССЫЛ("1:"&C16))-1;F16)*ТРАНСП(F9:F12)>ТРАНСП(G9:G12));G9:G12^0)=0)*(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/E16/F16)*D13+ОСТАТ(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/F16);E16)*E13+ОСТАТ(СТРОКА(ДВССЫЛ("1:"&C16))-1;F16)*F13)+СТРОКА(ДВССЫЛ("1:"&C16))%%%);1)/1%%%-1;)
К сообщению приложен файл: 435547-1.xls (36.0 Kb)


Программировать проще, чем писать стихи.

Сообщение отредактировал Светлый - Четверг, 17.12.2020, 22:29
 
Ответить
СообщениеПредлагаю такое решение:
Формулы в зелёных ячейках.
*Или универсальная формула:
Код
=ОСТАТ(МАКС((МУМНОЖ(Ч(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/E16/F16)*ТРАНСП(D9:D12)+ОСТАТ(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/F16);E16)*ТРАНСП(E9:E12)+ОСТАТ(СТРОКА(ДВССЫЛ("1:"&C16))-1;F16)*ТРАНСП(F9:F12)>ТРАНСП(G9:G12));G9:G12^0)=0)*(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/E16/F16)*D13+ОСТАТ(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/F16);E16)*E13+ОСТАТ(СТРОКА(ДВССЫЛ("1:"&C16))-1;F16)*F13)+СТРОКА(ДВССЫЛ("1:"&C16))%%%);1)/1%%%-1
**В этой формуле ещё округлить до целого надо.
Файл поправил и перезалил.
***С округлением:
Код
=ОКРУГЛ(ОСТАТ(МАКС((МУМНОЖ(-(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/E16/F16)*ТРАНСП(D9:D12)+ОСТАТ(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/F16);E16)*ТРАНСП(E9:E12)+ОСТАТ(СТРОКА(ДВССЫЛ("1:"&C16))-1;F16)*ТРАНСП(F9:F12)>ТРАНСП(G9:G12));G9:G12^0)=0)*(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/E16/F16)*D13+ОСТАТ(ОТБР((СТРОКА(ДВССЫЛ("1:"&C16))-1)/F16);E16)*E13+ОСТАТ(СТРОКА(ДВССЫЛ("1:"&C16))-1;F16)*F13)+СТРОКА(ДВССЫЛ("1:"&C16))%%%);1)/1%%%-1;)

Автор - Светлый
Дата добавления - 17.12.2020 в 13:50
КрасноглазыйПиркаф Дата: Пятница, 18.12.2020, 06:56 | Сообщение № 12
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 20% ±

Excel 2013
Светлый, Спасибо за ответ
 
Ответить
СообщениеСветлый, Спасибо за ответ

Автор - КрасноглазыйПиркаф
Дата добавления - 18.12.2020 в 06:56
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Решение задачи максимизации без "Поиск Решения" - формулами (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!