all_nlopts = [NLOPT_LN_SBPLX, NLOPT_LN_PRAXIS, NLOPT_GN_DIRECT, NLOPT_GN_DIRECT_L, NLOPT_GN_CRS2_LM, NLOPT_GN_AGS, NLOPT_GN_ISRES, NLOPT_GN_ESCH, NLOPT_LN_COBYLA, NLOPT_LN_BOBYQA, NLOPT_LN_NEWUOA_BOUND, NLOPT_LN_NELDERMEAD]

anisotropic_progressive = [ProgCMAAuto, ProgECMAAuto, ProgDEAuto, ProgTwoPointsDEAuto, ProgPSOAuto, ProgNoisyRL2Auto, ProgNoisyRL3Auto, ProgNoisyRL1Auto, ProgMixDeterministicRLAuto, ProgCMA3, ProgECMA3, ProgDE3, ProgTwoPointsDE3, ProgPSO3, ProgNoisyRL23, ProgNoisyRL33, ProgNoisyRL13, ProgMixDeterministicRL3, ProgCMA5, ProgECMA5, ProgDE5, ProgTwoPointsDE5, ProgPSO5, ProgNoisyRL25, ProgNoisyRL35, ProgNoisyRL15, ProgMixDeterministicRL5, ProgCMA9, ProgECMA9, ProgDE9, ProgTwoPointsDE9, ProgPSO9, ProgNoisyRL29, ProgNoisyRL39, ProgNoisyRL19, ProgMixDeterministicRL9, ProgCMA13, ProgECMA13, ProgDE13, ProgTwoPointsDE13, ProgPSO13, ProgNoisyRL213, ProgNoisyRL313, ProgNoisyRL113, ProgMixDeterministicRL13]

baselines = ['OnePlusOne', 'DiscreteOnePlusOne', 'NoisyDiscreteOnePlusOne', 'PSO', 'DE', 'TwoPointsDE']

basics = ['NGOpt10', 'CMandAS2', 'CMA', 'DE', 'MetaModel']

cma = ['DiagonalCMA', 'CMA']

competence_map = ['NGO', 'Shiwa']

competitive = ['DiagonalCMA', 'CMA', 'NGO', 'Shiwa', 'NGOpt', 'NGOptRW', 'GeneticDE', 'NaiveTBPSA', 'PSO', 'DE', 'LhsDE', 'RandomSearch', 'OnePlusOne', 'TwoPointsDE']

