civil-eye.com

Web
S eminar

大崎 純 著
建築・土木のための構造最適化入門

氏 名
：
学 位
：
専 門
：
所属学会 ：

大崎 純（おおさき まこと）
工学博士
構造最適化，大スパン構造，計算工学
日本建築学会
日本機械学会
日本計算工学会
日本鋼構造協会
International Association for Shell & Spatial Structures
International Society for Structural and Multidisciplinary Optimization
American Society of Civil Engineers

第 1 章 最適設計の概要
1.1

最適設計とは本章では，最適設計の定義，役割，分類などについて，簡単に紹介する。詳細については次章以降で説明するので，本章では若干の厳密さは犠牲にして，読みやすさを優先することにする。付加的説明が必要な場合には脚注を用いることにする。
構造設計のプロセスは，与えられた設計条件の下で，最も望ましい設計変数（パラメータ）の組合わせ1（部材の配置や断面形状）を決めるプロセスであるということができ，その基本的作業を簡潔に述べるならば次のようになる。

• 設計変数をいろいろな値に変更してみて，最も望ましい解を選択する。
しかし，次のような疑問が浮かんでくる。

• 「最も望ましい解」はいかなる根拠によって決められるのであろうか。
• 望ましくない解が得られたとき，設計変数をどのように変更すればいいのだろうか。
このような疑問に答えるのが「最適化」である。
応用数学や経済学の分野で発展した最適化問題を，構造設計に適用した問題を構造最適化問
題あるいは最適設計問題という [1–6]。最適化問題は数理計画問題ともいわれ 2 ，何らかの制約条件のもとで目的関数といわれる評価関数を最小化あるいは最大化する問題である。また，• 最適化問題の解を最適解という。
このように，「 最適解」は数学的に定義されたものであり，それが日常用語の「最適」のイメージに合致しなくても何ら問題はない。
通常の構造設計法では，まず設計変数を仮定し，応答評価を行なう。そこで，設計条件 (制約条件) が満たされていなければ設計変更を行ない，再度解析を行なう。この方法では，設計変更の際に「かん 」と「経験」が重視され，変更のための規準が明確でない。また，制約条件を満たす満足解が得られれば終了することが多く，より良い設計解を得る努力は通常なされない。
それに対し，構造最適化を行なうと，次のような効果が得られる。

• 変位や応力など の制約条件の下で，与えられた目的関数を最小化あるいは最大化するような設計変数が自動的に効率良く求められる。
• 最適化ツールは，悪い意味での「自動設計ツール」ではなく，一つの意思決定支援ツールと捉えることもできる。
12

骨組部材の断面積やトラスの節点位置，部材配置など ，構造設計者が変更可能な変数を，設計変数という。
経済学や経営工学では，最適化に関わる分野をオペレーションズリサーチ (OR) ともいう。

1

• 最適化アルゴ リズムを利用することにより，単純作業から解放され，構造設計者がより創造的な設計活動を行なうためのゆとりが生まれる3 。
• 施工上の理由などにより最適解をそのまま利用できない場合にも，最適解が得られると，望ましい解の傾向を理解することができる。

1.2

最適設計問題の一般形式

最適設計問題は，一般に次のように書ける。
コスト最小化問題 minimize

目的関数

subject to 力学的制約条件「 最小化する」という意味であり，「 subject to 」は「制約の下で」といここで，「 minimize 」は，
う意味である。目的関数は，目的関数 → 最小化のように書くこともある。しかし，本稿では，一般的な表現として，上記のような表現を用いることにする。
制約条件は，設計基準などで直接的に与えられるので，理解しやすい。目的関数には全構造
質量（あるいは重量，体積）を考えることが多い。すなわち，設計基準を満たす設計の中で，重量が最小となるような設計を最適設計解4とする。その意味は，以下のとおりである。

• 構造材料の重量を低減することは，コスト低減につながると考えられる。
• 構造材料の重量がコストと直接関係ない場合にも，最適化を行なうことによって，全ての制約条件を満たす設計解（ 満足解あるいは許容解）が得られる。
• 立体トラスなど の大空間を覆う構造物では，自重の低減が荷重の低減に直接つながるので，重量を最小化することの意味は大きい。
構造重量最小化という考えが受け入れにくい場合には，次のような形式の問題を考えることもできる5 。
性能最大化問題 maximize 力学的性能

subject to コストに関する制約
力学的性能は，例えば最大変位や応力で定義できる6 。コストについては，概算式を用いることができれば利用し，そうでなければ，重量などを用いる。
3

余剰時間の利用法については，社会的あるいは経済的環境に依存する。
最適化問題の解を最適解というのに対し ，最適設計解の解を，最適設計解という。
5トラスの場合，力学的性能として，1 次固有振動数やコンプライアンス（ 静的載荷時の外力仕事あるいはひず
みエネルギー）を用い，コストを部材重量で定義すると，「 コスト最小化問題」と「性能最大化問題」の解は同じである。
6
目的関数は「性能」なので，最大化問題としたが，変位や応力の最大値をそのまま目的関数とする場合は，最小化問題となる。
42

以上のように，構造最適化問題には種々の定式化が存在し，それらを「最小重量設計問題」，「最大剛性設計問題」「， 変位最小化問題」などと呼ぶのは極めて煩雑であり，それらを包含して「最適設計問題」という。
簡単な例として，静的載荷時の応力と変位に関する制約の下で，部材体積が最小となるようなトラスの断面積を求める問題を考えてみる。指定された荷重の下での応力ベクトル 7を σ, 節
点変位ベクトルを U , 第 i 部材の断面積を Ai , 部材長を Li , 部材数を m とし，各変数の上・下限値をそれぞれ上添え字 U 及び L で表わすと，最適設計問題は次のように定式化できる。
トラスの最適設計問題 minimize

m


Ai Li

i=1
L

subject to σ ≤ σ ≤ σ U
UL ≤ U ≤ UU
AL ≤ A ≤ AU
ここで，ベクトルに対する不等号 ≤ は，ベクトルの全ての成分で不等号が成り立つことを意味する。
部材断面積が連続変数の場合には，上記の問題は非線形計画問題である。しかし，部材の断面は，あらかじめ与えれたカタログ（ リスト ）から選択されることが多い。その場合には，組合わせ最適化問題になり，一般に整数計画法 [7, 8] といわれる手法あるいは発見的手法 [9, 10] を用いて最適設計解を求めることになる。

1.3

最適化のために必要なもの

構造最適化問題に対する解法は，遺伝的アルゴ リズム，整数計画法など ，微分係数（ 感度係数）を必要としない手法と，非線形計画法などの微分係数を必要とする方法に分けられる。
前者の方法では，基本的には構造解析を多数回実行できれば最適解が得られる。後者では，微分係数を求めるための設計感度解析8が必要になり，最適化アルゴ リズムの指示にしたがって，
構造解析と設計感度解析を繰り返すことにより，最適設計解が得られる。その場合，最適化ア
ルゴ リズム，構造解析及び感度解析との関係は図 1.1 のようになる。ここで，矢印は，データを必要とする方向あるいは呼び出す方向を示している。すなわち，非線形計画法を用いて最適化を行なうときには，目的関数と制約関数9の設計変数に関する微分係数を求めるために設計感度解析を行なう。その際，構造解析によって応答量が得られていなければならない。また，ラインサーチ 10などの段階では設計感度係数は必要ないので，構造解析のみが行なわれる。
設計感度解析については，3 章で解説する。最適化アルゴ リズムについては，2 章と 3 章で，数理計画法と発見的手法を解説する。
ところで，「 最適化アルゴ リズム」はいかにして入手できるのであろうか。あるいは，自分でプログラミングしなければならないのだろうか。次章で説明する線形計画法や制約なしの非線形計画法については，多くのフリーウェアが存在する。一般の非線形計画法や，組合せ最適化
7

各部材の応力を並べたベクトル。
応答量（ 変位，応力など ）の設計変数に関する微分係数を設計感度係数といい，それを求める過程を設計感度解析という。
9
制約条件を定める関数。
10
2 章を参照すること。
83図 1.1: 最適化・感度解析・構造解析の関係に対しては，フリーウェアは少ないようであるが，例えば以下のサイトで検索できる11 。

• NEOS(Network-Enabled Optimization System): http://www-neos.mcs.anl.gov/• 松井知己 (東京大学数理情報学専攻): http://www.simplex.t.u-tokyo.ac.jp/ tomomi/• Netlib: http://www.netlib.org/
その他のウェブサイトや文献については，文献 [11, 12] などを参照されたい。以上のように，最適化問題を解くためには，自分で数理計画法のプログラムを作成する必要はない。構造解析を行う際に，適切なソフトウェアを購入あるいはダウンロード するのと全く同じ感覚で，最適化を実行することができる。
しかし，以下の意味において，次章以降の知識は必要不可欠である。

• 解いてみたい問題の分類が分からなければ，使用できるアルゴ リズムやライブラリも分からない。
• 最適化アルゴ リズムのパラメータを適切な値とするためには，アルゴ リズムに関する基礎知識が必要不可欠である。
• 基礎知識がないと，最適解が得られなかったときに対応できない。

1.4

最適化によって得られるもの

制約条件（設計条件）を満たす解を求める通常の構造設計の観点からは，最適化によって，次のような成果が考えられる。

• 制約条件が適切に与えられれば，構造最適化を実行することによって，必ず制約条件（設計条件）を満たす解が得られる。
• 超大空間構造や特殊構造などで，熟練設計者でも制約条件を満たす解を見つけるのが困難な場合には有効である。
11

フリーウエアは，構造最適化ではなく，数学の分野での数理計画問題を対象としており，特殊な言語形式やデータ形式を必要とるものが多い（ 例えば GAMS: http://www.gams.com/ では，多くの種類のプログラムを利用できるが，ユーザーの用意した構造解析プログラムとのリンクはできない。また，構造最適化へ利用できるプ
ログラムライブラリに関しては，商用ソフトウェアのほうが，精度と信頼性の面で優れているようである。

4• 経験によって得られた解からスタートすれば，少なくとも改悪されることはない。
また，意思決定過程の透明性の観点からは，つぎのような成果が得られる。

• 構造物のコストや性能に関わる入力パラメータを種々の値に変更して最適解を求めれば，設計の費用対性能効果や意思決定の理由が明確になる。
もう少し夢のある成果を期待するならば，つぎのようなことも考えられる。

• これまでになかったような構造形式を発見する。
• 通常の設計法では実現困難な大規模かつ特殊形式の構造を実現する。
構造の形態を見出す手法は，膜構造やケーブルネットなどの張力構造物の釣合い形状を求めるためのいわゆる形態解析という分野でも発展してきた [13, 14]。そこでは，極小曲面12や，自重に対する応力一定の曲面を求めるための多くの手法が開発されてきた。これらの手法は，最適化手法ととらえることもできる。シェル構造物や立体トラスなどの大空間構造物では，力の流れを無視した形態は成立せず，現在の技術をもって実現可能であっても，自然の要求に逆らった構造形態は，決して美しいとはいえないであろう。それに対して，最適化によって，極めて自然に力学的に最適な形態を求めることができ，デザイナーと構造設計者の協調も容易になる。
ところが，建築の分野では，これまでは以下のような理由で構造最適化に対して消極的な面が見られた。

• 建築構造物は単品生産なので，最適化の効果が小さいのではないか。
• 構造物の形状は，意匠設計と建築計画によってほぼ確定するので，構造最適化の余地は少ないのではないか。
確かに建築構造物は単品生産であるが，家電製品などと比べると規模は大きく，最適化によって数%でもコストを削減できれば，莫大なコスト削減に繋がる13 。また，仕様設計から性能設計への移行が進むと，設計問題を自然な形で最適設計問題として定式化することが可能になる。
さらに，設計プロセスの透明化も必要とされてきた。このような状況において，最適設計の役
割は，ますます大きくなるものとと予想される。
最適化の恩恵としては，余剰計算機資源の有効利用も挙げなければならない。まず第一に挙げられる利用法は，並列分散処理である。その中で，同一の解析を単に複数ケース並行して実行する並列化は，最も単純な有効利用の方法である。
構造最適化では，以下に示すように，極めて自然にこのような並列計算が可能である14 。

• 非線形計画法:
感度解析を差分法で行なうならば，変数の数を N とすると，中央差分法で 2N 回，前進差分法あるいは後退差分法で，N 回の計算を，並列的に実行できる。
• 整数計画法:
分枝限定法を用いるならば，各子問題の最適化を並列実行できる。また，解を全て列挙する場合には，利用可能な全てのコンピュータを用いて並列化できる。
12

与えられた境界条件の下で面積を最小化する曲面。
構造設計のコスト（ 材料も含める）の占める割合が大きくない場合でも，最適化によって削減できる割合が重要である。
14
下記の手法の詳細は，次章以下で解説する。
135

図 1.2: 構造最適化の設計条件による分類

PP

図 1.3: トポロジー最適化• 遺伝的アルゴ リズム:
人口数を N とすると，N 回の計算を並列的に実行できる。
• 局所探索（セルオートマトン，タブー探索，擬似焼きなまし法などを含む）:
変数 x に対して，{x, x + ∆x, x − ∆x} の 3 近傍を考えると，変数の数が N のとき，3N 回の計算を並列実行できる。

1.5

最適設計問題の分類

最適設計問題の分類には，種々の方法が存在するが，トラスや骨組構造物を想定した設計条件に基づく古典的な分類は，図 1.2 のようになる。
「断面性能最適化」では，例えばトラスの部
材断面積が設計変数となる。断面積が変化すると当然断面形状も変化するが，トラスの力学的特性には断面サイズのみが影響し，断面形状は無関係であるから，このような問題は形状を最適化する問題とはいえない。
一方，トラスや骨組の形状は，節点の位置とそれらを接続する部材の配置で決定され，接続関係はトポロジーともいわれる。したがって，形状最適化は，節点位置最適化とトポロジー最適化に分けられる [1, 15]。
トポロジー最適化の例を，図 1.3 に模式的に示す。最初に左に示すような 11 部材トラスを想定し，応力制約の下で部材体積が最小になるような最適解を求めると，右図のような部材配置が得られる15 。ここで，点線は最適化の結果断面積が 0 となって除去される部材を示している。
15

左図で交差している斜材は交点で接続されていない。

6

P

P

図 1.4: 節点位置最適化

Hθ

P = 1000 N
W=1m

図 1.5: コート掛けモデル

このように，最初に多くの部材が存在可能とし，部材断面積を連続変数として最適化して不要な部材を除去する方法をグランド ストラクチャ法という。
図 1.4 に，節点位置最適化の過程を模式的に示す。図において，グレーで示した領域は，節点位置の許容領域である。許容領域に制限を与えないと，最適化の結果節点が重なり，極めて短い部材が現れて解析不可能になることが多い。したがって，節点位置を変数とした最適化では，トポロジーが変化することはなく，両者を同時に最適化するのは極めて困難である。
各問題の特徴について，図 1.5 に示すような簡単なトラスで説明する [15]。壁から 1 m 離れたところに重量 1000 N の物体を吊り下げるための骨組を設計することを考える。このような問題をコート掛け問題という。
応力の制約の下で梁と吊り材の体積の和が最小となるように設計する。吊り材と梁と間の角度を θ とすると，吊り材の長さは 1/ cos θ m である。また，梁と吊り材の軸力の絶対値はそれ
ぞれ 1000/ tan θ N 及び 1000/ sin θ N である。部材の断面積を小さくすると材料の体積は小さくなるが，応力の絶対値は大きくなる。したがって，応力の制約の範囲内で最適な部材断面積が2存在する。応力の上限値を 50 N/mm とし，梁と吊り材ともに応力の絶対値が上限値に一致するように断面積を決めると，断面積はそれぞれ 200/ tan θ mm2 及び 200/ sin θ mm2 であり，部
材体積 V は最小値 200/ tan θ + 200/(sin θ cos θ) mm3 となる。この設計は，断面性能を変数としたときの最小重量設計である。
次に，部材断面積だけではなく，吊り材の角度も変更できるものとする。θ と最適設計解における部材体積の関係を示すと図 1.6 のようになる。図 1.6 より，θ が約 55◦ のとき V が最小に

7

800

700

600

500
30

40

50

60

70

図 1.6: 吊り材の角度と最適設計解における部材体積の関係
W

H

H

P

P

図 1.7: H/W が小さいときの部材配置の例なっていることがわかる。このように，形状を定める量を変数と考えて，その最適な値を求めることを形状最適化という。
ところが，天井の高さなどの制限により，吊り材を 55◦ 方向に配置することができず，吊り材の取り付け高さ H が指定される場合もある。荷重作用点の壁からの距離 W に対して H が小さいときには，図 1.7(a) のように部材を配置するのは明らかに非効率的であり，例えば図 1.7(b)のような配置が考えられる。ここで，以下では簡単のためトラス構造物を考えることにする。
図 1.7(b) のトラスは静定なので，節点位置が定められれば釣合い式から軸力が求められ，応力の絶対値が上限値に一致するように断面積を決定すれば，最適設計解が得られる。
H/W = 0.2 の場合について，分割数が 2,3,4,5,6 のときの最適設計解を求めた。ここで，簡単のため，水平方向には等分割し，束材は鉛直方向に配置する。最適設計解を求める方法については 2 章以降を参照すること。分割数と最適設計解における部材体積の関係は表 1.1 のようになる。したがって，分割数が 4 のときが最適であり，そのときの断面積分布は図 1.8 のよう

図 1.8: 4 分割の最適断面積分布8表 1.1: 分割数と部材体積の関係
分割数
部材体積 m3

2
16.20

3
15.33

4
15.30

5
6
15.60 16.07になっている。ここで，図 1.8 は部材の幅が断面積に比例するように描いている。このように，トラスの節点位置に加えて部材の配置も最適化することをトポロジー最適化という。

参考文献[1] 加藤直樹，大崎 純，谷 明勲，建築システム論，造形ライブラリー 3，共立出版，2002.
[2] S. Burns (Ed), Recent Advances in Optimal Structural Design, ASCE, 2002.
[3] 山川 宏 編，最適設計ハンドブック −基礎・戦略・応用−，朝倉書店, 2003.
[4] J. S. Arora, Introduction to Optimum Design, McGraw-Hill, 1989.
[5] R. T. Haftka, Z. Gürdal and M. P. Kamat, Elements of Strustural Optimization, Kluwer
Academic Publishers, 1990.
[6] 構造システムの最適化，土木学会, 1988.
[7] 奈良宏一，佐藤泰司，システム工学の数理的手法，コロナ社，1996.
[8] 茨木俊秀, 組合せ最適化の理論, コロナ社, 1979.
[9] 三井和男，大崎 純，大森博司，田川 浩，本間俊雄，発見的最適化手法による構造のフォルムとシステム，コロナ社, 2004.
[10] 柳浦睦憲，茨木俊秀，組み合せ最適化 −メタ戦略を中心として−，朝倉書店，2001.
[11] 大崎 純, 最適化ソフトウェア，建築ソフトのフロンティア，建築雑誌, Vol. 117(1487), pp.
4-5, 2002.
[12] 日本建築学会建築システム最適化特別研究委員会，建築システムの最適化, 2003.
[13] 日本建築学会応用力学運営委員会構造形態の解析と創生小委員会 編, 構造形態の解析と創生, 丸善，1998.
[14] 日本建築学会応用力学運営委員会構造形態解析との応用小委員会 編, 構造形態創生の理論と応用, 丸善，2001.
[15] 大崎 純, トラスの形状とトポロジーの最適化，建築の研究，建築研究振興協会，No. 158,
pp. 20-22, 2003.

9

第 2 章 数理計画法の基礎
2.1

数理計画問題の分類

変数に関する制約の下で，目的関数を最小化あるいは最大化する問題を数理計画問題あるいは最適化問題といい，その解法を数理計画法という。1 章で述べたように，最適設計問題は，数理計画問題として定式化される。
m 個の変数からなるベクトルを x = (xi ) とする。以下では，ベクトルは列ベクトルであるものとし，その成分を添え字で表わす。最小化すべき目的関数を F (x), 等式及び不等式制約条件の数をそれぞれ N E , N I とし，i 番目の等式及び不等式制約条件を定める関数を Gi (x), Hi (x) とすると，数理計画問題は一般に次のような形式となる。

MP : minimize

F (x)subject to Gi (x) = 0,
Hi (x) ≤ 0,

(i = 1, . . . N E )I(i = 1, . . . N )x ∈ 変数の許容領域

(2.1)
(2.2)
(2.3)

ここで，
「 変数の許容領域」には，変数の上・下限値に加えて，実数や整数などの変数の種類も含めるものとする。
制約条件式 (2.1),(2.2) 及び変数に関する条件式 (2.3) を満たす解 x を許容解といい，その集合からなる領域を許容領域という。また，許容解の中で，目的関数 F (x) を最小化する解を最適解という。
数理計画問題は，変数の種類（ 整数あるいは実数），制約条件の有無，関数の線形性などで分類され，問題の種類によって解法は異なる。数理計画法の分類例を図 2.1 に示す。読者が対象としている最適化問題を解くためのソフトウェアを検索する際には，問題の分類に関する知識をもっていなければならない。

2.2

線形計画法

2.2.1

線形計画問題の例

全ての制約条件と目的関数が，変数の線形関数であるような問題を線形計画問題といい，その解法を線形計画法という。例えば，次のような問題は線形計画問題である。

10

図 2.1: 数理計画法の分類

LP1 : maximize F (x1 , x2 ) = x1 + x2
subject to x1 + 2x2 ≤ 6
2x1 + x2 ≤ 7
x1 ≥ 0, x2 ≥ 0以下に示すように，線形計画問題の解法は，標準形を想定した説明される。そこで，LP1 を次のような標準形に変換する。

LP1 : maximize F (x1 , x2 ) = x1 + x2
subject to H1 (x1 , x2 ) ≡ x1 + 2x2 − 6 ≤ 0
H1 (x1 , x2 ) ≡ 2x1 + x2 − 7 ≤ 0
x1 ≥ 0, x2 ≥ 0
図 2.2 に，LP1 の許容領域と最適解を示す。目的関数の定義より，

