Ejemplo n.º 1
0
def test_for_futoshiki_file(filename):
    print(filename)
    problem = read_futoshiki_problem(filename, prefix)
    board = BoardFutoshiki(problem['matrix'], problem['constraints'])
    solver = Solver(board)
    results = solver.solve()

    print(' number of results: ' + str(len(results)))
    for result in results:
        print(result)

    if not check_if_unique(results):
        global uniqueq
        unique = False
Ejemplo n.º 2
0
def test_for_skyscrapper_file(filename):
    print(filename)
    problem = read_skyscrapper_problem(filename, skyscrapper_prefix)
    board = BoardSkyscrapper(N=problem['N'],
                             constraints=problem['constraints'],
                             name=problem['name'])
    solver = Solver(board)
    results = solver.solve()

    print(filename + ' number of results: ' + str(len(results)))
    for result in results:
        print(result)

    if not check_if_unique(results):
        global unique
        unique = False
Ejemplo n.º 3
0
 def simulate(self, time_step, current_at_start=0.):
     
     # TODO: no good place for this, but can't be done in '_calculate_derivatives' due to several calls
     # TODO: correct for neuron? models dendrites and axon to be just on one side of the soma-cable
     current_at_end = 0.
     for s in self._successors:
         cur = 0.5 * (s._segment_plasma_conductance + s.cross_sectional_area / self._successors_cross_sectional_area * self._segment_plasma_conductance) * (- s.potential[0] + self.potential[-1])
         current_at_end += cur
         s.simulate(time_step, -cur)
     
     simulated_values = Solver.default(time_step, self._calculate_derivatives, self.potential, current_at_start, current_at_end)
     self.potential = simulated_values
Ejemplo n.º 4
0
import os
from src import UseCSVData, UseMysqlData, Solver

runtime_seconds = 60
population_size = 100
selection_size = 20

path = os.getcwd()
# data = UseMysqlData()
data = UseCSVData(path + "/data/order2.csv", path + "/data/pizza.csv",
                  path + "/data/ingredients.csv", path + "/data/robot.csv",
                  path)

solver = Solver(data)

solution = solver.solveGeneticAlgorithm(runtime_seconds=runtime_seconds,
                                        population_size=population_size,
                                        selection_size=selection_size)

print(solution.df)
solution.df.to_csv("output/solution.csv")
print(solution.makespan)

solution.createGanttChart()
 def test_result_of_solving_futoshiki_4_1(self):
     problem = read_futoshiki_problem('futoshiki_4_1.txt')
     board = BoardFutoshiki(matrix=problem['matrix'], constraints=problem['constraints'])
     solver = Solver(board)
     results = solver.solve()
 def test_solving_futoshiki_4_2_doesnt_crash_program(self):
     problem = read_futoshiki_problem('futoshiki_4_2.txt')
     board = BoardFutoshiki(matrix=problem['matrix'], constraints=problem['constraints'])
     # print(board.matrix)
     solver = Solver(board)
     results = solver.solve()
def create_simple_solution():
    board = create_simple_board()
    s = Solver(board)
    return s
def create_solution_3():
    board = create_board_3()
    s = Solver(board)
    return s
def create_solution_5():
    board = create_board_5()
    solution = Solver(board)
    return solution
Ejemplo n.º 10
0
 def simulate(self, time_step, potential):
     simulated_values = Solver.default(time_step, self.calculate_derivatives, self._r, self._s, potential)
     self.conductance = self._s**self._n / (self._s**self._n + self._Kd) * self._maximum_conductance
     self._r, self._s = simulated_values
Ejemplo n.º 11
0
 def simulate(self, timeStep, potential):
     simulated_values = Solver.default(timeStep, self.calculate_derivatives, self._r, potential)
     self.conductance = self._r * self._maximum_conductance
     self._r = simulated_values
Ejemplo n.º 12
0
 def simulate(self, time_step, potential):
     simulated_values = Solver.default(time_step, self.calculate_derivatives, self._r, potential)
     self.conductance = self._r * self._magnesium_block * self._maximum_conductance
     # c. f. Jahr 1990
     self._magnesium_block = 1. / (1. + numpy.exp(-0.062 * potential) * (self._extracellular_magnesium_concentration / 3.57))
     self._r = simulated_values
Ejemplo n.º 13
0
 def simulate(self, time_step, current_at_start=0):
     simulated_values = Solver.default(time_step, self._calculate_derivatives, self.potential, self.m_gate, self.h_gate, self.n_gate, current_at_start)
     for s in self._outgoing_synapses:
         s.simulate(time_step, self.potential[-1])
         
     self.potential, self.m_gate, self.h_gate, self.n_gate = simulated_values
Ejemplo n.º 14
0
 def simulate(self, time_step, current_at_start=0, current_at_end=0, extra_current=0):
     self.potential = Solver.default(time_step, self._calculate_derivatives, self.potential, current_at_start, current_at_end, extra_current)