У меня есть список переменных L по конечной области. Например:
:- use_module(library(clpfd)).
example :-
L = [_,_,_],
L ins 1..10,
...
Более того, у меня есть предикат
pred(L,C)
что для любого присвоения L значениям домена дает стоимость C.
Вопрос в том, как использовать функцию маркировки CLPFD, чтобы найти присвоение L, которое минимизирует C.
example :-
L = [_,_,_],
L ins 1..10,
pred(L,C),
labeling([min(C)],L),
write(L).
Не работает. Он просто выбирает первое назначение (т. Е. [1,1,1]).