Страницы: 1
RSS
Поиск решения (Solver). Ограничения. Линейность функций.
 
Доброго времени суток, уважаемые форумчане.
Как человек, слабо понимающий что-либо в математике, прошу вашей помощи.

Описание проблемы:
Цель: поиск необходимого количества работников с заданными графиками работы для покрытия потребности с минимальным перерасходом часов.
Маркировка ячеек:
  • Зелёные - ячейки переменных (которые перебирает поиск решения), они же - количество графиков, находящихся выше в этом столбце.
  • Желтые - зависимые ячейки (количество человеко-часов, набранных при заданных переменных в данный день и час), они же - покрытие графиками потребности по часам.
  • Красная - целевая функция (она минимизируется поиском решения). Сумма часов покрытия.
  • Синяя - дополнительное условие (попытка обхода максимального количества ограничений). Счёт ячеек с отрицательными значениями.
Проблема 1:
Лист "Поиск решения ограничение". Превышено максимальное количество ограничений (100). Основное ограничение - "Покрытие >= Потребность".
Вопрос 1:
Возможно ли обойти максимальное количество ограничений заменой одного типа ограничений другим (например, отсутствие отрицательных значений среди разницы покрытия и потребности (см. Проблема 2) или другими способами (в этом прошу помочь)).

Проблема 2:
Лист "Поиск решения нелинейность". Условия линейности не соблюдены. Проблема в синей ячейке (по отчёту функция не является линейной).
Вопрос 2:
Как соблюсти условие линейности и какие функции будут являться линейными (вопрос применительно к функциям Excel).

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

Буду крайне признателен всем, кто так или иначе поможет в решении вопросов.
 
"Поиск решения" не смог найти решения, ссылаясь на слишком сложную модель.
Запустил OpenSolver для решения без изменения модели.
Результат во вложении.
 
MCH, подскажите, пожалуйста, что за OpenSolver (где взять и где найти описание). Буду премного благодарен.
 
OpenSolver- альтернативная свободная надстройка для поиска решения, работает быстрее чем Solver от MS, и не имеет ограничений в 200 изменяемых ячеек
 
MCH,спасибо большое за помощь! Решение отличное :)
Страницы: 1
Наверх