예제 #1
0
def ex2(maximize):
    black_box = (lambda a, b, c, d, e, f, g, h, i, j, k:(

  abs(a * b + a * c + a * d
  + a * e + a * f + a * g + a * h
  + a * i + a * j + b * c + b * d
  + b * e + b * f + b * g + b * h
  + b * i + b * j + c * d + c * e
  + c * f + c * g + c * h + c * i
  + c * j + d * e + d * f + d * g
  + d * h + d * i + d * j + e * f
  + e * g + e * h + e * i + e * j
  + f * g + f * h + f * i + f * j
  + g * h + g * i + g * j + h * i
  + h * j + i * j + a * k + b * k
  + c * k + d * k + e * k + f * k
  + g * k + h * k + i * k + j * k)))

    target_fitness = None
    variables = 11
    carry_over = 10
    params = {
        'objective_function': black_box,
        'iterations': iterations,
        'mutation_probability': mutation_probability,
        "crossover_rate": crossover_rate,
        "constraint_range": range(-1000, 1000),
        "number_of_variables": variables,
        "carry_over": carry_over,
        "pool_size": initial_pool,
        "target": target_fitness,
        "max": maximize,
        "function_name": "ex2 Max: {a}".format(a=maximize)
        }
    genetic_algorithms_py.__init__(params)
예제 #2
0
def ex8(maximize):
    black_box = (lambda a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q:(

        abs(a * b + a * c + a * d
         + a * e + a * f + a * g + a
        *h + a * i + a * j + b * c
         + b * d + b * e + b * f + b
        *g + b * h + b * i + b * j
         + c * d + c * e + c * f + c
        *g + c * h + c * i + c * j
         + d * e + d * f + d * g + d
        *h + d * i + d * j + e * f
         + e * g + e * h + e * i + e
        *j + f * g + f * h + f * i
         + f * j + g * h + g * i + g
        *j + h * i + h * j + i * j
         + a * k + b * k + c * k + d
        *k + e * k + f * k + g * k
         + h * k + i * k + j * k + a
        *l + b * l + c * l + d * l
         + e * l + f * l + g * l + h
        *l + i * l + j * l + k * l
         + a * m + b * m + c * m + d
        *m + e * m + f * m + g * m
         + h * m + i * m + j * m + k
        *m + l * m + a * n + b * n
         + c * n + d * n + e * n + f
        *n + g * n + h * n + i * n
         + j * n + k * n + l * n + m
        *n + a * o + b * o + c * o
         + d * o + e * o + f * o + g
        *o + h * o + i * o + j * o
         + k * o + l * o + m * o + n
        *o + a * p + b * p + c * p
         + d * p + e * p + f * p + g
        *p + h * p + i * p + j * p
         + k * p + l * p + m * p + n
        *p + o * p + a * q + b * q
         + c * q + d * q + e * q + f
        *q + g * q + h * q + i * q
         + j * q + k * q + l * q + m
        *q + n * q + o * q + p * q)))

    target_fitness = None
    variables = 17
    carry_over = 10
    params = {
        'objective_function': black_box,
        'iterations': iterations,
        'mutation_probability': mutation_probability,
        "crossover_rate": crossover_rate,
        "constraint_range": range(-1000, 1000),
        "number_of_variables": variables,
        "carry_over": carry_over,
        "pool_size": initial_pool,
        "target": target_fitness,
        "max": maximize,
        "function_name": "ex8 Max: {a}".format(a=maximize)
        }
    genetic_algorithms_py.__init__(params)
def himmelblau(maximize):
    print 'Blackbox: Himmelblau function'
    black_box = (lambda x, y: (((x ** 2) + y - 11) ** 2) +
                 ((x + (y ** 2) - 7) ** 2))
    target_fitness = None
    variables = 2
    carry_over = 64
    params = {
        'objective_function': black_box,
        'iterations': iterations,
        'mutation_probability': mutation_probability,
        "crossover_rate": crossover_rate,
        "constraint_range": range(-50,2000),
        "number_of_variables": variables,
        "carry_over": carry_over,
        "pool_size": initial_pool,
        "target": target_fitness,
        "max": maximize,
        "function_name": "Himmelblau Function maximized: {a}".format(a=maximize)
        }
    genetic_algorithms_py.__init__(params)
def rosenbrock(maximize):
    print 'Blackbox: Rosenbrock function'
    black_box = (lambda x, y: (reduce(
        (lambda p, q: q + (100 * ((x - (y ** 2) ) ** 2) + (1 - y) ** 2)), range(1,2), 0)))
    target_fitness = None
    variables = 2
    carry_over = 64
    params = {
        'objective_function': black_box,
        'iterations': iterations,
        'mutation_probability': mutation_probability,
        "crossover_rate": crossover_rate,
        "constraint_range": range(-450,450),
        "number_of_variables": variables,
        "carry_over": carry_over,
        "pool_size": initial_pool,
        "target": target_fitness,
        "max": maximize,
        "function_name": "Rosenbrock Function maximized: {a}".format(a=maximize)
        }
    genetic_algorithms_py.__init__(params)
def dejong(maximize):
    print 'Blackbox: deJongSphere function'
    black_box = (lambda x: (reduce(
        (lambda r, q: q + (x ** 2)), range(1, 5), 0)))
    target_fitness = None
    variables = 1
    carry_over = 64
    params = {
        'objective_function': black_box,
        'iterations': iterations,
        'mutation_probability': mutation_probability,
        "crossover_rate": crossover_rate,
        "constraint_range": range(-6, 6),
        "number_of_variables": variables,
        "carry_over": carry_over,
        "pool_size": initial_pool,
        "target": target_fitness,
        "max": maximize,
        "function_name": "deJong Sphere maximized: {a}".format(a=maximize)
        }
    genetic_algorithms_py.__init__(params)
def test_it_should_return():
    assert isinstance(genetic_algorithms_py.__init__(params), list)
예제 #7
0
def ex16(maximize):
    black_box = (lambda a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y:(
        abs(a * b + a * c + a * d
        + a * e + a * f + a * g + a
        * h + a * i + a * j + b * c
        + b * d + b * e + b * f + b
        * g + b * h + b * i + b * j
        + c * d + c * e + c * f + c
        * g + c * h + c * i + c * j
        + d * e + d * f + d * g + d
        * h + d * i + d * j + e * f
        + e * g + e * h + e * i + e
        * j + f * g + f * h + f * i
        + f * j + g * h + g * i + g
        * j + h * i + h * j + i * j
        + a * k + b * k + c * k + d
        * k + e * k + f * k + g * k
        + h * k + i * k + j * k + a
        * l + b * l + c * l + d * l
        + e * l + f * l + g * l + h
        * l + i * l + j * l + k * l
        + a * m + b * m + c * m + d
        * m + e * m + f * m + g * m
        + h * m + i * m + j * m + k
        * m + l * m + a * n + b * n
        + c * n + d * n + e * n + f
        * n + g * n + h * n + i * n
        + j * n + k * n + l * n + m
        * n + a * o + b * o + c * o
        + d * o + e * o + f * o + g
        * o + h * o + i * o + j * o
        + k * o + l * o + m * o + n
        * o + a * p + b * p + c * p
        + d * p + e * p + f * p + g
        * p + h * p + i * p + j * p
        + k * p + l * p + m * p + n
        * p + o * p + a * q + b * q
        + c * q + d * q + e * q + f
        * q + g * q + h * q + i * q
        + j * q + k * q + l * q + m
        * q + n * q + o * q + p * q
        + c * v + d * v + e * t + f
        * t + g * t + h * t + i * t
        + j * t + k * t + l * t + m
        * t + n * t + o * t + p * t
        + q * t + r * t + s * t + a
        * u + b * u + c * u + d * u
        + e * u + f * u + g * u + h
        * u + i * u + j * u + k * u
        + l * u + m * u + n * u + o
        * u + p * u + q * u + r * u
        + s * u + t * u + a * v + b
        * v + a * r + b * r + c * r
        + d * r + e * r + f * r + g
        * r + h * r + i * r + j * r
        + k * r + l * r + m * r + n
        * r + o * r + p * r + q * r
        + a * s + b * s + c * s + d
        * s + e * s + f * s + g * s
        + h * s + i * s + j * s + k
        * s + l * s + m * s + n * s
        + o * s + p * s + q * s + r
        * s + a * t + b * t + c * t
        + d * t + e * v + f * v + g
        * v + h * v + i * v + j * v
        + k * v + l * v + m * v + n
        * v + o * v + p * v + q * v
        + r * v + s * v + t * v + u
        * v + a * w + b * w + c * w
        + d * w + e * w + f * w + g
        * w + h * w + i * w + j * w
        + k * w + l * w + m * w + n
        * w + o * w + p * w + q * w
        + r * w + s * w + t * w + u
        * w + v * w + a * x + b * x
        + c * x + d * x + e * x + f
        * x + g * x + h * x + i * x
        + j * x + k * x + l * x + m
        * x + n * x + o * x + p * x
        + q * x + r * x + s * x + t
        * x + u * x + v * x + w * x
        + a * y + b * y + c * y + d
        * y + e * y + f * y + g * y
        + h * y + i * y + j * y + k
        * y + l * y + m * y + n * y
        + o * y + p * y + q * y + r
        * y + s * y + t * y + u * y
        + v * y + w * y + x * y)))

    target_fitness = None
    variables = 25
    carry_over = 10
    params = {
        'objective_function': black_box,
        'iterations': iterations,
        'mutation_probability': mutation_probability,
        "crossover_rate": crossover_rate,
        "constraint_range": range(-10, 100000),
        "number_of_variables": variables,
        "carry_over": carry_over,
        "pool_size": initial_pool,
        "target": target_fitness,
        "max": maximize,
        "function_name": "ex16 Max: {a}".format(a=maximize)
        }
    genetic_algorithms_py.__init__(params)
