
初歩的な質問ですみません.
複数の点(x, y)の近くを通る指数関数(y = a^x + c)を,
近似で出したいとき,指数aや定数cの求め方についてです.
■前提条件
・y = f(x) = a^x + c とする (a:指数,c:定数)
・座標1 (x1,y1)=(50,5)の近くを通って欲しい
・座標2 (x2,y2)=(1000,30)の近くを通って欲しい
■解法の糸口(自分でやってみたこと)
・y=a^x は,a=y^(1/x),またx=log_a(y) ともかけるので,
1.とりあえずcは無視して,座標1を代入すると,
5=a^50 ⇔ a=5^(1/50)=1.032712419896443
2.座標2を代入すると,
30=a^1000 ⇔ a=30^(1/1000)=1.0034069880166463
3.1.と2.の答えが違っているため,どちらをどう使っていいかわからない
しかも,まだcは考慮できていない.
Webでも調べたりして,いろいろ試行錯誤したのですが,
頭が混乱してきて,お手上げ状態になってしましました….
よろしければ,導出方法を計算過程を記して教えていただけると嬉しいです.
必要に応じて,関数電卓をお使いください.
※a^bを計算するときは,pow(a,b)と入れないと正しい答えを返しませんのでご注意ください.
http://tomari.org/main/java/dentaku_kansuu.html
※ちなみに,指数関数y=a^x+cは,座標が最低何個わかればaとcが求まるのでしょうか?
未知の変数の数は2個(aとc)なので,2個あれば確定するのでしょうか.
N個の近似となると別に確定する必要はないのですが,知っておかないといけない情報かもしれません.
ちなみに,これまで関数近似については,最小二乗法(直線の近似)以外,
高校以来,あまり勉強したことはありません.
(つまり,指数関数の本質,数学的な知識は乏しいです….)
以上です,よろしくお願いいたします.
No.2ベストアンサー
- 回答日時:
補足(1)
a^50(a^950-1)-25 = 0
を解けばいいですが、
excelでやるなら、ソルバーの機能を使えばいいでしょう。
正直、私はexcelには詳しくないので
「excel ソルバー」とかで検索してみるといいと思います。
補足(2)
普通は最小二乗法を使います。excelでやるならこれもソルバーでできます。
http://homepage1.nifty.com/gfk/square_solver.htm
に、N次関数で近似する例が載っていますが、指数関数で近似する場合も同様にできます。
大変的確な補足,ありがとうございました.
excelを使いこなすと,最小二乗法の計算も容易にできるのですね.
参考URLも非常にわかりやすいサイトを選んでもらい,本当に助かりました.
rabbit_catさんの回答で満足したので,
ここで回答を締め切りたいと思います.
ありがとうございました.
No.1
- 回答日時:
>※ちなみに,指数関数y=a^x+cは,座標が最低何個わかればaとcが求まるのでしょうか?
>未知の変数の数は2個(aとc)なので,2個あれば確定するのでしょうか.
その通り。
というわけで、未知数がa,cの2個で、座標1 (x1,y1)=(50,5)、座標2 (x2,y2)=(1000,30)の2点が与えられているので、近似ではなくて、厳密にこの2点を通るように、aとcを決められます。
1.ちゃんとcも無視しないで、座標1を代入すると,
5 = a^50 + c … (1)
1.cを無視しないで、座標2を代入すると,
30 = a^1000 + c … (2)
というわけで、(1)と(2)を連立させてa,cについて解けばいいです。
実際に解くのは数値計算しかないですが、
a = 1.0030570062962585087533299236029851259021224685666…
c = 3.8351210713869479819882604408568938733579605262382…
といった感じになります。
>rabbit_catさん
夜分遅くに,迅速な回答,どうもありがとうございました.
とても助かりましたm(_ _)m.
>1.ちゃんとcも無視しないで、座標1を代入すると,
そうでした….なんでcを無視し続けちゃったんだろ><;..
単に連立一次方程式の理屈でした….気づかせていただき,ありがとうございます
.
続いての質問で誠に恐縮ですが,
関連する(1)~(2)の教えていただけると幸いです.
>実際に解くのは数値計算しかないですが、
(1)他の任意の値でも,aとcを(プログラム上で)計算したいので,
もしよろしければ,計算する手段(方程式/Excel/フリーソフトでも可)を教えていただけないでしょうか?
人が見た時の計算過程は,おそらく
(2)-(1) = 25 = a^1000-a^50 = a^50(a^950-1)とやりますが,
これだとaが少数だと人間の手には負えませんし,
教えていただいた精度のaを求める計算手段(「a=***」となる式)は,
私の力では探せませんでした.
(2)また,N個になる場合の近似曲線を求める場合は,
スマートに計算するには,何らかの方程式に当てはめるのだと思いますが,
指数関数用の近似方程式などはあるのでしょうか?
ちなみに,対数関数(y = log_a(x)+c)の近似方法も知りたいのですが…,
(2個の座標がわかれば,連立方程式でa,cは確定することはわかりました.)
これは欲張りなので,もう少し自分で調べてみます.
長文になってしまい申し訳ありません.
わかる範囲だけの回答,短くで結構です.
※なお,適切な方程式/ソフトが無い場合は,
今は特に処理速度に拘っているわけではないので,
いっそ自分で総当たりをするプログラムを作って出そうと思っています.
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 数学 ファジィ理論について教えてください 2 2022/07/12 16:01
- 統計学 不偏分散について 3 2022/03/29 15:57
- 統計学 直線の傾き(回帰係数)から相関係数を計算できるのでしょうか? 2 2022/09/16 19:28
- 数学 数学1の問題がわかりません。 次の関数において、頂点の座標と、[]内のxの値に対するyの値を求めよ。 3 2023/02/13 00:36
- 数学 放物線y=a(x-a)(x-b)について、頂点の座標を求めなさい。ただし、a≠0とし、a,bは実数の 6 2023/03/21 00:26
- 統計学 確率統計の問題です。 3 2022/04/07 04:39
- 数学 数2Bの数列の問題です。 自分は、 まず数列 an=ar^(n-1)と置き こちらの問題の、y= の 1 2022/07/07 16:26
- 数学 「f(z)=1/(z^2-1)に関して ローラン展開を使う場合、マクローリン展開を使う場合、テイラー 3 2022/08/27 19:56
- その他(プログラミング・Web制作) どういうプログラムで組みますか?google colabでやってるんですけど、出来る方お願いします。 1 2022/07/17 18:41
- 数学 数学(二次関数と接線)(誤りがあり再質問) なぜ2つの「x^2の係数が同じ二次関数」の交点x座標は 1 2023/07/06 11:57
このQ&Aを見た人はこんなQ&Aも見ています
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
座標(x,y)間(=2点)の...
-
右下の小さい数字について
-
「原点に返る」と「原点に戻る...
-
良問の風28についてです。(1)は...
-
先日は問題が送れてなかったよ...
-
重分積分の極座標変換について
-
2次関数y=ax^2のグラフは点A(4,...
-
測量座標と算数座標の違い
-
なぜベクトルの外積の向きが右...
-
外積が右ねじの向きであること...
-
距離と方向角から座標を求める...
-
三角関数 範囲が-πからπのとき...
-
東大過去問 最大と最小
-
距離、方位角から座標を求める方法
-
2点からその延長線上にある点の...
-
楕円の角度とは?
-
楕円の円周上の座標を求める計...
-
等角螺旋(らせん)の3次元的...
-
斜距離の算出公式はありますか?
-
生データーからのグラフから関...
おすすめ情報