code: def test_constr_opt_1():
      def objective_function(para):
          score = -(para["x1"] * para["x1"] + para["x2"] * para["x2"])
          return score
  
      search_space = {
          "x1": list(np.arange(-10, 10, 1)),
          "x2": list(np.arange(-10, 10, 1)),
      }
  
      def constraint_1(para):
          return para["x1"] > -5
  
      constraints_list = [constraint_1]
  
      hyper = Hyperactive()
      hyper.add_search(
          objective_function,
          search_space,
          n_iter=50,
          constraints=constraints_list,
      )
      hyper.run()
  
      search_data = hyper.search_data(objective_function)
      x0_values = search_data["x1"].values
  
      print("\n search_data \n", search_data, "\n")
  
      assert np.all(x0_values > -5)
  
imports: import numpy
  from hyperactive import Hyperactive
label_desc: Use image node_id 2 for calling a global function with example usage: test_constr_opt_1() and returns: score, unknown