c

scalation.minima

GeneticAlgorithm

class GeneticAlgorithm extends AnyRef

The GeneticAlgorithm class performs local search to find minima of functions defined on integer vector domains (z^n).

minimize f(x) subject to g(x) <= 0, x in Z^n

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. GeneticAlgorithm
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new GeneticAlgorithm(f: (VectorI) ⇒ Double, x0: VectorI, vMax: Int = 100, g: (VectorI) ⇒ Double = null, maxStep: Int = 5)

    f

    the objective function to be minimize (f maps an integer vector to a double)

    x0

    the starting point for the search (seed for GA)

    g

    the constraint function to be satisfied, if any

    maxStep

    the maximum/starting step size (make larger for larger domains)

Type Members

  1. type Vec_Func = (VectorI, Double)

    Pair consisting of an integer vector and its functional value (a double)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def crossOver(): Unit

    For each individual in the population, cross it with some other individual.

  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  9. def fg(x: VectorI): Double

    The objective function f re-scaled by a weighted penalty, if constrained.

    The objective function f re-scaled by a weighted penalty, if constrained.

    x

    the coordinate values of the current point

  10. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. def fitnessCrossOver(): Unit

    For each individual in the population, cross it with some other individual.

    For each individual in the population, cross it with some other individual. Let the crossover be dependent of the fitness of the individual.

  12. def fittest: Vec_Func

    Find the fittest individual (smallest value of objective function).

  13. def genPopulation(): Unit

    Generate an initial population of individuals.

  14. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  15. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  16. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  17. def mutate(): Unit

    Randomly select individuals for mutation (change a value at one position).

  18. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  19. final def notify(): Unit
    Definition Classes
    AnyRef
  20. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  21. def printPopulation(): Unit

    Print the current population

  22. def solve(): Vec_Func

    Solve the minimization problem using a genetic algorithm.

  23. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  24. def toString(): String
    Definition Classes
    AnyRef → Any
  25. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped