SSブログ

お前らに質問(4月3日)!! [お前らに質問]

お前らに、問題!!

 

kensaku-box.png問題 次の方程式の解を2分法とニュートン法で求めたい。

  

さて、次の条件で計算したとき、2分法とニュートン法、どちらが速く収束解を得られるでしょうか。

 

2分法 計算開始の区間をI₀=[0,5]とする。

ニュートン法 x₀=5を計算の出発点とする。

収束条件 |x−3<10⁻⁶

 

上の方程式の解がx=3だってことは計算するまでもなくわかる。

2分法とニュートン法のどちらが速く計算できるか、それを答えろってのがこの問題だ。

 

2分法が何かわからないヒトは、次の記事を読むべし。

http://nekodamashi-math.blog.so-net.ne.jp/2015-02-23

 

ニュートン法がわからないヒトは、たとえば、次の記事を読むべし。

http://nekodamashi-math.blog.so-net.ne.jp/2017-03-06-3

C言語のプログラムは、次のところに出ている。

http://nekodamashi-math.blog.so-net.ne.jp/2017-03-07

 

PC版のブログを見ているヒトは、ブログの左脇に出ている検索ボックスにニュートン法と書き、検索をかけると、ニュートン法に関係する、「ねこ騙し数学」の記事が幾つか出てくる(右図参照)。

だから、できねぇとは言わせない。

 

プログラムを作る環境を有していない、表計算ソフトも持っていないヒトは頭で考える。

この問題は、頭で考えることによっても、十分に解くことができる問題なんだから。プログラムを書いたり、スプレッドシートを作ったりせずとも、この問題は解くことができる!!

もっとも、ネムネコの母親のように、「私の頭は飾りとしてついている」というヒトは、話が別だが・・・。



ネムネコの母親と違って、お前らの頭は飾りじゃないだろう?

必要な最低限のツールは、紙と鉛筆、次の常用対数表、そして、何より、考えることのできる頭。


「こんなのはチョロいぜ」というヒトは、

  

 

に対し、計算開始点をx₀=5x₀=−5とした場合のニュートン法による方程式の(収束)解を求め、その際の収束速度の違いについて検討する。

これらの問題にチャレンジし、答に辿りつけたヒトは、一般に数値解析の常識と信じられていることが、実はそれほど当たり前のことでなかったということを知ることができるのであった。




nice!(2)  コメント(2) 
共通テーマ:音楽

nice! 2

コメント 2

ddtddtddt

 x=3の近傍では接線がどんどん寝ていくので、

 「やばそうですな、これは」と甲板長。
 「もう少しだ」と真田さん(ヤマト2199より)

という事態になりそうですな、ネコ副長(^^)。


 少なくとも1980年を境としてPCは劇的に速くなりました。その頃から自分はbysection(二分法)派でした。

 何故ならニュートン法も二分法も安全に使うためには、けっきょく解が一意になる範囲を事前に調べなきゃならないんですよ。

 さらにニュートン法には計算過程が循環状態に陥る危険があり、二分法はx軸に接する重根がわからないという欠点がありますが、これらは事前に方程式の大域的性質を調べる事で解決されます。

 それは解が一意になる範囲を事前に調べる作業の一環です。そうすると、後は収束速度と解精度の制御のしやすさですよね。

 速度について言えば、「少なくとも1980年を境としてPCは劇的に速くなった」ので、ニュートン法で1/1000秒,二分法で1/100秒であったとしても、人にとって何の違いがあるの?、と自分には思えます。

 「どっちにしろ、煙草一本吸えないじゃん(^^)」

 次に解精度の制御ですが、それは抜群に二分法の方が容易です。容易というのは、何回計算すればこの精度に達するよとの事前予想の過程が二分法の方が遥かに単純だからです。だって区間幅が1/2ずつになってくだけですから。

 ・ニュートン法は予想外に速かったり遅かったりします。

 そういう訳で、自分は二分法派です。そしてこれを一回自認すると、計算まで単純化されます。

 ・だって、微分しないんですもん!(^^)。

by ddtddtddt (2018-04-03 18:47) 

nemurineko

コメント、ありがとうございます。

微分するのが面倒くさい場合は別ですが、私は学生の頃からニュートン法派ですね。
計算速度が云々というよりも、ニュートン法のほうがプログラムを作るのが楽ですから。
2分法は、プログラムを作るとき、条件文をいっぱい使わないといけない。その上、プログラムを作るとき、if文の条件のところを間違いやすく、計算がまったく進まないことがありますから(^^ゞ

ですが、得体のしれない方程式の場合は、2分法を使いますね。
二分法ならば、20回も反復計算させれば、調査区間が百万分の一になり、かなり正確な近似解が求まりますし、なんたって、ニュートン法と違って、二分法は確実で安全ですから。


by nemurineko (2018-04-03 20:21) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。