discrete = ['DiscreteDE', 'DiscreteOnePlusOne', 'SADiscreteLenglerOnePlusOneExp09', 'SADiscreteLenglerOnePlusOneExp099', 'SADiscreteLenglerOnePlusOneExp09Auto', 'SADiscreteLenglerOnePlusOneLinAuto', 'SADiscreteLenglerOnePlusOneLin1', 'SADiscreteLenglerOnePlusOneLin100', 'SADiscreteOnePlusOneExp099', 'SADiscreteOnePlusOneLin100', 'SADiscreteOnePlusOneExp09', 'DiscreteOnePlusOneT', 'PortfolioDiscreteOnePlusOne', 'PortfolioDiscreteOnePlusOneT', 'DiscreteLenglerOnePlusOne', 'DiscreteLengler2OnePlusOne', 'DiscreteLengler3OnePlusOne', 'DiscreteLenglerHalfOnePlusOne', 'DiscreteLenglerFourthOnePlusOne', 'DiscreteLenglerOnePlusOneT', 'AdaptiveDiscreteOnePlusOne', 'LognormalDiscreteOnePlusOne', 'BigLognormalDiscreteOnePlusOne', 'HugeLognormalDiscreteOnePlusOne', 'AnisotropicAdaptiveDiscreteOnePlusOne', 'DiscreteBSOOnePlusOne', 'DiscreteDoerrOnePlusOne', 'OptimisticDiscreteOnePlusOne', 'OLNDiscreteOnePlusOne', 'DoubleFastGADiscreteOnePlusOne', 'SparseDoubleFastGADiscreteOnePlusOne', 'RecombiningPortfolioDiscreteOnePlusOne', 'MultiDiscrete', 'discretememetic', 'SmoothDiscreteOnePlusOne', 'SmoothPortfolioDiscreteOnePlusOne', 'SmoothDiscreteLenglerOnePlusOne', 'SmoothDiscreteLognormalOnePlusOne', 'SuperSmoothDiscreteLenglerOnePlusOne', 'UltraSmoothDiscreteLenglerOnePlusOne', 'SmoothLognormalDiscreteOnePlusOne', 'SmoothAdaptiveDiscreteOnePlusOne', 'SmoothRecombiningPortfolioDiscreteOnePlusOne', 'SmoothRecombiningDiscreteLanglerOnePlusOne', 'UltraSmoothRecombiningDiscreteLanglerOnePlusOne', 'UltraSmoothElitistRecombiningDiscreteLognormalOnePlusOne', 'UltraSmoothElitistRecombiningDiscreteLanglerOnePlusOne', 'SuperSmoothElitistRecombiningDiscreteLanglerOnePlusOne', 'SuperSmoothRecombiningDiscreteLanglerOnePlusOne', 'SuperSmoothRecombiningDiscreteLognormalOnePlusOne', 'SmoothElitistRecombiningDiscreteLanglerOnePlusOne', 'SmoothElitistRandRecombiningDiscreteLanglerOnePlusOne', 'SmoothElitistRandRecombiningDiscreteLognormalOnePlusOne', 'RecombiningDiscreteLanglerOnePlusOne', 'RecombiningDiscreteLognormalOnePlusOne', 'MaxRecombiningDiscreteLenglerOnePlusOne', 'MinRecombiningDiscreteLenglerOnePlusOne', 'OnePtRecombiningDiscreteLenglerOnePlusOne', 'TwoPtRecombiningDiscreteLenglerOnePlusOne', 'RandRecombiningDiscreteLenglerOnePlusOne', 'RandRecombiningDiscreteLognormalOnePlusOne', 'FastGADiscreteOnePlusOne', 'SparseDiscreteOnePlusOne']

emna_variants = ['IsoEMNA', 'NaiveIsoEMNA', 'AnisoEMNA', 'NaiveAnisoEMNA', 'CMA', 'NaiveTBPSA', 'NaiveIsoEMNATBPSA', 'IsoEMNATBPSA', 'NaiveAnisoEMNATBPSA', 'AnisoEMNATBPSA']

es = [EvolutionStrategy(offsprings=100, only_offsprings=True, popsize=20, recombination_ratio=0.1), EvolutionStrategy(offsprings=200, only_offsprings=True, recombination_ratio=0.1), EvolutionStrategy(offsprings=400, only_offsprings=True, popsize=80, recombination_ratio=0.1), EvolutionStrategy(offsprings=100, only_offsprings=True, popsize=20, recombination_ratio=0.5), EvolutionStrategy(offsprings=200, only_offsprings=True, recombination_ratio=0.5), EvolutionStrategy(offsprings=400, only_offsprings=True, popsize=80, recombination_ratio=0.5), EvolutionStrategy(offsprings=100, popsize=20, recombination_ratio=0.1), EvolutionStrategy(offsprings=200, recombination_ratio=0.1), EvolutionStrategy(offsprings=400, popsize=80, recombination_ratio=0.1), EvolutionStrategy(offsprings=100, popsize=20, recombination_ratio=0.5), EvolutionStrategy(offsprings=200, recombination_ratio=0.5), EvolutionStrategy(offsprings=400, popsize=80, recombination_ratio=0.5)]

