class_docstr: Differential Evolution optimization, using Storn and Price's algorithm.
  
  Alternate implementation: 
      - utilizes a map-reduce interface, extensible to parallel computing
      - both a current and a next generation are kept, while the current
        generation is invariant during the main DE logic
      
class_docstr_tok: ["Differential","Evolution","optimization",",","using","Storn","and","Price","'s","algorithm",".","Alternate","implementation",":","-","utilizes","a","map-reduce","interface",",","extensible","to","parallel","computing","-","both","a","current","and","a","next","generation","are","kept",",","while","the","current","generation","is","invariant","during","the","main","DE","logic"]
docstr: create an in-memory log of the genealogy of the population
  
  Args:
      id (int): the index of the candidate in the population matrix
      newchild (list[float]): a new trialSolution
          
docstr_tok: ["create","an","in-memory","log","of","the","genealogy","of","the","population","Args",":","id","(","int",")",":","the","index","of","the","candidate","in","the","population","matrix","newchild","(","list","[","float","]",")",":","a","new","trialSolution"]
code: def UpdateGenealogyRecords(self, id, newchild):
      """create an in-memory log of the genealogy of the population
  
      Args:
          id (int): the index of the candidate in the population matrix
          newchild (list[float]): a new trialSolution
      """
      self.genealogy[id].append(newchild)
      return
  
imports: from mystic.tools import wrap_function, unpair, isiterable
  from mystic.tools import wrap_bounds, wrap_penalty, reduced
  from mystic.abstract_solver import AbstractSolver
  from mystic.abstract_map_solver import AbstractMapSolver
  from numpy import asfarray, ravel
  from collections.abc import Callable
label_desc: Use image node_id 2 for calling the DifferentialEvolutionSolver2 obj's underlying member method code with example usage: obj.UpdateGenealogyRecords(id, newchild) without return types