Как уже упоминалось в комментариях: F1{i in 1..m, j in 1..n}: sum{j} X[i,j]=1;
выглядит не так.
Ограничение типа:
F1{i in 1..m, j in 1..n}: X[i,j]=1;
исправит все переменные X к одной (делая проблему неосуществимой).
Ограничение
F1{i in 1..m, j in 1..n}: sum{j} X[i,j]=1;
действительно мало что меняет (просто добавляет бесполезную сумму): он все еще фиксирует все переменные X в одной. Вы можете убедиться в этом, сгенерировав и проверив файл LP. Должно показать:
Subject To
F1(1,1): + X(1,1) = 1
F1(1,2): + X(1,2) = 1
F1(1,3): + X(1,3) = 1
F1(1,4): + X(1,4) = 1
. . .
Создание LP-файла является полезным инструментом отладки.