예제 #8
0
def ex12(maximize):
    black_box = (lambda a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u:(

        abs(a * b + a * c + a * d
        + a * e + a * f + a * g + a
        * h + a * i + a * j + b * c
        + b * d + b * e + b * f + b
        * g + b * h + b * i + b * j
        + c * d + c * e + c * f + c
        * g + c * h + c * i + c * j
        + d * e + d * f + d * g + d
        * h + d * i + d * j + e * f
        + e * g + e * h + e * i + e
        * j + f * g + f * h + f * i
        + f * j + g * h + g * i + g
        * j + h * i + h * j + i * j
        + a * k + b * k + c * k + d
        * k + e * k + f * k + g * k
        + h * k + i * k + j * k + a
        * l + b * l + c * l + d * l
        + e * l + f * l + g * l + h
        * l + i * l + j * l + k * l
        + a * m + b * m + c * m + d
        * m + e * m + f * m + g * m
        + h * m + i * m + j * m + k
        * m + l * m + a * n + b * n
        + c * n + d * n + e * n + f
        * n + g * n + h * n + i * n
        + j * n + k * n + l * n + m
        * n + a * o + b * o + c * o
        + d * o + e * o + f * o + g
        * o + h * o + i * o + j * o
        + k * o + l * o + m * o + n
        * o + a * p + b * p + c * p
        + d * p + e * p + f * p + g
        * p + h * p + i * p + j * p
        + k * p + l * p + m * p + n
        * p + o * p + a * q + b * q
        + c * q + d * q + e * q + f
        * q + g * q + h * q + i * q
        + j * q + k * q + l * q + m
        * q + n * q + o * q + p * q
        + e * t + f * t + g * t + h
        * t + i * t + j * t + k * t
        + l * t + m * t + n * t + o
        * t + p * t + q * t + r * t
        + s * t + a * u + b * u + c
        * u + d * u + e * u + f * u
        + g * u + h * u + i * u + j
        * u + k * u + l * u + m * u
        + n * u + o * u + p * u + q
        * u + r * u + s * u + t * u
        + a * r + b * r + c * r + d
        * r + e * r + f * r + g * r
        + h * r + i * r + j * r + k
        * r + l * r + m * r + n * r
        + o * r + p * r + q * r + a
        * s + b * s + c * s + d * s
        + e * s + f * s + g * s + h
        * s + i * s + j * s + k * s
        + l * s + m * s + n * s + o
        * s + p * s + q * s + r * s
        + a * t + b * t + c * t + d
        * t)))

    target_fitness = None
    variables = 21
    carry_over = 10
    params = {
        'objective_function': black_box,
        'iterations': iterations,
        'mutation_probability': mutation_probability,
        "crossover_rate": crossover_rate,
        "constraint_range": range(-1000, 1000),
        "number_of_variables": variables,
        "carry_over": carry_over,
        "pool_size": initial_pool,
        "target": target_fitness,
        "max": maximize,
        "function_name": "ex12 Max: {a}".format(a=maximize)
        }
    genetic_algorithms_py.__init__(params)