x2 = F − x1
なので，許容領域を通り，x2 切片が最大になる直線 x2 = F − x1 と許容領域の交点 B(8/3,5/3)が最適解であり，そのときの x2 切片の値 13/3 が目的関数の値（ 最適目的関数値）である。
以上のように，変数が 2 つの場合には，図を描いて最適解を求めることができる。しかし，構造設計での現実的な問題では多数の変数があるので，このような方法で最適解を求めることはできない。したがって，以下に示すような一般的な方法が必要になる。

11

x2
G2= 0

C
B
G1 = 0Ax1

O

図 2.2: 線形計画問題の許容領域と最適解

2.2.2

線形計画法

変数のベクトルを x = (x∗1 , . . . x∗m∗ ) とする。ここで，( ) はベクトルあるいは行列の転置を表わす。定係数行列を D ∗ , 定数ベクトルを b, c∗ , 目的関数を F ∗ (x∗ ) とすると，線形計画問
題は一般に次のように定式化できる。

LP2 : maximize F ∗ (x∗ ) = c∗ x∗
subject to D∗ x∗ ≤ bx∗ ≥ 0
ここで，ベクトルに対して ≥ あるいは ≤ を用いた場合，各成分に対して ≥ あるいは ≤ が成立することを意味する。
制約条件 D∗ x∗ ≤ b の行数を n とすると，n 個の非負変数 s = (s1 , . . . sn ) を用いて，制約条
件は次のような等式に変換できる

D∗x + s = 0s≥0
このような変数 s をスラック変数という。ここで，スラック変数を，x∗m+1 = s1 , . . . , x∗m+n = snのように変数に含め，拡張された変数ベクトルを x, それに対応する係数行列とベクトルを D
及び c, 目的関数を F (x) で表わすと，LP2 は次のように書ける。

LP2 : maximize F (x) = c x

(2.4)

subject to Dx = b

(2.5)

x≥0

(2.6)

LP2 の変数の数を m (= m∗ + n) とする。線形計画問題では，通常 m > n が成立するので，
式 (2.5) より，n 個の変数（ 基底変数）を用いて残りの変数（非基底変数）を表現することがで12

きる。ここで，D のランクが n より小さいような場合は考えない。基底変数を xB , 非基底変数
を xN とし，式 (2.5) を次のように書く。

BxB + N xN = b(2.7)

xB = B −1 b − B −1 N xN

(2.8)

式 (2.7) より次式を得る。

また，目的関数は次のように書ける。

F (x) = c x= cB xB + cN xN

(2.9)

−1
−1

T
= c
B B b + (cN − cB B N )xN

ここで，ベクトル e を−1Te = cN − cB B N

で定義すると，−1
F (x) = cb + e xN
BB(2.10)である。
いま，全ての非基底変数が 0 であり，基底変数に対して xB ≥ 0 が成立するような解を考える。このような解は，許容領域の頂点に存在する。式 (2.10) より，e の第 i 成分 ei は，非基底変数 xN i が 0 から増加したときの目的関数の増加率を表わしている。したがって，e の全ての成分が 0 または負であれば，その解は最適解である。複数の成分が正のときは，最も効率よく目的関数を増加させるような基底関数の入れ替え方法を検討しなければならない。
xN i を 0 から増加させたとき，xB ≥ 0 を保持するような最大の xN i の値を式 (2.8) から求めることができ，それを di とする。また，xN i を増加させたときに最初に 0 になるような基底変数を xBj とする。このとき，ei di が最大になるような非基底変数と，それに対応する基底変数
xBj を入れ替えれば，最も効率よく目的関数を増加させることができる。このようにして最適解に到達する方法をシンプレックス法という [1–4]。
例として，問題 LP1 をシンプレックス法で解いてみる。スラック変数を x3 , x4 とすると，LP1
は次のようになる。

LP1 : maximize F = x1 + x2
subject to x1 + 2x2 + x3 − 6 = 0
2x1 + x2 + x4 − 7 = 0
x1 ≥ 0, x2 ≥ 0, x3 ≥ 0, x4 ≥ 0
いま，x1 , x2 を非基底解とすると，式 (2.8) 及び式 (2.10) は次のように書ける。

x3 = −x1 − 2x2 + 6(2.11)

x4 = −2x1 − x2 + 7(2.12)

F = x1 + x2

(2.13)

13

x1 = x2 = 0 を初期解とする。すなわち，図 2.2 の点 O からスタートする。式 (2.12) において，
x2 = 0 とし，x3 , x4 の非負条件が満たされる条件の下で，x1 は 7/2 まで増加させることができ，そのときの F の増加量は 7/2 である。一方，x2 は 3 まで増加させることができ，そのときの Fの増加量は 3 である。以上より，x1 を基底変数にし，x1 = 7/2 において 0 になる変数 x4 を非基底変数として x4 = 0 とする。すなわち，図 2.2 において点 O から点 A に移動する。x4 は，制
約条件 H2 ≤ 0 のスラック変数なので，x4 = 0 は H2 = 0 となることを意味している。
点 B において，式 (2.8) 及び式 (2.10) は次のように書ける。
11
7x1 = − x2 − x4 +
2
2
2
3
1
5
x3 = − x2 + x4 +
2
2
2
1
5
1
F = x2 − x4 +222
x4 を増加させると F は減少する。一方，x2 は 5/3 まで増加させることができ，そのときの Fの増加量は 5/6 である。したがって，x2 を基底変数にし，x2 = 5/6 において 0 になる変数 x3 を
非基底変数として x3 = 0 とする。すなわち，図 2.2 において点 A から点 B に移動する。このとき，式 (2.8) 及び式 (2.10) は次のように書ける。
128x1 = x3 − x4 +
3
3
3
2
1
5
x2 = − x3 + x4 +
3
3
3
1
13
1
F = − x3 − x4 +33
3x3 と x4 のいずれを増加させても F が減少するので，x3 = x4 = 0 が最適解である。以上より最適解 (x1 , x2 ) = (8/3, 5/3) を得る。

2.3

非線形計画法2.3.1

非線形計画問題

前節では，目的関数と制約条件が変数の線形関数で表わされるような線形計画法を紹介した。
4 章では，塑性崩壊や，弾性静定構造物の最適設計問題が線形計画問題として定式化できることを示す。しかし，建築，機械，土木などの工学の分野でのほとんどの構造設計問題や形状決定問題は，単純な線形式で表現することは極めて困難であり，線形計画法だけでは不十分である。
目的関数と制約関数の両方あるいは一部が変数の非線形関数であるような最適化問題を非線形計画問題といい，それに対する解法を非線形計画法という。本節では，非線形計画法の概要を紹介する。
変数ベクトルを x, 最小化すべき目的関数を F (x), 等式及び不等式制約条件の数をそれぞれE
N , N I とし，i 番目の等式及び不等式制約条件を定める関数を Gi (x), Hi (x) とすると，非線形計画問題は一般に次のような形式となる。

minimize

F (x)subject to Gi (x) = 0,(i = 1, . . . N E )Hi (x) ≤ 0,

(i = 1, . . . N I )14

ここで，x は実数である。
線形計画問題とは異なり，非線形計画問題にはあらゆる種類の問題に有効であるような手法は存在せず，問題ごとに適切な手法を選んで使用するのが望ましい。以下では，制約条件がな
い問題，制約条件付き問題のそれぞれについて，目的関数の勾配の方向に探索する方法と，最適解において満たされるべき最適性条件を解く方法を紹介する [1]。

2.3.2

制約条件のない最適化問題

1 変数の最適化問題
最も簡単な場合として，1 変数関数 F (x) の最小化問題を考える。ここで，x の範囲についての制約はないものとする。F (x) を最小にする最適解 x̃ が存在すれば，x = x̃ において F (x) の微分係数（ 導関数の値）は 0 だから，次の停留条件が成立する。

dF (x)=0dx(2.14)

F (x) = 3x4 − 22x3 + 57x2 − 60x + 23

(2.15)式 (2.14) を満たす解を停留点という。
図 2.3 は，とその導関数dF (x)= 6(x − 1)(x − 2)(2x − 5)dx
を描いたものである。F (x) は x の 4 次関数だから，3 つの停留点が存在している。その中で，
x = 1 が大域最適解 x̃，x = 2.5 が局所最適解であり，x = 2 は F (x) を局所的に最大にする解である。最適解での目的関数値を最適目的関数値といい，この例では F (x̃) = 1 である。
このように，停留条件式 (2.14) は最適解であるための必要条件であり，最適解ならば満たされる条件であるが，停留条件が満たされている場合でも最適解であるとは限らない。すなわち，
停留条件は最適解であるための十分条件ではない。この他にも，F (x) の変曲点も停留点であるが，最適解ではない。
図 2.3 の例では，停留条件式を容易に解くことができ，F (x) が 4 次関数で，4 次の係数が正だから，2 階導関数

d2 F (x)= 36x2 − 132x + 1142dxの符号が正である 2 つの停留点のうちで，F (x) が小さい方の解が最適解である。
ところが，F (x) が x の多項式でない場合には，停留条件式 (2.14) を直接解くことは困難である。その場合には，式 (2.14) を満たす解をニュートン法を用いて解く。
以下では，簡単のため，F  (x) = dF (x)/dx, F  (x) = d2 F (x)/dx2 の記号を用いると，ニュートン法は，一般に非線形方程式を線形予測を繰り返して解くための手法である。ここでは F (x) = 0を満たす解を求めるので，一般のニュートン法と比べて 1 つ階数の異なる式を用いることに注意する。
ニュートン法のアルゴ リズムの概要は次のとおりである。

15

F(x)
6
4
2

1

2

3

x

dF(x)
dx
6
4

x (0)

2
-2

1

2

3

x

x (1)

-4

図 2.3: 1 変数関数の導関数と最適解

Step 1 x の初期値 x(0) を与え，カウンター k を 0 とする。
Step 2 F  (x(k) ) を評価し，次の線形近似式を解いて停留条件 F  (x) = 0 を満たす x の値 x̃ を予測する。
F  (x(k) ) + F  (x(k) )(x̃ − x(k) ) = 0
Step 3 x の修正量の絶対値 |x̃ − x(k) | が十分に小さければ終了し，そうでなければ x(k+1) = x̃とし，k を 1 増加させて Step 2 へもど る。
式 (2.15) の関数を最小化する解を，ニュートントン法で求めてみる。例えば x(0) = 2.7 とす
ると，F  (2.7) = 2.856, F  (2.7) = 20.04 だから，式 (2.3.2) より x̃ = 2.557 を得る。線形予測の過程を図 2.3 の直線で示す。|x̃ − x(0) | は十分に小さいとはいえないから，x(1) = 2.557 として再度線形予測を行い x を修正する。このような操作を繰り返すことによって，停留点に近づく。
しかし，この方法では，初期値に近い停留点が得られることが多いため，大域最適解が得られる保証はない。図 2.3 の例で，x の初期値を 1 に近い値とすれば x̃ = 1 の大域最適解が得られるが，x = 2.5 付近から始めると，局所最適解に到達する。また，関数の形状によっては，解が振動したり発散したりする場合がある。さらに，ニュートン法では目的関数の 2 階微分係数
F  (x) が必要であり，F (x) が x の複雑な関数のときにはその適用が困難である。

16

x2
∇F(x)

4
3

A

2

C

B

1
1

2

3

4

5

x1

6

図 2.4: 2 変数関数の等高線と勾配ベクトル(a) 収束性の良い場合(c) 局所最適解に収束性する
場合(b) 収束性の悪い場合
図 2.5: 最急降下法の収束性

多変数の最適化問題と勾配ベクト ル
多変数関数の最適化手法について述べる前に，まず，勾配ベクトルを定義する。変数ベクト
ル x = (x1 , x2 , · · · , xm ) の関数 F (x) の勾配ベクトル ∇F (x) は，次式で定義される。

∇F (x) =

∂F ∂F
∂F
,
,··· ,∂x1 ∂x2∂xm

∇F (x) は，x の変化の大きさが与えられたときに，F (x) の増加量が最も大きい方向を示している。
次のような 2 変数関数を考える。
1
F (x) = (x1 − 3)2 + (x2 − 2)22(2.16)

図 2.4 の楕円は，F (x) の値が一定の曲線（ 等高線）を示している。この関数の勾配ベクトルは
次のようになる。

x1 − 3∇F (x) =(2.17)2(x2 − 2)例えば，(x1 , x2 ) = (4, 3) の点 A において F (x) = 3/2 であり，図 2.4 に示すように，∇F (x) =(1, 2) である。

17

最急降下法
勾配ベクトルの定義から，−∇F (x) の方向に変数を変更すれば，最も効率良く F (x) を減少させることができる。x の変動量の大きさを定めるパラメータを τ として，次式のように x を更新して最適解に近づいていく方法を最急降下法という。

x(k+1) = x(k) − τ ∇F (x(k) )ここで，k は繰返しのカウンターである。
この方法では , τ が大きいと最適解を通り越してしまう可能性がある。また，τ が小さいと極めて計算効率が悪くなる。したがって , 通常は −∇F (x) により方向のみを定め, その方向で
F (x) が最小となる点をラインサーチにより求める。
図 2.4 の例を考えてみる。ここで，目的関数と勾配ベクトルは，式 (2.16) 及び式 (2.17) に示したとおりである。(x1 , x2 ) = (4, 3) の点 A を初期値とすると，F = 3/2 であり，−∇F (x) = (1, 2)
の方向に進めばよいことが分かる。この例では目的関数は変数の 2 次関数なので，x = x(0) −τ ∇F (x(0) ) における F の値は次のように τ の 2 次関数になる。

1
F = (1 − τ )2 + (1 − 2τ )22(2.18)式 (2.18) の τ に関する停留条件を解けば，τ = 5/9 が得られ，x(1) = (31/9, 17/9) となり，図2.4 の点 B に移動する。点 B で勾配ベクトルを求めると，−∇F (x) = (4/9, −2/9) であり，同様の操作を行ない点 C = (83/27, 56/27) へ移動する。最適解は (3, 2) なので，2 回の操作で最適解に極めて近い解が得られた。
しかし，目的関数の形状と初期値の関係によっては，図 2.5(b) のように極めて効率の悪い場
合や，図 2.5(c) のように局所最適解に収束する場合がある。また，目的関数は，一般に変数の2 次関数ではないので，探索方向が得られた後に直線上の最小点を求める一般的な操作が必要になる。
ラインサーチには，黄金分割法など 種々の方法があるが，最も単純なアルゴ リズムは，以下に示す 2 分法ある。

Step 1 最急降下法の第 k ステップでの解 x(k) が求まっているものとし，τ の初期値 τ [0] を与え，カウンター j を 0 とする。
Step 2 x[0] = x(k) とする。
Step 3 x[j+1] = x[j] − τ [j] ∇F (x(k) ) とし，F (x[j+1] ) を評価する。
Step 4 F (x[j+1] ) < F (x[j] ) のとき，j ← j + 1 として Step 3 へ。
Step 5 |F (x[j+1] ) − F (x[j] )| が終了条件のための指定値より大きいとき，τ [j+1] ← −τ [j] /2, j ←j + 1 として Step 3 へ。
Step 6 x(k+1) ← x[j] として終了。

18

ニュートン法
最急降下法のように，目的関数が減少する方向へ解を逐次更新する方法以外にも，1 変数の場合と同じように，最適解で満たされる条件をニュートン法によって直接解くこともできる。
勾配ベクトルを用いると，多変数の場合の停留条件は次のようになる。

∇F (x) = 0(2.19)式 (2.19) を繰返し線形近似によって解く。いま，k 回目の繰返しステップでの値 x(k) において式 (2.19) が満たされていないものとする。x(k) の近傍での ∇F (x) を F (x) の 2 階導関数を用いて線形近似すると，更新された x で式 (2.19) が満たされるための条件は次のように書ける。

∇F (x(k) ) + ∇2 F (x(k) )(x − x(k) ) = 0(2.20)∂2F
ここで , ∇ F (x) は第 (i, j) 成分がである行列であり, ヘッセ行列あるいはヘシアンとよ∂xi ∂xj
ばれる。例えば，2 変数のときには，
⎡ 2
⎤
∂ F
∂2F
⎢ ∂x2 ∂x ∂x ⎥1
2 ⎥1
∇2 F (x) = ⎢
⎣ ∂2F
∂2F ⎦
2

∂x2 ∂x1∂x22である。
式 (2.20) を形式的に x について解くと，x = x(k) − [∇2 F (x(k) )]−1 ∇F (x(k) )が得られる。しかし，数値解析の際には，ヘッセ行列の逆行列を求める操作は行なわず，連立
1 次方程式∇2 F (x(k) )x = ∇2 F (x(k) )x(k) − ∇F (x(k) )(2.21)

を解いて x を求める。
ところで，F (x) が x の 2 次関数である場合を除いて，式 (2.21) を解いて得られる解には誤差が存在する。その誤差の影響を低減するために，ここでも最急降下法のときと同様に

x(k+1) = x(k) + τ (x − x(k) )のように変更量を調整し，ラインサーチを行なって，探索方向の直線上での目的関数が最小となる点を求める。
式 (2.17) の最小化問題において，点 A(4, 3) を初期解とすると，式 (2.21) は次のようになる。
   
1 0
1 0
4
1
x=
−
(2.22)0 2
0 2
32
式 (2.22) を解くと，最適解 (3, 2) が得られる。
以上のように，目的関数が変数の 2 次関数のときには，停留条件が線形なので，ニュートン法を用いると 1 ステップで最適解が得られる。しかし，ニュートン法は , 1 変数の場合と同様に，

19

最小化問題において F (x) が x の凸関数の場合には良好な収束性を示すが , それ以外の場合には収束性は保証されない。また , 目的関数の 2 階の導関数を計算しなければならないため , 変数の数が多い場合には連立 1 次方程式 (2.21) を解くための計算負荷が高く，また，目的関数が x の複雑な場合には 2 階導関数の計算自体が困難なため，プログラムが複雑となる。
これらの欠点を克服するため，共役ベクトルとうい概念を導入した手法を共役勾配法という。
さらに , 繰り返し計算の過程でヘッセ行列あるいはその逆行列の近似値を求める方法を , 可変計量法といい，DFP 法，BFGS 法などがある。それらをまとめて準ニュートン法という。

2.3.3

制約条件付き最適化問題

前節では，制約条件のない非線形計画問題の古典的解法を紹介した。ところで，4 章で示す
ような建築構造物の最適設計問題では，構造物に外力が作用したときの部材の応力や節点の変位に関する制約条件が与えられ，それらは部材断面積や節点座標などの設計変数の複雑な非線形関数となっている。したがって，建築構造物の設計を考えるならば，制約条件のある非線形計画問題を解く必要がある。以下では，等式制約と不等式制約の 2 つの場合に分けて，最適解で満たされる条件と一般的解法を示す。

等式制約条件付き最適化問題
制約条件付き最適化問題の簡単な場合として，等式制約条件のみが存在する場合を考える。
このような最適化問題の停留条件は，ラグランジュ乗数法を用いて導くことができる。
λj を等式制約条件 Gj = 0 に対応するラグランジュ乗数とし , 次のようにラグランジュ関数を
定める。
N

E

L(x, λ) = F (x) +λj Gj (x)j=1

L(x, λ) はラグランジアンともいわれる。以下では，簡単のため関数の引数 x は省略する。
L(x, λ) を xi で偏微分するすることにより，次の停留条件が導かれる。
N∂L∂F  ∂Gj
=
+
λj
= 0,
∂xi
∂xi j=1 ∂xi
E(i = 1, 2, . . . , m)

(2.23)

ここで，未知数は，m 個の変数 xi と N E 個のラグランジュ乗数 λj である。したがって，N E 個の制約条件と N 個の停留条件式 (2.23) を連立させて解くことにより，停留条件を満たす解が得られる。この場合にも，停留条件は最適解となるための必要条件であるから，得られた解が大域最適解である保証はない。このような条件を最適性必要条件という。
式 (2.23) をベクトル形式で書くと次のようになる。
NE∇L = ∇F +λj ∇Gj = 0(2.24)

j=1

したがって，式 (2.24) より，最適解では，目的関数の勾配ベクトル ∇F が制約条件の勾配ベク

20

x2

∆

G1

G1

∆
D

F
F
G 1 =0x1

O

図 2.6: 最適解での目的関数と制約条件の勾配ベクトル（ 等式制約条件の場合）
トル ∇Gj の線形結合としてN
E∇F = −

λj ∇Gj(2.25)j=1で表されることがわかる。図 2.6 に示すように，制約条件が 1 つの場合には，最適解において∇F と ∇G1 は同一線上に存在する。
例えば，関数F (x1 , x2 ) = (2x1 − x2 − 1)2 + 4(x1 + 2x2 − 6)2を制約条件

G1 (x1 , x2 ) ≡ x1 + x2 − 4 = 0(2.26)の下で最小化する問題を考える。目的関数の等高線及び，制約関数が一定の直線は，図 2.7 に示すようになる。
ラグランジアンはL(x1 , x2 ; λ1 ) = (2x1 − x2 − 1)2 + 4(x1 + 2x2 − 6)2 + λ1 (x1 + x2 − 4)
であり，その停留条件は

16x1 + 12x2 − 52 + λ1 = 0
12x1 + 34x2 − 94 + λ1 = 0(2.27)となる。式 (2.27) と制約条件式 (2.26) を連立させて解くと，

23
13
29
x2 =
13
40
λ1 = −
13x1 =

21(2.28)

x2
G 1 =0
F

∆

G1

G1

D

∆

F

x1

図 2.7: ラグランジュ乗数法の例

x2
H1

∆

∆
∆

F

H2 = 0

H2

H1= 0

x1

O

図 2.8: 最適解での目的関数と制約条件の勾配ベクトル（ 不等式制約条件の場合）を得る。図 2.7 より，最適解において F と G1 の勾配ベクトルが 1 直線上にあり，G1 = 0 の直線が F の等高線に接していることが確認できる。
この例題は，目的関数が変数の 2 次式で，制約条件が 1 次式だから，2 次計画問題といわれる問題である。2 次計画問題において制約条件が等式であり，目的関数が凸 2 次関数のときには，制約条件の数が変数の数より多いような特殊な場合を除いて，最適解は連立 1 次方程式を一度解くだけで得られる。

