(57)【要約】【課題】１．任意の数の下級財を表現できる数値計算が可能な効用関数により，多数の財の需要量の変化をただ１本の効用関数に集約する。２．その効用関数をもとに需要関数を生成して，予算ｍや価格の変化に対して，需要量ｘの数列が自然に変化するような関数を実現する。３．観察データから効用関数や需要関数のパラメータを推計して，それらを生成する。 【解決手段】１．効用関数を足し算構造を基本とする陰関数としつつ，陰関数の値は計算機では確実に計算できるような式を採用する。２．関数のパラメータを少なくして，操作しやすくすることで回帰の成功率を高める。３．多変数の非線形の重回帰を，ｎ回の非線形の単回帰に分解する方法により，回帰の成功率を高める。 【選択図】  図５
2020038607.tif 000002
【特許請求の範囲】
【請求項１】
財の量ｘ１，…，ｘｎの値を決めた上で，その財の量から得られる効用の値ｕについて，下記のＵ（ｕ，ｘ１，…，ｘｎ）＝０，（数１７）の数値解をもちいて，ｕの数を生成する計算装置，または，計算プログラム
【数１７】
2020038607.tif 000017
ｋは財のインデックスで，１番からｎ番までの範囲の値。ｎは財の種類の総数。ｘｋは財の数量。ｕは効用水準。また，パラメータの範囲は，０≦ａｋ≦１，０≦ｂｋ，０≦ｃｋ，０≦ｄｋ。なお，以下のすべての請求項について，ｋ，ｎ，ａｋ，ｂｋ，ｃｋ，ｄｋの変数の意味や範囲は同じとする。
【請求項２】
第ｉ財の補償需要量ｘｉ（補償需要量とは，支出額をΣｋ＝１ｎｐｋｘｋとして，自身が望むｕの値を与えた（数１７）において，最小の支出額で実現できるｘ１，…，ｘｎのことであり，いわゆる経済学における補償需要関数で算出される需要量）について，下記のＦ（ｘｉ，ｕ）＝０（数１８）の数値解をもちいて，その数を生成する計算装置，または，計算プログラム
【数１８】
2020038607.tif 000018
ｉは財のインデックスであり，１番からｎ番の財のうち実施者が補償需要量を計算したい財のインデックス。ｘｉは第ｉ財の補償需要量。また，パラメータの範囲は，０≦ａｉ≦１，０≦ｂｉ，０≦ｃｉ，０≦ｄｉ。なお，以下のすべての請求項について，ｉ，ｎ，ａｉ，ｂｉ，ｃｉ，ｄｉの変数の範囲は同じとする。
また，ｐｋは第ｋ財の価格を表し，ｐｋ＞０である。以下の請求項もｐｋの意味と範囲は同じ。
【請求項３】
第ｉ財の通常需要量ｘｉ（通常需要量ｘｉとは，予算制約式をｍ＝Σｋ＝１ｎｐｋｘｋとして，（数１７）から計算される効用ｕを最大にするような需要量であり，いわゆる経済学における通常需要関数で算出される需要量）について，下記の（数１９）と（数２０）の２つの方程式Ｆ（ｘｉ，ｕ）＝０，Ｇ（ｘｉ，ｕ，ｍ）＝０の数値解を用いて，その数量を生成する計算装置，または，計算プログラム。
【数１９】
2020038607.tif 000019
【数２０】
2020038607.tif 000020
ｉは財のインデックスであり，１番からｎ番の財のうち実施者が通常需要量を計算したい財のインデックス。ｘｉは第ｉ財の通常需要量。ｍは予算。ｕは最大化された効用。 なお，数学的に（数１９）は（数１８）と完全に同一の数式である。
【請求項４】
（数１７），（数１８），（数１９），（数２０）の１つ以上の式を用いて，これら数式中の変数について実施者が用意したデータと整合的なａｋ，ｂｋ，ｃｋ，ｄｋ（ｋ＝１，…，ｎ）の値を算出し，算出された値を（数１７），（数１８），（数１９），（数２０）の１つ以上の式に代入して推計式をつくり，作った推計式もとに，ｘｋ，ｍ，ｕの数を生成する計算装置，または計算プログラム又は，そのようなｘｋ，ｍ，ｕの推計方法。
【請求項５】
（数１７），（数１８），（数１９），（数２０）におけるｂｋ／（ｕｃｋ＋ｄｋ）の項を数学的に似たような数を生成する関数，たとえば，ｂｋ／（ｕ０．０００１＋ｕｃｋ＋ｄｋ）などに置換した数式。
【請求項６】
財の量ｘ１，…，ｘｎの値を決めた上で，その財の量から得られる効用の値ｕについて，下記のＵ（ｕ，ｘ１，…，ｘｎ）＝０，（数２１）の数値解をもちいて，ｕの数を生成する計算装置，または，計算プログラム
【数２１】
2020038607.tif 000021
ｋは財のインデックスで，１番からｎ番までの範囲の値。ｎは財の種類の総数。ｘｋは財の数量。ｕは効用水準。また，ｇｋ（ｕ）は，分析に使用するｕの上限と下限の範囲内のｕの値について，ｇｋ（ｕ）＞０かつｇｋ′（ｕ）≦０となりえる関数。ｇｋ（ｕ）の例としては，（数１７）でも使われているｇｋ（ｕ）＝ｂｋ／（ｕｃｋ＋ｄｋ）や，ｇｋ（ｕ）＝１／（α４ｋｕ４＋α３ｋｕ３＋α２ｋｕ２＋α１ｋｕ１＋α０ｋ）がある。以下のすべての請求項について，ｇｋ（ｕ）の定義は同じとする。
【請求項７】
第ｉ財の補償需要量ｘｉ（補償需要量とは，支出額をΣｋ＝１ｎｐｋｘｋとして，自身が望むｕの値を与えた（数２１）を満たしつつ，支出額が最小となるｘ１，…，ｘｎのことであり，いわゆる経済学における補償需要関数で算出される需要量）について，下記のＦ（ｘｉ，ｕ）＝０，（数２２）の数値解をもちいて，その数を生成する計算装置，または，計算プログラム
【数２２】
2020038607.tif 000022
ｉは財のインデックスであり，１番からｎ番の財のうち実施者が補償需要量を計算したい財のインデックス。
【請求項８】
第１財から第ｎ財までの財の量ｘ１，…，ｘｎの値をＴ組（Ｔ≧１）用意して，「ある１組のｘ１，…，ｘｎと，自身が決めたｕの値を（数２３）に代入して，ｇ１Ｅ，…，ｇｎＥの値を算出し，使用したｕの値も記録しておく」，続いて，「」で囲んだ処理を，Ｔ組のすべてのｘ１，…，ｘｎの値と自分で決めたｕについても行う。これでＴ組のｇ１Ｅ，…，ｇｎＥの値，および，Ｔ個の自分で決めたｕの値が作られている。そして，『（数２１）と（数２２）で使われるｇｋ（ｕ）をＴ個あるｇｋＥの値をＴ個あるｕの値に回帰することで決定する』。『』で囲んだ処理をｋ＝１からｋ＝ｎまで繰り返して，ｇ１（ｕ）からｇｎ（ｕ）までの関数を推計する。このような方法で，（請求項６）や（請求項７）で用いる関数ｇｋ（ｕ）を生成するプログラム，または，そのような関数ｇｋ（ｕ）の推計方法。なお，（数２３）のａ１，…，ａｎ，および，ｐ１，…，ｐｎは，（請求項６）および（請求項７）で用いるａ１，…，ａｎ，および，ｐ１，…，ｐｎと同じものである。
【数２３】
2020038607.tif 000023
【発明の詳細な説明】
【技術分野】
【０００１】
数理計画法，ＯＲ，経済学，玩具
【背景技術】
【０００２】
予算が２００円のときはドリンクのＭサイズのみを購入するが，予算が６００円に増えると，フードを購入するが，ドリンクはＳサイズに減少する。このときドリンクが下級財である。下級財は，予算が増えると購入量が減少する財をいう。一方，フードのように予算が増えると購入量が増加する財は上級財である。
【０００３】
統計データを解釈する上では「予算」の語は，「所得」，「総支出」と同じようなものである。日本の「家計調査」では，毎月の総支出と数百品目の財の購入額が統計として見られる。当然のことであるが，所得が増加すると，購入できる財は，種類・量ともに拡大することから，全体としてみると，多くの財は上級財となる傾向を必然として持つ。それでも，単身世帯では，所得が増えると米は外食に負けて減少している。他にも，詳細なデータでは穀類やデンプン製品，魚類などの中に下級財がみられる。
【０００４】
以下，予算をｍ，財の需要量をｘ，あるいは，複数の財を区別するときには財番号を付してｘｉ（ｉ＝１，２，…，）と表す。また，価格はｐ，複数の財の価格を区別するときには財番号を付してｐｉ（ｉ＝１，２，…，）と表す。
【０００５】
その人の予算ｍと財の需要量ｘの関係を（ｍ，ｘ）平面にグラフに表したものをエンゲル曲線という。（図１）は，典型的なエンゲル曲線を連続な曲線として描いたものである。理論上，ｍ＝０ならば，必ずｘ＝０なので，必ず原点（０，０）からエンゲル曲線は発するが，下級財の場合には，（図１）のＡ図のように，ｍ＝０から急速に上昇したのち，ｍ＝１．５あたりからのように減少に転じる。この減少の傾向の部分が下級財を顕著に表し，（０００１）のドリンクの削減などを表現する。
【０００６】
（図１）のＢやＣは上級財のエンゲル曲線の形である。上級財の場合，必ず原点（０，０）からエンゲル曲線は発し，ｍが増えるとｘは増加し続ける曲線となる。これは（０００１）のフードなどがこのような図で表される。
【０００７】
エンゲル曲線でなくても，総支出額をｍとし商品の購入量をｘとして，連続な線ではなく，実データをプロットして折れ線グラフを描いた図は，会議用の資料などでも使えそうな図である。なお，経済学では（ｘ，ｍ）平面を使うエンゲル曲線のほかに，（ｘ１，ｘ２）平面を使う所得消費曲線という作図法もあり，これを使うと２つの財のエンゲル曲線を１枚の図にまとめて示すことができる。
【０００８】
第ｉ財の通常需要関数とは，予算ｍと需要量ｘｉの関係を表す関数であり，ｘｉ（ｍ）と表せる（注：学術的に厳密にはｘｉ（ｐ，ｍ）と価格も含めて定義し表す。）。（０００１）に見た通り，明らかに各財への需要量は予算に応じて変化するからｘｉ（ｍ）とｍの関数で表すのである。この関数を第ｉ財の通常需要関数なのである。数学上は，下級財はｄｘｉ（ｍ）／ｄｍ＜０となる部分を持つ財である。
【０００９】
効用関数とは，財の消費から得る効用（＝満足度でｕで表す）を表す関数であり，ｕ＝ｆ（ｘ１，…，ｘと表される。効用関数は，その人の財への価値観を表現する関数であり，心理的なものであるが，経済理論では，明確に数式で定義される。そして，通常需要関数は，ｘ１（ｍ）からｘｎ（ｍ）までｎ財分あるが，これらｎ個の関数は，すべて，ただ１つの効用関数ｕ＝ｆ（ｘ１，…，ｘｎ）から導かれる。よって，無数の財の購入量が，ただ１本の効用関数に集約されるという理論上の面白い特徴がある。（注：専門的に言えば，ｎ個の通常需要関数は，効用関数を目的関数，予算制約式ｍ＝ｐ１ｘ１＋…＋ｐｎｘｎを制約条件として，効用を最大化するようにｘ１，…，ｘｎを求める効用最大化問題を解くことで導出される。）
【００１０】
第ｉ財の補償需要関数とは，実現しようとする効用水準ｕと需要量ｘｉの関係を表す学術概念上の関数であり，ｘｉ（ｕ）と表せる（注：学術的に厳密にはｘｉ（ｐ，ｕ）と価格も含めて定義し表す。）。（０００１）を広く解釈すると，低い効用を実現しようとする人はドリンクＭのみを注文し２００円で済ます。しかし，高い効用を実現しようとする人はフードとドリンクＳを注文し６００円を費やすと考えられる。このように，明らかに各財への需要量は，実現しようとする効用水準に応じて変化するからｘｉ（ｕ）とｕの関数で表すのである。この関数が第ｉ財の補償需要関数である。数学上は，下級財は，効用ベースで定義して，ｄｘｉ（ｕ）／ｄｕ＜０となる部分を持つ財とできる。
【００１１】
（０００９）で論じた効用関数があるとき，補償需要関数は，ｘ１（ｕ）からｘｎ（ｕ）までｎ財分あるが，これらｎ個の補償需要関数についても，ただ１つの効用関数ｕ＝ｆ（ｘ１，…，ｘｎ）から導かれる。よって，無数の財の補償需要関数が，ただ１本の効用関数に集約されるという理論上の面白い特徴がある。（注：専門的に言えば，ｎ個の補償需要関数は，総支出額ｐ１ｘ１＋…＋ｐｎｘｎを目的関数，目標のｕを定数ｕ０とした制約条件ｕ０＝ｆ（ｘ１，…，ｘｎ）として，総支出額を最小化するようなｘ１，…，ｘｎを求める支出最小化問題を解くことでから導かれる。）
【００１２】
なお，通常需要関数などは単体で使われることが多く，効用関数は必須の概念ではない。例えば，学校の教科書にある「所得に占める食費の割合は，所得と共に低下する」というエンゲルの主張は効用関数を前提せず書かれている。また，顧客の支出額を階層別にして，階層ごとに購入する品目を分析することは，会社のプレゼン資料でも行われている。効用関数に集約する考え方は，アプローチの１つにすぎないのである。
【００１３】
しかし，ｎ個の財の通常需要関数を，互いに関連のない別個の数式とした場合には，各財の消費量がバラバラに決定されるため，ｎ個の財の予測値を合算したときに，予算に過不足が生じるなど，辻褄が合わないことも予想される。これに対して，１本の効用関数をもつ方法では，ｎ個の財の需要量はすべて，予算だけでなく，ｎ個の財の価格の変化も含めて，すべて整合的に変化する。このような多数財においても細部に至るまで原理的一貫性がある。よって，長所もあると考えられる。
【００１４】
実際の統計解析や数値シミュレーションにおいてはｕ＝ｆ（ｘ１，ｘ２）のような一般的な定義では値が計算できない。そこでｕ＝ｘ１０．５＋ｘ２０．５のように数式を特定化する。このように効用関数を特定化すれば，（ｘ１，ｘ２）＝（１，１）はｕ＝１を与えるが，（１，４）はｕ＝３となることから，（１，４）の方が（１，１）よりｕが高いと判断できるのである。
【００１５】
しかしながら，公知のコブ＝ダグラス型やＣＥＳ型の効用関数からは，下級財となる需要量の数列が生成できない。これらの効用関数は，扱いやすい需要関数を与えるが，それは必ず上級財の需要量の数列を生成し，下級財の需要量の数列は生成されない。（０００１）のドリンクのような需要量の数列を生成することができないのである。
【００１６】
「効用関数」と「生産関数」は，学術上は異なる関数であるが，数学的な性質に注目する限りは，両者の区別は，あまり重要ではない。したがって，以下では，すべてを「効用関数」として記述する。
【先行技術文献】
【特許文献】
【００１７】
【特許文献１】特開２０１９−００３５９２
【非特許文献】
【００１８】
【非特許文献１】Epstein, G. S. and Spiegel, U. (2000). ‘A production function with an inferior input’, The Manchester School, Vol. 68, pp. 503-515
【非特許文献２】J. Doi, K.Iwasa, and K. Shinomura (2006), 'A utility function can generate Giffen behavior', discussion paper cirulated in internet.
【非特許文献３】Moffatt, P.G. (2002). “Is Giffen behavior compatible with the axioms of consumer theory?”, Journal of Mathematical Economics, Vol. 37, pp.259-267.
【非特許文献４】S. Takahashi (2019). “Demand Functions with Inferior Goods: Implicit Function Approach”, Hitotsubashi Journal of Economics, forthcoming.
【発明の概要】
【００１９】
本発明は，任意の数の下級財を表現できる拡張性の高い数値計算可能な効用関数の発明である。この効用関数からは，下級財を表現できる補償需要関数ｘ１（ｕ）や通常需要関数ｘ１（ｍ）などを導くことができる。なお，下級財だけでなく，必需品，奢侈品なども表現できるため，観察データに近い需要量の数列や，エンゲル曲線，所得消費曲線などを生成できる。請求項１から５，実施例１から３がこれにあたる。
【００２０】
更に，（００１９）の実施を補助する中で，観察された消費量のデータから中間的な数列を生成して，その中間的な数列に単回帰をおこなうことで効用関数や需要関数を生成するシステマティックな方法も発明した。この方法を使うと，観察データから各関数の構成要素の１部を特定できる。これにより作業が楽になる上に，回帰に成功する率も向上する。しかも，（図５）のＡのような波形のエンゲル曲線を生成する関数など，試行錯誤では関数の概形すら思いつけない関数が観察データと整合的に生成できる。請求項６から８，実施例４，５，６に示され，前の発明を実現する方法として優先権を使って（００１９）に付加した。
【発明が解決しようとする課題】
【００２１】
最も根本的な課題は，とにかく，任意の数の下級財を表現できる効用関数をつくることである。コブ＝ダグラス型などの効用関数は，そもそも下級財を扱えない。また，非特許文献１から非特許文献３に挙げた下級財を扱える効用関数は２財に限られており，任意の数の財を扱うことができない。数式構造がとても複雑であり，人間の手作業によっても変数の付加や変更が困難であり，コンピュータによる関数の自動生成なども全く不可能である。
【００２２】
（００２１）という最も根本的な課題については，（特許文献１）において，ある程度，解決した。また，（非特許文献４）に論文としてエッセンスを公刊した。しかし，（特許文献１）の関数群は，観察データへの回帰をするときには不十分な点があった。第１の問題点は，（００２３）から（００２８）に述べてある。第２の問題点は，優先権で付加したもので（００２９）から（００３３）に述べてある。いずれも回帰に関する問題点である。
【００２３】
（特許文献１）のポイントはｕ＝ｂ１ｘ１ａ１＋ｂ２ｘ２ａ２のような単純な項の合計ではなく，（数１）のように，ｘｉａｉの各項の前に，左辺と同じｕについての減少関数ｕｉ−ｃｉを挿入して，ｕの高低に応じて各項が調整されるように数式を構成した点にあった。
（数１）ｕ＝ｂ１ｕ−ｃ１ｘ１ａ１＋ｂ２ｕ−ｃ２ｘ２ａ２（０≦ａｉ≦１，０≦ｂｉ，０≦ｃｉ）
【００２４】
結果として，（数１）の効用関数は，両辺にｕを持つ式となり，ｕについて代数的には解くことができない陰関数となる。しかしながら，計算機を使う限りは，（数１）のｕは，ほぼ確実に計算に成功するような数式となっているために，計算機を使う限りでは効用関数としては使用できる。
【００２５】
（特許文献１）の関数群はｂｉｕ−ｃｉという項を含んでいる。このｂｉｕ−ｃｉという定式化は，ある条件のもとでは要素需要関数ｘ（ｕ）のｕに対する弾力性が一定となり数学的に扱いやすいという長所があった。
【００２６】
しかし，短所として，ｂｉｕ−ｃｉの値は，数学的にｕの増加がｃｉ乗されて減少するため，特にｃｉの値が大きい場合，あるいは，ｕの値が大きい場合には，僅かなｕの値の変化に対して，ｕ−ｃｉの値は，極めて大きく敏感に反応する。たとえば，ｕが１０から１００に高まった時に，ｕ−２は０．０１から０．０００１へと元の値の１００分の１に減少する。このため全体の値が小さすぎて，数値計算ソフトによってはエラーを出力して計算に失敗したり，例外処理のプログラムを挿入する等の煩雑な処理が必要なことがあった。係数のｂｉの値を使ってｂｉｕ−ｃｉを調整するのであるが，この調整は，なかなか面倒であった。
【００２７】
回帰分析を手作業で行うときに，実施者は，さまざまなａｉ，ｂｉ，ｃｉなどの定数の値を総当たり的に与えて，プログラムでｘｉの値を算出する。そして，算出したｘｉと，実際のｘｉの観察値との差が小さくなるように，ａｉ，ｂｉ，ｃｉなどの値を繰返し増減させて，最もあてはまりの良いａｉ，ｂｉ，ｃｉの値を探し出す。この時（００２６）で述べたように，ｕの値にｕ−ｃｉの項が敏感に反応することに起因して，例えば，ａｉ，ｂｉ，ｃｉの値を０．８から０．８００００１へと変更するといった，小数点以下第６位を１増すような煩雑な作業が繰り返し生じる。このような小さな値での変更は手作業のみならず，プログラムで自動化したときにも，実際上は処理を煩雑にする。理想としては，ａｉ＝０．８からａｉ＝０．８５への変更のような簡素な作業が望ましい。
【００２８】
この減少関数ｕ−ｃｉの値の反応が敏感であるという性質を緩和することで，特に「総当たり」的な回帰による手法で効用関数等を生成するときの成功率を向上させたい。ただし，（特許文献１）が有していた長所は，なるべく失うこと無くである。以上が第１の課題である。
【００２９】
第２の課題は「スパゲティ化」である。スパゲティ化として２つの例を以下に示す。
【００３０】
（特許文献１）や，それを改善した本出願の請求項１の（数）の効用関数からは，横軸を所得ｍ，縦軸に消費量ｘとしたエンゲル曲線としては，詳細な形状は数値に依存するが，概ね（図１）に示したＡ，Ｂ，Ｃの３タイプの曲線が生成可能である。Ａ，Ｂ，Ｃは，経済学における３大類型である「下級財」，「必需品」，「奢侈品」のエンゲル曲線に対応する。Ａ，Ｂ，Ｃの中で，発明の最も優れた点は，Ａの曲線であり，公知技術では，特に，３財以上のものは全く生成不可能だったものである。
【００３１】
しかし，（図１）のＡの曲線に成功しても，なお，課題は残っている。家計調査などの実際のデータでは，米や穀物などには，Ａの曲線が首尾よくフィットするのであるが，しかし，実際には，年収１５００万円を超えるような超高所得では，米の消費量が増加に転じることがある。Ａのような下級財のエンゲル曲線は，超高所得層を含めた場合には，右の端の方では，右上がりになることがある。こうなると，エンゲル曲線は，右上がり，右下がりを繰り返えす波形になる。このような波形のエンゲル曲線を生成する為には，関数形を複雑にする必要がある。しかし，関数形を複雑にすると，パラメータの数が増加して，どのパラメータを調整したら良いのか見当がつかなくなってしまう。つまり，「パラメータ数の増加によるスパゲティ化」がおこる。
【００３２】
また，「総当たり法」は１０財の関数あたりから限界が見えてきた。１０財の場合，様々なａｉ，ｂｉ，ｃｉ，ｄｉ（ｉ＝１，２，…，１０）という４０個のパラメータを総当たりで計算する。先願の発明では，関数形が工夫されているために，ａとｄの値は比較的ルーズでも良い結果が得られる傾向があり，総当たりする変数はｂとｃに集中する傾向があった。しかし，そのような長所をもってしても，ｃ１の値を変更すると，それに連動して，ｘ１からｘ１０までの１０財のエンゲル曲線が一斉に変化するために，４０個のパラメータのどの値を上げて，どの値を下げるかの判断が困難となる。これが「多変数化によるスパゲティ化」である。
【００３３】
「スパゲティ化」への解決策として，「総当たり」を減らす方法を発明するべきであるという第２の課題も存在していた。この課題には，ｂｉ，ｃｉ，ｄｉの値を決定する支援ツールなどが必要だという事である。
【００３４】
総括すると，第１の課題は，効用関数等の生成を成功させるために，計算の成功率を高めること。特に，総当たりがしやすいレベルまでに扱いやすい関数にすること。第２の課題は，効用関数等の生成を成功させるために，総当たりを極力避けた，別の良い方法を考案することである。
【００３５】
この２つの課題は，共に使い易い関数を作ることにある。「使い易い関数」を開発するのが第１の課題とすれば，第２の課題は，「「複雑な関数」も作れる使い易い支援的な関数」を開発するということである。
【課題を解決するための手段】
【００３６】
まず，（特許文献１）の関数を扱いやすくして，「総当たり法」を容易にするアプローチを（００３７）から（００３９）に述べる。第２の課題を解決する手段は，「総当たり法」の反対語を使って，「システマティックな方法」とよぶ。「システマティックな方法」とはいえ，実際上は，関数の開発支援ツールのようなものである。
【００３７】
（特許文献１）で使用していたｕの減少関数「ｂｉ／ｕｃｉ」を「ｂｉ／（ｕｃｉ＋ｄｉ）」に変更する。なお，ｄｉ≧０である。定数ｄｉが付加されたことで，ｕの増加に対して，ｂｉ／（ｕｃｉ＋ｄｉ）の値の変化は小さくなる。また，ｕｃｉの値が計算機上で０となってもｂｉ／（０＋ｄｉ）となり，分母に定数項ｄｉがあるために，ゼロ除算が生じない。
【００３８】
この変更により，新しい効用関数は（数２）のようになる。この変更により（００２６）や（００２７）のような課題が解決され，従来よりも更に扱いやすい関数とする。
（数２）ｕ＝（ｂ１／（ｕｃ１＋ｄ１））ｘ１ａ１＋（ｂ２／（ｕｃ２＋ｄ２））ｘ２ａ２＋…＋（ｂｎ／（ｕｃｎ＋ｄｎ））ｘｎａｎ，（ただし，０≦ａｉ≦１，０≦ｂｉ，ｃｉ，ｄｉ）
【００３９】
（特許文献１）の（数１）の関数は，ｕの減少関数が，ｕ−ｃｉという指数をもちいたシンプルな関数としてあり，請求項もそのように書かれている。わたしはこの関数部分については広く減少関数を指すものとして，均等論を希望している。とはいえ，改良の内容次第では，元の発明が持っていた性質が失われる等，実際には，すべての改良が成功するわけでもないので出願はした方がよいだろう。
【００４０】
第２の課題の解決策を（００４１）から（００４６）に述べる。
【００４１】
第２の課題を解決する方法は，（数２）を改良することから始まる。波打つ形のエンゲル曲線を出すためには，（数２）の（ｂｉ／（ｕｃｉ＋ｄｉ））の部分の式を変更する必要がある。たとえば，（ｂｉ／（ｕｅｉ＋ｕｃｉ＋ｄｉ）），（ただしｅｉ≠ｃｉ）というように項を追加するといった方法が考えられる。しかし，こうしたバリエーションを考えてゆくと，代替的な式は，いくらでも思いつくことができるが，パラメータの数が増加して，トラクタブルな関数でなくなる。
【００４２】
そこで，数学的な考察に基づいて，（数２）を可能なかぎり一般化して（数３）のようにする。
（数３）ｕ＝ｇ１（ｕ）ｘ１ａ１＋…＋ｇｎ（ｕ）ｘｎａｎ
ｇｉ（ｕ）は正値のｕの非増加関数とする。もはや，ｇｉ（ｕ）の式の詳細は実施者が決めてよい。もしも（数２）と同じにするならば， ｇｉ（ｕ）＝（ｂｉ／（ｕｃｉ＋ｄｉ））であるが，代替案としては，（数４）のようにｕの２次式の逆数でも正値の非増加関数になりえるので使うことができる。
（数４）ｇｉ（ｕ）＝１／（ｂｉｕ２＋ｃｉｕ＋ｄｉ）
【００４３】
システマティックな方法では，観察されたｘ１，…，ｘｎと整合性のとれるｇｉ（ｕ）の理論値を先に計算する。つまり，関数ｇｉ（ｕ）の中身はブラックボックスにしておいて，関数がとるべき値を理論的に最初に求めるのである。そして，この理論値に対して，この理論値と整合的な関数ｇｉ（ｕ）を非線形回帰などの手法で探索してｇｉ（ｕ）の内部を特定化するのである。このｇｉの特定に使う回帰は，非線形であるが，ｇｉ（ｕ）からｕへの単回帰となり，重回帰のようなスパゲティ化がなく，何よりも成功率が格段に高い。
【００４４】
また，関数ｇｉ（ｕ）は自分で決められるので，１／（ｂｉｕ２＋ｃｉｕ＋ｄｉ）のような多項式の逆数であれば，ｏｃｔａｖｅのような数学ソフトではｐｏｌｙｆｉｔコマンドなど回帰用の機能が標準装備であり，近年では表計算ソフトでも装備されているので手軽である。このほか市販の数学ソフトには非線形の回帰モデルは単回帰ならば多く組込みこまれている模様である。これらが利用可能になるので，利用者は，難解な数学やデータ解析を勉強する手間が減少して，データの分析に集中できる。
【００４５】
このような単回帰を，財１から財ｎまでｎ回実施して，ｇ１からｇｎのｎ個の関数をすべて決定する。本発明では，総当たり法で顕著な４０変数のような巨大な重回帰を廃し，ｇ１（ｕ）からｇｎ（ｕ）までのｎ個の単回帰に分解する方法で解決するのである。
【００４６】
ｇｉ（ｕ）は正の非増加関数という単純で表現力の乏しい関数であるが，請求項７を見れば分かるように，補償需要を計算する式（数２２）においては，ｇｋ（ｕ）／ｇｉ（ｕ）を含むｇｋ，ｇｉの概ね比をとった項の複雑な和として使われるので，全体としては増加関数にも減少関数のいずれにもなって，きわめて多彩な数列を生成する。これを原理として，波打つエンゲル曲線が実現する。
【発明の効果】
【００４７】
第１の課題が解決されて，総当たり的な回帰の成功率が高まり，観察データからパラメータを推計できるようになった。また，第２の課題が解決されて，回帰により，波形のエンゲル曲線など，より複雑なエンゲル曲線を生成できるほどに，精密で，成功率が高い回帰ができる。しかも，市販の数学ソフトなどの関数群と互換性があるなど，使い易さも向上した。
【００４８】
しかも，特許文献１が備えていた長所―――ｕの値は必ず１意の実数であり，経済理論とも完全に整合であり，計算機を使えば比較的失敗することなく計算でき，ｘｉの値は，ｕやｐの変化に対して連続的に変化し，決して，ｘが複素数や＋∞にならず，異常値の検査や補正のための作業やプログラムを省くことができる―――といった（特許文献１）の関数群が備えていた数々の長所は，依然として保持できることが判明している。たとえば，（００３８）に示したｕ＝（ｂ１／（ｕｃ１＋ｄ１））ｘ１ａ１＋（ｂ２／（ｕｃ２＋ｄ２））ｘ２ａ２＋…＋（ｂｎ／（ｕｃｎ＋ｄｎ））ｘｎａｎという関数は，左辺と左辺の両方にｕを含む式であり，しかも，代数的にｕについて解くことが困難であり，解けたとしても数メートルにも達する遠大で複雑な式となる。しかし，文字配列をみると，（ｂ１／（ｕｃ１＋ｄ１））ｘ１ａ１，（ｂ２／（ｕｃ２＋ｄ２））ｘ２ａ２，…，（ｂｎ／（ｕｃｎ＋ｄｎ））ｘｎａｎという財ごとに独立なｎ個の項が足し算で結ばれる単純な足し算構造となっている。このように右辺が単純な足し算構造であるため，例えば，新規の商品やサービスが追加されたときには，ｎ＋１番目の商品やサービスを示す項として（ｂｎ＋１／（ｕｃｎ＋１＋ｄｎ＋１））ｘｎ＋１ａｎ＋１を元の式に追加して，ｕ＝（ｂ１／（ｕｃ１＋ｄ１））ｘ１ａ１＋（ｂ２／（ｕｃ２＋ｄ２））ｘ２ａ２＋…＋（ｂｎ／（ｕｃｎ＋ｄｎ））ｘｎａｎ＋（ｂｎ＋１／（ｕｃｎ＋１＋ｄｎ＋１））ｘｎ＋１ａｎ＋１とするだけでよい。よって，プログラムにより商品の追加削除に対応した関数を簡単に生成することができる。
【００４９】
このとき，（００４８）に示したｕ＝（ｂ１／（ｕｃ１＋ｄ１））ｘ１ａ１＋（ｂ２／（ｕｃ２＋ｄ２））ｘ２ａ２＋…＋（ｂｎ／（ｕｃｎ＋ｄｎ））ｘｎａｎという式は，代数的にｕについて解けないという欠点，あるいは，解けたとしても遠大で複雑な数式となるという欠点がある。しかし，この式のａ１，…，ａｎ，ｃ１，…，ｃｎなどのｕ以外のすべての変数を数値で与えたときには，ｕについてのべき乗を含む式ではあるが，ｕ＝０を初期値として逐次計算することで，コンピュータではエラーで失敗することなく，ほぼ確実にｕの数値解を算出できる。よって，代数的にはｕについて解けないという理論的な短所は，コンピュータによる数値計算に特化する限りでは，数値計算が容易であるという性質によって克服でき，単純な足し算構造を生かして関数を自動生成できるなどの長所のみを享受できる。さらに，本発明の補償需要関数や通常需要関数は，複素数や負値を含んだ数列を生成しない。このため，ｐｉやｍのデータの値がどのような値であっても実施ができる。
【００５０】
すなわち，本発明は，下級財の効用関数として，代数的にはｕについて解くことができない，あるいは解けたとしても複雑で遠大な式となる陰関数でありながら，文字の配列としては規則的で単純な構造をした式を採用することで，多変数化を実現しつつ，代数的に解けないところも数値計算ができるので，扱いやすく自動生成にも適した下級財の効用関数となっている。
【００５１】
そして，今回の発明により関数にｄｉの項を追加したことで，操作性がさらに改善する上に，計算機がエラーを出すことが更に減少し，特に，総当たり法で回帰をする成功率が向上し，実用性がかなり向上している。 請求項１から請求項５が該当
【００５２】
更に，「システマティックな方法」の発明により，複雑で成功率の低い非線形の重回帰分析を回避して，ｎ回の単回帰に分解する工夫により，回帰の成功率が向上し，効用関数や需要関数群を生成できる。これにより，扱いやすさが向上した結果，（図５）のＡのような波形のエンゲル曲線を生成する効用関数など，より自然で観察データに適合しやすい効用関数などが生成できるようになった。請求項６から請求項８が該当。
【００５３】
以下，本発明のいう効用関数や需要関数群は，厳密には関数ではなく陰関数となるが，本出願においては関数と陰関数の区別はせずに，すべて関数あるいは数式と表現する。さらに，本発明のいう通常需要関数は，１本の式ではなく，ｍを定数としたｘｉとｕを未知数とする連立方程式Ｆ（ｘｉ，ｕ）＝０，Ｇ（ｘｉ，ｕ，ｍ）＝０の解のｘｉの方で与えられる。この意味では，本発明の言う通常需要関数は，数学における陰関数でもないと思うが，コンピュータのプログラムでは関数として書けるので，関数とよぶ。
【発明を実施するための形態】
【００５４】
本発明の実施は，単純な数値例であれば手計算や家庭用電卓でも可能であるが，指数の計算など計算量が膨大であることや，作業が複雑であることから現実的でない。よって，コンピュータでの実施のみを実施とみなす。部分的に手作業も入るが，もっぱらコンピュータ上にプログラムし，人間，あるいは通信により得たデータをもとに，ｘ１やｍなどの値を関数に代入して数列を生成する。
【００５５】
また，営業データなどをもとに，財を１つ，２つ，３つと任意に加えて，ａ，ｂ，ｃ，ｄの各パラメータを適切に設定するなどして効用関数・需要関数群を自動生成し，自動生成した関数に値を代入して数列を生成することで実施する。
【図面の簡単な説明】
【００５６】
【図１】本発明が生成するエンゲル曲線の３大類型
【図２】観察データの所得消費曲線（実線）（実施例１）
【図３】発明により生成した所得消費曲線（点線）（実施例１）
【図４】外挿を付加した所得消費曲線（点線下部）（実施例１）
【図５】システマティックな方法で生成した波形エンゲル曲線，Ｓ字型の所得消費曲線（実施例４）
【実施例１】
【００５７】
（請求項３）の実施例として，ｘ１が下級財，ｘ２を上級財とする２財の実施例を示す。（表１）のような，ｘ１とｘ２，ｍについての７つのデータを用意する。ｘ１は米，ｘ２は一般消費（米以外），ｍは予算である。データの数値は，単身世帯のうち勤労者世帯の年間収入階級別の１世帯当たり１か月間の米，米以外，および，所得のデータ（単位：百円）である。出典は，平成２８年度，家計調査，詳細結果表，第５表である。ただし，ｍの数値は，家計調査の年収の値ではなく，消費支出総額の値を使用した。これにより，ｍ＝ｘ１＋ｘ２となり，理論的な前提である予算制約式と整合させる。
【表１】
2020038607.tif 000003
【００５８】
（表１）を（ｘ１，ｘ２）平面に，予算の低い順にプロットし線で結んだ図が，（図２）である。折れ線は所得消費曲線であるが，全体としては，左上がりであることから，ｘ１は下級財である。
【００５９】
上記のようなｘ１，ｘ２，ｍについてのデータを用意した上で，発明を実施する例を以下に示す。
【００６０】
ｉ＝１の変数については，ａ１＝０．８，ｂ１＝５１，ｃ１＝０．５１，ｄ１＝５０と値を定める。ｉ＝２の変数については，ａ２＝０．９，ｂ２＝２０，ｃ２＝０．１，ｄ２＝２０と値を定める。なお，ｃ１＝０．５１という値は，ｃ２＝０．１よりも約５倍も大きい。第ｉ財を下級財とするときはｃｉは大きく，奢侈品とするときはｃｉを小さくする。
【００６１】
なお，実際には，（００６０）に示したようなａｉ，ｂｉ，ｃｉ，ｄｉの値が最初から分かっているはずはない。１００通りくらいの，ａｉ，ｂｉ，ｃｉ，ｄｉの値の組み合わせについて，順次，下記の（００６２）から（００５８）の手順で繰り返し需要量ｘ１を計算する。そして，（表１）のｘ１との残差をとり，その残差平方和が最も小さいａｉ，ｂｉ，ｃｉ，ｄｉの値を採択する。つまり，いわゆる，最小二乗法などを使って，もっとも当てはまりの良いａｉ，ｂｉ，ｃｉ，ｄｉを探索するべきである。このような探索をすれば，機械的な処理により，実際のデータから下級財を検出，あるいは学習することもできる。
【００６２】
（００６０）のａ，ｂ，ｃ，ｄの値を請求項３の（数１９）と（数２０）に代入して，Ｆ（ｘ１，ｕ）＝０と，Ｇ（ｘ１，ｕ，ｍ）＝０を作ると，（数５）と（数６）となる。
【数５】
2020038607.tif 000004
【数６】
2020038607.tif 000005
【００６３】
（表１）の所得階級１番のｍ＝１１６４．３を読み取り，（数６）のｍに代入する。すなわち，Ｇ（ｘ１，ｕ，１１６４．３）＝０の式を作る。
【００６４】
そして，Ｆ（ｘ１，ｕ）＝０とＧ（ｘ１，ｕ，１１６４．３）＝０というｘ１とｕを未知数とする２本の連立方程式とし，この連立方程式の数値解を算出する。
【００６５】
コンピュータで計算すると，数値解として，ｘ１＝４．４６７９２，ｕ＝５２６．０２５をえる。この２つ数値解のうち，ｘ１＝４．４６７９２の方の値は，ｍ＝１１６４．３のときのｘ１への通常需要量（つまり，所与のｍのもとでｕを最大にするｘ１の需要量）が４．４６７９２である。
【００６６】
なお，残差は，３．８２−４．４６７９２≒−０．６４７である。このような残差の平方和は，なるべく小さい方が望ましい。
【００６７】
なお，蛇足だが，もう一方の変数の数値解であるｕ＝５２６．０２５という値は，ｍ＝１１６４．３のときの，最大化された効用の値を表し，経済学における間接効用に該当する。つまり，Ｆ（ｘ１，ｕ）＝０とＧ（ｘ１，ｕ，１１６４．３）＝０という請求項３の連立方程式は，経済学における通常需要関数ｘ１（ｍ）と間接効用関数ｕ（ｍ）の２つを兼ねた式に該当する。
【００６８】
（００６３）から（００６５）の処理を，（表１）の所得階級の２番から７番についても行う。すると，（表２）をえる。なお，（表２）のｘ２の値は，ｘ２＝ｍ−ｘ１で求めた。
【表２】
2020038607.tif 000006
【００６９】
さらに，（表２）を（ｘ１，ｘ２）平面にプロットして線で結ぶと，（図３）の点線のような所得消費曲線が生成できる。
【００７０】
（表２）で示された推計は，ｍ＝１１６４．３よりも小さいｍについてはデータがないので，（図３）の下方部分は空白である。しかし，１１６４．３以下のｍについても外挿によって，ｘ１の数列を生成できる。
【００７１】
ｍ＝１からｍ＝１０００までの様々なｍの値について，（００６３）から（００６５）の処理を，繰り返すことで，ｘ１の数列を生成すると（図４）のような所得消費曲線を完成させることもできる。
【００７２】
直線にも見えた（図３）の所得消費曲線であったが，本発明が生成するｘ１とｘ２の数列は，（図４）のように，原点から発した大きく湾曲した所得消費曲線を生成する。
【００７３】
以下，概ね，縦軸のｘ２は定義により，所得ｍと概ね等しい値であることから，縦軸のｘ２を「月間所得」と読み換える。そして，利用者は（図４）を解釈することで，月間所得（ｍ）が０から４万円に増えていくときに，米（ｘ１）は上級財であり，概ね５００円に向かって，急速に米の購入を増加させる。そして，月間所得が４万円を超えたあたりから，緩やかに米の購入量を減らしてゆくことが読み取れる。本発明は，米は所得が低いときには，上級財であり，一定の所得水準を超えたところから下級財に転化するような数列を生成している。この数列は自然でもっともらしい。米は，一般には下級財であるといわれるが，低所得者を含む全所得階層において下級財になることはあり得ないからである。
【００７４】
また，このｘ１の数列は，価格ｐ１，ｐ２の変化についても，経済学でいう「需要法則」に一切矛盾することなく値が調整されることが保証されている。
【００７５】
また，（表２）のｘ１の数列が，（表１）の実際のｘ１の数列と十分に似ている事から，ｃ１＝０．５１というｃ２＝０．１に比べて５倍も大きいという特徴もデータから正しいと判断できる。このｃ１が大きいという事から，ｘ１は下級財であるという事を機械でも判定することができる。
【実施例２】
【００７６】
つぎに，請求項２の実施例を示す。請求項２をつかって，補償需要量の数列を生成する。
【００７７】
補償需要の計算では，効用ｕの値を用意する必要がある。効用ｕの値は，アンケート調査でのスコアでもよい。しかし，ここでは，実施例１の（００６５）において，所得ｍから本発明に沿って計算した効用であるｕ＝５２６．０２５を使用する。さらに，ａ，ｂ，ｃ，ｄの各定数群も用意する必要があるが，これらは（００６０）と同じとする。
【００７８】
いま，消費税が２％引き上げになったとする。しかし，米は非課税となった。このような価格変化は，ｐ１＝１，ｐ２＝１．０２と表すことができる。
【００７９】
（００６０）に示されたａｉ，ｂｉ，ｃｉ，ｄｉを請求項２の（数１８）に代入する。ただし，（００６０）の時とは異なり，ｐ１＝１．０，ｐ２＝１．０２を代入する。具体的には，（数７）を作る。
【数７】
2020038607.tif 000007
【００８０】
次に，（数７）に示されたＦ（ｘ１，ｕ）＝０に，所得階級１の効用であるｕ＝５２６．０２５を適用して，Ｆ（ｘ１，５２６．０２５）＝０とし，この１変数の方程式の数値解を求めると，ｘ１＝４．９３１９７を得る。これは，（表２）の所得階級１に示されたｘ１＝４．４６７よりも，約４７円（≒４．９３１７−４．４６７）だけ増大している。米に対する需要量は１か月あたり４７円だけ増加させれば，課税後の生活水準を維持することができる。
【００８１】
一般に，ｕの水準は観察できない。しかし，実施例１の方法で，観察データのみからｕの値を求めてしまえば，そのｕを転用して，観察不能なｕを用いた補償需要量も生成可能となる。本例のｕの値の転用にみられるような利便性は，本発明において，請求項１から請求項３に示された計算方法が，互いに，整合的であり，各変数の値が（数１８）を満たす場合には，（数１７）も必ず満たすことに起因する。
【実施例３】
【００８２】
つぎに，請求項１の実施例を示す。請求項１は，効用関数Ｕ（ｕ，ｘ１，…，ｘｎ）＝０を用いてｕの値を導出するものである。ｕの値は，つぎの（００８３）から（００８５）の手順で実施して計算する。
【００８３】
まず，自身が希望するａ，ｂ，ｃ，ｄの値を用意する。以下では，これらは（００６０）と同じとする。更に，自身がｕの値を知りたいと思う財の量ｘ１，…，ｘｎの値を用意する。以下の例では，（００６５）で得たｘ１＝４．４６７，および，ｘ２＝１１５９．８と同じとする。そして，請求項１の（数１７）にａ，ｂ，ｃ，ｄの各値を代入して（数８）を作る。
【数８】
2020038607.tif 000008
【００８４】
次に，用意したｘ１＝４．４６７とｘ２＝１１５９．８を（数８）に代入して，Ｕ（４．４６７，１１５９．８，ｕ）＝０を作る。具体的には，（数９）となる。
【数９】
2020038607.tif 000009
【００８５】
（数９）をｕを未知数とする方程式とみる。そして，ｕの数値解を計算することで，ｕ＝５２６．０２５を得る。
【００８６】
請求項１は（００８３）から（００８５）のような方法でｕの数を生成することに用いるが，請求項３の方法が計算に失敗したときの例外処理としても使える。予算制約式を満たすｘ１とｘ２の組合せを，例えば１０をきざみとして生成する。つまり，（ｘ１，ｘ２）のベクトルで表して，（０，１１６５），（１０，１１５５），…，（１１５５，１０），（１１６５，０）のような１１７個の配列をつくる。そして，１１７個の（ｘ１，ｘ２）の各値について，（００８３）から（００８５）で示した計算を行い，総当たりで１１７個のｕの値を得る。その１１７個のｕの値の中で最も大きいｕを与える（ｘ１，ｘ２）のベクトルは，ｍ＝１１６５のときのｘ１とｘ２の通常需要量に該当する。
【００８７】
請求項３の（数１８）と（数１９）を使っても，ｘ１の通常需要量の計算はできる。しかし，この計算は，べき乗を含んだ複雑な非線形の連立方程式であることに起因して，数値計算プログラムがエラーを出力して，計算に失敗することが少なからずある。エラーを検出したときには，乱数をもちいて初期値を変更するなどの例外処理を行うことになるが，この例外処理の最後の手段として，（００８６）のような総当たり法が使えるのである。
【００８８】
（００８６）と（００８７）で述べた例外処理ができるのは，本発明において，請求項１から請求項３に示された計算方法が，互いに，整合的であり，各変数の値が（数１９），（数２０）を満たす場合には，（数１７）も必ず満たすことに起因する。本発明の（数１７）から（数２０）の数学的な整合性を生かして，特に，コンピュータによる自動化において，様々な数が矛盾なく連動することで，恣意的な数値補正や，例外処理，計算エラーを減らすことが可能になる。
【実施例４】
【００８９】
請求項８の実施例を示す。請求項８は，ｇｉ（ｕ）の生成方法の発明である。実施例４ではｇｉ（ｕ）を観察データから生成する実施例をしめす。このｇｉ（ｕ）は，実施例５以降で，補償需要関数や効用関数に組込まれて使用される。
【００９０】
以下，第１財の消費量と価格をｘ１とｐ１，第２財の消費量と価格をｘ２とｐ２とする。総支出をｍとし，ｍ≡ｐ１ｘ１＋ｐ２ｘ２である。また，価格はｐ１＝ｐ２＝１とする。また，ａ１＝ａ２＝０．９と自身で想定する。
【００９１】
（表３）のような観察データを用意する。ｘ１とｘ２の購入量についての１番から４番までの４組の標本を用意し，標本を，効用水準ｕの低い順に左から並べて表にする。とはいえ，各標本が与える効用水準ｕは観察できない変数であり，知ることができないことが多い。しかし，このシステマティックな方法を実施するためには，各標本におけるｕの値は未知であっても良いが，各標本の与えるｕの大小関係は，事前に分かっている，あるいは自分で想定する必要がある。この条件は，実施例１では必要とされない条件であるが，実施例４では必要である。
【００９２】
本実施例４では，価格ｐがすべての標本で共通の値であるために，支出額ｍが大きい標本は，ｕも大きいことになる。このため，本実施例４に限っては，ｕの大小関係は，支出額ｍの大小関係と同じになる。
【００９３】
そこで，４組の標本を総支出額ｍが小さい順に左から並べる。これにより４組の標本が効用ｕが小さい順に左から並んだことになる。これが（表３）のようになっていたとする。
【００９４】
（表３）の標本番号の１番から４番までが観察されたｘ１とｘ２の購入量を表し，総支出額ｍが小さい順に並んでいることを確認する。標本番号０番と５番は，回帰を整えるためのダミーで，０番は１番を０．２倍した値（例：０．４＝０．２×２），５番は４番を１．２倍した値（例：４．８＝４×１．２）である。
【表３】
2020038607.tif 000010
【００９５】
（図５）のＡの黒丸は，（表３）のｘ１とｍを（ｍ，ｘ１）平面上にプロットしたものであり，Ａの折れ線は観察されたエンゲル曲線である。この折れ線は，ｘ１が，２，４，２，４と上下していることが確認できる。これは（００３１）で課題として指摘した超高所得層で上級財に転化するタイプの下級財のエンゲル曲線に該当し，是非とも，発明により生成したい曲線である。
【００９６】
実施例４においては，（図５）のＡのようなエンゲル曲線が波をうつような数列を生成する関数を（表３）にある観察データから導出する。なお，Ｂは，ｘ２のエンゲル曲線を参考までに示した。
【００９７】
まず，請求項８を標本１番に実施する。請求項８の（数２３）の中のｕは未知なので定数ｕ１としておき，ｘ１＝２，ｘ２＝１，ｐ１＝ｐ２＝１，ａ１＝ａ２＝０．９を（数２３）に代入すると（数１０）となる。
【数１０】
2020038607.tif 000011
【００９８】
（００９７）と同様の計算を標本番号０番，および，２番から５番についても，ｇ１Ｅとｇ２Ｅを計算して縦に並べる。すると，標本０番から５番までのｇ１Ｅ，ｇ２Ｅの値が（表４）のように示される。なお，ｕ１，…，ｕ５で標本１番から５番までのｕの値を表す。
【表４】
2020038607.tif 000012
【００９９】
次に（表４）の数値を検査する。ｇ１Ｅの列を縦に見て，数値部分だけを上から下に見て，単調非増加数列になっていることを確認する。ｇ１Ｅの数値部分は，１．５２０７，０．３５７２，…，０．０７４９となり，単調非増加数列であることが確認できる。同様に，ｇ２Ｅの数値部分の数列は，１．４１８９，０．３３３３，…，０．０８１３であり単調非増加数列であることが確認できる。
【０１００】
なお，本実施例では，ｇ１Ｅ，ｇ２Ｅが単調非増加数列であることが確認できたが，もしも，増加的になる部分があった場合には，（数２３）のａｋやａｊの値を調整するとか，その標本を取り除くとかして，何らかの方法で単調非増加数列に整える。なお，単調非増加数列でない場合については，現段階では，何がおこるか等は不明であり，もしかしたら用途が見つかるかもしれない。
【０１０１】
次に，（表４）のｕ０，…，ｕ５に自身で値を割りあてる。
【０１０２】
（０１０３）と（０１０４）の２つの条件を満たす範囲で，ｕ０，…，ｕ５は自由に決めてよい。ここでは，ｕには相対所得の平方根を使うことにする。すなわち，ｕには，標本番号をｔとして，（数１１）を使ってｕを決めた。結果，ｕは（表５）の「ｕ」の列に示された１から４．１７７の値とした。
（数１１）ｕｔ＝（標本番号ｔの所得／標本番号０の所得）０．５
【０１０３】
ｕの決め方の第１の条件は，効用が高いはずの標本にはｕの値を大きく，効用が低いはずの標本にはｕの値を小さくしなければならない。また，財の消費量ｘ１とｘ２が等しい２つの標本は，等しいｕを割り当てるべきである。本実施例では，等号がないので，ｕ０＜ｕ１＜ｕ２＜ｕ３＜ｕ４＜ｕ５が必要である。
【０１０４】
ｕの決め方の第２の条件は，ｕ０，…，ｕ５の値を決めた後においても，（表４）におけるｇ１Ｅ，ｇ２Ｅは，依然として単調非増加数列となることである。
【０１０５】
条件２を満たさない例としては，ｕ０＝１とｕ１＝１００００がある。ｕ０＜ｕ１であるが，両者のｇ１Ｅを計算すると，１．５２０７と，３５７２となり，標本番号０番から１番にかけて増加数列ができてしまうので，条件２は満たさない。
【０１０６】
（０１０２）から（０１０４）に従って，ｕ０，…，ｕ５を決めた後に，（表４）の各ｕ０，…，ｕ５を代入して，各標本ｇ１Ｅ，ｇ２Ｅを数値として確定させると（表５）が完成する。
【表５】
2020038607.tif 000013
【０１０７】
（表５）を検査して，ｕを割振った後のｇ１Ｅが依然として単調非増加数列であることを確認する。同様に，ｇ２Ｅについても依然として単調非増加数列であることを確認する。この（表５）は，回帰用のデータ群であり決定的に重要な表である。
【０１０８】
効用関数，需要関数で使うｇ１（ｕ）として適切な関数を自分で決める。請求項６にある通りｇ１（ｕ）は，１≦ｕ≦４．１７７の範囲のｕについて正値の非増加関数となりえる関数を自分で決める。ここでは，ｕの４次式の逆数（数１２）とする。
（数１２）ｇ１（ｕ）＝１／（α４ｕ４＋α３ｕ３＋α２ｕ２＋α１ｕ＋α０）
【０１０９】
（数１２）を回帰式として（表５）のｇ１Ｅの列の６つの値を，（表５）のｕの列の６つの値に回帰させて，α０，…，α４の値を数学ソフトの組込みの回帰関数で推計すると，（数１３）をえる。
（数１３）ｇ１（ｕ）＝１／（−０．０８５ｕ４＋０．８１６ｕ３−２．６６２ｕ２＋４．１７１ｕ−１．５８０）
【０１１０】
なお，（０１０９）の回帰の計算においては，逆数を使うのが楽である。（数１２）の逆数をとると，１／ｇ１（ｕ）＝α４ｕ４＋α３ｕ３＋α２ｕ２＋α１ｕ＋α０となる。そして，（表５）のｇ１Ｅも逆数をとって，１／１．５２０７，…，１／０．３１３２とする。そして，このｇ１Ｅの逆数に回帰させるのである。こうすると，回帰式はα４ｕ４＋α３ｕ３＋α２ｕ２＋α１ｕ＋α０という４次の多項式となる。多項式による非線形回帰は表計算ソフトでもコマンドが装備されているので，誰でも利用可能である。なお，本特許はＧＮＵのｏｃｔａｖｅのｐｏｌｙｆｉｔコマンドを使っている。
【０１１１】
ｇ２（ｕ）についても，（０１０８）から（０１１０）と同じようにして，（表５）のｇ２Ｅ列の６つの値をｕの列の６つの値に回帰すると（数１４）をえる。
（数１４）ｇ２（ｕ）＝１／（０＊ｕ４−０．０００１ｕ３＋０＊ｕ２＋０．７０５ｕ＋０）
【実施例５】
【０１１２】
請求項７を実施する。補償需要の数列を生成する。また，波形のエンゲル曲線を描く。なお，ｇ１（ｕ）とｇ２（ｕ）は，実施例４のツールで生成した（数１３）と（数１４）を使った例を示すことにする。
【０１１３】
請求項７の（数２２）の補償需要関数に（数１３）と（数１４）を代入して，さらに，他のパラメータも代入すれば，（数１５）に示された２本の補償需要関数ができる。
【数１５】
2020038607.tif 000014
【０１１４】
標本番号１番の効用はｕ＝２．０６３である。（数１５）にｕ＝２．０６３を代入して，Ｆ（ｘ１，２．０６３）＝０とＦ（ｘ２，２．０６３）＝０を満たすｘ１とｘ２をそれぞれ計算すると，ｘ１＝２．０９５６，ｘ２＝０．８５９２８をえる。
【０１１５】
（０１１４）と同様の計算を標本番号２番から４番についても実行して，ｘ１とｘ２の数列を生成したものが（表６）ある。なお，総支出ｍの列はｘ１＋ｘ２＝ｍで求めた。
【表６】
2020038607.tif 000015
（表６）と（表３）のｘ１とｘ２の値と比べると，まぁまぁ近い値になっていることが確認できる。そして，（表６）のｘ１の数列に注目すると，２．０９６→３．２５１→３．０１８→３．２３７と推移しており，アップダウンを繰り返しているのが確認できる。
【０１１６】
（図５）は完成図ともいえる。（図５）は，１≦ｕ≦４．１７７までの全てのｕについて，（数１５）を使ってｘ１とｘ２の数列を生成してグラフにしたものである。（図５）のＡの実線がｘ１のエンゲル曲線，Ｂの実線はｘ２のエンゲル曲線である。黒丸と折れ線は観測データのエンゲル曲線である。
【０１１７】
（図５）のＡにおける実線をみると，ｘ１は所得ｍが５から９にかけて右下がりであるが，所得ｍが９から右上がりになっており，波形のエンゲル曲線の生成に成功していることが分かる。
【０１１８】
（図５）のＣは，所得消費曲線である。（図４）の所得消費曲線と比べると，いずれもｘ１は下級財となる部分をもつが，（図５）のＣでは，所得消費曲線の右上の部分で再び上級財に転化しており，美しいＳ字型をなしているのが分かる。
【０１１９】
なお，回帰式ｇｋ（ｕ）は，ｕ＞０のすべての区間で正値の非増加関数である必要がない点を強調したい。（Ａ０１３）で割当てたｕの範囲で，正値の非増加関数となりえればよい。つまり，１≦ｕ≦４．１７７の範囲でｇｋ（ｕ）が正値の非増加関数となりえればよいのである。しかも，このｕの上限と下限は，自分で決めることができる。よって，ｇｋ（ｕ）として使える関数は，かなり豊富になった。指数関数や三角関数などを組み合わせて実施することも現実味を帯びてきた。
【０１２０】
この回帰は，非線形だが，重回帰ではなく，単回帰である点も強調すべきである。本発明では，財がｎ個あれば，ｇ１（ｕ）からｇｎ（ｕ）までの，ｎ個の非線形回帰を成功させる必要があるが，この回帰は，すべて単回帰である。ｎ個，あるいはｎ個以上の変数をもつ重回帰よりも，ｎ回の単回帰を行う方が計算の成功率が格段に高く，しかも，繰返しなので簡単である。
【０１２１】
（０１１９）と（０１２０）の理由から，システマティックな方法の発明成功により，４次関数の逆数でも回帰に成功するなど，先願の段階では，扱いにくい，計算が滅多に成功しない等の理由で実施が現実的でなかった関数についても，実施ができる状況になってきた。数学ソフトに非線形単回帰のコマンドが装備されれば，そのコマンドを試すことができてしまう。このため，請求項の（数１７）と（数１８）の上位概念である（数２１）と（数２２）を優先権で付加したいのである。
【０１２２】
ただし，本実施例４で用いたｇｉ（ｕ）＝１／（α４ｕ４＋α３ｕ３＋α２ｕ２＋α１ｕ＋α０）は，先願の請求項５に該当する関数であり，新たに付加した上位概念の請求項のみに該当する関数ではないと断っておく。
【０１２３】
そして，（表５）をもとに，例えば，顧客にお勧めするｘ１とｘ２の量は，予算が，ｍ＝６．２４８から８．８３５に上昇したときには，ｘ１は，３．２５１から３．０１８へと減少させてゆくが，代わりに，ｘ２の量は２．９９６から５．８１７へと大きく増加させることが示唆される。ところが，顧客の予算が更に増加して，ｍ＝８．８３５から１３．１２３へと増えていくときには，顧客にお勧めするｘ１の量は３．０１８から３．２３７へと，再度，増加に転じてよいことが，（表５）の推計から示唆される。このような下級財の量について，微妙な判断ができるようになるのである。
【実施例６】
【０１２４】
次に，請求項６を実施する。実施例４で生成したｇ１（ｕ），ｇ２（ｕ）を使うことにする。
【０１２５】
（表５）の標本番号３の行を見ると，ｍ＝８．８３５のときには，（ｘ１，ｘ２）＝（３．０１８，５．８１７）が需要量であり，以下，Ｅ点と呼ぶ。Ｅ点にはｕ＝３．２４２が割当てられていた。
【０１２６】
Ｅ点からｘ１だけを０．５単位増加させた点（ｘ１，ｘ２）＝（３．５１８，５．８１７）のｕの値を試算する。
【０１２７】
請求項６（数２１）に（数１３）と（数１４）と（ｘ１，ｘ２）＝（３．５１８，５．８１７）を代入し，（数１６）を構成する。
【数１６】
2020038607.tif 000016
【０１２８】
（数１６）を満たすｕを計算機で計算すると，ｕ≒３．３１６３となる。これはＥ点に割当てたｕ＝３．２４２よりも大きいことから，ｘ１を増加させると効用は上がると結論できる。この効用の上昇は当然のことである。ｘ１は下級財であるが限界効用は正なので，ｘ２を一定としてｘ１だけを増加させれば，効用は高くなるのである。
【産業上の利用可能性】
【０１２９】
サービス業では，広告を含めて，さまざまな下級サービスが使われることから，下級サービスを含め，奢侈品，必需品についての供給量を満足度を一定としつつ調整することで，費用の最小化ができる。顧客の感じる満足度を指標化したり，どのような財のベクトルが顧客を高く満足させるか推定することできる。また，下級サービスの供給量をコンピュータで推計により学習し，自動制御する手法としても使える。自身の購入履歴をもとに学習し，まるで自身が購入するかのように買い物をするプログラムがつくれる。本発明は，汎用性が高いので，用途はいくらでも見つかる。
【０１３０】
本発明は，たとえば，図３のような所得消費曲線を職場で暇なときに描いて会議のプレゼンに添える等，真面目な用途というよりは，ビジネス・シーンにおける余興や暇つぶしを含む，一種の「ビジネス玩具」が最も適している。「おもちゃ」のような物を目指すのである。
【図１】
2020038607.tif 000024
【図２】
2020038607.tif 000025
【図３】
2020038607.tif 000026
【図４】
2020038607.tif 000027
【図５】
2020038607.tif 000028