View full-text article in PMC Molecules. 2021 Jun 17;26(12):3699. doi: 10.3390/molecules26123699 Search in PMC Search in PubMed View in NLM Catalog Add to search Copyright and License information © 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/). PMC Copyright notice Algorithm 1 NSGA-II algorithm [35]. 1: Procedure NSGA-II (N′,g,fk Xk) ∇N′ members evolved g generations to solve fk X 2: Initialize population ℙ′ 3: Generate random population—size N′ 4: Evaluateobjectivevalues 5: Assign rank (level) basedonParetodominance-sort 6: Generate child population 7: Binarytournament selection 8: Recombinationandmutation 9: Fori=1togdo 10: Foreachparentandchildinpopulationdo 11: Assignrank(level)basedonPareto-sort 12: GeneratsetsofnondominatedvectorsalongPFknown 13: Loop(inside)byaddingsolutionstonextgenerationstartingfromthe firstfrontN′individualsfound determinecrowdingdistancebetween pointsonfront 14: Endfor 15: Selectpoints (elitist)onlowerfront (lower rank)andare outsideacrowdingdistance 16: Createnextgeneration 17: Binarytournamentselection 18: Recombinationand mutation 19: Endfor 20: Endprocedure