summit icon indicating copy to clipboard operation
summit copied to clipboard

TSEMO samples variable referenced before assignment

Open jcgsville opened this issue 3 years ago • 0 comments

  • Operating System: MacOS
  • Python version: 3.7.9
  • summit version used: 0.8.3

Description

When suggesting experiments with TSEMO, I'm getting a samples variable referenced before assignment error. Here's a simple repro script:

from summit.domain import (
    CategoricalVariable,
    ContinuousVariable,
    Domain
)
from summit.strategies.tsemo import TSEMO

domain = Domain()
domain += CategoricalVariable(name = "solvent", description = "solv", levels = ["Water"])
domain += ContinuousVariable(name = "temperature", description="temp", bounds=[0,100])
domain += ContinuousVariable(name="exp_yield", description="yi", bounds=[1,2], is_objective=True, maximize=True)
domain += ContinuousVariable(name="waste", description="wa", bounds=[1,2], is_objective=True, maximize=False)
strategy = TSEMO(domain)
strategy.suggest_experiments(3, prev_res=None)

Here's the error I receive (real paths redacted)

Traceback (most recent call last):
  File "src/repro.py", line 14, in <module>
    strategy.suggest_experiments(3, prev_res=None)
  File "/path/to/summit/strategies/tsemo.py", line 177, in suggest_experiments
    return lhs.suggest_experiments(k, criterion="maximin")
  File "/path/to/summit/strategies/random.py", line 232, in suggest_experiments
    values = b + samples[:, k] * (
UnboundLocalError: local variable 'samples' referenced before assignment

jcgsville avatar Oct 01 '21 00:10 jcgsville