class_docstr: Implement a gradient descent algorithm.
docstr: Suggest a `num`ber of new sets of parameters.
  
  Perform a step towards negative gradient and suggest that point.
code: def suggest(self, num):
      """Suggest a `num`ber of new sets of parameters.
  
      Perform a step towards negative gradient and suggest that point.
  
      """
      num = 1  # Simple gradient descent only make sense for 1 point at a time.
  
      if not self.has_observed_once:
          return self.space.sample(1)
  
      self.current_point -= self.learning_rate * self.gradient
      return [
          format_trials.tuple_to_trial(self.current_point, self.space)
      ]
  
file_path: orion/tests/functional/gradient_descent_algo/src/orion/algo/gradient_descent.py
imports: import numpy
  from orion.algo.base import BaseAlgorithm
  from orion.core.utils import format_trials
label_desc: Use image node_id 2 for calling the Gradient_Descent obj's underlying member method code with example usage: obj.suggest(num) and returns: list, self