class_docstr: Searches for the best model using a random search
docstr: Do a random search
docstr_tok: ["Do","a","random","search"]
code: def solve(self):
      """Do a random search"""
      fit_partial = self.fit_partial
      n_jobs = self.n_jobs
      gen = self.gen
  
      # get results in parallel
      all_res = Parallel(n_jobs=n_jobs)(
          delayed(fit_partial)(
              order=order,
              seasonal_order=seasonal_order,
          )
          for order, seasonal_order in gen
      )
  
      sorted_fits = _sort_and_filter_fits(all_res)
      if self.trace and sorted_fits:
          print(f"\nBest model: {str(sorted_fits[0])}")
  
      return sorted_fits
  
imports: from numpy.linalg import LinAlgError
  import numpy
  from datetime import datetime
  from joblib import Parallel, delayed
  from sklearn.utils import check_random_state
  import abc
  import functools
  import time
  import warnings
  import traceback
  from .arima import ARIMA
  from ..warnings import ModelFitWarning
  from ._context import ContextType, ContextStore
  from .None import _validation
  from ..compat import statsmodels
label_desc: Use image node_id 2 for calling the _RandomFitWrapper obj's underlying member method code with example usage: obj.solve() and returns: sorted_fits