Excel Solver по требованию с многоуровневым ценообразованием - PullRequest
0 голосов
/ 22 октября 2018

Я использую Excel Solver для распределения спроса между несколькими поставщиками.Я использую многоуровневое ценообразование, поэтому целевая функция является нелинейной.(цена является функцией объема, а общая стоимость = цена x объем).Однако, когда я запускаю солвер, он дает мне решение, но это не самое оптимальное решение.Я думаю, причина в том, что я использую неправильный метод или потому, что я использую много функций iferror.

  1. В моей целевой функции не должно быть разрывов, поэтому я должениспользовать GRG нелинейно правильно?Моя целевая функция: (общая стоимость = V1xP1 + V2xP2 ..., где V1 - это объем поставщика 1, а P1 - цена поставщика 1. Цена варьируется в зависимости от объема, но она является многоуровневой (т. Е. Первые 100 кг - это 1 доллар, а вторая - 400 кг).$ .95 и т. Д.).)

  2. Я использую функции iferror во всех моих расчетах цен.Это должно предотвратить любую # DIV / 0!ошибки, когда объем равен 0.

Кроме того, эту формулу я использую для расчета средней цены за единицу на основе многоуровневой цены.

=SUMPRODUCT( --(E$135 > E$10:E$11), E$135-E$10:E$11, E$3:E$4-E$2:E$3)/E$135

where E$135 = demand, E$10:E$11 = tiered price volume, E$3:E$4 = tiered prices

Кто-нибудь знает, еслилюбой из этих двух может вызвать проблемы с решателем?Сейчас он работает без ошибок, но не выдает оптимального решения.Заранее благодарен за любую помощь.

Редактировать: Я читал, что GRG Nonlinear даст вам только локальное оптимальное решение, а не глобальное оптимальное решение.Можно ли как-нибудь найти глобальное оптимальное решение для нелинейной целевой функции?

...