0
我有一个运行迭代深化搜索,想的一定时间过去之后,从最深的搜索返回值的函数。代码框架看起来像如何运行一段时间后返回的搜索?
import time
answers = []
START = time.clock()
current_depth = 1
while time.clock() - START < DESIRED_RUN_TIME:
answers.append(IDS(depth=current_depth))
current_depth += 1
return answers[-1]
的问题与此代码是它不会返回,直到时限过后。解决这个问题的最好方法是什么?如果我只需在IDS函数中添加时间检查,我如何确保返回找到的最后一个值?任何帮助将不胜感激。
对于搜索问题,我保留了一个全球“最好”的答案,搜索分支更新了它,因为他们找到了更好的答案。如果你有一个线程进行搜索,你不会遇到线程安全问题,否则你需要锁定/关键部分/任何更新最好。 –