22

不等式制約条件付き最適化問題
不等式制約条件 Hi (x) ≤ 0, (i = 1, . . . N I ) が存在する問題を考え，簡単のため，等式制約条
件は存在しないものとする。2 変数の場合で制約条件が 2 つとすると，H1 (x) ≤ 0, H2 (x) ≤ 0で定められる許容領域は，図 2.8 の斜線に示すような領域となる。不等式制約が存在する場合
も，等式制約の場合と同様にして，ラグランンジアンを次のように定義する。
N
I

L(x, µ) = F (x) +µj Hj (x)j=1

ここで，µj はラグランジュ乗数である。
L(x, µ) を x の各成分で偏微分すると，次式を得る。
N
I∇L = ∇F +µj ∇Hj(2.29)

j=1

ところで，最小化問題の最適解では，その定義から，許容領域の内部あるいは境界の方向へ
変数を変更したときに，目的関数が減少することはない。しがって，Hi = 0 が満たされているような活動的 (active) な制約条件に対しては，−∇Hi の方向に変数を変更すると F は減少してはならない。一方，Hi < 0 であるような非活動的 (inactive) な制約条件は，存在しなくても最適解は変わらないため，最適性条件にも影響を及ぼさない。以上より，最適解では，図 2.8 に示すように，目的関数の勾配ベクトル ∇F が，最適解で活動的になっている制約条件の勾配ベクトルの線形結合でかつ係数が非負であるようなベクトルと反対方向でなければならない。したがって，最適解では次式が成立する。
N

I

∇F +


µi∇Hi = 0(2.30)

i=1

Hi = 0 のとき µi ≥ 0
Hi < 0 のとき µi = 0(2.31)式 (2.30),(2.31) で表わされる最適性必要条件を Karush-Kuhn-Tucker 条件（ KKT 条件）といい，式 (2.31) を相補性条件という。
KKT 条件は，大域最適性に対しては必要条件であるが，局所最適性に対しては必要十分条件である。構造最適化において，KKT 条件あるいはそれに近い条件を直接解く方法を，最適性基準法という。

ペナルティー法
ペナルティー関数を導入し , 制約条件付き最適化問題を制約条件の存在しない問題に変換する方法をペナルティー法という。遺伝的アルゴ リズムや発見的手法などで，制約条件がない問題に対して提案された方法を，制約条件がある問題に適用するためには，ペナルティー法が用いられることが多い。以下では , 最小化問題を想定し ，簡単のため不等式制約条件のみ存在す
るものとする。
制約条件 Hj ≤ 0 の不満足度は，Hj の値そのもと考えればよい。したがって，制約条件の不満足度に対して課せられるペナルティーを定める関数は，Hj の関数として，R(Hj (x)) のよう23

F *(x)4

F *(x)

4

3

3

F(x)

2

F(x)

2

1

1

x
1

2

3

4

5

x

6

1

図 2.9: 外点法の場合のペナルティー
関数の例

2

3

4

5

6

図 2.10: 内点法の場合のペナルティー
関数の例に表わすことができる。また，ペナルティーの大きさを調整する正のペナルティー係数を r とし , 以下のように目的関数 F ∗ (x, r) を定義する。
N

I

∗

F (x, r) = F (x) + r

R(Hj (x))(2.32)

j=1

ペナルティー法は，R の与え方により, 外点法と内点法に分類できる。
外点法では , 制約条件 Hj ≤ 0 が満たされない領域で，その不満足量に応じたペナルティーを与える。ペナルティー関数には種々の定義が存在するが，例えば 2 次関数を用いて次のように定めることができる。

Hj (x) > 0 のとき R(Hj (x)) = Hj (x)2
Hj (x) ≤ 0 のとき R(Hj (x)) = 0
パラメータ r を定め，目的関数として F ∗ を採用して制約条件のない場合の最適化手法を用いて最適解を求める。もとの不等式制約条件を有する最適化問題の最適解において，不等式制
約条件が等号で満たされる場合には，r が小さいと，目的関数 F ∗ (x, r) を最小化する近似最適解において制約条件の不満足量が大きくなる。したがって，その近似最適解を初期解として，rを増加させて再び近似最適解を求め, r が十分に大きくなり近似最適解における制約条件の不満
足量が十分に小さくなれば終了する。図 2.9 は，関数1
F (x) = x + 1
3
を制約条件

2≤x≤4
の下で最小化する問題の許容領域と関数 F ∗ を示している。r が小さいとき F ∗ (x) は実線のようであり，r を大きくすると点線のようになって停留点は最適解 x = 2 に近づく。
式 (2.3.3) を標準形に書き直すと，

H1 (x) ≡ −x + 2 ≤ 0
H2 (x) ≡ x − 4 ≤ 0
24

となり，

1
F ∗ (x, r) = x + 1 + r[R(H1 ) + R(H2 )]3(2.33)である。いま，x < 2 であって制約条件 H1 (x) ≤ 0 が満たされないものとすると，式 (2.33) は次のようになる。

1
F ∗ (x, r) = x + 1 + r(−x + 2)23(2.34)式 (2.34) より，F ∗ の x に関する停留条件はdF ∗1≡ 2rx − 4r + = 0dx3となる。したがって，最適解 x̃ は

x̃ = 2 −1
6r

であり，r を大きくすると誤差 1/(6r) が小さくなることが分かる。しかし ，r を極端に大きくすると，最適解以外の点での微分係数 dF ∗ /dx が大きくなる。このような 1 変数の問題では支障ないが，多変数の問題では，r 勾配を用いる最急降下法の収束性が悪くなる。また，外点法
では，必然的に最適解は制約条件を満たさないという問題点がある。
それに対し，内点法では，解は常に許容領域内であるとして，図 2.10 に示すように，許容領域の内部から境界に近づくと大きくなるようなペナルティー関数を定めるため，常に制約条件を満たす近似最適解が得られる。例えば，分数関数を用いると，ペナルティーは次のようになる。

R(Hj (x)) = −1
Hj (x)

逐次線形計画法
線形計画問題を繰返し解いて制約条件付き非線形計画問題の解を得る方法を逐次線形計画法(SLP) という。第 k ステップでの線形計画問題の解 x(k) において，F (x), Gj (x) 及び Hj (x) を次のように線形近似する。

F (x)  F (x(k) ) + ∇F  (x(k) )(x − x(k) )(k)(k)
Gj (x)  Gj (x(k) ) + ∇Gj (x )(x − x )Hj (x)  Hj (x(k) ) + ∇Hj (x(k) )(x − x(k) )したがって, 制約条件が線形近似の下で満たされるという条件を用いると，非線形計画問題 MPは次のような線形計画問題におきかえられる。

minimize

F (x) = F (x(k) ) + ∇F  (x(k) )(x − x(k) )(2.35)(k)(k)
subject to Gj (x(k) ) + ∇Gj (x )(x − x ) = 0,(i = 1, . . . N E )(2.36)Hj (x(k) ) + ∇Hj (x(k) )(x − x(k) ) ≤ 0,

(i = 1, . . . N I )(2.37)

上記の線形計画問題は , シンプレックス法など 用いて効率良く解くことができ，x(k) を逐次更新することにより非線形計画問題の最適解を得ることができる。

25

x2

C
A

B

x1

O

図 2.11: 非線形計画問題の例

x2
F
G

E

B
O

D

x1

図 2.12: 線形化された非線形計画問題

SLP において，x の変化量の大きさに制限がないと，上記の線形計画問題を解いて得られる解が x(k) からかけ離れた解となり, 線形近似による誤差が極めて大きくなって収束しなくなる場合がある。このような場合, x の変更量の大きさに対する制限値 (move limit) を与えれれば，解の発散あるいは振動を防ぐことができる。
例として，次のような非線形計画問題を考える。
NLP : minimize

F (x1 , x2 ) ≡ (x1 − 6)6 + (x2 − 3)2

subject to G1 (x1 , x2 ) ≡ x21 + x22 − 4 ≤ 0
G2 (x1 , x2 ) ≡ −x1 ≤ 0
G3 (x1 , x2 ) ≡ −x2 ≤ 0√√
NLP の許容領域と目的関数一定の円は図 2.11 に示したとおりであり，最適解は点 B(4/ 5, 2/ 5)(0)(0)
である。いま，初期解として (x1 , x2 ) = (4, 4) が与えられたものとする（ 図の点 C ）。この
26

とき，

F = 5, G1 = 28, G2 = −4, G3 = −4である。また，勾配ベクトルは次のようになる。

 
 
 

2(x1 − 6)
2x1
−1
0
∇F =
, ∇G3 =
, ∇G2 =
, ∇G1 =0
−1
2(x2 − 3)
2x2
したがって，線形化された最適化問題は次のようになる。

LP(0) : minimize

5 − 4x1 + 2x2

subject to − 36 + 8x1 + 8x2 ≤ 0− x1 ≤ 0− x2 ≤ 0
LP(0) の許容領域と最適解は，図 2.12 に示したとおりである。線形化された問題を解いて得られる解 D は，実際の最適解 B とは大きく異なっており，線形化問題を逐次解くと，解が収束しなかったり振動する場合がある。そこで，move limit を与えることにする。例えば，move limit
を ±2 とすると，変数のとり得る範囲は矩形領域 F で表わされ，最適解 E が得られる。しかし，
例えば move limit を ±1 とすると，変数のとり得る範囲は矩形領域 G のようになり，線形化された制約条件を満たす領域との共通部分がなくなって，解が得られなくなる。したがって，movelimit に対して最初は大きい値を与え，繰返し回数 k が大きくなるにしたがって，領域を狭めていく必要がある。このように，SLP には，move limit の設定に関する困難点が存在する。そこ
で , 変数の変化量 ∆x(k) = x − x(k) の大きさに対応するペナルティーを導入した下記のような
2 次計画問題を逐次解く方法が有効である。
1
F (x) = F (x(k) ) + ∇F (x(k) )∆x(k) + ∆x(k) D∆x(k)
2
(k)

(k)
(k)
subject to Gj (x ) + ∇Gj (x )∆x = 0, (i = 1, . . . N E )minimize

(k)

Hj (x

) + ∇Hj (x(k) )∆x(k) ≤ 0,I

(i = 1, . . . N )(2.38)(2.39)(2.40)

ここで , D は ∆x(k) の大きさに対するペナルティーを定める行列であり，任意の ∆x(k) に対して ∆x(k) D∆x(k) ≥ 0 となるような半正定値行列を用いることができる。最も単純な場合には，D を単位行列とすることも可能である。しかし，非線形計画問題のラグランジアンのヘッセ行
列を D とすると，2 次計画問題を解いて得られる ∆x(k) によって，非線形計画問題の最適性必要条件を満たすように解が修正されることになり，収束性が向上する。一般にヘッセ行列を求めるのは困難だから，ここでも準ニュートン法と同様に，近似ヘッセ行列が用いられる。上記の 2 次計画問題には，move limit が存在しないので，解は必ず存在する。また，2 次計画法問題
は，線形計画問題に対するシンプレックス法同様の方法を用いて容易に解を求めることができる。このように，2 次計画法問題を逐次解いて最適解を求める方法を，逐次 2 次計画法 (SQP)という。
不等式制約条件の存在する非線形計画問題の解法には，上記の他，勾配投影法，許容方向法
等が存在するが，詳しくは専門書を参照されたい [5, 6]。また，構造最適化の分野では，最適性
必要条件が単純な形式で書ける問題において，その条件を満たす解を直接求める手法 (最適性条件法) を用いることも多い。

27

参考文献
[1] 加藤直樹，大崎 純，谷 明勲，建築システム論，造形ライブラリー 3，共立出版，2002.
[2] 久保幹男, 組合せ最適化とアルゴ リズム, 共立出版, 2000.
[3] 矢部 博，八巻直一，非線形計画法，朝倉書店，1999.
[4] 福島雅夫，数理計画法入門，システム制御情報ライブラリー 15, 朝倉書店, 1996.
[5] J. S. Arora, Introduction to Optimum Design, McGraw-Hill, 1989.
[6] R. T. Haftka, Z. Gürdal and M. P. Kamat, Elements of Strustural Optimization, Kluwer
Academic Publishers, 1990.

28

第 3 章 設計感度解析
3.1

設計感度解析の概要

線形あるいは非線形方程式の解が得られたとき，方程式を定めるパラメータを変化させたときの解の変化率を計算することを，感度分析あるいは感度解析という。また，解の変化率を感度係数という。構造物の剛性分布や形状などの設計変数を変化させると，外力が作用したときの応答量や，固有振動数などの特性量は変化する。構造解析の分野では，設計変数に関する応
答量や特性量の変化率を設計感度係数といい，設計感度係数を求めることを設計感度解析という [1–3]。とくに，節点座標に関する変化率を形状感度係数といい，それらの感度係数を求める
過程を形状感度解析という。
構造設計や，構造最適化における設計感度解析の役割を，図 3.1 に示すような 7 部材平面トラスを用いて考えてみる。ここで，括弧内の数字は支点及び節点番号，括弧のない数字は部材番号である。簡単のため，静的荷重に対する応答変位を求める静的解析問題を考え，例えば図 3.1 に示すような載荷条件が指定されているものとする。節点 i の X, Y 方向の変位を ui , vi とすると，トラスの変形状態は，拘束されていない自由節点の変位ベクトル U = (u2 , v2 , u3 , v3 , u4 , v4 ) で定められる。
変位ベクトル U は，節点座標や部材断面積等の設計変数の値によって変化するから，それらの関数と考えられる。図 3.1 に示す平面トラスにおいて，部材断面積を定めて，2 つの鉛直荷重
P が作用したときの節点変位を求めたとき，例えば節点 3 の Y 方向変位 v3 の絶対値が設計基準で定められた上限値を超えていたとする。節点位置に変更の余地がなければ，いずれかの部
材の断面積を増加させる必要があるのは明らかであるが，7 つの部材のうち，どの部材の断面積をどれだけ増加させるのが最も効率的かを判断する必要がある。そのような場合に，実際にそれぞれの部材の断面積を変更して再び解析を行なうのではなく，設計感度係数によって応答量を線形予測できれば計算コストを節約することができる。

P

P
4

(2)
Y

3

1
X

2

5
(3)

(1)

(4)
7
6

図 3.1: ピン支持された 7 部材平面トラス

29

(5)

より積極的に最適設計を行なうことによって最も効率の良い断面積を求める際にも設計感度係数は必要である。また，例えば v3 が指定値に一致するように断面積を逆に決定する逆問題を解く際にも感度解析を行なう必要がある。さらに，実際に構造物を建設するとき，施工時に形状や断面性能に誤差があった場合，それらが応答量にどれだけ影響を及ぼすかを知っていると，生産過程での誤差管理の重要性を検討することもできる。このような感度解析は不整感度解析ということもある。以上のように，設計感度解析は，最適設計以外の多くの分野で有効に利用
される。

3.2

静的応答量の設計感度解析

3.2.1

直接微分法

基礎式を直接微分して感度係数を求める方法を，直接微分法という。設計感度解析法の最も単純な例として，弾性平面トラスの静的応答量の設計感度解析の手法を紹介する。第 i 部材の断面積を Ai , 部材長を Li とする。図 3.2 に示すように，全体系座標 (X, Y ), 部材座標 (x, y), 節
点番号，変位番号と部材の材軸と X 軸のなす角度 θ を定める。第 i 部材の部材座標に関する節
点変位ベクトル ui = (u1 , u2 , u3, u4 ) と節点力ベクトル f i = (f1 , f2 , f3 , f4 ) を系座標へ変換する座標変換行列 T i は⎡⎤
cos θ − sin θ 00⎢ sin θ cos θ
0
0 ⎥
⎢
⎥
Ti = ⎢
(3.1)
⎥
⎣ 0
0
cos θ − sin θ ⎦00
sin θ cos θとなる。ベクトル B を

B = (−1, 0, 1, 0)

(3.2)

で定義すると，第 i 部材のひずみ εi は ui を用いて次式で与えられる。

εi =

1 
B ui
Li

(3.3)

Ni =

Ai E 
B ui
Li

(3.4)

また，軸力 Ni は次のようになる。

4

y

3
Y

2
1

θ

X

図 3.2: 平面トラス部材の方向と節点番号30xここで，E は弾性係数である。
部材座標系に関する第 i 部材の剛性行列 ki は次式で与えられる。

ki =

Ai E
BB 
Li

(3.5)

すなわち，

f i = k i ui

(3.6)

である。式 (3.1) 及び式 (3.5) から，全体系座標に関する第 i 部材の剛性行列は

Ki =Ai E 
T BB  T i
Li i

(3.7)

のように書ける。部材剛性行列を重ね合わせることにより，系剛性行列 K(A) が得られる。以下では，A = (Ai ) などの記号を適宜用いるものとする。
部材の自重を考慮すると，外力ベクトル P (A) も設計変数ベクトル A の関数となる。以上より，変位ベクトル U (A) は，次の剛性方程式を解いて求められる。

K(A)U (A) = P (A)(3.8)

以下では簡単のため引数 A は省略する。
式 (3.8) の両辺を Ai で微分すると次式を得る。

∂U
∂P
∂K
U +K
=
∂Ai
∂Ai
∂Ai

(3.9)

ここで，簡単のため R を

R=

∂P
∂K
−
U
∂Ai ∂Ai(3.10)のように定義すると，次式を解いて U の Ai に関する設計感度係数が得られる。

K

∂U
=R
∂Ai

(3.11)

ところで，式 (3.7) の両辺を Ai で微分すると，

∂K i
E
= T
BB  T∂Ai
Li i(3.12)

が得られる。したがって，トラスでは K i を重ね合わせて得られる K の Ai に関する微分係数は単純な代数計算で求められ，さらに，自重は断面積に比例するので，P の Ai に関する微分係数も容易に計算できる。
いま，式 (3.8) を解いて U が得られているとする。すなわち，構造解析が終了した段階を想定する。このとき，R は簡単な代入計算で得られる。また，式 (3.8) を用いて U を求める段階
で，K はすでに三角分解（ LDL 分解）されているため，式 (3.11) の計算は単なる代入操作であり，実際に Ai を変更して式 (3.7) を再構成し，U を再度計算する過程と比べて計算量は極め
て少ない。

31

U (A) の感度係数から uj の感度係数が得られると，εj 及び Nj の感度係数は，式 (3.3) 及び式 (3.4) を Ai で微分した次の各式を用いて計算できる。
∂εj1  ∂uj
=
B
∂Ai
Lj
∂Ai

(3.13)⎧Aj E  ∂uj⎪⎪
B
for i = j
⎨
∂Nj
Lj
∂Ai
=
⎪
∂u
AE
E
∂Ai
⎪
⎩ B  ui + i B  i for i = j
Li
Li
∂Ai

(3.14)

ここで，式 (3.14) において i = j のとき，Ai が陽に現れる項の微分（ 第 1 項）と，ui を介して依存する項の微分（ 第 2 項）が存在することに注意する。
以上のように，基礎式を直接微分して応答量の感度係数を求める方法を直接微分法という。
ところで，式 (3.14) などの代入計算の計算量が無視できるものとすると，直接微分法の計算量
は式 (3.11) を解くための計算量で定まる。前述のように，式 (3.11) の解は単なる代入計算で得られるが，その計算量は設計変数の数に比例するため，感度係数を求めるべき応答量の数に比べて設計変数の数が多いときには，後述の随伴変数法の方が有効である。
簡単な例として，図 3.3 に示すような 2 部材トラスを考える。荷重が作用している節点 3 のX, Y 方向変位を U1 , U2 ，部材 1,2 の断面積を A1 , A2 とすると，式 (3.8) の剛性方程式は   √E
A1 + 2 2A2 A1
U1
0√=(3.15)
P
A1
A1
U2
2 2L
のようになり，√
PL
P L(A1 + 2 2A2 ), U2 =
U1 = −A2 E
A1 A2 E

(2)
Y

X
1

L

π/4
(1)

(3)

2

P
L
図 3.3: 2 部材トラス

32(3.16)

を得る。
直接微分法で，変位 U1 , U2 の A2 に関する感度係数を求めてみる。P が A2 に依存しないものとすると，式 (3.9) は次のようになる。
⎞
⎛
∂U1
 
 
√
√
E
E
U1
2 2 0
A1 + 2 2A2 A1 ⎜ ∂A2 ⎟0√+ √(3.17)⎝ ∂U ⎠ =
2
0 0
U2
A1
A1
0
2 2L
2 2L
∂A2
式 (3.16) を用いて式 (3.17) を解くと，次式を得る。

∂U1
∂U2
PL
=−
=−
∂A2
∂A2
(A2 )2 E(3.18)

この結果は，式 (3.16) の U1 , U2 を直接 A1 で微分した結果と一致する。

3.2.2

随伴変数法

随伴変数といわれる補助変数を用いて，変位の感度係数を求めずに，軸力などの応答量の感度係数を直接求める方法を随伴変数法という。
例えば第 j 部材の軸力 Nj の Ai に関する感度係数を求めるとき，式 (3.14) に示したように，感度係数は Ai に直接依存する項と uj を介して Ai に依存する項に分けられる。したがって，部
材断面積ベクトル A を設計変数としたとき，A のみの関数と考えた場合を上添え字 ∗ で表わし，Nj∗ (A) = Nj (A, U (A))

(3.19)のような表記を用いることにする。
一般に，Nj のような応答量を F ∗ (A) = F (A, U (A)) のように書くと，


∂F
∂U
∂F ∗
∂F
=
+
∂Ai
∂Ai
∂Ai
∂U

(3.20)である。ここで，

∂F
=
∂U



∂F ∂F
∂F
,
,··· ,∂U1 ∂U2∂Un(3.21)

である。
随伴変数法では，まず，随伴変数ベクトル Ū を次式で定義する。

K Ū =∂F∂U(3.22)

式 (3.11) の両辺に左から Ū を乗じると次式を得る。


Ū K


∂U

= Ū R∂Ai

∂U
さらに，式 (3.22) の両辺に左からを乗じると，
∂Ai