large = ['CMA', 'PSO', 'DE', 'MiniDE', 'QrDE', 'MiniQrDE', 'LhsDE', 'OnePlusOne', 'SQP', 'Cobyla', 'Powell', 'TwoPointsDE', 'OnePointDE', 'AlmostRotationInvariantDE', 'RotationInvariantDE', 'Portfolio', 'CMandAS2', 'CM', 'MultiCMA', 'TripleCMA', 'MultiScaleCMA', 'RSQP', 'RCobyla', 'RPowell', 'MetaModel', 'PolyCMA']

multimodal = ['NaiveTBPSA', 'MultiCMA', 'TripleCMA', 'MultiScaleCMA', 'PolyCMA', 'QORandomSearch']

noisy = ['OptimisticDiscreteOnePlusOne', 'OptimisticNoisyOnePlusOne', 'TBPSA', 'SPSA', 'NGOpt10']

oneshot = ['AvgHammersleySearch', 'AvgHammersleySearchPlusMiddlePoint', 'AvgMetaRecenteringNoHull', 'CauchyScrHammersleySearch', 'HammersleySearch', 'HammersleySearchPlusMiddlePoint', 'HullAvgMetaRecentering', 'HullAvgMetaTuneRecentering', 'HullCenterHullAvgCauchyScrHammersleySearch', 'HullCenterHullAvgLargeHammersleySearch', 'HullCenterHullAvgScrHammersleySearch', 'HullCenterHullAvgScrHammersleySearchPlusMiddlePoint', 'MetaCauchyRecentering', 'MetaRecentering', 'MetaTuneRecentering', 'OScrHammersleySearch', 'QORandomSearch', 'QOScrHammersleySearch', 'RescaleScrHammersleySearch', 'ScrHammersleySearch', 'ScrHammersleySearchPlusMiddlePoint', 'TEAvgCauchyScrHammersleySearch', 'TEAvgScrHammersleySearch', 'TEAvgScrHammersleySearchPlusMiddlePoint', 'Zero']

parallel_basics = ['NGOpt10', 'CMandAS2', 'CMA', 'DE', 'MetaModel']

progressive = [ProgDiscAuto, ProgDisc13, ProgDiscInf, ProgAuto, Prog13, ProgInf]

scipy = ['RSQP', 'RCobyla', 'RPowell', 'SQPCMA', 'SQP', 'Cobyla', 'Powell']

small_discrete = ['DiscreteOnePlusOne', 'RLSOnePlusOne', 'Shiwa', 'CMA', 'PSO', 'TwoPointsDE', 'DE', 'OnePlusOne', 'AdaptiveDiscreteOnePlusOne', 'CMandAS2', 'PortfolioDiscreteOnePlusOne', 'DoubleFastGADiscreteOnePlusOne', 'MultiDiscrete', 'DiscreteBSOOnePlusOne', 'AnisotropicAdaptiveDiscreteOnePlusOne', 'DiscreteLenglerOnePlusOne']

split = ['SplitCSEC11', 'SplitSQOPSO', 'SplitPSO', 'SplitCMA', 'SplitQODE', 'SplitTwoPointsDE', 'SplitDE', 'CSEC11', 'SQOPSO', 'PSO', 'CMA', 'QODE', 'TwoPointsDE', 'DE']

splitters = [SplitCMAAuto, SplitECMAAuto, SplitDEAuto, SplitTwoPointsDEAuto, SplitCMA3, SplitECMA3, SplitDE3, SplitTwoPointsDE3, SplitCMA5, SplitECMA5, SplitDE5, SplitTwoPointsDE5, SplitCMA9, SplitECMA9, SplitDE9, SplitTwoPointsDE9, SplitCMA13, SplitECMA13, SplitDE13, SplitTwoPointsDE13]

spsa = ['NaiveTBPSA', 'SPSA', 'TBPSA']

structure = ['RecES', 'RecMixES', 'RecMutDE', 'ParametrizationDE']

structured_moo = ['CMA', 'NGOpt10', 'MetaNGOpt10', 'DE', 'PSO', 'RecES', 'RecMixES', 'RecMutDE', 'ParametrizationDE']