ruby もくもく会 資料03

1
発表02 maximize $$10 x_0 + 20 x_1 +15 x_2 + 17 x_3 10 x_4 + 30 x_5$$\\ \\ subject to \\$5 x_0 + x_1 +8 x_2 + 9 x_3 + 5 x_4 + 4 x_5 \le 500000$\\ $x_1, x_2, x_3, x_4 = 0,1$ p=MixedIntegerLinearProgram() x=p.new_variable(binary=True, nonnegative=True) p.set_objective(10*x[0]+20*x[1]+15*x[2]+17*x[3]+10*x[4]+30*x[5]) p.add_constraint(5000*x[0]+10000*x[1]+8000*x[2]+9000*x[3]+5000*x[4]+40000*x[5] <= 50000) print '解は ', p.solve(), '\nx[0] = ', p.get_values(x[0]), '\nx[1] = ', p.get_values(x[1]),'\nx[2] = ', p.get_values(x[2]),'\nx[3] = ', p.get_values(x[3]),'\nx[4] = ', p.get_values(x[4]),'\nx[5] = ', p.get_values(x[5]) 解は 72.0 x[0] = 1.0 x[1] = 1.0 x[2] = 1.0 x[3] = 1.0 x[4] = 1.0 x[5] = 0.0 発表02 -- Sage http://localhost:8080/home/admin/0/print 1 / 1 2016年01月30日 19:47

Upload: akira-kobashi

Post on 14-Apr-2016

7 views

Category:

Documents


1 download

DESCRIPTION

ビンパッキング問題を解きます。線形なので簡単に解けます。

TRANSCRIPT

Page 1: Ruby もくもく会 資料03

発表02

maximize $$10 x_0 + 20 x_1 +15 x_2 + 17 x_3 10 x_4 + 30 x_5$$\\ \\subject to \\$5 x_0 + x_1 +8 x_2 + 9 x_3 + 5 x_4 + 4 x_5 \le 500000$\\$x_1, x_2, x_3, x_4 = 0,1$

p=MixedIntegerLinearProgram()x=p.new_variable(binary=True, nonnegative=True)p.set_objective(10*x[0]+20*x[1]+15*x[2]+17*x[3]+10*x[4]+30*x[5])p.add_constraint(5000*x[0]+10000*x[1]+8000*x[2]+9000*x[3]+5000*x[4]+40000*x[5] <= 50000)

print '解は ', p.solve(), '\nx[0] = ', p.get_values(x[0]), '\nx[1] = ', p.get_values(x[1]),'\nx[2] = ', p.get_values(x[2]),'\nx[3] = ', p.get_values(x[3]),'\nx[4] = ', p.get_values(x[4]),'\nx[5] = ', p.get_values(x[5])

解は 72.0 x[0] = 1.0 x[1] = 1.0 x[2] = 1.0 x[3] = 1.0 x[4] = 1.0 x[5] = 0.0

発表02 -- Sage http://localhost:8080/home/admin/0/print

1 / 1 2016年01月30日 19:47