∂U
∂F
∂U
K Ū =
∂Ai
∂Ai
∂U
33

(3.23)(3.24)

が成立するため，式 (3.23), (3.24) 及び K の対称性より


∂U
∂F

= Ū R∂Ai∂U(3.25)を得る。
式 (3.21), (3.25) より，

∂F ∗
∂F

=
+ Ū R∂Ai∂Ai(3.26)

が導かれ，式 (3.22) を解いて Ū が得られていると，式 (3.26) を用いて，単なる代入計算により応答量 F の感度係数が得られる。ここで，∂F/∂Ai は，Ai が陽に現われる項の偏微分であり，通常は簡単な代数演算で求められる。応答量が変位，応力あるいはひずみの場合には，それらは変位ベクトル U で表わされるから，この項は 0 である。
最も単純な例として，F = Uk の場合，すなわち応答量が第 k 変位成分の場合を考える。この場合には，∂F/∂U は第 k 成分のみ 1 で他は 0 であるベクトルだから，式 (3.22) より，Ū は第 kk変位成分に単位仮想荷重が作用したときの変位であることがわかる。この変位ベクトルを Ū
とし，F = Uk の定義に A が直接現れないことを用いると，式 (3.10),(3.26) 及び F ∗ = Uk より次式を得る。


∂P
∂Uk
∂K
k
= Ū
−
U
(3.27)∂Ai∂Ai ∂Ai
したがって，単位仮想荷重に対する変位が得られていると，変位成分の感度係数は，式 (3.27)
右辺の代数演算を実行して求められる。
平面トラスを考え，荷重ベクトル P が Ai に依存しないとき，式 (3.5) を用いると，式 (3.27) は

∂Uk
k ∂K
= −Ū
U
∂Ai
∂Ai
∂ki
ui
= −ūki∂AiE= − ūk
BB  ui
Li i(3.28)(k)のように書ける。ここで，ūki は，Ū に対応する第 i 部材の節点変位ベクトルである。
kさらに，変位ベクトル Ū に対応する第 i 部材のひずみを ε̄ki , 軸力を N̄ik とすると，式 (3.28)は次のように書きかえられる。
m

∂Uk
=−
ELi ε̄ki εi
∂Ai
i=1
m


Li
N̄ik Ni=−2(Ai ) Ei=1

(3.29)

ここで，m は部材数である。以上より，節点変位の設計感度係数は，その変位成分に対応する
単位仮想荷重が作用したときの軸力 N̄ik と，実際に作用している軸力 Ni から容易に求めることができる。
随伴変数法での計算量のほとんどは，式 (3.22) での随伴変数ベクトルの計算が占めるため，計算量は感度係数を求めるべき応答量の数にほぼ比例し，設計変数の数にはほとんど 関係しな34

い。したがって，この手法は，設計変数の数が多く，感度を求めるべき応答量の数が少ないときに有効である。
図 3.3 に示した 2 部材トラスの変位 U2 の A2 に関する感度係数を，随伴変数法を用いて求めてみる。式 (3.22) は次にようになる。
 
√
E
0
A1 + 2 2A2 A1
2√(3.30)
Ū =
1
A1
A1
2 2L
これを解いて，

⎛

⎞
L
2
⎜
⎟
A2√
E
Ū = ⎝
L(A1 + 2 2A2 ) ⎠A1 A2 E−

(3.31)

を得る。さらに，式 (3.10),(3.16) より，

⎞
⎞ ⎛
P
EU1
R = − ⎝ L ⎠ = ⎝ A2 ⎠00⎛(3.32)

だから，式 (3.16),(3.26),(3.32) より，

∂U2
PL
=
∂A2
(A2 )2 E(3.33)を得る。この結果は，式 (3.18) と一致している。

3.3

固有振動数の設計感度解析

固有振動数は，構造物の動的剛性の指標として重要であり，建築構造物では，地震動の卓越振動数との関係からも適切に設定しなければならない力学的特性量である。したがって，固有振動数の設計感度係数は，構造設計の段階で有効に用いられる。
質量行列は，構造物の自重，積載荷重等から決定され，設計変数である部材断面積などの関数である。全体系座標に関する質量行列を M (A) とすると，変位の自由度を n とし，自由振動の固有値問題は次のように定義できる [4]。

KΦr = Ωr M Φr , (r = 1, 2, . . . , n)(3.34)

ここで，Ωr は r 次固有値であり，固有円振動数の 2 乗である。また，Φr は r 次固有モード であり，これらは A の関数である。以下では，簡単のため引数 A は省略する。
Φr は次式で正規化される。

Φr M Φr = 1, (r = 1, 2, . . . , n)(3.35)

式 (3.34) の両辺を設計変数 Ai で微分すると次式を得る。

∂Φr
∂Ωr
∂Φr
∂K
∂M
Φr + K=M Φr + Ωr
Φr + Ωr M
∂Ai
∂Ai
∂Ai
∂Ai
∂Ai
35

(3.36)

式 (3.36) の両辺に左から Φr を乗じ ，式 (3.34), (3.35) 及び M , K の対称性を用いると，


∂K
∂Ωr
∂M

= Φr
− Ωr
(3.37)
Φr
∂Ai
∂Ai
∂Ai
を得る。固有モードが得られていると，式 (3.37) の右辺は単純な代数演算であり，固有値の感度係数を求めるために固有モード の感度係数は必要ないことがわかる。
例えば，図 3.4 のような 2 質点系モデルを考える。質点 i の質量を mi , 第 i 層の剛性を ki とする。Φ1 の第 i 成分を Φ1i とすると，1 次モード に対する式 (3.34) は次のようになる。

k1 + k2 −k2
Φ11
m1 0
Φ11
= Ω1
(3.38)
0 m2
−k2
k2
Φ12
Φ12
いま，簡単な例として m1 = m2 = m0 , k1 = 3k0, k2 = 2k0 の場合を考える。このとき，正規化
条件式 (3.35) を用いると，√√k0
Φ1 = (1/ 5m0 , 2/ 5m0 ) , Ω1 =m0

(3.39)である。したがって，式 (3.37) より，例えば Ω1 の k0 に関する感度係数は，

∂Ω1
1
=
∂k1
m0

(3.40)となる。
固有モード の感度係数が必要な場合には，正規化条件式 (3.35) の両辺を Ai で微分した次式
を用いる。

Φ
r

∂M
∂Φr
Φr + 2Φ
=0
r M
∂Ai
∂Ai

式 (3.36), (3.41) をまとめると，

 ⎞
⎞ ⎛
∂M
∂K
∂Φr
−
Φr
Ωr
⎜ ∂Ai ⎟ ⎜
⎟
∂A
∂A
i
i
⎝ ∂Ω ⎠ = ⎝⎠1  ∂M
r
− Φr
Φr
∂Ai
2
∂Ai

(3.41)⎛K − Ωr M M Φr
Φ
0
r M

m2

2

k2
m1

1

k1

図 3.4: 2 質点系モデル

36(3.42)

となる。以上より，固有モード の感度係数が必要なときには，式 (3.42) を解いて，固有値と固有モード の感度係数を同時に求めることができる。
しかし ，上記の方法だと，連立 1 次方程式 (3.42) の行列がモード の次数ごとに異なるため，感度係数が必要なモード の数だけ LDL 分解しなければならず，多くの計算量を必要とする。そこで，r 次固有モード の感度係数を次のように固有モード で展開する方法も提案されている。
n
∂Φr 
=
ck Φk
∂Ai
k=1

(3.43)

式 (3.36) の両辺に左から Φj を乗じて式 (3.35), (3.43) 及び直交条件Φ
r M Φs = 0, (r = s)(3.44)

を用いると，次式を得る。

cj (Ωj − Ωr ) = −Φj∂K ∂Ωr∂M−
M − Ωr
∂Ai
∂Ai
∂Ai


Φr , (j, r = 1, 2, . . . , n)(3.45)

上式から，Φr の感度係数を固有モード で展開したときの係数 cj を求めることができる。適当なモード 数で打ち切ると計算量は少ないが，低次のモード でも，その感度係数には高次のモード 成分が含まれる場合があることに注意しなければならない。

3.4

線形座屈荷重係数の感度解析

図 3.5 に示すような柱状トラスの頂点に鉛直荷重を作用させ，荷重を増加させると，突然水平方向の変形が発生する。このような現象を座屈という。一般に，基準となる荷重パターン P 0
を固定させ，その係数（ 荷重係数 Λ ）を増加させることを比例載荷といい，座屈現象が生じる

ΛP

ΛP

図 3.5: 柱状トラス

37

ときの Λ の値 Λc を座屈荷重係数という。図 3.5 のような柱状構造物では，座屈に至るまでの鉛
直方向の変形が小さいので，線形近似によって座屈荷重係数を求めることができる。このような解析法を線形座屈解析という。座屈や不安定現象の詳細については，文献 [5] などを参照する
こと。
基準荷重に対する変位 U 0 は次式で与えられる。

KU 0 = P 0(3.46)

トラスの場合，U 0 に対応する第 i 部材の部材座標に関する材端変位ベクトルを u0i とすると，
式 (3.4) より軸力 N0i は

N0i =

EAi
Bu0i
Li

(3.47)

で与えられる。
軸力が存在することによる剛性低下は，幾何剛性行列によって表現できる。平面トラスの場
合，基準荷重が作用したときの第 i 部材の部材座標に関する幾何剛性行列 kGi は次式で定義できる [6, 7]。
⎤⎡0 0 0 0⎥N0i ⎢⎢ 0 1 0 −1 ⎥(3.48)kGi =⎥⎢Li ⎣ 0 0 0 0 ⎦0 −1 0 1

kGi を系座標に変換し，全部材にわたって重ね合わせた行列を K G とすると，構造物の剛性
は K + ΛK G のように書くことができ，座屈時には，この剛性行列が特異となることから次式が成立する。
[K + Λcr K G (N 0 )]Ψr = 0, (r = 1, 2, . . . , n)(3.49)

ここで，Ψr は r 次の座屈モード，Λcr は r 次の座屈荷重係数であり，Ψr は次式で正規化される。

Ψr KΨr = 1

(3.50)

このように，線形固有値問題を解いて座屈荷重係数を求めることを，線形座屈解析という。ここで，K は正定値行列であるが，K G は一般に定値の行列ではなく，Λcr は正または負の値をとり得る。基準荷重の方向を固定すると工学的には Λcr の中の正の最小値が重要であり，それを簡単のため Λc と書き，座屈荷重係数と呼ぶ。また，Λc に対応する座屈モード を簡単に Ψ とする。
式 (3.49) の両辺を，部材断面積 Ai などを代表する設計変数 Ai で微分すると次式を得る。

m ∂K G ∂N0j
∂K
∂Ψ
∂Ψ
∂Λc
c
Ψ+K
+
K GΨ + Λ=0Ψ + Λc K G∂Ai∂Ai ∂Ai
∂N
∂A
∂A
0j
i
i
j=1

(3.51)

ここで，K G が N 0 を介して A に依存することに注意する。上式の両辺に左から Ψ を乗じ ，
式 (3.49)，(3.50) 及び K と K G の対称性を用いると，次式を得る。


m 

∂Λc
∂K G ∂N0jc  ∂Kc 2 =ΛΨΨ + (Λ ) Ψ
Ψ
∂Ai
∂Ai
∂N0j ∂Ai
j=1
38(3.52)

以上より，座屈荷重係数の感度係数を求めるためには，基準荷重に対する軸力の感度係数が必要であり，これらは前節の方法で計算できる。静定トラスの場合で設計変数が部材断面積の時には，軸力は断面積に依存しないから

∂N 0
=0
∂Ai

(3.53)である。

3.5 ト ラスの形状感度解析
これまでは，節点位置を固定して，部材断面積を変化させたときの設計感度解析の手法を紹介した。ここでは，部材断面積は固定して，節点位置を変化させる形状感度解析 [3] について述べる。
簡単のため図 3.2 に示したような平面トラス部材を考えると，系座標に関する部材剛性行列
K i は式 (3.7) で与えられる。したがって，K i の形状感度係数を求めるためには，Li , sin θ, cos θの感度係数が必要となる。
全体系座標での節点 1,2 の座標を (X1 , Y1 ), (X2 , Y2) とすると，

Li =



cos θ =

(X2 − X1 )2 + (Y2 − Y1 )2(3.54)

Y2 − Y1
X2 − X1, sin θ =Li
Li

(3.55)である。ここで，cos θ, sin θ は，部材軸のそれぞれ X, Y 軸に関する方向余弦であり，ベクトル(cos θ, sin θ) は，節点 1 から 2 へ向かう単位ベクトルである。
式 (3.54) を(Li )2 = (X1 − X2 )2 + (Y1 − Y2 )2(3.56)のように変形し，両辺を X1 , X2 で微分して変形すると，∂Li
1= − (X2 − X1 )
∂X1
Li
1
∂Li
= (X2 − X1 )∂X2
Li

(3.57)

を得る。したがって，式 (3.55) を用いると，∂Li∂Li= − cos θ,= cos θ∂X1
∂X2

(3.58)

Li cos θ = X2 − X1 , Li sin θ = Y2 − Y1

(3.59)

である。
次に，式 (3.55) を39

のように変形し，同様の操作を行なうと，次式が得られる。

∂ cos θ1∂Li=
−1 − cos θ
∂X1
Li
∂X1


∂ cos θ1∂Li=
1 − cos θ
∂X2
Li
∂X2

(3.60)

Y1 , Y2 に関する形状感度係数も同様にして導くことができる。以上より，平面トラスの場合には，部材長と部材の方向ベクトルの形状感度係数は，容易に求められる。式 (3.7) を X1 , X2 , Y1 , Y2で微分した式にそれらを代入すれば，K i の感度係数を求めることができる。
部材剛性行列の感度係数が得られると，直接微分法を用いるならば，式 (3.11) から変位の感度係数が得られる。平面トラスでは，このように比較的単純な形式で形状感度係数が求められるが，トラス以外の骨組構造物や，有限要素法で離散化された連続体構造物については，形状感度解析の式は極めて煩雑となる。その場合には，剛性行列の感度係数を求める段階では差分法を用いる半解析的手法が有効である。いま，部材 i の節点 1 の X 座標に関する感度係数を求めるものとし ，部材剛性行列を K i (X1 ) のように表わす。このとき，X1 を実際に微小量 ∆X1だけ増加させて，式 (3.1) 及び式 (3.7) を用いて K i (X1 + ∆X1 ) を計算することができ，部材剛性行列の感度係数は次式で近似できる。
1∂K i
[K i (X1 + ∆X1 ) − K i (X1 )]∂X1∆X1(3.61)

部材剛性行列の感度係数が得られると，式 (3.10) から R を計算でき，変位の感度係数は，通常の方法を用いて計算できる。

参考文献[1] 加藤直樹，大崎 純，谷 明勲，建築システム論，造形ライブラリー 3，共立出版，2002.
[2] , 山川 宏, 最適化デザイン , 培風館, 1993.
[3] E. J. Haug, K. K. Choi and V. Komkov, Design Sensitivity Analysis of Structural Systems,
Academic Press, 1986.
[4] 柴田明徳, 最新耐震構造解析, 森北出版, 1981.
[5] 池田清宏, 室田一雄, 構造系の座屈と分岐, コロナ社, 2001.
[6] 佐藤稔夫，中村恒善，骨組構造の解析，新建築学体系 36, 彰国社, 1982.
[7] 鷲津久一朗 他，有限要素法ハンドブック，II 応用編，培風館，1983.

40

第 4 章 最適設計法
4.1

最適設計法の概要

4.1.1

最適設計問題の定式化

1 章で述べたように，数理工学の分野での最適化問題を構造工学の設計問題に適用した問題
を，最適設計問題といい，最適設計解を求めることを構造最適化という [1–5]。最適設計問題は，
目的関数，制約条件及び変数の種類によって分類され，骨組やトラスの断面積などの断面性能に関する量を変数として，力学的性能に関する制約の下で重量で代表されるコストを最小化する問題（あるいは目的関数と制約条件を入れ替えた問題）を狭義の最適設計問題あるいは断面最適化問題という。骨組構造の最適化には，断面最適化以外に部材の配置を最適化するトポロ
ジー最適化問題や，節点位置を最適化する形状最適化問題があり，前者については次章で紹介する。
また，建築構造設計では，部材断面はあらかじめ用意されたリスト（ カタログ ）から選択されることが多い。したがって，変数は離散変数になり，最適設計問題は整数計画問題あるいは組合せ最適化問題として定式化される。しかし，整数計画問題の最適解を求めるためには多くの計算量を必要とするため，断面性能を連続変数として非線形計画問題を解いて，整数計画問
題の近似最適解とすることが多い。以上より，本章では，非線形計画問題として定式化される
最適設計問題を，感度係数を用いて解くための手法を主に解説する。
骨組やトラスなどの構造物を考え，部材断面積などの設計変数を代表するベクトルを A = (Ai )とする。断面性能には，断面積以外にも断面 2 次モーメント，断面係数などが存在し，それらは一般に断面積と独立である。しかし，最適設計問題では，設計変数を各部材 1 つに限定する
ため，最小 2 乗法など の近似的手法により，断面 2 次モーメントと断面係数を断面積の関数で表わす。したがって，静的載荷時の変位など の状態変数のベクトルを U = (Ui ) とすると，Uは A のみの関数である。
建築構造物の構造設計では，変位や応力などの応答量の許容範囲が与えられ，これらの制限は一般的に不等式制約条件として定式化される。また，3.2.1 節で述べたように，軸力などの応答量は，A に直接依存する項と，U を介して A に依存する項に分けられる。したがって，最適設計問題の制約条件は次のような形式で与えられる。
Hj (U (A), A) ≤ 0, (j = 1, 2, · · · , N I )(4.1)

ここで，N I は制約条件数である。
建築構造物の部材の断面積には，製作上の理由により上限値が存在し，それを AU
i とする。さらに，次章で紹介するトポロジー最適化を考えないと，最適設計問題では部材の除去は行なわれないから，Ai には正の下限値が与えられ，それを ALi とする。最小化すべき目的関数は，全部材重量などを想定し，A の関数として C(A) のように与えられるものとすると，最適設計問

41

題は一般に次のように定式化される。

minimize

C(A)

(4.2)

subject to Hj (U (A), A) ≤ 0,
ALi ≤ Ai ≤ AUi ,(j = 1, 2, · · · , N I )(i = 1, 2, · · · , m)

(4.3)
(4.4)

ここで，m は部材数である。制約条件式 (4.4) は側面制約条件といわれ，最適化アルゴ リズム
において変数の変更量の制約として容易に導入できるため，通常は不等式制約条件とは別に取り扱われる。

4.1.2

最適性条件

後述のように，最適設計問題を解くための手法には，数理計画法による方法と，最適性条件を満たす解を直接求める方法がある。また，数理計画法を用いる場合にも，最適性条件は最適解の特性を検討するため，あるいはアルゴ リズムの収束判定のために重要である。そこで，まず最適性条件の一般的表現を導いてみる。
3.1 節と同様にして，A のみの関数 Hj∗ (A) を

Hj∗ (A) = Hj (U (A), A)(4.5)

で定義する。また，2.3.3 節と同様にして，ラグランジアン Π を次式で定義する。
NI

Π(A, µ) = C(A) +µj Hj (A)

(4.6)

j=1

ここで，µ = (µj ) はラグランジュ乗数ベクトルである。また，側面制約条件式 (4.4) は，不等式制約条件とは別に取り扱うことにする。
詳細は省略するが，2.3.3 節で示した最適性必要条件 (Karush-Kuhn-Tucker 条件) から，次の各式が導かれる。
⎧∂Π⎪⎪Ai = ALi
のとき
≥0
⎪
⎪
∂Ai
⎪
⎨
∂Π
(4.7)
=0
ALi ≤ Ai ≤ AU
i のとき
⎪
∂Ai
⎪
⎪
⎪
∂Π
⎪
⎩ Ai = AU
のとき
≤0
i
∂Ai



Hj = 0 のとき µj ≥ 0
Hj < 0 のとき µj = 0(4.8)

式 (4.7) より，例えば不等式制約が存在せず側面制約のみが存在する最適化問題の最適解では，側面制約がアクティブでないときには目的関数が停留し，変数が下限値に一致するときには目的関数の勾配は 0 または正であり，変数が上限値に一致するときには目的関数の勾配は 0または負である。式 (4.7) は，不等式制約条件が存在するときには，目的関数をラグランジアンに読み替えれば良いことを意味している。
また，最適解において不等式制約条件がアクティブでない（ 不等号で満たされる）ならば ，その制約は存在しないのと同様なので，µj = 0 である。式 (4.8) の条件は，相補性条件といわ
れる。

42

(2)

X
1

Y

L

π/4
2

(1)

(3)
P

L

図 4.1: 2 部材トラス
A2

O

T

R
S

A1

図 4.2: 2 部材トラスの許容領域と最適設計解

4.2

最適設計解の例

3.1 節と同様に，図 4.1 に示すような 2 部材トラスを考える。第 i 部材の断面積，軸力，応力をそれぞれ Ai , Ni , σi とすると，√
N1 = 2 P , N2 = −P
(4.9)
なので，

√
σ1 =

2P
P
, σ2 = −A1
A2(4.10)である。また，3.2.1 節で示したとおり，弾性係数を E とすると，変位は次式で与えられる。
√
PL
P L(A1 + 2 2A2 ), U2 =(4.11)
U1 = −A2 E
A1 A2 E
応力と変位の絶対値の上限値をそれぞれ σ̄, Ū とする。P > 0 とし，簡単のため変位について43

は U2 に関する制約のみを考えると，制約条件式は次のように書ける。
√
2P|σ1 | =≤ σ̄A1P
|σ2 | =≤ σ̄A2√
P L(A1 + 2 2A2 )≤ Ū
|U2 | =A1 A2 E(4.12)(4.13)(4.14)

部材体積最小化問題（ 最小重量設計問題）を考え，目的関数を次式で与える。

C(A) =√

2A1 + A2

(4.15)

