Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Parallel evaluations #212

Closed
samyip123 opened this issue Mar 6, 2020 · 5 comments
Closed

Parallel evaluations #212

samyip123 opened this issue Mar 6, 2020 · 5 comments

Comments

@samyip123
Copy link

Referencing issue #138, i tried to implement the code mentioned in concurrent.futures and ran into trouble with the code not completing , may i ask if it is possible to implement on concurrent.futures instead of asyncio as referenced by async bayesian optimization example

class hyper_class():

    def __init__(self):
        self.result = None
        self.point = None

    def step(self, input):
       optimizer = input[0]
       model = input[1]
        if self.result is not None:
            optimizer.register(self.point, self.result)
        self.point = optimizer.suggest(utility)
        self.result = model(self.point)

        return None

with concurrent.futures.ProcessPoolExecutor() as executor:
    for _ in range(16):
       executor.submit(hyper_class().step, [optimizer, model])
@fmfn
Copy link
Member

fmfn commented May 1, 2020

Unfortunately I don't currently have the bandwidth to do it, but PRs are more than welcome.

@yinrong
Copy link

yinrong commented Jun 15, 2022

+1 request this

@mrsmee4924
Copy link

Is this something that is still being worked on or may I take a stab at this? I'm familiar with Dask and learning Ray now so it could be something to look into? Was also looking into the #381 issue as well.

@till-m
Copy link
Member

till-m commented Apr 27, 2024

Hey @mrsmee4924,

parallelizing BO is non-trivial as it's generally a sequential algorithm. Before looking into a specific technical implementation, we would need to figure out how to parallelize the suggestion step in a meaningful way. There are related discussions/implementations for this already (#347, #365, #447). Though I think this is probably not the optimal approach (GPyOpt, for example, seems to use this method which might work better.

All in all, I think some literature review is needed here, before we move forward. Would you be interested in taking this on, too?

@till-m
Copy link
Member

till-m commented Sep 20, 2024

I currently don't see the value of having such an example. Feel free to re-open if there's a specific need that this would address.

@till-m till-m closed this as not planned Won't fix, can't repro, duplicate, stale Sep 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants