示例#1
0
def test_stats_file_handler_gets_two_filters(mocker):
    mocker.patch('logging.FileHandler.addFilter')
    log.configure_logging(stats_file="test.log")
    calls = logging.FileHandler.addFilter.call_args_list
    filters = [positional_args[0] for positional_args, _ in calls]
    assert isinstance(filters[0], log.StatsFilter)
    assert isinstance(filters[1], log.MpiFilter)
示例#2
0
def test_configure_logging_formatting(module, timestamp, mocker):
    mocker.patch('logging.StreamHandler.setFormatter')
    log.configure_logging(module=module, timestamp=timestamp)
    positional_args, _ = logging.StreamHandler.setFormatter.call_args
    formatter = positional_args[0]
    assert ("module" in formatter._fmt) == module
    assert ("asctime" in formatter._fmt) == timestamp
示例#3
0
def test_configure_logging_makes_stats_file_handler(mocker):
    mocker.patch('logging.Logger.addHandler')
    log.configure_logging(stats_file="test.log")
    positional_args, _ = logging.Logger.addHandler.call_args
    assert isinstance(positional_args[0], logging.FileHandler)
示例#4
0
def test_configure_logging_makes_console_handler(mocker):
    mocker.patch('logging.Logger.addHandler')
    log.configure_logging()
    positional_args, _ = logging.Logger.addHandler.call_args
    assert isinstance(positional_args[0], logging.StreamHandler)
示例#5
0
def test_configure_logging_verbosity(verbosity, expected_level, mocker):
    mocker.patch('logging.Logger.setLevel')
    log.configure_logging(verbosity)
    logging.Logger.setLevel.assert_called_with(expected_level)
  import ComponentGenerator
from bingo.symbolic_regression.explicit_regression \
  import ExplicitRegression, ExplicitTrainingData

from bingo.evolutionary_algorithms.deterministic_crowding import DeterministicCrowdingEA
from bingo.evolutionary_algorithms.age_fitness import AgeFitnessEA
from bingo.evolutionary_optimizers.parallel_archipelago \
  import ParallelArchipelago
from bingo.evaluation.evaluation import Evaluation
from bingo.evolutionary_optimizers.island import Island
from bingo.local_optimizers.continuous_local_opt \
  import ContinuousLocalOptimization

from bingo.util import log
log.configure_logging(verbosity='detailed',
                      module=True,
                      timestamp=False,
                      stats_file='stats.log')

POP_SIZE = 3000
STACK_SIZE = 10
MAX_GENERATIONS = 30000
FITNESS_THRESHOLD = 1e-4
STAGNATION_LIMIT = 10000
MIN_GENERATIONS = 50


def init_x_vals(start, stop, num_points):
    return np.linspace(start, stop, num_points).reshape([-1, 1])


def equation_eval(x):