ここで，簡単のため L = 1 とした。図 4.2 は，2 部材トラスの設計変数空間での許容領域と最適設計解を表わしている。図 4.2 において A1 軸あるいは A2 軸に平行な直線は，それぞれ σ1 , σ2に関する制約が等号で満たされる直線である。また，U2 = Ū が満たされる曲線は曲線 R のよ
うになり，許容領域は斜線の領域となる。ここで，Ū が十分に大きいときには U2 = Ū を満たす曲線は点線 T のようになるが，ここではそのような状況は考えないものとする。
式 (4.15) を変形すると，

A2 = C(A) −√2A1(4.16)のようになり，直線の A2 切片が C(A) に一致する。したがって，許容領域を通る直線 (4.16) の中で，A2 切片を最小にするような直線を求めると，その直線と許容領域との共有点が最適設計解である。図 4.2 の例では，変位制約と部材 1 の応力制約が等号で満たされる点 O が最適設計解である。
以上のような 2 変数の最適設計問題では，制約条件が式 (4.12)-(4.14) に示すように設計変数の陽な関数として表わされるが，より複雑な構造物ではこのような陽な表現を導くことができないので，設計感度解析法及び非線形計画法を用いて最適設計解を得ることになる。

4.3

崩壊荷重係数制約

最適設計問題の最も簡単な例として，塑性崩壊荷重係数制約の下での最小重量設計問題を考える。この問題は線形計画問題であり，簡単に最適解が得られるため，1960 年代に多くの研究が発表された。また，この問題は幾何学的非線形性を考慮しない場合の塑性設計問題に直接利用できるため，実用的意義も大きい。
完全弾塑性の材料からなるトラスを考える。引張り降伏応力を σp とし，簡単のため圧縮降伏
応力は −σp とする。引張り降伏軸力を Npi とすると，

Npi = Ai σp(4.17)である。
比例載荷を考え，基準荷重を P 0 , 荷重係数を Λ とする。軸力ベクトルを N とすると，釣合い式は次のように書ける。

DN = ΛP 0
44(4.18)

ここで，D は釣合い行列であり，節点位置と部材配置によって決定される。また，降伏条件（塑性化が生じない条件）は，次のようになる。

−N p ≤ N ≤ N p(4.19)

最適設計問題を考える前に，崩壊荷重係数を求める問題を，最適化問題として定式化してみる。下界定理によると，釣合い条件と降伏条件を満たす最大の荷重係数が崩壊荷重係数である。
したがって，トラスの崩壊荷重係数を求める問題は，次のように定式化できる。

maximize Λ(4.20)

subject to − N p ≤ N ≤ N p(4.21)

DN = ΛP 0(4.22)

上記の問題の変数は Λ と N であり，目的関数と制約関数はそれらの線形関数である。したがって，線形計画問題を解いて，崩壊荷重係数を求めることができる。
次に，最適設計問題について考える。降伏応力が一定のとき，部材の降伏軸力 Npi は Ai に比例するから，Npi を設計変数とすることができ，N 
p L を最小化することは全部材体積を最小化Uすることを意味する。部材断面積に上下限値 Ai , ALi が与えられるならば，降伏軸力の上下限
U
L
値 Npi
, Npi
は
U
L
L
Npi
= AU
i σp , Npi = Ai σp(4.23)

で与えられる。
崩壊荷重係数の指定値を Λc とすると，崩壊荷重係数制約の下で部材総重量を最小化する最適設計問題（ 最小重量設計問題）は次のように定式化できる。

N
pL(4.24)

subject to − N p ≤ N ≤ N p(4.25)

minimize

DN = Λc P 0(4.26)

N Lp ≤ N p ≤ N U
p(4.27)

ここで，変数は N p のみであり，この問題も線形計画問題なので，2.1 節で紹介したシンプレックス法などを用いて容易に最適解を得ることができる。
上記の最適設計問題ではトラスを想定したが，骨組の場合にも，軸力と曲げモーメントの相関を考えない塑性ヒンジを用いれば ，塑性軸力を全塑性モーメントに読み替えることにより，
線形計画問題を解いて崩壊荷重係数を求めることができる。

4.4

応力制約

4.4.1

最適設計問題と最適設計例

建築構造物の構造設計の基礎をなしている許容応力度設計法の観点からは，静的載荷時の応力が許容範囲内にあるような設計解を求めることは重要である。通常は変位の制約条件も満たされなければならないが，ここでは簡単のため応力制約だけを考えてみる。また，以下では表

45

9

A

2

3

16

18

10

11

15

4
20
12

17

19
B

5

6

2.0 m

2.0 m

13

2.0 m

1
14

21

7

8

2.0 m

2.0 m

図 4.3: 21 部材トラス

図 4.4: 節点 B に水平方向荷重を作用させたときの最適解

現を簡単にするためトラスを対象とするが，骨組や有限要素法で離散化された他の形式の構造物にも同様の手法を適用できる。
構造物を設計する際には，自重，積載荷重などの長期荷重や，地震荷重，風荷重に代表される短期荷重などの数種類の設計荷重を考える必要がある。また，長期荷重と短期荷重では応力の上限値は異なっている。したがって，最適設計問題を定式化する際には，複数の載荷条件と，許容応力を想定しなければならない。
N P 個の載荷条件を考え，第 k 荷重に関する量を上添え字 k で表わす。σik の上・下限値を
σ kU , σ kL とすると，応力制約条件の下で全部材体積 V を最小化する最適設計問題は次のようになる。
mminimizeV =subject toi=1kLσ ≤ σik ≤ σ kU

Ai Li

(4.28)(i = 1, 2, · · · , m; k = 1, 2, · · · , N P )(4.29)

ALi ≤ Ai ≤ AUi (i = 1, 2, · · · , m)

(4.30)

ここで，応力の上・下限値 σ kU , σ kL は部材には依存しないものとした。
図 4.3 に示すような 21 部材トラスを対象とし，応力制約条件の下で最適設計解を求めた。ここで，互いに交差する斜材は接続されていない。また，部材の座屈は考えず，

σ kL = σ kU , (i = 1, 2, · · · , m; k = 1, 2, · · · , N P )(4.31)とする。
2
ALi は全部材に対して微小な値 1.0 mm2 とし ，AUi は与えない。また，E = 200 kN/mm ，
σ kU = 50 N/mm2 である。

46

図 4.5: 節点 A に鉛直方向荷重を作用させたときの最適解

図 4.6: 複数載荷条件を考慮したときの最適解

設計感度解析のプログラムを作成し，最適化パッケージ DOT Ver. 5.0 [6] を用いて最適設計解を求めた。ここで，最適化アルゴ リズムには，改定許容方向法を用いた。節点 B に鉛直方向
荷重 P = 100 kN が作用したときの，単一載荷条件での最適部材断面積を図 4.4 に示す。ここで，
図 4.4 は，部材幅が部材断面積に比例するように描かれており，目的関数値は V = 2.4383 × 107
mm3 である。ここで，部材 2,3,11,14,17,18,21 以外では Ai = ALi が満たされている。したがって，それらの部材を除去し，部材が接続していない節点も除去するならば，内部節点数は 4，変位の自由度は 8 に対して部材数は 7 となり，不安定である。また，Ai > ALi となっている部材
では，応力は上限値あるいは下限値に一致している。
次に，節点 A に水平方向荷重が作用したときの最適部材断面積を図 4.5 に示す。ここで，目的関数値は 1.4021 × 107 mm3 である。Ai > ALi となっている部材は 2,3,5,8,10,12,14,16,19,21 であり，その他の部材を除去すると，内部節点数は 5，変位の自由度は 10，部材数は 10 なので，最適解は静定トラスである。
さらに，上記 2 種類の載荷条件に対する応力制約を同時に考慮して最適設計解を求めた。また，簡単のため応力の上・下限値は単一載荷条件の場合と同じとする。最適部材断面積を図 4.6に示す。ここで，最適解での目的関数値は 2.8647 × 107 mm3 であり，単一載荷の場合より大きい値となっている。Ai > ALi となっている部材は 1,4,9,13,15,20 であり，それらと部材の接続しない節点を除去すると，内部節点数は 6, 変位の自由度は 12, 部材数は 15 であり，最適解は不静定トラスである。
以上のように，1 つの載荷条件しか考慮しない場合には，最適解は不安定あるいは静定となるが，複数の載荷条件を考慮することによって，不静定な最適解が得られる場合があることが
分かる。

4.4.2

全応力設計法

実務設計においては必ずしも目的関数を最小化するような最適設計解を求める必要はなく，単に全ての制約条件を満たす満足解あるいは許容設計解が得られれば良い場合もある。上記の最適設計の例からも分かるように，変位に関する制約条件を考慮しないときには，ALi < Ai < AUi

47

となっている部材で，いずれかの載荷条件に対する応力が上限値あるいは下限値（ 圧縮応力の下限値）に一致していれば，その部材の断面積を少しでも減少させれば応力制約条件が満たされなくなるものと予想されるため，最適に近い解が得られていると考えてよい。このような設計解を全応力設計解という。
簡単のため，単一載荷条件を考え，荷重番号を表わす添え字 k は省略する。Ai , σi と Ni の関
係は次のように書ける。

σi =

Ni
, (i = 1, 2, . . . , m)Ai

(4.32)

いま，1 つの部材の断面積を変更したとき，他の部材の軸力の変化が微小であるとすると，σi
は Ai にほぼ反比例するので，全応力設計解は，次のような繰返し計算で求めることができる。
(k+1)

Ai

(k) |σi |
σiU

= Ai

(4.33)(k)

ここで，Ai は第 k ステップでの Ai の値であり，Ai < ALi あるいは Ai > AUi となった場合にL
U
は Ai をそれぞれ Ai , Ai でおきかえる。例えば静定トラスでは，軸力は釣合い条件のみで定まり断面積に依存しないから，応力は断面積に反比例する。したがって，上記の式 (4.33) の設計
変更を一度だけ実行すれば，応力の絶対値を σ U に一致させることができ，全応力設計解が得られる。せん断型構造物に対しても，軸力と断面積を層せん断力と層剛性にそれぞれ読み替え
れば，同様の手法を適用できる。
不静定構造物では，上記のアルゴ リズムを単に適用するだけでは収束性が悪い場合がある。
そこで，収束性を調節するためのパラメータ r を導入して次のようなアルゴ リズムを用いる。

r
|σi |
(k+1)
(k)
Ai
= Ai
(4.34)σiU
ここで，通常は 1 ≤ r ≤ 2 である。

4.5

最適性規準法

最適性条件を直接用いて最適設計解を求める方法を最適性基準法あるいは最適性条件法という。この方法は，変位制約の最適化問題のように，最適性条件が単純な形式で表現できる場合に有効であり，制約条件を満たしながら目的関数が減少する方向へ解を逐次更新する数理計画法に比べて計算効率が良い場合がある。また，最適化アルゴ リズムや設計感度解析が不要であるから，プログラムも非常に単純である。
応力制約の場合には，前節の全応力設計法で，最適に近い解が得られるため，以下では変位制約のみを考えるものとする。また，簡単のため，第 j 変位成分のみについて

Uj ≤ Ūj(4.35)の制約が与えられているものとする。全部材体積などを目的関数として最小化すると，最適解において，制約条件式 (4.35) は等号で満たされるので，以下ではUj = Ūj48(4.36)

が満たされているものとする。このとき，全部材体積を目的関数とすると，最適性条件 (4.7) より，ALi < Ai < AU
i となっている部材 i に対して，次式が満たされる。

Li + µj

∂Uj
=0
∂Ai

(4.37)

ここで，µj (≥ 0) はラグランジュ乗数である。
ところで，ALi < Ai < AU
i となっている部材の数を s とすると，未知数は s 個の断面積と µj
であり，合計 s + 1 個である。また，式 (4.37) は s 個存在するので，制約条件 (4.36) と合わせて
s + 1 個の式が存在する。以上より，制約条件と最適性条件を用いて断面積とラグランジュ乗数を決定することができる。
トラスを想定し ，指定された荷重が作用したときの節点変位ベクトルを U , 第 i 部材の系座標に関する部材剛性行列を K i とする。また, 第 j 変位成分に対する単位仮想荷重に関する量を
上添字 j で表わす。3.2.2 節で紹介した随伴変数法（この場合には単位仮想荷重法と同じ ）を用
いると，

∂Uj
∂K i
= −U j
U
∂Ai
∂Ai
Li
=−
Nij Ni2(Ai ) E

(4.38)

Nij Ni=1µj(Ai )2 E(4.39)

Nij Ni(Ai )2 E(4.40)となる。したがって，式 (4.37) はのように書くことができ，

Zi ≡ µjとすると，

Zi = 1(4.41)

が満たされるように断面積を変更すればよいことが分かる。
断面積の変更に対して µj , Nij , Ni が敏感に変化しないものと仮定すると，
(k+1)

Ai

(k)

=

(k)

Zi Ai

(4.42)

によって，Zi を 1 に近づけることができる。ここで，上添え字 (k) は繰返しステップを表わす。
しかし，ここでも全応力設計の場合と同様にして，収束性を調整するパラメータ r を用いて
(k+1)

Ai

(k)

(k)

= (Zi )r Ai(4.43)

によって断面積を更新する。通常は 1/2 ≤ r ≤ 1 である。
ところで，式 (4.40) において，ラグランジュ乗数 µj も未知数である。そこで，制約条件 Uj = Ūjが満たされるように µj を更新する。式 (4.40) より，

Ai =

µj
49

Nij NiE(4.44)

である。また，単位仮想荷重法の定義を用いると，制約条件 Uj = Ūj が等号で満たされること
より
m

Li

Ai E
i=1

Nij Ni = Ūj(4.45)

が成立する。したがって，式 (4.44) の Ai を式 (4.45) に用いると，ラグランジュ乗数 µj は，次式を用いて更新することができる。
⎞2
⎛
j
m L

N
N
i
i
i
(k+1)
⎠
√
µj
=⎝
(4.46)
EŪ
ji=1
以上の操作を繰り返し，最適性条件を満たす解が得られる。

4.6

コンプライアンス制約

コンプライアンスは静的載荷時の外力仕事として，あるいはひずみエネルギーの 2 倍として定義され，コンプライアンスが小さいことは，その荷重に対する剛性が大きいことを意味する。
部材応力とは異なり，コンプライアンスは構造物全体の性能を表わす大域的特性量であり，最適性条件が非常に簡単な形式で表わされるので，最適設計の際に考慮されることが多い。以下
では，トラスを対象として，コンプライアンス制約条件下での最適設計問題に対する最適性必要十分条件を導き，最適設計解を求めてみる。より一般的な表現は，文献などを参照すること。
全体系の剛性行列を K, 変位ベクトルを U , 荷重ベクトルを P とすると，剛性方程式はKU = P(4.47)のように書ける。式 (4.47) を用いると，コンプライアンス W (U (A), A) = U  P は次式のように変形できる。

W (U (A), A) = U  P= U  KU
1 
= 2 U P − U KU
2

(4.48)

したがって，式 (4.47) を再度用いると，∂W= 2(P − KU ) = 0∂U(4.49)

を得る。
変位ベクトル U が A の関数であることから，コンプライアンスは，W ∗ (A) = W (U (A), A)のように，A のみの関数と考えることができる。したがって，式 (4.49) を用いると，Ai に関するコンプライアンスの感度係数は次のようになる。


∂W ∗
∂U
∂W
∂W
=
+
∂Ai
∂Ai
∂U
∂Ai


∂W
 ∂U
(4.50)=+ 2(P − KU )
∂Ai
∂Ai
∂W
=
∂Ai

50

トラスの場合，第 i 部材のひずみを εi ，第 i 部材の系座標に関する剛性行列を K i とすると，W ∗ (A) は，ひずみエネルギーを用いて次のように書くことができる。


W (U (A), A) = 2P U −

= 2P U −

m

i=1
m


u
i K i ui
(4.51)
2

Ai E(εi ) Lii=1

式 (4.50),(4.51) から，コンプライアンスの感度係数は次のようになる。

∂W ∗= −E(εi )2 Li∂Ai(4.52)

コンプライアンスの上限値を W U , 目的関数 C(A) を全部材体積として次のような最適設計問
題を考える。

minimize

C(A) =m

Ai Li(4.53)

i=1

subject to W ∗ (A) ≤ W U
Ai ≥ ALi ,(i = 1, 2, · · · , m)

(4.54)(4.55)

ここで，簡単のため Ai の上限値は与えないものとする。
制約条件式 (4.54) に対するラグランジュ乗数を µ とすると，ラグランジアンは次のように書ける。

Π(A, µ) =m
Ai Li + µ(W ∗ (A) − W U )(4.56)

i=1

変数の側面制約条件を考慮すると，式 (4.7) 及び (4.52) より最適性必要条件は次のようになる。


Ai > ALi のときE(εi )2 = λ

Ai = ALi のときE(εi )2 ≤ λ(4.57)

ここで，λ = 1/µ > 0 である。式 (4.57) からわかるように，コンプライアンス制約の場合には，最適解において Ai > ALi である部材のひずみの絶対値あるいは単位体積あたりのひずみエネル
ギーが一定となり，最適性条件は非常に単純な形式で表現できる。
このようにしてラグランジアンを用いて導かれる条件は，最適解であるための必要条件である。以下では，全ポテンシャルエネルギー最小の原理を用い，条件 (4.57) が大域最適設計解であるための必要十分条件であることを示す。
設計解 A = (Ai ) において，最適性必要条件 (4.57) が満たされるものとする。また，A とは異なりコンプライアンスが W U に一致する設計を A∗ = (A∗i ), その変位ベクトルを U ∗ , ひずみ
ベクトルを ε∗ = (ε∗i ) とすると，

U

∗

m
m
1
1
WU

∗ 2 ∗
P−
E(εi ) Ai Li = U P −E(εi )2 Ai Li =
2 i=1
2 i=1
2

51

(4.58)

2

3
15

9

17
10

14

4
19
11

16

2.0 m

1
13

12

18

20

5

6

7

8

2.0 m

2.0 m

2.0 m

2.0 m

P

図 4.7: 20 部材トラスが成立する。ところで，ε は設計 A∗ に対しては正解とは限らない許容な変位 U に対応するひずみベクトルだから，全ポテンシャルエネルギー最小の原理より，
m
m
1
1
∗
2 ∗
U P−
E(εi ) Ai Li ≤ U P −E(ε∗i )2 A∗i Li
2 i=1
2 i=1


(4.59)

が成立する。式 (4.58) を用いると，式 (4.59) から次式を得る。
m
m
1
1
2 ∗

U P−
E(εi) Ai Li ≤ U P −E(εi )2 Ai Li
2 i=1
2 i=1


(4.60)

式 (4.60) を変形するとm
E(εi ) Ai Li −
2

i=1

m


E(εi )2 A∗i Li ≤ 0(4.61)i=1となる。λ > 0 を用い，式 (4.61) を変形して次式を得る。
mλ(A∗i − Ai )Li −

i=1

m


(A∗i − Ai )(λ − E(εi )2 )Li ≥ 0(4.62)

i=1

最適性必要条件 (4.57) が満たされるとき，最適解において Ai = ALi が成立する部材の番号の集合を I とすると，式 (4.62) よりm
i=1

λ(A∗i − Ai )Li −(A∗i − Ai )(λ − E(εi )2 )Li ≥ 0(4.63)i∈Iであり，Ai = ALi が満たされる部材では A∗i ≥ Ai = ALi が成立すること及び式 (4.57) を用いると，式 (4.63) の左辺第 2 項は 0 または正なので，C(A∗ ) − C(A) =m(A∗i − Ai )Li ≥ 0(4.64)

i=1となる。以上より，式 (4.57) が成立するとき W (A∗ ) = W U が成立するいかなる設計解においても目的関数値は最適解における値より小さくなることはなく，式 (4.57) は最適性の十分条件
であることが証明された。

52

図 4.8: コンプライアンス制約条件下での最適設計解

図 4.7 のような 20 部材トラスに対し，コンプライアンス制約条件のもとで最適設計解を求めた。ここで，載荷条件は P = 50.0 kN とし ，コンプライアンスの上限値は 1000 kN · mm とする。最適部材断面積を図 4.8 に示す。最適目標関数値は 1.1581 × 108 mm3 である。図 4.8 からわかるように，節点に作用する荷重を効率よく支点に伝達できるような部材断面積が生成されている。また，部材 9,10,11 で Ai = ALi となっており，その他の部材ではひずみの絶対値が一様である。したがって，応力の絶対値も一様となり，部材断面積の傾向は，単一載荷時の応力制約の場合と同じである。

参考文献[1] 加藤直樹，大崎 純，谷 明勲，建築システム論，造形ライブラリー 3，共立出版，2002.
[2] , 山川 宏, 最適化デザイン , 培風館, 1993.
[3] J. S. Arora, Introduction to Optimum Design, McGraw-Hill, 1989.
[4] R. T. Haftka, Z. Gürdal and M. P. Kamat, Elements of Strustural Optimization, Kluwer
Academic Publishers, 1990.
[5] 構造システムの最適化，土木学会, 1988.
[6] DOT User’s Manual, Ver. 5.0, VR&D, 1999.

53

第 5 章 形状最適化
5.1

形状最適化とト ポロジー最適化の概要

断面積や断面 2 次モーメントなどの部材断面性能だけではなく，節点位置や部材配置も設計
変数として変化させる問題を，形状最適化問題という [1, 2]。とくに，部材配置を最適化する場
合をトポロジー最適化という [3–6]。本章では，対象をトラスなどの骨組構造物に限定して，ト
ポロジー最適化の概要を解説する。連続体の形状最適化については，文献 [7] などを参照すること。
図 5.1 に示すような 3 部材トラスを対象とし，壁から W だけ離れた節点 a に荷重 P を作用させ，節点 a の鉛直変位 u を最小化する問題を考える。このような問題をコート掛け問題という。
全部材体積を一定値 V とし，簡単のため 3 つの部材の断面積は同じ値とする。すなわち，節点位置を変化させて部材 i の長さ Li が定まったとき，部材断面積 Ai は，

Ai =V, (i = 1, 2, 3)
L1 + L2 + L3

(5.1)

