Отсутствует ограничение AllDifferent в Excel 2007

959
Nick Liu

Я пытаюсь использовать решатель в Excel 2007, но я не нашел в нем ограничения "alldifferent", например:

пример

Я могу видеть "целое число", "двоичный", но нет "alldifferent".

Может ли кто-нибудь помочь мне найти его? Спасибо!

0
1) обновить до Excel 2010 или выше, или 2) добавить несколько ограничений, аналогичных ABS (v1-v2)> = 1. OldUgly 7 лет назад 0

1 ответ на вопрос

0
OldUgly

Различное ограничение было добавлено в Excel 2010.

Вы можете наложить все различные ограничения, используя дополнительные формулы и ограничения в Excel 2007. Ниже приведен упрощенный пример ...

Скриншот установки ...

enter image description here

Здесь Eqn1 есть, =A2*10+A3*9+A4*8+A5*7+A6*6а Eqn2 есть=A6*10+A5*9+A4*8+A3*7+A2*6

Вы можете видеть, что ячейка B2 содержит уравнение CSE {=MIN(ABS(A2-A3:$A$6))}. Это опускается до B5, где уравнение {=MIN(ABS(A5-A6:$A$6))}.

Например, Солвер настроен с:

  • SetObjective: $ F $ 2
  • До: мин
  • Изменяя: $ A $ 2: $ A $ 6
  • С учетом ограничений:
    • $ A $ 2: $ A $ 6 <= $ D $ 2: $ D $ 6
    • $ A $ 2: $ A $ 6> = $ C $ 2: $ C $ 6
    • $ B $ 2: $ B $ 5> = $ E $ 2: $ E $ 5
    • $ A $ 2: $ A $ 6 = целое число
  • Выберите метод решения: эволюционный

Ниже скриншот ...

enter image description here

Ниже приведен скриншот решения.

enter image description here

Он нашел ожидаемый ответ 1,2,3,4,5.

Изменение SetObjective на $ G $ 2 дает ответ 5,4,3,2,1.

Похожие вопросы