class_docstr: Example agent whose learning curve is a random sigmoid.
  
  The dummy hyperparameters "width" and "height" determine the slope and
  maximum reward value reached.
class_docstr_tok: ["Example","agent","whose","learning","curve","is","a","random","sigmoid",".","The","dummy","hyperparameters","``","width","''","and","``","height","''","determine","the","slope","and","maximum","reward","value","reached","."]
code: def step(self):
      self.timestep += 1
      v = np.tanh(float(self.timestep) / self.config.get("width", 1))
      v *= self.config.get("height", 1)
      time.sleep(0.1)
      # Here we use `episode_reward_mean`, but you can also report other
      # objectives such as loss or accuracy.
      return {"episode_reward_mean": v}
  
file_path: ray/python/ray/tune/examples/bohb_example.py
imports: import json
  import time
  import os
  import numpy
  import ray
  from ray import train, tune
  from ray.tune import Trainable
  from ray.tune.schedulers.hb_bohb import HyperBandForBOHB
  from ray.tune.search.bohb import TuneBOHB
label_desc: Use image node_id 2 for calling the MyTrainableClass obj's underlying member method code with example usage: obj.step() and returns: dict