amazon:Excelで操る! ここまでできる科学技術計算 第2版 楽天: Excelで操る! ここまでできる科学技術計算 [ 神足 史人 ] |
図1 例題関数のグラフ |
関数の最小値(最大値)求める場合、図2の様に範囲内の2点の関数値を求め、大小を比較しながら範囲を狭めていけば、最小値が探索できる。3等分に分割すると、毎回範囲を分割ことになり非常に煩雑となる。 そこで、図2のように範囲をx対1の比に分割たとき、a対bの比もx対1になるようにすると、無限に分割を繰り返すことができる。 比例式を下記に示す。 x : 1 = a : b x : 1 = 1: x-1 この比例式は次の2次方程式となる。 x2 - x - 1 = 0 ・・・ (1) (1)式の範囲内の解は x= ( 1+√(5) )/2 = 1.618・・・となる。この分割比は黄金比(黄金分割)と呼ばれているものである。 |
たった1日で即戦力になるExcelの教科書 入門者のExcel VBA―初めての人にベストな学び方 (ブルーバックス) Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 すぐに使える! Excel関数逆引き辞典 ワープする宇宙 |
(1) 探索範囲[F:T]を設定する。 (2) 黄金比による左側分割点L、右側分割点Rを求める。 (3) 分割点での関数値f(L)、f(R)を求める。 (4) f(L) > f(R)のとき、FをLに置き換える。そうでないとき、TをRに置き換える。 (5) (2)〜(4)を繰り返す。 この方法ではN回探索後の精度εは次式となる。 ε=(1/1.62・・・)N-1 ・・・(2) |
Excelを用いて例題の関数f(x)=x+2/xの最小値を求めてみよう。理論解はx=√2のときf(x)は最小となる。 図3様に、セルに計算を組み込む。 図3 黄金分割法の設定 今回の計算では、自分自身のセルを参照する循環参照を行うため、最大反復計算回数を設定する。メニューバーのツール→オプションを選択すると、次のオプション画面が現れる。この画面で計算方法として自動を選択する。反復計算にチェックをいれ、最大反復回数を100に、変化の最大値を小さな値に設定し、OKボタンをクリックする。 図4 オプション画面 計算実行のセル値をyに変更すると、図5のように最小値が探索できる。 図5 最小値の探索結果 |
Copyright (C) GODFOOT 2010 All Rights Reserved.