で計算でき，変位 u を求めることができる。
部材の弾性係数を E とする。H = 2W, W, W/2 の 3 種類の場合について，節点 a の y 座標 Yと u の関係を図 5.2 に示す。ここで，横軸と縦軸は，無次元化量 Y /H 及び EV u/(P W 2) である。図 5.2 より，H が 2W あるいは W/2 のときには，u が極小となる Y の値が 2 個存在することがわかる また，H = W では，Y = H のとき u が最小となっている。このときの u の値は5.4142P W 2/(EV ) である。
このトラスは 1 次不静定であるから，部材を一つ除去しても安定である。H = W の場合について，部材 1,2 をそれぞれ除去したときの Y /H と EV u/(P W 2) の関係を図 5.3 に示す。図 5.3 よ

x
16

1
y

a

H=2W
H=W
H=W/2

H
12

2
P

8

H
3
4
0

0.2 0.4 0.6 0.81

1.2 1.4 1.6 1.8

2

W

図 5.1: 3 部材トラス

図 5.2: 3 部材トラスの節点位置と変位の
関係

54

x
1

20

H

y
15

a
2

10

P

H

5

3
0
0

0.2 0.4 0.6 0.81

1.2 1.4 1.6 1.8

2

W

図 5.3: 部材を除去したときの節点位置と変位の関係

図 5.4: 最適なトポロジーと節点位置

り，部材 2 を除去したときの最適解における u の値が最も小さく，その値は 4.0000P W 2/(EV )である。このように，節点位置に加えてトポロジーも最適化することにより，最適化効率をさらに向上させることができる。
以上のように，設計変数が少ない場合には，それらをパラメトリックに変化させ，また，全ての可能なトポロジーに対して最適形状を求めることにより，最適なトポロジー，形状と断面性能を求めることができる。しかし ，部材や節点が多い場合には，3 章で解説した設計感度解析法，形状感度解析法と，2 章で紹介した数理計画法などの最適化手法を組合わせて最適解を求めなければならない。また，実用規模の構造物において，トポロジーと形状（ 節点位置）を同時に最適化することは極めて困難なので [8, 9]，以下では節点位置を固定した問題を考える。
トラスや骨組構造物のトポロジーは，本質的には部材の存在を表す 0-1 変数で定義され，トポロジー最適化問題は，離散変数を有する組合せ最適化問題と，連続変数を有する断面積最適化の両方の特性を有する混合整数計画問題である。しかし，混合整数計画問題を解くためには多くの計算量を必要とするため，以下のようなグランド ストラクチャ法といわれる手法が用いられることが多い。

Step 1 図 5.5 に示すような，全ての存在可能な部材と節点を持つ構造物（グランド ストラク
チャ）を与える。
Step 2 断面積を連続変数として最適化を行い，最適解において断面積が 0 となって不要であるとみなされる部材と，接続する部材のない節点を取り除き，最適トポロジーを得る。
以下では，応力制約と振動数制約でのトラスのトポロジー最適化における困難点とその解決法を紹介する。

5.2

静的載荷の下でのト ポロジー最適化問題

指定された静的載荷条件に対する応答量に関する制約の下で，トラスのトポロジーを最適化する問題を，グランド ストラクチャ法にしたがい定式化する。第 i 部材の断面積を Ai , 部材長55

P

図 5.5: 多くの部材と節点を有するグランド ストラクチャ

a

b
P

P

図 5.6: トポロジー最適化の例

を Li とし，部材数を m とする。部材断面積を連続変数と考えるため，設計変数は部材断面積ベクトル A = {Ai } である。以下では，簡単のため，Hj (A) ≤ 0, (j = 1, 2, · · · , N I ) の形式の不等号制約条件のみを考える。静的載荷時の応力や変位に関する制約は，不等式の形で与えられるため，通常の設計問題では不等号制約のみを考えても差し支えない。
目的関数を全部材体積 V (A) とすると，トポロジー最適化問題は次のように定式化できる。

TOPO : minimize

V (A) =

m


Ai Li

(5.2)

i=1

subject to Hj (A) ≤ 0, (j = 1, 2, · · · , N I )Ai ≥ 0, (i = 1, 2, · · · , m)

(5.3)
(5.4)

以上のように，グランド ストラクチャ法を用いると，トポロジー最適化問題は非線形計画問
題として定式化されるため，2 章で紹介した逐次 2 次計画法などのアルゴ リズムを用いて解くことができる。制約条件が変位や応力などの単純な形式の場合には，4 章で解説した最適性基準法なども適用できる。このように，トポロジー最適化問題は最適設計問題の単純な延長と考えられがちであるが，以下に述べるように，最適設計問題には存在しない多くの困難点が存在する。
図 5.6 は，単一荷重の作用するトラスのトポロジー最適化を模式的に表したものであり，右
図の点線は，除去される部材を示している。このように不要な部材を除去する過程では，部材の接続しない節点（図 5.6 の節点 a ）や，直線状に 2 本の部材が接続する節点（ 図 5.6 の節点 b ）の存在により，トラスは不安定になることもある。したがって，部材断面積の下限値を 0 とせず，微小な正の値の下限値 Ā を与え，式 (5.4) の代わりに次のような側面制約条件を加えるこ

56

とが多い。

Ai ≥ Ā, (i = 1, 2, · · · , m)

(5.5)

ここで，最適化の後で Ai = Ā となっている部材は除去される。したがって，Ā は数値解析上の不安定性を防ぐために導入されるものであって，最終的に得られる最適トラスの不安定性を除くために与えられるのものではない。図 5.6 の節点 b などは，不要部材を除去した後で剛接合する必要がある。

5.3

応力制約

5.3.1

問題の定式化

図 5.6 に模式的に示したように，単純な載荷条件の下でトポロジーを最適化すると，不安定なトラスが得られることが多い。一方，4 章で述べたように，複数の載荷条件を考慮すると，安定な最適トラスを得ることができる。したがって，以下では複数の載荷条件を考慮した定式化を行う。
第 k 荷重ベクトルを P k ，それに対する軸力ベクトルを N k = {Nik } とする。以下では，ベクトルの成分を添え字を用いて表す。釣合い式は次のように書ける。

BN k = P k , (k = 1, 2, . . . , f )(5.6)

ここで，f は載荷条件数であり，B は釣合い行列である。
P k が作用したときの節点変位ベクトルを U k とし ，それに対する第 i 部材の伸びを dki とす
ると，U k と dki の間の適合条件は
kkB
i U = di , (i = 1, 2, . . . , m; k = 1, 2, . . . , f )(5.7)のように書ける。ここで，B i は B の第 i 列である。また，( ) はベクトルの転置を表す。
部材断面積が正の値をとるときには，第 i 部材の応力 σik は軸力 Nik から次式を用いて計算で
きる。

σik =

Nik
Ai

(5.8)

しかし，部材断面積が 0 のときには，上式を用いることはできない。そのような場合にも，部
材両端節点の変位から，軸方向変形 dki は計算でき，さらに，ひずみ εki を次式を用いて求めることができる。

dki
Li

(5.9)

σik = Eεki

(5.10)εki =ひずみが得られると，それに適合する応力は，で求められる。ここで，E は弾性係数である。したがって，部材除去後のトラスが安定である
ならば節点変位を求めることができるから，Ai = 0 でも式 (5.10) を用いて応力を計算できる。

57

L
(1)

1

(3)
P
5

3

L

4
2

y

(4)

(2)

P

x

図 5.7: 5 部材トラス

また，上記の式をまとめて，剛性方程式は次のように書ける。

KU k = P k , (k = 1, 2, . . . , f )(5.11)

以上のように，応力 σik を A の関数と考えたとき，1 つの部材の断面積を微小量から 0 に減少させる過程での不連続性は存在しない。しかし，Ai = 0 となって部材が存在しなければ，応力制約は満足される必要はない。したがって，制約条件の記述において場合分けが必要になり，
グランド ストラクチャ法によるトポロジー最適化問題は，下記のように定式化される。

STR : minimize
subject to

V =

m


Ai Li

i=1
L
σi ≤ σik ≤ σiU ,(5.12)
for Ai > 0(i = 1, 2, · · · , m; k = 1, 2, · · · , f )Ai ≥ 0, (i = 1, 2, · · · , m)

(5.13)(5.14)

上記のような場合分け（ 応力制約を満たすべき部材の限定）にともなう不連続性のため，応力制約の下での最適トポロジーを求めることは極めて困難である。簡単な例として，図 5.7 に示すような 5 部材トラスを考える [10]。ここで，(Px , Py ) = (5, −50) が節点 3, 4 にそれぞれ作用する 2 種類の載荷条件を想定する。応力の上・下限値は部材 2 に対しては ±20，その他の部材に対しては ±5 である。このトラスは 1 次不静定なので，1 つの部材をそれぞれ削除して，残りの全ての部材に応力制約が与えられたときの最適解を非線形計画法で求めて，目的関数が最小となるトポロジーと，それに対応する最適断面積を得ることができる。
得られた最適解における目的関数値は 33.500 であり，部材断面積は (1.0000, 2.5000, 10.000,
0.0, 14.242) である。したがって，部材 4 が存在しない静定トラスが最適解になっている。一方，全ての部材が存在し，応力制約が満たされるとしたときの目的関数値は 39.986 であり，断面積は (7.2193, 4.7340, 4.5313, 8.7954, 7.8303) である。以上より，通常のグランド ストラクチャ法
では最適トポロジーが得られないことがわかる。
トポロジー最適化のもう一つの困難点として，部材座屈の問題が挙げられる。最適化によっ

58

L

L

(4)
(1)

1

(2)

3
2

(3)

P

4
(5)

図 5.8: 圧縮力を受けるトラスてトラスの部材の細長比が大きくなる可能性があるときには，圧縮部材の応力の下限値 σiL を，オイラー座屈の応力で置き換える必要がある。
例えば，図 5.8 に示すような圧縮力を受ける 4 部材トラスを考える。部材 1,2 の長さは L であり，簡単のため断面 2 次半径は断面積に関わらず一定値 r とする。図 5.8 に示すトラスで P > 0とすると部材 1,2 は圧縮を受けるから，応力の下限値を座屈応力に安全率 c (< 1) を乗じた値−cπ 2 E/(r/L)2 で定めることにする。このように，部材座屈に関する制約を導入することにより，極端に細い部材の存在を回避することができ，何も困難はないと思われるかもしれない。
しかし，部材が存在しないと部材座屈に関する制約も存在しないから，単純に応力の下限値を変更するだけでは問題は解決されない。
図 5.8 のトラスでは，明らかに部材 3,4 の応力は 0 であるから，最適化を行うと部材 3,4 は除去され，直線状に接続する 2 つの部材 1,2 によって最適解は形成される。しかし ，部材 3,4 が除去されると，指定された荷重 P は軸力により支点 1 に伝達することができるが，トラスは不安定であり，例えば節点 2 の鉛直方向に作用する荷重に対する変形は無限大となる。そのような不安定性は，不安定な節点 2 を剛接合し，節点 1,3 を直接結ぶことにより除去できる。しかし ，その結果，部材長が部材 1,2 の長さの 2 倍である部材が現れることになり，応力の下限値
は −cπ 2 E/(r/2L)2 としなければならない。したがって，部材 3,4 を除去して節点 2 を接合すると，応力制約が満たされなくなる可能性がある。
以上のように，安定でかつ実用的に意味のある最適トポロジーを得るのは極めて困難である。

5.4

局所制約を考慮したト ラスのト ポロジー最適化

5.4.1

混合整数計画問題の定式化

上記のような不連続性と不安定性に起因する困難点を回避するため，局所的な安定性に関する制約を導入し ，さらに，部材あるいは節点の存在を表す 0-1 変数を用いて，最適化問題を混合整数計画問題として定式化してみる [11]。
部材 i が存在すれば 1，存在しなければ 0 である変数を yi とし，応力制約は yi = 1 である部
材のみに与える。さらに，不安定な解が得られるのを防ぐため，以下のように局所制約を導入する。まず，Ai に対して十分に大きい下限値 ALi と上限値 AU
i を与える。このような制約は存59

在する部材（ yi = 1 の部材）のみに課せられるので，

ALi yi ≤ Ai ≤ AU
i yi , (i = 1, 2, · · · , m)

(5.15)のように定式化できる。式 (5.15) より，yi = 0 の部材に対しては Ai = 0 である。
次に，節点 r が存在する可能性があれば 1, 存在しなければ 0 であるような変数を xr とする。
また，節点 r が存在する場合，接続する部材数の上・下限値を CrU 及び CrL で表し，グランド ス
トラクチャで節点 r に接続する部材の集合を Jr とする。このとき，接続部材数に関する制約は次のようになる。
xr CrL ≤yi ≤ xr CrU , (r = 1, 2, . . . , s)(5.16)i∈Jr

ここで，s は支点も含む節点数である。式 (5.16) より，節点 r が存在せず xr = 0 のときには，全ての接続部材で yi = 0 でなければならないことがわかる。また，1 つの接続部材で yi = 1 ならば，xr = 1 でなければならない。
現実の設計を考えると，部材の交差も避けなければならない。そこで，グランド ストラクチャ
での i 番目の交差部材のペアを Si (i = 1, . . . , q) とし，以下のような制約を与える。
yj ≤ 1, (i = 1, 2, . . . , q)(5.17)
j∈Si

以上より，トポロジー最適化問題は，次のような混合整数計画問題として定式化できる。

MIP :

m


Minimize
V (A) =Ai Li
A,y ,x,U k ,σ k ,N ki=1subject to

σiL yi ≤ σik yi ≤ σiU yi , (i = 1, 2, · · · , m; k = 1, 2, · · · , f )E
U k , (i = 1, 2, . . . , m; k = 1, 2, . . . , f )σik = B 
Li i
Nik = Ai σik , (i = 1, 2, . . . , m; k = 1, 2, . . . , f )kk(5.18)(5.19)(5.20)BN = P , (k = 1, 2, . . . , f )(5.21)

ALi yi ≤ Ai ≤ AU
i yi , (i = 1, 2, · · · , m)
xr CrL ≤yi ≤ xr CrU , (r = 1, 2, . . . , s)(5.22)

(5.23)i∈Jryj ≤ 1, (i = 1, 2, . . . , q)(5.24)

yi ∈ {0, 1}, (i = 1, 2, · · · , m)

(5.25)

xr ∈ {0, 1}, (r = 1, 2, · · · , s)(5.26)

j∈Si

ここで，変数は A, y, x, U k , σ k , N k である。また，上記問題 MIP の最適目的関数値を V MIP とする。
以下では，式 (5.24) を「部材交差制約」という。さらに，式 (5.23)–(5.24) をまとめて「局所制約」という。

60

5.4.2

MIP の下界と上界

混合整数計画問題 MIP の制約条件の一部を無視し ，整数変数を連続変数にして，線形計画
問題 LP に変更する。このような操作を緩和操作といい，緩和されて得られた LP を MIP の緩和問題という。緩和問題は，原問題より広い許容領域を持つので，その大域最適解における目
的関数値 V LP は，原問題の最適目的関数値 V MIP を上回ることはなく，V LP を V MIP の下界という。
xr と yi を連続変数と考え，適合条件式 (5.19) を無視する。yi > 0 の部材に対しては，制約条
件式 (5.18) は，次のようになる。

σiL ≤ σik ≤ σiU , (i = 1, 2, · · · , m; k = 1, 2, · · · , f )(5.27)

上式に Ai を乗じると，Nik を用いて

Ai σiL ≤ Nik ≤ Ai σik (i = 1, 2, · · · , m; k = 1, 2, · · · , f )(5.28)となる。ここで，式 (5.22) より，式 (5.28) は yi = 0 でも成立する。以上より，線形緩和問題は次のように定式化される。
mLP : Minimize V (A) =Ai Li
A,y ,x,N k
i=1

subject to BN k = P k , (k = 1, 2, . . . , f )Ai σiL ≤ Nik ≤ Ai σiU , (i = 1, 2, · · · , m; k = 1, 2, · · · , f )ALi yi ≤ Ai ≤ AU
i yi , (i = 1, 2, · · · , m)
xr CrL ≤yi ≤ xr CrU , (r = 1, 2, . . . , s)i∈Jryj ≤ 1, (i = 1, 2, . . . , q)j∈Si

0 ≤ yi ≤ 1, (i = 1, 2, · · · , m)
0 ≤ xr ≤ 1, (r = 1, 2, · · · , s)
ここで，変数は A, y, x, N k である。上記の問題 LP は線形計画問題なので，2 章で紹介したシンプレックス法などを用いて，大域最適解を求めることができる。
MIP において，局所制約が満たされるように存在可能部材を定め，yi 及び xr を 0 あるいは 1に固定すると，最適化問題は非線形計画問題になる。このようにして得られたトラスにおいて存在する部材の集合を I とし，次のように問題 NLP を定義する。

NLP : Minimize V (A) =
Ai Li
A
i∈I

subject to σiL ≤ σik (A) ≤ σiU , (i ∈ I; k = 1, 2, · · · , f )ALi ≤ Ai ≤ AU
i , (i ∈ I)
ここで，変数は A のみであり，σik (A) は，式 (5.7), (5.11) 及び式 (5.10) を用いて計算できる。
NLP の最適目的関数値を V NLP とする。NLP に許容解が存在すれば，それは V MIP の全ての制約条件を満足するので，V NLP は V MIP を下回ることはなく，V NLP を V MIP の上界という。

61

(1)

1

18

24

3

12

(7)
26
5

20
(5)

(2)
2

(4)

9

10

(10)
28

22
(8)

13
25

19

15

21

23

29

11

(6)

14

x

8

(9)

17

P

(12)

2

P

図 5.10: 2 × 2 分割平面トラスの初期 LP 問
題の解（ 下界）

図 5.9: 3 × 2 分割平面トラス

5.4.3

3
1

y
(3)

5

(11)

16
27
6

4

4

7

分枝限定法

整数計画問題（ 組合せ最適化問題）あるいは混合整数計画問題を，部分問題に逐次分けて大域最適解を得る方法を，分枝限定法という [12]。以下では，分枝限定法によって，MIP の大域最適解を求めるアルゴ リズムの概要を示す。詳細は文献 [11] を参照すること。

Step 0 上界の暫定値 V U を ∞ とし，分枝問題の集合 A を，原問題 MIP とする。
Step 1 A から問題 P を選択し，それを A から削除する。
Step 2 P の LP 緩和問題 P̄ において 0 < yi < 1 が成立している部材の集合から部材 j を選択する。yj をそれぞれ 0, 1 とした問題 P0 及び P1 の LP 緩和問題 P̄0 及び P̄1 を解く。
Step 3 P̄0 と P̄1 の最適目的関数値をそれぞれ V0 及び V1 とする。
• V0 > V U のとき，yi = 1 として P0 以下の分枝を完了する。
• V1 > V U のとき，yi = 0 として P1 以下の分枝を完了する。
Step 4 LP を解いて得られたトポロジーが全ての局所制約を満たすとき，存在部材の集合を
I = {j | j = 1, 2, . . . , m, yj > 0} のように定めて NLP の最適目的関数値 V NLP を求める。
Step 5 V NLP < V U のとき，V U を V NLP に更新する。
Step 6 V0（あるいは V1 ）が V U より小さければ P0 （あるいは P1 ）を A に追加して Step 1 へ戻る。
Step 7 A が空集合でなければ Step 1 へ戻る。
Step 8 V U の最小値を出力する。終端の子問題から，V L < min{V0 , V1 } のとき親問題 P の V L
を min{V0 , V1 } で置き換える操作を繰り返し，原問題の V L を求める。
LP を解く際に，局所制約を有効に使うことができる。すなわち，yi = 1 (i ∈ Jr ) であるような部材が存在すれば xr = 1 であり，Jr の中の全ての部材で yi = 0 ならば xr = 0 である。また，
yj = 1 (j ∈ Sr , j = i) ならば yi = 0 (i ∈ Sr ) である。

62

図 5.11: 2 × 2 分割平面トラスの初期 NLP
問題の解（ 上界）

図 5.12: 2 × 2 分割平面トラスの最適トポ
ロジー（ 最良の上界）

表 5.1: トポロジー最適化の結果

分割数

2×2
3×2
3×3
4×4
4×4
4×4

部材数
m
20
29
42
72
72
72

自由度

ALi

AU
i

分枝数

LP

NLP

14
20
28
46
46
46

200
200
200
200
200
400

800
800
800
800
600
800

121
942
5874
64890
68656
41001

64
571
3483
42831
42707
26580

5
6
23
7
73
3

上界
VU
7.9000 × 103
1.2900 × 104
1.2467 × 104
1.7067 × 104
1.8373 × 104
2.1507 × 104

下界VL
7.8000 × 103
1.2800 × 104
1.2467 × 104
1.7067 × 104
1.7916 × 104
2.1507 × 104

CPU
(秒)
2.02
18.95
147.843072.842513.06
1794.08

5.4.4 ト ポロジー最適化の例
平面グリッドを対象とし，本節で紹介した手法によって最適トポロジーを求める。以下では，力と長さの単位はそれぞれ kN, cm とする。線形計画問題には，HOPDM Ver. 2.13 [13] を用いる。また，NLP は IMSL library [14] に DNCONG としてインプリメントされているライブラリNLPQL を用いる，最適化アルゴ リズムは逐次 2 次計画法とする。NLP では，いくつかの初期解から同一の最適解が得られ，非凸性はそれほど 大きくないことを確認している。計算は Xeon
2.8GHz（ メモリー 1GB ）の PC で実行した。
図 5.9 に示すような 3 × 2 平面トラスの最適トポロジーを求める。ここで，x, y 軸方向部材の長さは 200 である。グリッド の分割数に関わらず，右下隅とその左の節点にそれぞれ鉛直下向きに荷重 1000 が作用する 2 種類の載荷条件を考える。
以下の例で，応力の上・下限値は ±200.0 とする。また, CrU = 6 であり，CrL は支点では 1，右下隅の節点では 2，その他の節点では 3 である。これらの値は，安定性を確保するためのものであり，設計空間を限定するものではない。
2 × 2 のグリッド の最適トポロジーを求めた。最初のステップでの LP の解を図 5.10 に示す。
ここで，部材幅は断面積に比例している。最適目的関数値 V LP は 7.0000 × 103 である。局所制
約を満たす上界を求めるために，図 5.10 の交差部材の中で断面積が小さい部材 1 を除去する。
その結果，局所制約より部材 2, 3, 4, 5 が除去される。トポロジーを固定して得られた NLP の解を図 5.11 に示す。ここで，V NLP は 8.0000 × 103 である。
分枝限定法を用いて最適トポロジーを求めた結果を図 5.12 に示す。ここで，V U = 7.9000×103である。最適化での計算量などを表 5.1 の 1 行目に示す。この例では，想定できるトポロジー

