itertools.ifilter with IPython Parallel
对于某些问题(证明是NP难解决的),我没有其他选择,只有详尽的搜索。我有一组数据——为了简单起见,
1 2 | from itertools import ifilter, combinations answer = list(ifilter(lambda x: f(x) > 0, combinations(S,N))) |
但在现实生活中,
有几个例子说明如何将生成器分成块,但据我所知,它们仍然是连续的生成器。还有一个与@minrk相关的想法,但由于某种原因,它的表现确实很糟糕。
所以问题是:
- 有没有办法直接与
ipyparallel 实现itertools.ifilter ?或 - 是否可以将python生成器分为一组独立的生成器(独立发送到
ipcluster 引擎)?
在这里,彻底的搜索是完全没有希望的,无论你如何将其并行。由于
您需要使用更智能的算法。