h2r / pomdp-py

A framework to build and solve POMDP problems. Documentation: https://h2r.github.io/pomdp-py/
MIT License
216 stars 50 forks source link

Benchmark w.r.t the original Silver's code? #22

Open francescotaioli opened 2 years ago

francescotaioli commented 2 years ago

Hi, Is it available a benchmark (speed and memory) w.r.t the original POMCP C++ code? It would interesting also for large POMDPs

zkytony commented 2 years ago

Hi @francesco-taioli, no, we don't yet have a benchmark against the original codebase. The C++ codebase will probably be significantly faster and with less memory, because with pomdp-py, even though the POMCP algorithm is implemented in Cython, the POMDP domain (i.e. the models) are implemented in Python, which are slower to sample during planning.

It's indeed good to have a benchmark. Will mark this as todo. I'm not sure when I can get to this, but if you feel like giving it a shot, please go ahead. For practical applications, running a larger amount of simulations might not give you a significant boost in task performance, compared to using a rollout policy with heuristics baked-in.

Also, for what it's worth, the original POMCP source isn't available here any more http://www0.cs.ucl.ac.uk/staff/d.silver/web/Applications_files/pomcp-1.0.tar.gz

francescotaioli commented 2 years ago

Thanks @zkytony for the detailed answer.