『線形計画法入門(森口繁一)』

門前パソコン学習所
令和5年長月
2023-09-24
2023-10-18
ページ末尾

以下の問題は、
「線計画法入門」
著者森口繁一
発行1957年8月1日2001年2月16日改装第18刷
発行所株式会社 日科技連出版社
を参考にしている。
問題の詳細は書籍を参照ください。ここでは表で示します。
ただし、問題 F1 と F2 は詳細も示します。
Python のプログラムは、 リストや辞書などを使用した、多少複雑な表現を用いる場合があります。

書籍番号最適化問題備考
2A1 自動車の製造
2A2 油脂の製造
2B1 飼料の混合
2B2 高炉の操業
2B3 発 送 電
2C1 燐鉱石の混合退化例
2C2 ビタミン剤の製造
2D1 米の輸送
2D2 リンゴの輸送1-61
2E1 製品Xの生産1-00
2E2 2種の時計の生産
2E3 中間体Mと製品Xの製造
2F1 梁の極限設計
2F2 構造物の塑性変形

A1 自動車の製造
工場大型中型小型生産工数(人時)
X1 X2X3
プレス654 1800
組立塗装504030 14000
利益90,000円70,000円55,000円
各トラックをそれぞれ何台ずつ製造するのが最も有利であるか。
制約条件式
6X1+5X2+4X3≦1800
50X1+40X2+30X3≦14000
目的関数(max)
Z=9X1+7X2+5.5X3
最良計画
x1=100, x2=0, x3=300, Z=25500,000
Python による結果
分析
もしプレス工場の能力を 1 人時だけ増加するならば利益は 2500 円だけ増す。
もし組み立て塗装工場の能力を 1 人時だけ増加するならば利益は 1500 円だけ増す。
A2 油脂の製造
製品
ABCD
原料油X1X2X3X4
1.38940.95831.42860.0000 300
0.63090.42500.00001.0000 220
直接製造変動費40,01434,59223,57113,100
販売価格66,00071,00042,00038,000
各製品をどれだけずつ製造したら利潤が最大となるか。
制約条件式
1.3894*X1+0.9583*X2+1.4286*X3+0.0000*X4 ≦ 300
0.6309*X1+0.4250*X2+0.0000*X3+1.0000*X4 ≦ 220
X1 ≦ 180
X2 ≦ 170
目的関数(max)
(66000-40014)*X1+(71000-34592)*X2+
(42000-23571)*X3+(38000-13100)*X4 = Z
最良計画
x2=170, x3=96, x4=148, Z=11640,000
Python による結果
分析
製品 B の販売量の制限が緩めば、1kl につき 13,463 円の割で利潤が増す。
また原料油Ⅰがもっとよけい入手できれば、1kl につき 12,900 円の割で利潤が増す。
原料油Ⅱの方ならば 1kl につき 24,900 円の割で利潤が増す。
B1 飼料の混合
飼料カロリー蛋白質含有量単価
AX1 300018054
BX2 180022040
CX3 160040064
500055064
1日あたり各飼料を何 kg ずつ購入すれば、費用が最小となるか。
制約条件式
3000*X1+1800*X2+1600*X3 ≧ 5000
180*X1+220*X2+400*X3 ≧ 550
目的関数(min)
54*X1+40*X2+64*X3 = Z
最良計画
x1=0.327381, x2=2.23214, Z=107(10.6964)
Python による結果
B2 高炉の操業
銘柄
ABCDEF
成分 X1X2X3X4X5X6
Fe Total (%) 57.454.653.3 57.233.020.0
Mn (%) 0.3060.1250.194 0.2998.3706.320
P (%) 0.0440.0520.185 0.1390.8841.264
S (%) 0.6040.1090.659 0.1130.0600.202
Al2O3 (%) 1.6907.0104.420 3.0902.3202.890
Cu (%) 0.1610.0440.054 0.0460.0000.019
単価(円トン) 5,2905,1305,200 4,8504,480800
銑鉄1トンについて各鉱石をどのように配合して装入するのが最も経済的か。
制約条件式
57.4*X1+54.6*X2+53.3*X3+57.2*X4+33.0*X5+20.0*X6 ≧ 100
0.306*X1+0.125*X2+0.194*X3+0.299*X4+8.370*X5+6.320*X6 ≧ 1.333
0.044*X1+0.052*X2+0.185*X3+0.139*X4+0.884*X5+1.264*X6 ≦ 0.584
0.604*X1+0,109*X2+0.659*X3+0.113*X4+0.060*X5+0.202*X6 ≦ 1.381
1.690*X1+7.010*X2+4.420*X3+3.090*X4+2.320*X5+2.890*X6 = 5.79
0.161*X1+0.044*X2+0.054*X3+0.046*X4+0.000*X5+0.019*X6 ≦ 0.0800
目的関数(min)
5290*X1+5130*X2+5200*X3+4850*X4+4480*X5+800*X5 = Z
最良計画
x4=1.655, x5=0.038, x6=0.203, Z=8,361
Python による結果
B3 発 送 電
発電設備送電損失率
発電所最大出力石炭消費率
A250 0.72 0.15 0.10
B165 0.64 0.19 0.13
C65 0.49 0.12 0.11
需要地需要量
170
210
各発電所の石炭消費量の総和を最小にするには、 各発電所の出力をいくらに決めればよいか。
変数
需要地
発電所
A x1x2
B y1y2
C z1z2
制約条件式
x1+x2 ≦ 250
y1+y2 ≦ 165
z1+z2 ≦ 65
(1-0.15)x1+(1-0.19)y1+(1-0.12)z1 = 170
(1-0.10)x2+(1-0.13)y2+(1-0.11)z2 = 210
目的関数(min)
0.72(x1+x2)+0.64(y1+y2)+0.49(z1+z2)
最良計画
需要地
発電所余裕最大出力
A 132.773.8 206.543.5 250.0
B 0165.0 165.00 165.0
C 65.00 65.00 65.0
石炭消費量=286.2
Python による結果