63

図 5.13: 2 × 2 分割平面トラスの最良の下界

図 5.14: 3 × 2 平面トラスの最適トポロジー

図 5.15: 3 × 3 平面トラスの最適トポロジー

図 5.16: 4 × 4 平面トラスの最適トポロジーの数は 220  1.0 × 106 であるのに対して，探索したトポロジーは 121 である。最良の下界を図
5.13 に示す。ここで，V L = 7.8000 × 103 ある。最適解は不静定なので，LP によって得られる
軸力は，適合条件を考慮していないので正解ではない。LP 解において，適合条件を考慮すると，応力比の最大値は 1.1111 であり，応力制約を満たさない。そのため，V L は V U より小さい値である。しかし，それらの差は非常に小さく，極めて良好な上界が，NLP を 5 回解くだけで得られている。それに対し，局所制約を考慮しないと，分枝数は 529, LP と NLP を解く回数
は 350 及び 58 であり，計算時間は 5.05 秒である。
3 × 2, 3 × 3 及び 4 × 4 平面トラスの最適トポロジー（ 最良の NLP の解）を図 5.14–5.16 に示す。また，計算量を表 5.1 の 2–5 行目に示す。ここで，3 × 3 と 4 × 4 では最適解は静定なので，
V L = V U が成立している。
問題のサイズが大きくなると，LP を解く回数と CPU 時間は大きく増加する。しかし，NLPを解く回数はサイズとは無関係であり，初期の上界の値に依存する。4 × 4 の平面トラスにおいて AU
i を 600 に増加させると，計算量は表 5.1 の 5 行目のようになり，NLP を解く回数は 73 まで増えている。しかし，表 5.1 の最後の行に示すように，ALi = 400 のときの計算量は ALi = 200のときの約 1/2 であり，ALi の値と計算量も無関係である。
3 × 2 のトラスにおいて局所制約を考慮しないと，分枝数は 2364, LP と NLP を解く回数は1468 及び 391 であり，CPU 時間は 72.28 である。以上より，局所制約を考慮することにより，現実的な最適解を，少ない計算量で得られることが分かった。

64

5.5

固有振動数制約5.5.1

問題の定式化

静的荷重に対する応答を考慮して最適設計を行うと，想定した荷重については最適な解が得られるが，それ以外の荷重に対してする性能を保証することはできない。それに対し，構造物の固有振動数は，動的な剛性の指標と考えられ，固有モードが最も危険な載荷パターンである
ものと理解すれば，固有振動数制約条件下での最適設計解を求めることは，実用上も有意義である。しかし ，1 次固有振動数に関する制約を考慮したトポロジー最適化問題に対しては，応力制約で見られた不安定な節点の存在に加えて，固有振動数の重複にともなう感度係数の不連続性に関わる困難点が存在する。
トラス部材の質量を代表する構造質量と，節点や積載物の質量を代表する非構造質量に関する質量行列をそれぞれ M s 及び M 0 で表す。建築の分野では，構造物の動的特性量として固有周期を用いることが多いが，以下では固有円振動数の 2 乗である固有値によって定式化する。
自由振動の固有値問題は，次のように定式化される。

KΦr = Ωr (M s + M 0 )Φr , (r = 1, 2, · · · , n)(5.29)

ここで，Ωr 及び Φr は，r 次の固有値と固有ベクトルであり，n は変位の自由度である。固有ベ
クトルは固有モード ともいわれ，次式で正規化される。

Φr (M s + M 0 )Φr = 1, (r = 1, 2, · · · , n)(5.30)

固有値が大きいほど 動的な剛性は大きいと考えられるから，固有値に対して下限値 Ω̄ を与えて最適化を行う。グランド ストラクチャ法の定式化に基づくと，固有値制約条件下でのトポロ
ジー最適化問題は，次のように定式化される。

EIG : minimize

V =

m


Ai Li

(5.31)

i=1

subject to Ωr ≥ Ω̄, (r = 1, 2, · · · , n),(5.32)Ai ≥ 0, (i = 1, 2, · · · , m)

(5.33)

上記問題 EIG に対して最適設計解が得られたならば ，Ai = 0 となっている部材を除去して最適トポロジーが得られる。通常は，応力制約の場合と同様に，最適化過程での不安定性を防ぐため，Ai に対して微小な正の値の下限値が与えられる。

5.5.2

感度係数の不連続性と局所振動モード

最適設計解において 1 次固有値が重複しなければ，固有値の部材断面積に関する設計感度係数は連続であり，3 章で示した方法によって計算することができ，EIG は非線形計画法あるいは最適性基準法を用いて解くことができる。しかし，EIG の最適設計解では，固有値が重複することが多いことが良く知られている。その場合には，固有値の部材断面積に関する設計感度
係数は不連続であり，設計変数の増加・減少によって値が異なるため，方向微分係数しか存在しない。
図 5.17 は，１つの設計変数 A と Ω1 , Ω2 の関係を模式的に描いたものである。Ω1 は最小固有値だから，実線で示すようになり，点線が Ω2 である。図 5.17 より，固有値が重複する設計変

65

Ωr

Eigenvalue

Multiple eigenvalue

Directional derivative
A = A*A
Design variable

図 5.17: 重複固有値とその設計感度係数

1.0 m

1.0 m

3

1.0 m

(4)

100 kg

(1)

(3)

1

2

(2)

図 5.18: 不安定な節点を有する 3 部材トラス

数値 A = A∗ で，Ω1 の A に関する感度係数（この図では傾き）は不連続に変化し，A = A∗ では，A を増加させる場合と減少させる場合で感度係数は異なることがわかる。したがって，固有値が重複する場合には，設計感度解析に基づく手法を用いて最適トポロジーを得ることは極めて困難である。
振動数制約のもう一つの問題点としては，局所的振動モード の存在が挙げられる [15]。例として，図 5.18 に示すような単純な 3 部材トラスを考える。いま，節点 3 に存在する質量が部材質量に比べて十分に大きく，全ての部材断面積が同一とすると，1 次固有モード は図 5.19(a) に(a) 大域モード(b) 局所モード
図 5.19: 大域モード と局所モード

66

Eigenvalue

Ωr

L

G

G
L

A3

Design variable

図 5.20: 3 部材トラスの断面積と固有値の関係示すような主に節点 2,3 が水平方向に変位するモード であり，そのモード では部材 3 の変形は微小である。このように，非構造質量の振動をともなうモード を大域的モード と呼ぶ。一方，2次固有モードは図 5.19(b) に示すようなモード であり，節点 3 の非構造質量がほとんど 変形しな
いようなモード である。このようなモード を局所的モード と呼ぶ。
1 次固有モード での部材 3 の変形は部材 1,2 と比べて微小であるから，最適化を行なうと A3
は A1 , A2 と比べて小さくなる。図 5.20 は，2 つの固有モード に対応する固有値を，A3 が微小な領域で描いたものである。ここで，図中の G 及び L は，それぞれ大域モード 及び局所モードに対応する固有値を意味する。この図からもわかるように，節点 2 はピン接合であるから，部
材 3 が完全に除去されると明らかにトラスは不安定になって，局所モード に対する固有値は 0となる。したがって，A3 は微小な値を保持する必要があり，最適設計解では，節点 2 が鉛直方向に振動するモード に対応する固有値と，節点 2,3 が水平方向に振動するモード に対応する固有値が一致して，1 次固有値が重複する。
図 5.18 のような小規模なトラスでも，最適化にともなって固有値は重複するため，一般に，最適化を行うと極めて微小な断面積を有する 2 次的な部材が多く出現し ，1 次固有値は重複する可能性が高いことがわかる。実用的見地からは，2 次的部材の存在は好ましくなく，それらを除去した後，不安定な節点を単に固定することによって安定化できる。その結果，図 5.18 の節点 1,3 を直接結ぶ 1 本の長い部材が残ることになる。

5.5.3

半正定値計画法によるト ポロジー最適化

最適解における固有値の重複に起因する感度係数の不連続性にともなう困難点を解決するため，数理計画法の一つである半正定値計画法を用いて最適化を行う [6]。
トラスを想定すると，K と M s の各成分は Ai の線形関数であり，K, M s は

K=

m


Ai K i , M s =

i=1

m


Ai M i(5.34)i=1のように表すことができる。
詳細は省略するが，レ イリーの原理を用いると，式 (5.29) 及び式 (5.32) より，境界条件を満67

nonstructural mass

図 5.21: 5 × 5 平面グリッド

図 5.22: 5 × 5 グリッド の最適トポロ
ジー

モード (a)モード (b)
図 5.23: 最適トポロジーの固有モード

たす任意のモード ベクトル Ψ に対し，

Ψ KΨ
≥ Ω̄
Ψ (M s + M 0 )Ψが成立する。式 (5.34) を用いて式 (5.35) を変形すると次式を得る。
 m


Ψ
(K i − Ω̄M i )Ai − Ω̄M 0 Ψ ≥ 0(5.35)(5.36)

i=1

上式が任意の Ψ に対して成立するため，行列 Z を

Z=

m


(K i − Ω̄M i )Ai − Ω̄M 0(5.37)

i=1

で定義すると，制約条件式 (5.32) は，Z がが半正定値であることに帰着される。
変数の線形関数である行列の半正定値性の制約を持つ最適化問題を半正定値計画問題といい，著者らは，半正定値計画法の定式化に基づく最適化アルゴ リズムを提案した [6]。その手法は，固有値の感度係数を用いないため，固有値が重複する場合にも有効であり，1 次固有値の重複度が大きい場合にも困難なく最適トポロジーを求めることができる。
例として，図 5.21 に示すような 5 × 5 の平面グリッドに対して最適トポロジーを求めた。ここで，トラスは 2 つの支点で支持され，最上層右端に 1 つの非構造質量が存在している。半正定68値計画法を用いて最適化を行ない，極めて細い部材を取り除いた後の部材断面積分布を図 5.22に示す。ここで，図 5.22 は，部材幅が断面積に比例するように描いている。図 5.22 より，十分に大きい断面積を有する 10 部材トラスの不安定性を回避するために，2 次的部材によるネット状のトラスが形成されていることがわかる。
このトラスの 1 次固有値の重複度は 2 であり，2 つの固有モード は図 5.23 に示したとおりである，図 5.23 より，非構造質量の存在する節点 9 の変位は，モード (a) では大きいが，モード(b) では極めて小さく，モード (b) では節点 1 での曲げ変形が卓越していることがわかる。モード (b) のような局所的モード は，節点 1-8 を剛接合とすることによって抑制できる。その後 2 次
部材を除去すると，実用的に有効な 2 部材からなる最適トポロジーが得られる。しかし，この場合にも，部材の細長比に関する制約が存在すれば，2 部材からなるトラスは許容されず，実用的な最適トポロジーを得ることは極めて困難である。

参考文献[1] M. Ohsaki，T. Nakamura and Y. Isshiki，Shape-size optimization of plane trusses withdesigner’s preference, J. Struct. Engng.，ASCE，Vol. 124，No. 11，pp. 1323-1330，1998.
[2] M. Ohsaki，T. Nakamura and M. Kohiyama，Shape optimization of a double-layer spacetruss described by a parametric surface, Int. J. Space Structures，Vol. 12(2)，pp. 109-119，
1997.
[3] U. Kirsch，Optimal topologies of truss structures, Appl. Mech. Rev.，Vol. 42，pp. 223-239，
1986.
[4] G.I.N. Rozvany (ed.)，Topology optimization in Structural Mechanics, Springer，1997.
[5] M. Ohsaki，Genetic algorithm for topology optimization of trusses, Comput. & Struct，
Vol. 57，pp. 219-225，1995.
[6] M. Ohsaki，K. Fujisawa，N. Katoh and Y. Kanno，Semi-deﬁnite programming for topology
optimization of trusses under multiple eigenvalue constraints，Comp. Meth. Appl. Mech.
Engng.，Vol. 80, pp. 203-217，1999.
[7] 藤井大地，パソコンで解く構造デザイン，丸善，2002.
[8] M. Ohsaki, Simultaneous optimization of topology and geometry of a regular plane truss,
Comput. & Struct., Vol. 66(1), pp. 69-77, 1997.
[9] 田川 浩，大崎 純, 一様部材断面積を有する平面トラスのトポロジー・節点位置同時最適化，日本建築学会構造系論文集, No. 521, pp. 73-80, 1999.
[10] G. Cheng and X. Guo, ε-relaxed approach in structural topology optimization, Structural
Optimization, Vol. 13, pp. 258-266, 1997.
[11] M. Ohsaki and N. Katoh, Topology optimization of trusses with stress and local constraints
on nodal stability and member intersection, Struct. Multidisc. Optim., (in press).
[12] 奈良宏一，佐藤泰司，システム工学の数理的手法，コロナ社，1996.
69

[13] J. Gondzio, Hopdm - a fast lp solver based on a primal-dual interior point method, European Journal of Operational Research, Vol. 85, pp. 221-225, 1995.
[14] Visual Numerics, IMSL Math/Library Ver. 4.01, 1997.
[15] T. Nakamura and M. Ohsaki, A natural generator of optimum topology of plane trusses
for speciﬁed fundamental frequency, Comp. Meth. Appl. Mech. Engng., Vol. 94(1), pp.
113-129, 1992.

70

第 6 章 組合せ最適化問題
6.1

建築構造最適化における組合せ最適化

2 章から 5 章では，部材断面積などの設計変数は，連続変数であるものと想定した。しかし，建築の設計実務を考えると，部材の断面は，例えば表 6.1 に示すような，あらかじめ与えられたカタログから選択される場合が多い [1, 2]。したがって，設計変数は離散変数となり，構造設
計問題は組合せ最適化問題 [3, 4] として定式化される。組合せ最適化問題は，一般に整数計画問
題に分類され，連続変数の最適化問題の手法を単に適用すればいいというわけではない。
組合せ最適化問題の多くでは，解を得るための計算量は，問題のサイズを定める数（ 変数の数など ）の指数関数として定義される。したがって，変数が少ない場合には解くことができても，実際的なサイズの問題を現実的な計算時間で解くことは困難である。このような問題に対しては，整数変数を連続変数に緩和して目的関数の上界や下界を求め，元の問題の大域最適解
あるいはその近似解を求める分枝限定法が有効である [5]。トラスのトポロジー最適化への分枝
限定法の適用については，すでに 5 章で紹介している。6.3 節では，分枝限定法のアルゴ リズ
ムを解説し，簡単な構造最適化問題への適用例を紹介する。しかし，多くの現実的な問題では，
分枝操作や限定操作のための良好な指標が存在せず，大域最適解を求めることは困難である。
最近になって，コンピュータのハード ウェアの進歩により，構造解析を多数回繰返し実行することが可能になった。また，実際の設計問題では，厳密解が得られなくても近似最適解が得られれば十分である場合が多い。厳密解が得られるとは限らないが十分な精度での近似最適解
を現実的な計算時間で得ることのできる手法を，一般にヒューリスティックスあるいは発見的手法という [6, 7]。発見的手法は，探索時に保持する解の数により，多点探索法と単点探索法に分けられる。多点探索法の代表例は遺伝的アルゴ リズム (GA) である。GA については，建築関係でも多くの論文あるいは解説書で紹介されているので，ここでは省略する。
ところで，構造最適化問題では 1 回の解析のために要する計算コストが大きいので，多数回の計算を前提とする多点探索法よりは，単一の解を保持して探索する単点探索法の方が有利で
表 6.1: 梁と柱の断面リストの例

A0j
G1
G2
G3
G4
G5
G6

× 10
61.4
83.4
116.0
142.0
184.0
214.0

−4

梁
Zj0 × 10−6610.0
1040.01550.02180.03040.03560.0−8× 1010600.023200.038700.065500.089600.0105000.0

Ij0

A0j
C1
C2
C3
C4
C5
C6

71

× 10
104.0
162.0
186.0
277.0
309.0
599.0

−4

柱
Zj0 × 10−6986.0
1760.02330.03880.04840.08780.0Ij0 × 10−814700.030900.046700.087300.0121000.0219000.0

ある場合が多い。そこで，本章では，単点探索法に対象を限定し，その概要とトラスの断面積の最適化例を紹介する。

6.2

組合せ最適化問題

骨組構造物の各部材の断面を，与えられたリストから選択し，最適な組合せを求める問題を考える。表 6.1 に示したようなリストの中の j 番目の断面の特性を (A0j , Ij0 , Zj0 ) とする。ここで，A0j は断面積，Ij0 は断面 2 次モーメント，Zj0 は断面係数である。部材数を m とし，第 i 部材に
j 番目の断面を選択するとき xi = j (i = 1, 2, . . . , m) とするものとする。
部材の特性は整数のベクトル x = (xi ) によって決定されるので，静的荷重に対する変位や応力などの応答量は x のみの関数となる。これらの量に関する制約条件を

Hk (x) ≤ 0, (k = 1, 2, . . . , n)(6.1)

で表す。ここで，n は制約条件の数である。応力や変位に対する制約は不等式で定められることが多いので，ここでは簡単のため不等式制約条件のみを考える。目的関数についても x のみの関数として F (x) で表す。
以上より，最適な断面を選択する組合せ最適化問題は次のように定式化される。

minimize

F (x)

(6.2)

subject to Hk (x) ≤ 0, (k = 1, 2, . . . , n)xi ∈ {1, 2, . . . , ri }, (i = 1, 2, . . . , m)

(6.3)
(6.4)

ここで，ri は第 i 部材が選択できる断面種類の数である。上記の問題は，変数が整数なので，整数計画問題といわれる。すなわち，組合せ最適化問題は，一般に整数計画問題に分類される。
断面積をリストから選択する問題以外にも，トポロジー最適化問題も組合せ最適化問題として定式化できる。トラスのトポロジー最適化に対して，5 章ではグランド ストラクチャ法を紹介した。しかし，グランド ストラクチャ法では，局所的に不安定な最適解や，部材の交差を含む
現実的ではないトポロジーが得られることがあった。そこで，例えば図 6.1 のような 10 部材トラスに対し，選択可能な現実的なトポロジーのリストを図 6.2 のように，あらかじめ与えて最適化することも可能である。その場合，候補トポロジーのリストの中の番号が整数変数となる。
ところで，大域最適解を求めるのが困難な問題は，組合せ最適化問題に多く存在し，さまざ
まな手法が提案されてきた。最も古典的な方法は，許容な解を全て列挙する方法であり，列挙法といわれる。例えば，図 6.1 に示すようなトラスから，不要な部材を取り除いて最適な部材配置を求めるグランド ストラクチャ法を考える。部材数は 10 なので，簡単のため明らかに意味のないトポロジーも含めると，トポロジーの組合せ数は 210  1000 であり，全ての組合せに対して解析を行って最適な部材配置を求めることも可能である。しかし，組合せ数は部材数の指数関数なので，全ての解を列挙するのは明らかに非効率的である。例えば，部材数が 20 になると，組合せ数は約 100 万であり，列挙法を適用するのは困難である。そこで，以下に示すような分枝限定法，局所探索法や発見的手法が提案されてきた。

72

1

(3)

6

(5)

5
3

4

10
8

2

y
(2)

9

2.0 m

(1)

7
(4)

(6)
P

x
2.0 m

2.0 m

図 6.1: 10 部材トラス

(1)

(2)

(3)

(4)

図 6.2: トポロジーの候補リスト

6.3

分枝限定法

整数計画問題に対して，最適解とはなりえない解を効率的に見出して，探索範囲を限定して厳密解あるいはその近似解を求める方法を分枝限定法という。
m 個の変数 x = (x1 , x2 , . . . , xm ) で定義された関数 F (x) を最小化する問題を考える。簡単のため制約条件は考えない。制約条件が存在する問題は，2 章で解説したペナルティー法を用いて制約のない問題に変換することができる。さらに，簡単のため xi は 2 種類の整数値 xai , xbi(xai < xbi ) から選択するものとする。
変数の整数条件を緩和して，xai ≤ xi ≤ xbi の下で F (x) を最小化する問題を，原問題（ 元の問題）の緩和問題という。緩和問題は，原問題の制約を緩めた問題なので，その大域最適解での目的関数値 F L は，原問題の最適目的関数値 F opt を上回ることはない。このような関係が成立するとき，F L を F opt の下界という。さらに，整数条件を満たす任意の解での目的関数値をF U とすると，F U は F opt を下回ることはないので，F opt の上界という。緩和問題の大域最適

73

表 6.2: 分枝限定法による最適化の履歴

連続変数最適解
上界の解
A6 = 1000
A6 = 500
..
.

A1
1000
1000
1000
1000
..
.

A2
1000
1000
1000
1000
..
.

A3
598
500
556
605
..
.

A5
740
1000
500
787
..
.

A6
567
500
1000
500
..
.

A7
500
500
500.0
500
..
.

最適解 1
最適解 2

1000
1000

1000 500
1000 500

1000
500

500
1000

500
500

A8 V (×107 )C
834
1.567010000
1000
1.64859651
788
1.600010000
855
1.5687
10000
..
..
..
.
.
.
1000
1.64859651
1000
1.64859786

解が得られるとき（ 目的関数が凸であるとき），下記のようにして原問題の大域最適解を求めることができる。

