class_docstr: A study is one assessment and task combination in the `Benchmark` targets. It will
  build and run experiments for all the algorithms for that task.
  
  Parameters
  ----------
  benchmark: A Benchmark instance
  algorithms: list
      Algorithms used for benchmark, each algorithm can be a string or dict, with same format as `Benchmark` algorithms.
  assessment: list
      `Assessment` instance
  task: list
      `Task` instance
class_docstr_tok: ["A","study","is","one","assessment","and","task","combination","in","the","`","Benchmark","`","targets",".","It","will","build","and","run","experiments","for","all","the","algorithms","for","that","task",".","Parameters","--","--","--","--","--","benchmark",":","A","Benchmark","instance","algorithms",":","list","Algorithms","used","for","benchmark",",","each","algorithm","can","be","a","string","or","dict",",","with","same","format","as","`","Benchmark","`","algorithms",".","assessment",":","list","`","Assessment","`","instance","task",":","list","`","Task","`","instance"]
docstr: Represent the object as a string.
docstr_tok: ["Represent","the","object","as","a","string","."]
code: def __repr__(self):
      """Represent the object as a string."""
      algorithms_list = [
          algorithm.name for algorithm in self.algorithms
      ]
  
      return "Study(assessment={}, task={}, algorithms=[{}])".format(
          self.assess_name,
          self.task_name,
          ",".join(algorithms_list),
      )
  
imports: import copy
  import itertools
  import time
  from collections import defaultdict
  from tabulate import tabulate
  import orion.core
  from orion.algo.base import algo_factory
  from orion.client import create_experiment
  from orion.executor.base import executor_factory
  from orion.storage.base import BaseStorageProtocol
label_desc: Use image node_id 8 for calling the Study obj's underlying member method code with example usage: obj.__repr__() and returns: str