C1 燐鉱石の混合
燐鉱石 P2O5 含有率(%) 単価(円/ton) 購入可能量(ton)
M132 10,3005,000 以下
M237 13,50010,000 以下
M328 9,60020,000 以下
製品 P2O5 含有率(%) 販売価格(円/混合物 ton)
A131 以上 22,000
A235 以上 25,000
原料 M1,M2,M3 をどのように混合して 製品 A1,A2 をどれだけずつ製造したら利潤が最も多くなるか。
解答(退化の例)
A1A2
M1x1x4 32103005000
M2x2x5 371350010000
M3x3x6 28960020000
2200025000
条件式
32x1+37x2+28x3-31(x1+x2+x3)≧0
32x4+37x5+28x6-35(x4+x5+x6)≧0
x1+x4≦5000
x2+x5≦10000
x3+x6≦20000
目的関数(MAX)
(22000-10300)x1+(22000-13500)x2+(22000-9600)x3+
(25000-10300)x4+(25000-13500)x5+(25000-9600)x6=z
最適解
X1 = 5000.0000, X2 = 9027.7778, X3 = 19722.2222
X4 = 0.0000, X5 = 972.2222, X6 = 277.7778
Z=395250000.0000
書籍解
X1 = 4500.0000, X2 = 9250.0000, X3 = 20000.0000
X4 = 500.0000, X5 = 750.0000, X6 = 0.0000
Z=395250000
Python による結果
C2 ビタミン剤の製造
最低含有量
製品 ビタミンA(国際単位) ビタミンB1(mg) ビタミンC(mg)
3000 1.0 30
2000 3.0 15
原料は a だけが入手困難であって、毎月 60 kg しか買い入れることができない。原料 1 g 当たりのビタミン含有量は次のようである。
ビタミン含有量
原料 ビタミンA(国際単位) ビタミンB1(mg) ビタミンC(mg)
a 4500 0.75 35
b 1700 1.20 28
c 1000 4.5 15
d 1500 3.20 15
原料混合の際の、目減りはなく、混合のための費用は各製品について同一であるとする。
利潤を最大にする製造計画を立てよ。
注.価格は10g当たり
ビタミン剤
原料 購入価格
aA4500X1 AX5250
B0.75 B
C35 C
bA1700X2 AX6 230
B1.20 B
C28 C
cA1000X3 AX7 260
B4.5 B
C15 C
dA1500X4 AX8 220
B3.20 B
C15 C
3000 2000
1.0 3.0
30 15
販売価格400 350
条件式
4500X1+1700X2+1000X3+1500X4-3000(X1+X2+X3+X4) ≧ 0
4500X5+1700X6+1000X7+1500X8-2000(X5+X6+X7+X8) ≧ 0
0.75X1+1.20X2+4.50X3+3.20X4-1.0(X1+X2+X3+X4) ≧ 0
0.75X5+1.20X6+4.50X7+3.20X8-3.0(X5+X6+X7+X8) ≧ 0
35X1+28X2+15X3+15X4-30(X1+X2+X3+X4) ≧ 0
35X5+26X6+15X7+15X8-15(X5+X6+X7+X8) ≧ 0
X1+X5 ≦ 60000(60000)
1500X1-1300X2-2000X3-1500X4≧0
-0.25X1+0.20X2+3.5X3+2.20X4≧0.0
5X1-2X2-15X3-15X4≧0
2500X5-300X6-1000X7-500X8≧0
-2.25X5-1.80X6+1.5X7+0.20X8≧0.0
20X5+13X6+0X7+0X8≧0
目的関数(MAX)
利潤 (400-250), (400-230), 400-260), (400-220)
(350-250), (350-230), (350-260), (350-220)
(400-250)X1+(400-230)X2+(400-260)X3+(400-220)X4+
(350-250)X5+(350-230)X6+(350-260)X7+(350-220)X8 = Z
最適解(単位はg, 円)
X10.0000 X20.0000 X30.0000 X40.0000
X560000.0000 X600000.0000 X768181.8182X8163636.3636
Z=3340909.1072
Python による結果
D1 米の輸送
2個所の米の出荷地 Ⅰ,Ⅱ から、3個所の消費地 A, B, C へ米を輸送したい。
トン当たりの輸送費は、Ⅰから A へは 630 円、Ⅰから B へは 785 円、Ⅰから C へは 805 円、
Ⅱから A へは 700 円、Ⅱから B へは 475 円、Ⅱから C へは 515 円である。
消費地 A, B, C の必要量は 500トン、 700トン、 450トンであり、
出荷地ⅠおよびⅡの出荷可能量はそれぞれ 750トン、900トンである。
出荷地消費地
750t630円A500t
785円B700t
805円C450t
900t700円A
475円B
515円C
輸送費を最小にするには、どのような計画を立てたらよいか。
決定変数
消費地
出荷地ABC
750630785805
x1x2x3
900700475515
x4x5x6
500700450
制約条件式
x1+x2+x3 <= 750
x4+x5+x6 <= 900
x1+x4 >= 500
x2+x5 >= 700
x3+x6 >= 450
目的関数(min)
630*x1+785*x2+805*x3+700*x4+475*x5+515*x6 = Z
解答
消費地
出荷地ABC
500250
700200
総輸送費=951,750
Python による結果
D2 リンゴの輸送
この問題については、書籍1の61番問題を参照。
消費地
出荷能力果樹園ABC
1150箱 X1 X2 X3
37 20 39
1900箱 X4 X5 X6
14 28 24
1500箱 X7 X8 X9
24 34 32
要求量 80012001500
売価 680655715
X1+X2+X3≦1150, X4+X5+X6≦1900, X7+X8+X9≦1500
X1+X4+X7≧800, X2+X5+X8≧1200, X3+X6+X9≧1500
利潤=売価-(製造原価+輸送費)
z=(680-(500+37))X1+(655-(500+20))X2+(715-(500+39))X3+
(680-(500+14))X4+(655-(500+28))X5+(715-(500+24))X6+
(680-(500+24))X7+(655-(500+34))X8+(715-(500+32))X9
最良輸送計画
消費地
出荷地ABC
011500
80001100
0501450
別解
消費地
出荷地ABC
011500
001900
80050650
Z=769550
E1 製品Xの生産
この問題については、書籍1の72番問題を参照。
四半期需要高通常
生産力
残業
生産力
残業
コスト
在庫
コスト
繰越
第15001000 1000600 400
第27001000 1000600 400
第315001000 1000600 400
第420001000 1000600 400
コストを最小にするためには各四半期にそれぞれ何トンずつ生産したらよいか。
検討
四半期需要高通常
生産力
残業
生産力
残業
コスト
在庫
コスト
繰越
第15001000 1000600 400
X1 X2 X3
第27001000 1000600 400
X4 X5 X6
第315001000 1000600 400
X7 X8 X9
第420001000 1000600 400
X10 X11 X12
制約条件
X1 ≦ 1000, X2 ≦ 1000, X4 ≦ 1000, X5 ≦ 1000
X7 ≦ 1000, X8 ≦ 1000, X10 ≦ 1000, X11 ≦ 1000
X12+X1 +X2 -X3= 500
X3 +X4 +X5 -X6= 700
X6 +X7 +X8 -X9=1500
X9 +X10+X11-X12=2000
ここまでは、残業コストも、在庫コストも発生しない。
第三期の X6 は 500 未満でも前期の在庫があり得る。
また第三期には新たな在庫を造らくてもよい。
目的関数のコスト
600(X2+X5+X8+X11)+400(X3+X6+X9+X12)=z
最良の計画
四半期通常生産残業生産需要高期末在庫
第1500 0500 0
第21000 0700 300
第31000 2001500 0
第41000 10002000 0
余分のコスト
840000
E2 2種の時計の生産
A(並級)、B(高級)という2種類の時計を作っている会社がある。
その需用は表のとおりに変動する。
工場は A,B 合わせて正規生産では1期に 70 万個、残業生産では1期に 35 万個まで生産する能力がある。
残業生産による余分のコストは A は1個当たり 100 円、 B は1個当たり 110 円である。
また在庫品として1期繰り越すと、A は1個当たり 60 円、B は1個当たり 70 円のコストがかかる。
需要の変動
(万個)
通常
生産力
残業
生産力
繰越在庫 コスト
四半期ABABAB AB残業在庫
第12015 7035 100110 6070
X1X2 X3X4 X5X6
第23020 7035 100110 6070
X7X8 X9X10 X11X12
第35050 7035 100110 6070
X13X14 X15X16 X17X18
第45585 7035 100110 6070
X19X20 X21X22 X23X24
残業と繰り越しのための余分のコストの合計が最小となるよう生産計画を立てよ。
制約条件
X1+X2 ≦ 70, X3+X4 ≦ 35,
X7+X8 ≦ 70, X9+X10 ≦ 35,
X13+X14 ≦ 70, X15+X16 ≦ 35,
X19+X20 ≦ 70, X21+X22 ≦ 35,
生産、販売、在庫の関係
X23+X1 +X3 -X5= 20
X24+X2 +X4 -X6= 15
X5 +X7 +X9 -X11=30
X6 +X8+X10-X12=20
X11+X13+X15-X17=50
X12+X14+X16-X18=50
X17+X19+X21-X23=55
X18+X20+X22-X24=85
目的関数のコスト
100(X3+X9+X15+X21)+110(X4+X10+X16+X22)+
60(X5+X11+X17+X23)+70(X6+X12+X18+X24)=z
最良の計画
通常生産残業生産 期末在庫販売量
四半期ABAB ABAB
第1 3015 00 100 2015
第2 5020 00 300 3020
第3 2050 350 350 5050
第4 070 2015 00 5585
別の最良計画
通常生産残業生産 期末在庫販売量
四半期ABAB ABAB
第1 3015 00 100
第2 5020 00 300
第3 565 350 2015
第4 070 350 00
余分のコスト
11650
E3 中間体Mと製品Xの製造
第1工場で中間体 M を造り、これを第2工場で製品 X にする。
.............................................................................
原料 中間体M製 品 X
----->第1工場 --------> 第2工場-----> 市場
↓↑ ↓↑
倉庫 倉庫
.............................................................................
第1工場と第2工場とを合わせて、最も経済的な生産計画を立てよ。
第1工場 (M)第2工場 (X)
四半期需要高 正規
生産
残業
生産
繰越
在庫
残業
コスト
繰越
コスト
正規
生産
残業
生産
繰越
在庫
残業
コスト
繰越
コスト
第1500 1000300 200120 10001000 600400
X1X2X3 X4X5X6
第2700 1000300 200120 10001000 600400
X7X8X9 X10X11X12
第31500 1000300 200120 10001000 600400
X13X14X15 X16X17X18
第42000 1000300 200120 10001000 600400
X19X20X21 X22X23X24
X1 ≦1000, X2 ≦300
X7 ≦1000, X8 ≦300
X13≦1000, X14≦300
X19≦1000, X20≦300
X4 ≦1000, X5 ≦1000
X10≦1000, X11≦1000
X16≦1000, X17≦1000
X22≦1000, X23≦1000
X21+X1+X2-X3=X4+X5
X24+X4+X5-X6=500
X3+X7+X8-X9=X10+X11
X6+X10+X11-X12=700
X9+X13+X14-X15=X16+X17
X12+X16+X17-X18=1500
X15+X19+X20-X21=X22+X23
X18+X22+X23-X24=2000
200(X2+X8+X14+X20)+120(X3+X9+X15+X21)+
600(X5+X11+X17+X23)+400(X6+X12+X18+X24)=z
最適解
X11000 X20 X3300 X4700 X50 X6200
X71000 X8100 X9400 X101000 X110 X12500
X131000 X14300 X15700 X161000 X170 X180
X191000 X20300 X210 X221000 X231000 X240
Z = 1188000
書籍解
X11000 X20 X3300 X4700 X50 X6200
X71000 X8100 X9400 X101000 X110 X12500
X131000 X14300 X15700 X161000 X170 X180
X191000 X20300 X210 X221000 X231000 X240
Z = 1188000
F1 梁の極限設計
梁の極限設計(limit design)では、ある点の曲げモーメントが "全塑性曲げモーメント" の値になれば、その点の曲率が無限に大きくなり、あたかも hinge(ちょうつがい)のように変形すると考え、plastic hinge(塑性ヒンジ)ができたと称する。
このような hinge が何箇所かにできて、一つの mechanism(機構)を形成するような形になれば、構造としては崩壊の状態になるわけである。
ある崩壊の型を考えると、hinge で全塑性曲げモーメント β のする仕事と、荷重点で荷重 W のする仕事から、仮想仕事の原理により、荷重倍数 λ が容易に得られる。おこり得るいろいろの型の変形の mechanism に対して崩壊が起こってはならないということ、つまり λ≧1 ということを条件とする。
そしてその条件の下で構造物の重量 G を最小にしたい。
i 部材の長さを li、全塑性モーメントを βi とするとき、重量 G はΣliβiに比例するものと仮定する(この仮定は近似的に許される)。したがって Σliβi を最小にするように βi を決めることが問題となる。
具体例として図のような連続梁をとる。
起こり得る変形は次図のように6通り考えられる。
一例として変形 A を考える。図に示した hinge の回転角をθ(ラジアン)とすると、
荷重 W2=1 の変位は θx(l2/2)、したがって荷重 W2 による仕事は W2xθx(l2/2) であるが、
W2=1,l2=2 だから、この値はθに等しい。つぎに plastic hinge は図に示した2個所に生じ、
各の場所での全塑性モーメントによる仕事はβ2xθ+β2x2θ=3β2θである。
したがってこの場合の荷重倍数をλAとするとλAθ=3β2θ、
∴ λA=3β2/1
そしてλA≧1が一つの条件となる。
同様に、
を得る。
この条件の下で、重量に比例する l1β1+l2β2=2β1+2β2 を最小にしなさい。
最小値は 3.33333 です
0 でない変数の値:
x[1] = 1.33333
x[2] = 0.333334
F2 構造物の塑性変形
図のように、5本の張線 PO, PA, PA', PB, PB' で一つの荷重 W を支えている系を考える。
各張線の長さ li, 降伏するときの伸び yi ばね定数 ki は以下の表のとおりとする
番号 i張 線 li
(cm)
yi
(cm)
ばね定数 k
(kg/cm)
1PO 1200.24500
2PA, PA' 1500.30400
3PB, PB' 2000.40300
各張線の伸びを弾性の伸び ei と塑性の伸び pi とに分け、 張力は kiei に等しいとする。
もちろん eiyi でなければならない。
P 点の下がりをδとすると、変形の適合条件によって、各張線の伸びは
e1+p1=δ, e2+p2=0.8δ, e3+p3=0.6δ となる。荷重と張力の釣り合いの条件は
W= k1e1+1.6 k2e2+1.2 k3e3
となる。
いろいろなδに対し、上の条件を満たす範囲で ei, pi を変えて、W を最大にし、最大の W をδに対して置点したグラフを作れ。
変数対応
e1e2e3p1p2p3
X1X2X3X4X5X6
条件式
X1+X4=δ
X2+X5=0.8δ
X3+X6=0.6δ
X1≦0.24
X2≦0.30
X3≦0.40
目的関数
Z=500X1+640X2+360X3+0X4+0X5+0X6
δ0.8δe20.6δe3
0.10.080.06
0.20.160.12
0.30.240.18
0.40.320.24
0.50.400.30
0.60.480.36
0.70.560.42
0.80.640.48
0.90.720.54
1.00.800.60
δ と W の対応表
δZ
0.1122.800
0.2245.600
0.3338.400
0.4398.400
0.5420.000
0.6441.600
0.7456.000
0.8456.000
0.9456.000
1.0456.000

ページ先頭