如何编写查询以测试在 ECLiPSe-CLP 中使用 eplex Lib 编写的以下代码
How To write a query for testing the following code that written with eplex Lib in ECLiPSe-CLP
我是 ECLiPSe 的新手,遇到以下问题。
当我编写和编译这个简单的程序时:
---------------------------------
:- lib(eplex).
main1(Cost, Vars) :-
Vars = [A1, A2, A3, B1, B2, B3, C1, C2, C3, D1, D2, D3],
Vars :: 0.0..inf, % variables
A1 + A2 + A3 $= 200, % demand constraints
B1 + B2 + B3 $= 400,
C1 + C2 + C3 $= 300,
D1 + D2 + D3 $= 100,
A1 + B1 + C1 + D1 $=< 500, % capacity constraints
A2 + B2 + C2 + D2 $=< 300,
A3 + B3 + C3 + D3 $=< 400,
optimize(min( % solve
10*A1 + 7*A2 + 11*A3 +
8*B1 + 5*B2 + 10*B3 +
5*C1 + 5*C2 + 8*C3 +
9*D1 + 3*D2 + 7*D3), Cost).
------------------------------
不知道怎么测试?或者什么是测试它的简单查询?
如果你能指导我,我会很高兴。
提前致谢
main1
的两个参数都是输出,所以你可以在查询中只提供两个变量(大写名称),例如main1(C,Vs)
。在查询提示符(或查询输入框,如果您使用的是 tkeclipse)中键入此内容,然后系统将 运行 代码并打印答案绑定:
[eclipse 1]: main1(C, Vs).
C = 6600.0
Vs = [100.0, 0.0, 100.0, 100.0, 300.0, 0.0, 300.0, 0.0, 0.0, 0.0, 0.0, 100.0]
Yes (0.00s cpu)
我是 ECLiPSe 的新手,遇到以下问题。 当我编写和编译这个简单的程序时:
---------------------------------
:- lib(eplex).
main1(Cost, Vars) :-
Vars = [A1, A2, A3, B1, B2, B3, C1, C2, C3, D1, D2, D3],
Vars :: 0.0..inf, % variables
A1 + A2 + A3 $= 200, % demand constraints
B1 + B2 + B3 $= 400,
C1 + C2 + C3 $= 300,
D1 + D2 + D3 $= 100,
A1 + B1 + C1 + D1 $=< 500, % capacity constraints
A2 + B2 + C2 + D2 $=< 300,
A3 + B3 + C3 + D3 $=< 400,
optimize(min( % solve
10*A1 + 7*A2 + 11*A3 +
8*B1 + 5*B2 + 10*B3 +
5*C1 + 5*C2 + 8*C3 +
9*D1 + 3*D2 + 7*D3), Cost).
------------------------------
不知道怎么测试?或者什么是测试它的简单查询?
如果你能指导我,我会很高兴。 提前致谢
main1
的两个参数都是输出,所以你可以在查询中只提供两个变量(大写名称),例如main1(C,Vs)
。在查询提示符(或查询输入框,如果您使用的是 tkeclipse)中键入此内容,然后系统将 运行 代码并打印答案绑定:
[eclipse 1]: main1(C, Vs).
C = 6600.0
Vs = [100.0, 0.0, 100.0, 100.0, 300.0, 0.0, 300.0, 0.0, 0.0, 0.0, 0.0, 100.0]
Yes (0.00s cpu)