Step 0 解くべき子問題の集合 P に原問題を入れ，上界 F U の暫定値 F U∗ を ∞ とする。あるいは，簡便な方法で整数条件を満たす解を得ることができれば，その解の目的関数値を F U∗とする。
Step 1 （分枝操作） P から問題を 1 つ取り出し，その問題 P を P から削除する。P の緩和問
題の最適解において xak < xk < xbk である変数 k を選択し，制約条件 xk ≤ xak 及び xk ≥ xbk（あるいは xk = xak 及び xk = xbk ）をそれぞれ与えた子問題 Pa , Pb の最適目的関数値を F a ,F b とする。
Step 2 （ 限定操作）• F a > F U∗ のとき xk = xbk として，その枝（ 子問題）を終了する。
• F a < F U∗ のとき，解が整数条件を満たすならば（全ての変数が整数ならば ）F U∗ = F a
としてその解を暫定解とする。整数条件を満たさないとき，Pa を P に追加して Step
1 へ。
• F b > F U∗ のとき xk = xak としてその枝を終了する。
• F b < F U∗ のとき，解が整数条件を満たすならば F U∗ = F b としてその解を暫定解とする。整数条件を満たさないとき，Pb を P に追加して Step 1 へ。
Step 3 最良の（ 最小の）上界を与える解を出力して終了。必要ならば最良の（ 最大の）上界を与える解を求め，上界と下界の差（ 双対ギャップ ）を計算する。
図 6.1 のような 10 部材トラスの最適解を，分枝限定法を用いて求めてみる。ここで，P = 100
kN であり，弾性係数を 200 kN/mm2 とする。以下では長さと力の単位をそれぞれ mm, kN とする。また，簡単のため，断面積は 500 と 1000 の 2 種類から選択するものとする。
目的関数は全部材体積 V であり，制約条件としては，4 章で定義したコンプライアンス（外力仕事）に対して下限値 10000 を与える。第 i 部材の断面積 Ai の上限値を 1000, 下限値を 500 として，連続変数の最適解を求めると，表 6.2 の 1 行目のようになる。ここで，以下の全ての解でA4 = A9 = A10 = 500 である。連続変数の解から最も近い離散変数を選択すると，C = 10590

74

6
3

3

8

1.64877511.65451.650251.65035
1.66541

2.09001.701781.70132
2.13142

1.8071
1.848512.28542.1314

図 6.3: 分枝・限定操作の履歴となって制約条件を満たさないので，部材 5 の断面積を 1000 にすると，表 6.2 の 2 行目のようになり，制約条件を満たしている。
部材 6 の断面積をそれぞれ上・下限値に制約して子問題の緩和問題を解いた結果を 3, 4 行目に示す。ここでは非線形計画問題を解いているので，C = 10000 となりコンプライアンス制約は等号で満たされている。目的関数は，ともに上界を超えないので，残っている実数変数に対して分枝操作を繰り返す。途中経過の詳細は省略するが，分枝・限定操作の履歴を図 6.3 に示す。図6.3 で，終端の数値は緩和問題の目的関数値 (×107 ) であり，その値が上界の暫定値 1.6485 × 107
を超えると，その枝での探索を中止（ 限定）している。節点の数字は分枝変数（ 断面積を上限
値と下限値に制約する部材の番号）である。この例では，非線形計画問題を 29 回解くことにより，2 種類の最適解が得られている。それらを表 6.2 の最後の 2 行に示す。ここで，最適解 1 は，最初の上界を与える解と同じである。

75

F(x)

E

A

C D

B
x0-∆x x0 x0+∆xx

図 6.4: 1 変数最適化問題での近傍

6.4

発見的手法（ヒューリスティックス）6.4.1

発見的手法の概要

前節で示したように，整数計画問題あるいは，組合せ最適化問題は，解を全て列挙しなくても，分枝限定法を用いて最適解を得ることができる。しかし，緩和問題である非線形計画問題の目的関数や制約関数が凸性を満たさなければ，大域最適解を得ることは保証されない。さらに，非線形計画問題を多数回解かなければならず，分枝の順序や上界の初期値によっては，ほとんど 全ての解を探索する必要がある場合もある。このように，組合せ最適化問題の大域最適解を現実的な時間で求めることは困難である。
ところで，工学の実際的問題では，大域最適解が求まらなくても，それに近い解を簡単な手続きで求められれば十分である場合が多い。そのため，解の収束性などの理論的保証がなくても，何らかの望ましい解が得られることが経験的に分かっている手法が存在すれば，実用的には十分であり，そのような手法を発見的手法あるいはヒューリスティックスという [6]。発見的手法は，解を複数保持する多点探索と，1 つの解を保持する単点探索に分けられる。構造最適化問題は，1 回の解析のために多くの計算量を必要とすることが多いので，以下では単点探索について解説する。
発見的手法は，基本的に，解の探索・評価・更新を繰り返す方法であり，各段階で種々の方法が存在する。基本的な動作は次のとおりである。
発見的手法の基本的動作

Step 1 初期解を仮定する。
Step 2 現在の解の近傍に解を生成して，それらを評価基準にしたがって評価する。
Step 3 各手法の動作原理にしたがって解を更新する。
Step 4 終了条件を満たさなければ Step 2 へ。
上記のように探索を行うためには，近傍の定義が重要になる。例えば，図 6.4 に示すような 1変数関数 F (x) の最小値を求める問題を考える。いま，仮に x = x0 が与えられたとし，そこから x を増加あるいは減少させて解を探索する。x の変更量を ∆x とすると，x0 − ∆x と x0 + ∆x

76

x2

4
E

D

C

F

A

B

G

H

I

3
2
1
O

1

2

3

4

5

x1

図 6.5: 2 変数最適化問題での近傍の 2 つの解を近傍解とすることができる。そこで，2 つの解での F (x0 − ∆x) と F (x0 + ∆x) を計算すると，図 6.4 では前者の方が小さいので，x0 − ∆x に解を更新する。このような探索法
を局所探索法という。
図 6.5 に，2 変数の場合の近傍の例を示す。現在の解を (x1 , x2 ) = (3, 2) とし，変数の変更量を 1 とすると，図の点 B, C, D, E, F, G, H, I を近傍とすることができる。このような近傍を
ムーア近傍あるいは 8 近傍という。それに対して，点 B, D, F, H をノイマン近傍あるいは 4 近
傍という。

6.4.2

貪欲法

単点探索に基づく発見的手法は，ランダム性を含むものと含まないものに分けられる。後者の代表例は貪欲法であり，制約条件付き最小化問題で，目的関数が変数の単調増加関数の場合には，次のようなアルゴ リズムが考えられる。
貪欲法のアルゴリズム

Step 1 制約条件を満たさない初期解を仮定する。例えば全ての変数をリストの中の最小値とする。
Step 2 最も効率よく制約条件を改善する近傍解に移動する。
Step 3 制約条件を満たさなければ Step 2 へ。
例えば，トラスのコンプライアンスに関する制約の下で全部材体積を最小化するような断面積を求める問題を考える。4 章で示したように，この問題の最適解では各部材のひずみの絶対値が一定になっている。したがって，ひずみが大きい部材が，コンプライアンスを小さくする
ことに最も貢献していると考えてよい。したがって，貪欲法のアルゴ リズムは次のようになる。

77

表 6.3: 貪欲法の履歴
応力の絶対値が最大の部材
2
1
8
5
3

全部材体積 (×107 )1.16571.26571.36571.50711.6485

コンプライアンス
16104
13695
11604
10591
9651

表 6.4: けちけち法の履歴
応力の絶対値が最小の部材
9
4
10
7
6
3
5
8

全部材体積 (×107 )2.33142.23142.13142.0314
1.88991.74851.64851.5071

コンプライアンス
8052
8054
8239
8394
8722
9181
9651
10590

骨組の断面積最適化

Step 1 断面積の離散的リスト (A(1) , A(2) , . . . A(r) ) の中から，全部材に対して最も小さい値 A(1)を選択する。
Step 2 部材応力を計算し，その絶対値が最も小さい部材の断面積を 1 ランク増加させる。
Step 3 コンプライアンスが下限値以上なら終了。そうでなければ Step 2 へ。
例として，再び図 6.1 の 10 部材トラスを対象とし，分枝限定法の例題と同じ問題を解いてみる。全ての部材の断面積が 500 であるような解を初期解とし，ひずみの大きい部材から断面積を順次増やしていき，コンプライアンス制約が満たされた時点で終了する。結果は表 6.3 に示したとおりであり，5 ステップで最適解が得られている。ただし ，変数の数が多く，制約条件が複雑な問題では，貪欲法で大域最適解が得られることは稀である。
貪欲法とは逆に，制約条件は満たすが目的関数が極めて大きい解からスタートして，最も効率よく目的関数を減少させる方向へ探索を進める方法をけちけち法といい，そのアルゴ リズム
は一般に次のようになる。
けちけち法のアルゴリズム

Step 1 制約条件を満たす初期解を仮定する。例えば全ての変数をリストの中の最大値とする。

78

Step 2 最も目的関数を効率よく改善する近傍解に移動する。
Step 3 制約条件を満たせば Step 2 へ。
トラスの最適設計問題では，全ての部材の断面積が 1000 であるような解を初期解とし，ひず
みの小さい部材から断面積を順次減らしていき，コンプライアンス制約が満たされなくなった
時点で終了する。結果は表 6.4 に示したとおりであり，7 ステップで最適解が得られている。ただし，この方法も，大規模な問題で大域最適解が得られることは稀である。

6.4.3

タブー探索法近傍の解へ移動する際に，近傍の中の複数の解を検定して，最も評価の高い解に移動すれば，最適解への収束性を向上させることができる。上記の最適設計問題では，1 つの部材の断面積を 500 から 1000 に，あるいはその逆に入れ替えた解が近傍の解である。そこで，全ての部材の断面積をそれぞれ入れ替えてみて，その中で最も効率よく解を改善する部材を選択すればよい。
このようにして探索する手法を局所探索法という。
解の評価には，最適化問題が定義されたときの目的関数を用いることができる。しかし，不等式制約条件がある場合には，目的関数を減少させることと制約条件を満たすことのトレード
オフが問題になる。したがって，通常はペナルティー法を用いて目的関数を変換する。
10 部材トラスの最適設計問題の解を，局所探索法で求めた。部材断面積のベクトルを x とし，目的関数を，全部材体積 V (x) から，ペナルティー法によって次のように変更する。

V ∗ (x) = V (x) + α(max {C(x) − C̄, 0})2

(6.5)

ここで，C̄ はコンプライアンス C(x) の下限値であり，以下の例では C̄ = 10000, α = 50 である。また，max {C(x) − C̄, 0} は C(x) − C̄ と 0 のうちで大きいほうの値であり，C(x) が C̄ 以
下のとき，すなわち制約条件を満たすときには 0 となる。ペナルティー法の詳細については 2章を参照すること。
局所探索の結果を表 6.5 に示す。全部材の断面積が 1000 である初期解では，目的関数値は8052 であり，制約条件を満たすためペナルティーは 0 である。そこで，全ての部材の断面積をそれぞれ 500 にして V と C を計算した結果，部材 5 の断面積を減らすと，表 6.5 の Step 1 のよ
うになり，目的関数は減少し，制約条件は満たされている。さらに探索を続けると，Step 5 で制約条件を満たさなくなり，以後制約条件を満たす解は得られなかった。この例では，Step 7
で，V ∗ が増加したので終了している。したがって，Step 4 の解が制約条件を満たす最良の解であり，大域最適解は得られていない。局所探索法の性能は，ペナルティー係数や初期解に大きく依存するが，一般に，大域最適解が得られる可能性は小さい。
ところで，解を改善する方向のみに進んでいけば，大域最適解に到達できず，局所最適解が得られてしまうことが多い。例えば，図 6.4 に示した目的関数の場合，点 A から出発すれば，大域最適解 B が得られる。しかし，点 C から出発すれば，局所最適解 D に到達してしまい，大域
最適解 B に到達するためには，目的関数が極大となるような点 E を通過しなければならない。
そこで，タブー探索では，近傍の最良解での評価が現在の評価から改善されない場合でも，その解に移動することを許容する。このような操作によって，局所最適解から脱出することが可能になる。
しかし，改悪される解への移動も許容すると，1 つの変数が繰り返し変更されたり，少数の解の間を繰返し移動するサイクリングといわれる現象が生じ る場合がある。例えば，表 6.5 の79

表 6.5: 局所探索法の履歴

Step 0
Step 1
Step 2
Step 3
Step 4
Step 5
Step 6
Step 7

選択部材
5
6
7
9
10
4
4
4

全部材体積 V (×107 )2.33142.19002.04851.90711.8071
1.70711.6071
1.7071

コンプライアンス C
8052
8596
9466
9904
9922
10039
10141
10039

目的関数 V ∗ (×107 )2.33142.19002.04851.90711.8071
1.7151
1.70781.7151

例で Step 8 以降も探索を継続すると，部材 4 の断面積が繰返し変更されるループに陥る。このような現象を避けるため，すでに検定済みの解へは，定められたステップ数の間移動できないものとし，それらの解のリスト（タブーリスト ）を設けて解空間を探索する方法をタブー探索法という。タブー探索法の基本的なアルゴ リズムは下記のとおりである。
タブー探索法のアルゴリズム

Step 1 初期解を与え，それを暫定解 x∗ とし，F (x∗ ) を最適目的関数値の暫定値 F ∗ とする。また，タブーリストを空にする。
Step 2 全ての近傍解がタブーリストに含まれていたら終了。そうでなければ近傍の最良解 x̃
を選ぶ。
Step 3 x̃ へ移動して x̃ をタブーリストに追加する。F (x̃) < F ∗ ならば，x∗ = x̃, F ∗ = F (x̃)
とする。
Step 4 全体の繰り返し数あるいは暫定解が更新されなかった回数が指定値を超えたら終了。そうでなければ Step 2 へ。
10 部材トラスの最適設計問題の解を，タブー探索法で求めた結果を表 6.6 に示す。ここで，全部材の断面積が 1000 である解を初期解とする。Step 6 までは局所探索の結果と同じである。しかし，局所探索では Step 7 で Step 5 と同じ解に戻ったのに対し，タブー探索では戻ることが許されないので，部材 5 が選択され，続いて部材 3 が選択されて最適解が得られている。
ところで，タブーリストが長くなると，チェックに時間がかかるので，適当な長さに限定して過去の記憶を忘れていく方法や，解そのものではなくその特徴を記憶する方法もある。あるいは，記憶の新しさに応じて，その解に移動することのペナルティーを変更する場合もある。

6.4.4

シミュレーテッド アニーリング

上記のような局所探索に基づく方法では，変数が多くなると，近傍解が多くなり，計算時間が変数の数の指数関数的に増加する。したがって，近傍解の中の一部のみを探索して，その中で最も優れた解を選択するアルゴ リズムが必要になる。
そのための最も単純な方法は，以下に示すようなランダム探索法である。

80

表 6.6: タブー探索法の履歴

Step 0
Step 1
Step 2
Step 3
Step 4
Step 5
Step 6
Step 7
Step 8
Step 9

選択部材
5
6
7
9
10
4
5
3
4
9

全部材体積 V (×107 )2.33142.19002.04851.90711.8071
1.70711.60711.74851.64851.7485

コンプライアンス C
8052
8596
9466
9904
9922
10039
10141
9181
9651
9530

目的関数 V ∗ (×107 )2.33142.19002.04851.90711.8071
1.7151
1.70781.74851.64851.7485

ランダム探索法のアルゴリズム

Step 1 初期解をランダムに生成する。
Step 2 近傍解をランダムに生成して移動する。複数の近傍解を生成する場合は，その中で最良の解へ移動する。
Step 3 終了条件を満たさなければ Step 2 へ。
ランダム探索法は効率の上では良くないが，プログラムは極めて簡便である。また，最適解が得られる可能性についても，理論的な研究がなされており，近似最適解を求めるためには有効である。
しかし ，単にランダムに探索するだけでは，改悪されるような解にも移動してしまうので，改悪量に応じた確率で移動を制限し，ステップの進行に応じて改悪解への移動確率を減少させるような手法をシミュレーテッド アニーリング (SA) という。SA の基本的なアルゴ リズムは下記のとおりである [8]。

SA のアルゴリズム
Step 1 初期解をランダムに生成して温度パラメータを設定する。
Step 2 近傍解をランダムに生成する。
Step 3 解が改善される場合は無条件に移動する。改悪される場合は改悪量と温度パラメータによって定まる確率で移動する。
Step 4 温度パラメータを減少させる。
Step 5 終了条件を満たさなければ Step 2 へ。
ここで，Step 3 において，温度パラメータが小さいと移動確率は小さくなる。このアルゴ リズ
ムは，金属の焼きなまし過程を模擬したものであるため，シミュレーテッド アニーリング (擬似焼きなまし法) という。

81

表 6.7: シミュレーテッド アニーリングの履歴
選択部材

Step 0
Step 1
Step 2
Step 3
Step 4
Step 5
Step 6
Step 7
Step 8
Step 9
Step 10
Step 11
Step 12
Step 13
Step 14
Step 15
Step 16
Step 17
Step 18
Step 19

1
1
9
2
4
3
1
6
9
6
10
8
3
5
7
10
9
10
3
5

全部材体積
(×107 )
1.74853
1.84853
1.74853
1.94853
1.74853
1.74853
1.84853
1.74853
1.707111.80711
1.94853
1.84853
1.707111.74853
1.88995
1.88995
1.84853
1.74853
1.64853
1.74853

コンプライアンス

11849
9483
11849
9444
11295
9645
9245
11577
10040
10015
9177
9277
10416
9728
9156
9300
9596
9645
9786
9356

目的関数
(×107 )
18.83495
1.84853
18.83495
1.94853
10.132411.74853
1.84853
14.18275
1.715101.80828
1.94853
1.848532.57057
1.74853
1.88995
1.88995
1.84853
1.74853
1.64853
1.74853

閾値

乱数

採用

—
0.00004
0.938850.00408—
0.925150.00007—0.917410.87850—0.48536—0.847170.839810.87815——0.85150
0.78718—0.60135
0.967960.51498—
0.74351
0.56039—0.59192
0.87663—
0.96661—
0.89950
0.90153
0.16471——
0.936240.30846

Y
N
N
N
Y
Y
N
Y
Y
Y
Y
N
Y
N
N
Y
Y
Y
N
Y

10 部材トラスの最適設計問題に，SA を適用した結果を表 6.7 に示す。ここで，初期解の断面積は，奇数部材は 500，偶数部材は 1000 である。また，第 k ステップでの，式 (6.5) で定義し∗た V ∗ の値を Vk∗ とし，Vk∗ > Vk−1のとき変更を採用するための閾値は次式で定める。
∗P = exp∗(V ∗ − Vk−1
)2
− k
Tk


(6.6)

∗
ここで，Tk はステップ k での温度パラメータである。式 (6.6) より，Vk∗ − Vk−1
が大きくなると，∗
P は減少することがわかる。
温度パラメータの更新方法としては，以下のような 2 つの方法が一般的である。

指数型アニーリング : Tk+1 = ηTk
Tk
対数型アニーリング : Tk+1 =
log k

(6.7)

以下では，Tk の初期値を 1 とし，η = 0.95 の指数型アニーリングを用いる。その他のパラメー
タは，タブー探索の例題での値と同じである。
初期解において乱数を発生させ，部材 1 が選択された。部材 1 の断面積を変更すると V ∗ が減少するので，その操作を採用する。表中の「 Y 」と「 N 」は，採用と不採用をそれぞれ意味す82

る。次のステップでも部材 1 が選択され，V ∗ は増加する。ここで，P ∗ は 0.00004 であり，乱数を発生させると 0.60135 であったので，変更を採用しない。以下，Step 2, 3, 4 でも採用されず，
Step 5 で，部材 3 の断面積を変更すると，現在の解（ Step 1 の解）より V ∗ が減少するので採用する。同様の操作を繰返し，Step 18 で最適解が得られている。

参考文献[1] 日本建築学会・知的システム小委員会 編, やさしくわかる建築・都市・環境のためのソフ
トコンピューティング , 4.3 節 空間構造 − 発見的手法による離散断面を有する構造物の最適化, 2005.
[2] 日本建築学会建築システム最適化特別研究委員会，建築システムの最適化，2003.
[3] 茨木俊秀, 組合せ最適化の理論, コロナ社, 1979.
[4] 久保幹男, 組合せ最適化とアルゴ リズム, 共立出版, 2000.
[5] 奈良宏一，佐藤泰司，システム工学の数理的手法，コロナ社，1996.
[6] 柳浦睦憲，茨木俊秀，組み合せ最適化 −メタ戦略を中心として−，朝倉書店，2001.
[7] 三井和男，大崎 純，大森博司，田川 浩，本間俊雄，発見的最適化手法による構造のフォルムとシステム，コロナ社, 2004. (分担執筆)[8] 日本建築学会応用力学運営委員会構造形態解析との応用小委員会 編, 構造形態創生の理論と応用, 丸善，2001.

83

セミナーを終えて
本セミナーでは，最適設計法（あるいは構造最適化）の建築・土木の分野への適用法について解説した。
1 章でも述べたように，最適設計法は，数理工学，経済学あるいは応用数学の分野で発展してきた最適化手法を，工学の諸分野に適用したものである。
したがって，工学のそれぞれの専門分野に精通していれば，最適化手法を勉強すれ
ば，最適設計法を理解できるといえないことはない。
しかし，本セミナーで解説したように，設計感度解析法などの独自の研究領域が存在
し，単なる応用で済ますわけにはいかない。
最適設計法は，工学の諸分野のなかで，とくに機械工学や航空工学の分野で発展してきた。
そこでは，平板やシェル，あるいは 3 次元構造物などの連続体と対象としている。
一方，建築・土木の分野では，主に骨組やトラスなどの離散系構造物を対象としており，一般に，連続体が理解できれば離散系構造物を理解することは容易であると考えられがちである。
しかし，本セミナーで紹介したように，離散系構造物では，トポロジー最適化のような独自の問題があり，さらに，離散変数の組合せ最適化問題になる場合も多い。
したがって，機械・航空の分野の解説書を，単に建築・土木向けに読み替えれば良いというものでもない。
以上のような理由により，建築・土木の技術者向けの，最適設計法に関する分かりや
すい解説書が必要である。
しかし，現在のところ，離散系構造物の最適設計に関して包括的かつ系統的に解説した入門書は存在しない。
本セミナーが，建築・土木の技術者が最適設計法に興味を持ち，理解するための最初のステップになることを期待する。