Prolog 塞托夫:有办法早点停车吗?
我想找出许多计划的最小错误数。我生成一个计划,获取它的错误,将所有错误存储在一个列表中,并获取第一个元素(mineror)。MinError为>=0,因此我想知道当随机计划获取错误=0并返回MinError时,是否可以停止此过程Prolog 塞托夫:有办法早点停车吗?,prolog,prolog-setof,Prolog,Prolog Setof,我想找出许多计划的最小错误数。我生成一个计划,获取它的错误,将所有错误存储在一个列表中,并获取第一个元素(mineror)。MinError为>=0,因此我想知道当随机计划获取错误=0并返回MinError时,是否可以停止此过程 setof(Errors,A^B^C^(schedule(A,B,C),schedule_Errors(A,B,C,Errors)),[mineror |)]。当您发现最小值时,您可以使用if-then-else和cut停止处理进一步的解决方案: setof(Error
setof(Errors,A^B^C^(schedule(A,B,C),schedule_Errors(A,B,C,Errors)),[mineror |)]。
当您发现最小值时,您可以使用if-then-else和cut停止处理进一步的解决方案:
setof(Errors,
A^B^C^(
schedule(A,B,C),
schedule_errors(A,B,C,Errors),
(Errors=0 -> ! ; true)
),
[MinError|_]).