예제 #1
0
 def __add_function_objective(self):
     objective = []
     news_costs = multiply_vector_by_matrix(self.dual_lagrangean, self.columns)
     for i in xrange(self.num_variables):
         objective.append((self.names_variables[i], self.costs[i] - news_costs[i]))
     sum_dual_lagrangean = 0
     for i in self.dual_lagrangean:
         sum_dual_lagrangean += i
     objective.append(('pi', sum_dual_lagrangean))
     self.c.objective.set_linear(objective)
     self.c.objective.set_sense(self.c.objective.sense.minimize)
예제 #2
0
 def test_multiply_vector_by_matrix(self):
     columns = [[1,0,1,0], [0,1,1,0],[1,0,1,1],[0,1,0,0],[0,1,0,1],[1,0,0,0]]
     vector = [2, 2, 2, 2]
     result = [4, 4, 6, 2, 4, 2]
     self.assertEqual(result, multiply_vector_by_matrix(vector, columns))