Git Product home page Git Product logo

miesmuschel's People

Contributors

be-marc avatar dandls avatar mb706 avatar sumny avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

miesmuschel's Issues

Selector Sequential

selector that selects 'at least' x%, or at least n, with method 1, otherwise method 2

Vignettes

  1. Simple GA with simple use of OperatorCombination. Example objective and HPO.
  2. Using mies_* functions explicitly
  3. Self-Adaptive GA
  4. Multifidelity GA

More intelligent defaults

Defaults that are questionable:

  1. Defaults that defeat the behaviour (something does nothing):
    • TermBudget, TermGenerations have default set to Inf, should be not set instead?
    • OperatorProxy have Null operators as default
    • ... this also makes the optimizermies very boring by default
    • p default is 1 for *Maybe operators
  2. Defaults that are probably not general
    • OptimizerMies lambda = 10, mu = 1
  3. Defaults that may well be wrong
    • gauss sdev_is_relative should probably be FALSE, sdev maybe not 1, maybe truncated_normal should be true

Stratified Selector

Selector that selects a relative / absolute number from strata as defined by a given component

Surrogate Assisted GA

Fit surrogate model and use as filter before evaluation. Probably by fitting a model on whole dataset, doing selection with filter and surrogate objective value.

Scalarizer & Selector from scalarizer

Some object that scalarizes (e.g. nondom sorting, but also performance, or other value); selectors could then do best-selection, tournament selection, other things..

sequential w/ SelectorRandom instead of shuffling in generate_offspring

If for some reason the user doesn't want to shuffle there would be the idea of having the raw selector; shuffling would use SelectorSequential(list(SelectorXxx, SelectorRandom)).

The situation is a bit annoying because this is probably the only reason to have a SelectorSequential at all. Also the number of selected individuals is provided dynamically, so to make SelectorSequential useful at all there would need to be a way to select x * n individuals in step 1, followed by n individuals in step 2.

handling multicrit

  • we need some non-dominated sorting, that would pretty much give us NSGA-II

Clean up zzz.R

  • Use suggested packages only when available
  • onUnload remove from dicts again
  • try to get rid of .datatable.aware
  • use backports?

neater error message code

Have a lot of if (empty<x>) stopf("there are elements <x> that should not be there"), that should be abbrevated

Autotest operators

test operate() with wrong cols, test operate() with data.table, with data.frame

Missing Operators

  • sequential operator application
  • Intified Gauss
  • Uniform Numeric
  • Polynomial as in Deb et al. A Combined Genetic Adaptive Search (GeneAS) for Engineering Design
  • one-point crossover
  • arbitrary-point-crossover
  • mean crossover with gaussian (distance-relative)
  • Simulated Binary Crossover (Deb et al. Simulated binary crossover for continuous search space. Complex Systems)
  • DomHV Selector
  • K-tournament Selector (MO)
  • Non-dominated sorting selector
  • Ranking-base selector (Eiben et al. Introduction to evolutionary computing.)
  • Fitness-proportional selector
  • mutDoubleGeom
  • hamming weight preserving bitflip

Abbrevation of Param Types

Often we have things like types = c("ParamInt", "ParamDbl", "ParamFct", "ParamLgl"), but we should have a shorter representation of these. E.g. "All supported params", "All supported params that are numeric in some way", "All categorical params", ...

Support Permutations

Would need to have a sensible way of initializing them.

Permutation Operations

  • Insertion / Jump: remove item from X1, insert it to X2, shift items between X1 and X2 to left/right
  • Inversion: reverse items between X1 and X2
  • Swap: swap items X1 and X2
  • Scramble: shuffle items between X1 and X2
  • Ordered Crossover
  • Partially Mapped Crossover

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.