示例#1
0
 def setUp(self):
     self.t2 = TableauBuilder()
     self.tableau = self.t2.add_constraint(GreaterEqualThan([2,  5], 30)).\
         add_constraint(GreaterEqualThan([-3,  5], 5)).\
         add_constraint(LessEqualThan([8, 3], 85)).\
         add_constraint(LessEqualThan([-9, 7], 42)).\
         set_objective([2, 7]).get()
def transform(cs: ConstraintSet, obj: Objective):
    tb = TableauBuilder()
    for c in cs.constraints:
        tb.add_constraint(c)

    tb.set_objective(obj._coeffs)

    return tb.get()
示例#3
0
    def setUp(self):
        self.t3 = TableauBuilder()
        self.t3.add_constraint(LessEqualThan([2, 1], 18))
        self.t3.add_constraint(LessEqualThan([2, 3], 42))
        self.t3.add_constraint(LessEqualThan([3, 1], 24))
        self.t3.set_objective([3, 2])

        self.var_names = ['x_1', 'x_2', '_s_1', '_s_2', '_s_3']
示例#4
0
    def test_str_2(self):
        builder = TableauBuilder()

        self.tableau = builder.add_constraint(GreaterEqualThan([2, 5], 30))\
            .set_objective([5, 10])\
            .get()
        self.assertEqual(str(self.tableau), "[x_1, x_2, _s_1, _a_1]\n"
                                            "[2.0, 5.0, -1.0, 1.0, 30.0]\n"
                                            "[-5.0, -10.0, 0.0, 1000.0, 0.0]")
示例#5
0
def builder_from_file(filepath):

    obj, constraints = read(filepath)

    builder = TableauBuilder()
    for left_side, ctype, right_side in constraints:
        if ctype == "<=":
            builder.add_constraint(LessEqualThan(left_side, right_side))
        elif ctype == ">=":
            builder.add_constraint(GreaterEqualThan(left_side, right_side))
        else:
            raise NotImplementedError

    builder.set_objective(obj)
    return builder
示例#6
0
 def setUp(self):
     self.t3 = TableauBuilder()
     self.t3.add_constraint(LessEqualThan([2, 1], 18)).\
         add_constraint(LessEqualThan([2, 3], 42)). \
         add_constraint(LessEqualThan([3, 1], 24)).\
         set_objective([3, 2])
示例#7
0
 def setUp(self):
     tb = TableauBuilder()
     self.tableau = tb.add_constraint(GreaterEqualThan([2, -1], 10))\
         .add_constraint(LessEqualThan([1, 1], 20))\
         .set_objective([5, 10]).get()