def __init__(self, problem_description, tester, *args, **kwargs):
        """
        :param problem_description: graph constrained combinatorial problem description
        :type problem_description: base_types.Problem
        :param tester: tester object which will test all paths
        :type tester: base_types.PathTester
        """
        self.problem_description = problem_description
        self.graph = self.problem_description.problem_graph.graph
        self.source = self.problem_description.problem_graph.source
        self.sink = self.problem_description.problem_graph.sink
        self.tester = tester