JP4690495B1 - Optimization simulation program and optimization simulation apparatus - Google Patents
Optimization simulation program and optimization simulation apparatus Download PDFInfo
- Publication number
- JP4690495B1 JP4690495B1 JP2010180528A JP2010180528A JP4690495B1 JP 4690495 B1 JP4690495 B1 JP 4690495B1 JP 2010180528 A JP2010180528 A JP 2010180528A JP 2010180528 A JP2010180528 A JP 2010180528A JP 4690495 B1 JP4690495 B1 JP 4690495B1
- Authority
- JP
- Japan
- Prior art keywords
- stored
- storage unit
- data point
- optimization
- display
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000005457 optimization Methods 0.000 title claims abstract description 48
- 238000004088 simulation Methods 0.000 title claims abstract description 15
- 238000004364 calculation method Methods 0.000 claims abstract description 27
- 230000006870 function Effects 0.000 claims description 32
- 230000003287 optical effect Effects 0.000 claims description 18
- 239000010409 thin film Substances 0.000 claims description 8
- 238000000034 method Methods 0.000 abstract description 42
- 230000002457 bidirectional effect Effects 0.000 abstract 1
- 239000010408 film Substances 0.000 description 19
- 238000010586 diagram Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 239000000758 substrate Substances 0.000 description 3
- 238000002939 conjugate gradient method Methods 0.000 description 2
- 230000002068 genetic effect Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000002922 simulated annealing Methods 0.000 description 2
- 238000002945 steepest descent method Methods 0.000 description 2
- 238000002834 transmittance Methods 0.000 description 2
- 238000010521 absorption reaction Methods 0.000 description 1
- 238000000137 annealing Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Abstract
【課題】
目標値と目標値の重みをキーボードから入力する必要が無く、局所解からの脱出を容易にし、パラメーターの入力による計算結果のグラフ表示・グラフの変形による最適化結果のパラメーター表示の双方向オペレーションを可能にする最適化シミュレーション技術を提供する。
【解決手段】
初期パラメーターに基づきプログラムは関数の計算をおこない、計算結果をグラフ表示する。プログラムは、ユーザーがグラフをマウスなどのポインティング装置を用いて所望の形状に近づくように変形させることができる機能を持つ。さらにマウスカーソルがグラフのデーター点を通過した回数に応じて最適化に使用する重みを増やす機能を持つ。プログラムは、変形されたグラフのデーター点を目標値として、最適化手法を用いてパラメーターを最適化する。最適化後のパラメーターを初期パラメーターとして上記手順を繰り返し、所望の目標値に近づけていく。
【選択図】なし【Task】
There is no need to input the target value and the target value weight from the keyboard, it is easy to escape from the local solution, and the graph display of the calculation result by inputting the parameter and the bidirectional operation of the parameter display of the optimization result by deforming the graph Provide optimization simulation technology that enables
[Solution]
Based on the initial parameters, the program calculates the function and displays the calculation results in a graph. The program has a function that allows the user to deform the graph so as to approach a desired shape using a pointing device such as a mouse. In addition, it has a function to increase the weight used for optimization according to the number of times the mouse cursor passes the data points of the graph. The program optimizes the parameters using an optimization method with the data points of the deformed graph as target values. The above procedure is repeated using the optimized parameters as initial parameters to bring them closer to the desired target values.
[Selection figure] None
Description
本発明は、目標値となる与えられたデーター点に対して関数のパラメーターを最適化する際の、最適解の導出を効率的におこなう技術に関するものである。 The present invention relates to a technique for efficiently deriving an optimal solution when optimizing a function parameter for a given data point as a target value.
パラメーターの最適化には、シンプレックス法、最急降下法、ニュートン法、準ニュートン法、ガウス・ニュートン法、勾配法、共役勾配法、レーベンバーグ・マーカート法等を利用した最小二乗法や、焼きなまし法(シミュレーテッド・アニーリング)、遺伝的アルゴリズム、タブーサーチ、ニューロネットワークを利用した方法等、様々な手法が用いられている。 For parameter optimization, simple square method, steepest descent method, Newton method, quasi-Newton method, Gauss-Newton method, gradient method, conjugate gradient method, Levenberg-Markert method, etc. Various methods such as a method using a simulated annealing, a genetic algorithm, a tabu search, and a neuro network are used.
いずれの手法であっても、最適化の手順は、初期パラメーター、目標値となるデーター点および各データー点の重みを与え、上記のような最適化手法による探索をおこない、関数の値と目標値との差が最小となるパラメーターを得るというものである。 Regardless of which method is used, the optimization procedure gives initial parameters, target data points, and weights for each data point. The parameter that minimizes the difference is obtained.
例えば、多層光学薄膜の設計においては、初期値として各層の膜厚と膜の屈折率を設定し、目標値となるデーター点として各波長の反射率または透過率を設定し、必要に応じて各データー点の重みを設定する。そして初期値として与えられた膜厚を初期パラメーターとして上記のような最適化手法を用いて最適化をおこない、目標とする反射特性または透過特性を実現するための各層の膜厚を得る。 For example, in the design of a multilayer optical thin film, the film thickness of each layer and the refractive index of the film are set as initial values, and the reflectance or transmittance of each wavelength is set as a data point to be a target value. Set the weight of the data points. Then, the film thickness given as the initial value is used as an initial parameter for optimization using the above-described optimization method, and the film thickness of each layer for realizing the target reflection characteristic or transmission characteristic is obtained.
しかしながら、上記のような手順では、目標値となるデーター点とその重みをユーザーが入力する必要があり手間がかかるという問題があった。例として上記多層光学薄膜において波長350nmから850nmまで5nmおきの目標値を設定する場合、入力すべきデーター点の数は100個になる。 However, the procedure as described above has a problem that it takes time and effort because it is necessary for the user to input a data point to be a target value and its weight. As an example, when setting a target value every 5 nm from a wavelength of 350 nm to 850 nm in the multilayer optical thin film, the number of data points to be input is 100.
また、上記のような最適化手法では、本来の最適解ではない局所解に解が落ち込んでしまい、所望の解が得られない場合があるという問題がある。所望の解が得られなかった場合は、別の目標値や重みを再入力して最適化を実行する作業を繰り返さなければならず、大変手間がかかる。 In addition, the above-described optimization method has a problem that the solution falls into a local solution that is not the original optimum solution, and a desired solution may not be obtained. If the desired solution cannot be obtained, it is necessary to repeat the operation of re-inputting another target value or weight and executing optimization, which is very troublesome.
また、目標値を入力しなければならないため操作の連続性が途切れ、目標値への到達可能性を直感的に判断しにくいという問題がある。 In addition, since the target value must be input, there is a problem that the continuity of operation is interrupted and it is difficult to intuitively determine the reachability to the target value.
そこで、本発明は、最適化シミュレーションにおいて、目標値となるデーター点とその重みをユーザーが入力する手間を省き、なおかつ局所解からの脱出を容易にし、直感的で効率的な最適化シミュレーションをおこなうことができる技術を提供することを目的とする。 Therefore, the present invention performs an intuitive and efficient optimization simulation in the optimization simulation, which saves the user from inputting the target data point and its weight and facilitates escape from the local solution. The purpose is to provide technology that can be used.
本発明は、コンピューターに、入力手段を用いて入力された関数のパラメーターを、表示部に画面表示し記憶部に記憶するパラメーター入力ステップA、記憶したパラメーターに基づき関数を制御手段によって計算する計算ステップB、ステップBでの計算結果をデーター点の座標として記憶部に記憶し、該データー点を画面上のグラフに表示する計算結果表示ステップC、ステップCで表示された画面上のグラフをポインティング装置を用いて、ポインティング装置が画面上に指し示すカーソル位置のx座標に最も近いデーター点を記憶部から探索し、見つかったデーター点のy座標をカーソル位置のy座標に移動させることによってユーザーが変形させることができ移動後のデーター点の座標を記憶部に記憶する計算結果変形ステップD、ステップDにおいて、データー点を移動させた回数に応じて当該データー点の最適化のための重みを増やし記憶部に記憶する重み付けステップE、ステップDで記憶部に記憶したデーター点の座標を目標値として関数のパラメーターを、記憶部に記憶されているパラメーターを初期値として、またステップEで記憶部に記憶した各データー点の重みを用いて、制御手段によって最適化する最適化ステップF、ステップFでの最適化後のパラメーターを表示部に画面に表示し、新たなパラメーターとして記憶部に記憶する表示ステップG、ステップFで記憶した最適化後のパラメーターを新たなパラメーターとして、ステップBからステップGまでを繰り返しおこなう繰り返しステップH、を実行させることを特徴とする。 The present invention is a parameter input step A in which a parameter of a function input to a computer using an input unit is displayed on a display unit and stored in a storage unit, and a calculation step in which the function is calculated by the control unit based on the stored parameter. B, the calculation result in step B is stored in the storage unit as the coordinates of the data point, the calculation result display step C for displaying the data point on the graph on the screen, and the graph on the screen displayed in step C is a pointing device Is used to search the storage unit for the data point closest to the x coordinate of the cursor position pointed to by the pointing device on the screen, and the user deforms by moving the y coordinate of the found data point to the y coordinate of the cursor position it stored in the storage unit the coordinates of data points after the movement can calculation result deformation step D, and step D In accordance with the number of times the data point has been moved, the weight for optimization of the data point is increased and stored in the storage unit, weighting step E, and the coordinates of the data point stored in the storage unit in step D are used as target values. In the optimization step F and step F , the parameters of the function are optimized by the control means using the parameters stored in the storage unit as initial values and the weight of each data point stored in the storage unit in step E. Display the parameters after optimization on the display unit on the screen and store them in the storage unit as new parameters Step G and Step B through Step G using the optimized parameters stored in Step F as new parameters It is characterized in that a repeat step H for repeatedly performing is performed.
ここで、ステップEで使用する最適化方法としては、シンプレックス法、最急降下法、ニュートン法、準ニュートン法、ガウス・ニュートン法、勾配法、共役勾配法、レーベンバーグ・マーカート法等を利用した最小二乗法や、焼きなまし法(シミュレーテッド・アニーリング)、遺伝的アルゴリズム、タブーサーチ、ニューロネットワークを利用した方法があげられるが、これに限定されず、使用する関数に応じて適切な最適化方法を選択すればよい。 Here, the optimization method used in Step E is the minimum using the simplex method, steepest descent method, Newton method, quasi-Newton method, Gauss-Newton method, gradient method, conjugate gradient method, Levenberg-Marquardt method, etc. There are methods using the square method, annealing method (simulated annealing), genetic algorithm, tabu search, and neuro network, but it is not limited to this, and an appropriate optimization method is selected according to the function to be used. do it.
ステップDにおけるグラフの変形は、グラフ全体の変形であってもグラフの部分的な変形であっても良い。 The deformation of the graph in step D may be a deformation of the entire graph or a partial deformation of the graph.
使用するポインティング装置としては、一例としてマウス、タッチパッド、ポインティングスティック、タッチパネルディスプレイを利用することができる。 As a pointing device to be used, a mouse, a touch pad, a pointing stick, and a touch panel display can be used as an example.
前記重み付けステップEにおいて、重みの大きさに応じて当該データー点の表示サイズを変更する、データー点表示サイズ変更ステップI、を実行させることが好ましい。 In the weighting step E , it is preferable to execute a data point display size changing step I that changes the display size of the data point according to the weight.
ここで、データー点の表示サイズの変更は、データー点そのもののサイズ変更だけでなく、データー点の形状の変更や、色の変更、グラフが折れ線グラフの場合はデーター点間を結ぶ線の太さの変更であってもよい。 Here, changing the display size of data points is not only changing the size of the data points themselves, but also changing the shape of the data points, changing the color, and if the graph is a line graph, the thickness of the lines connecting the data points May be changed.
前記関数は光学薄膜の光学特性を計算するための関数であることが好ましい。 The function is preferably a function for calculating the optical characteristics of the optical thin film.
光学薄膜の光学特性は、基板と入射媒質の屈折率および各層の膜厚と膜の屈折率を用いて以下の特性マトリックス式を含む計算式によって計算できる。光学特性は、横軸を波長、縦軸を反射率、透過率、吸収率とした散布図または折れ線グラフとして表わすことができるため、前記計算結果変形ステップDをおこなうにあたって好適であり、光学多層膜の各層の膜厚と屈折率を関数のパラメーターとして最適化をおこなうことができる。なお、パラメーターは、各層の膜厚だけであっても、各層の膜の屈折率だけであっても、各層の膜厚と膜の屈折率の両方であっても良い。 The optical characteristics of the optical thin film can be calculated by a calculation formula including the following characteristic matrix formula using the refractive index of the substrate and the incident medium, the thickness of each layer, and the refractive index of the film. The optical characteristics can be expressed as a scatter diagram or a line graph with the horizontal axis representing wavelength and the vertical axis representing reflectance, transmittance, and absorptance, and is suitable for performing the calculation result modification step D. The film thickness and refractive index of each layer can be optimized as function parameters. The parameter may be only the film thickness of each layer, only the refractive index of the film of each layer, or both the film thickness of each layer and the refractive index of the film.
すなわち、光学薄膜において所望の光学特性を得るために膜厚と膜の屈折率の最適化をおこなう方法として本発明は好適である。 That is, the present invention is suitable as a method for optimizing the film thickness and the refractive index of the film in order to obtain desired optical characteristics in the optical thin film.
上記の数式において、r=1は入射媒質側の層、qは層数、Nrは第r層の複素屈折率、drは第r層の物理的膜厚、θrは第r層への光線入射角、λは波長、*は複素共役、ηrは第r層のアドミタンス、η0は入射媒質のアドミタンス、ηmは基板のアドミタンス、Rは多層膜の反射率、Tは多層膜の透過率、Aは多層膜の吸収率である。 In the above formula, r = 1 is incident medium side of the layer, q is the number of layers, N r is the complex refractive index of the r layer, d r is the physical thickness of the r layer, theta r is the r th layer Λ is the wavelength, * is the complex conjugate, η r is the admittance of the r-th layer, η 0 is the admittance of the incident medium, η m is the admittance of the substrate, R is the reflectance of the multilayer film, and T is the multilayer film And A is the absorption rate of the multilayer film.
本発明に係る最適化シミュレーション装置は、入力手段を用いて入力された関数のパラメーターを、表示部に画面表示し記憶部に記憶するパラメーター入力手段A、記憶したパラメーターに基づき関数を制御手段によって計算する計算手段B、手段Bでの計算結果をデーター点の座標として記憶部に記憶し、該データー点を画面上のグラフに表示する計算結果表示手段C、画面上の任意の位置をユーザーが指示するためのポインティング装置、手段Cで表示された画面上のグラフを前記ポインティング装置を用いて、ポインティング装置が画面上に指し示すカーソル位置のx座標に最も近いデーター点を記憶部から探索し、見つかったデーター点のy座標をカーソル位置のy座標に移動させることによってユーザーが変形させることができ移動後のデーター点の座標を記憶部に記憶する計算結果変形手段D、手段Dにおいて、データー点を移動させた回数に応じて当該データー点の最適化のための重みを増やし記憶部に記憶する重み付け手段E、手段Dで記憶部に記憶したデーター点の座標を目標値として関数のパラメーターを、記憶部に記憶されているパラメーターを初期値として、また手段Eで記憶部に記憶した各データー点の重みを用いて、制御手段によって最適化する最適化手段F、手段Fでの最適化後のパラメーターを表示部に画面に表示し、新たなパラメーターとして記憶部に記憶する表示手段G、手段Fで記憶した最適化後のパラメーターを新たなパラメーターとして、手段Bから手段Gまでを繰り返しおこなう繰り返し手段H、を備えることを特徴とする。 The optimization simulation apparatus according to the present invention includes a parameter input unit A that displays a parameter of a function input using the input unit on the display unit and stores the parameter in the storage unit, and a function is calculated by the control unit based on the stored parameter. Calculation means B, the calculation result of means B is stored in the storage unit as the coordinates of the data point, and the calculation result display means C for displaying the data point on the graph on the screen, the user specifies an arbitrary position on the screen A pointing device for performing a graph on the screen displayed by means C, using the pointing device, the data point closest to the x coordinate of the cursor position pointed on the screen by the pointing device was searched from the storage unit and found Day after the movement allows the user to deform by moving the y coordinate of the data points in the y-coordinate of the cursor position Calculation results deforming means D you store the coordinates in the storage unit of the over points, in section D, weighting means for storing in the storage unit to increase the weight for the optimization of the data points according to the number of times of moving the data points E, the function parameters with the coordinates of the data points stored in the storage unit by means D as the target values, the parameters stored in the storage unit as the initial values, and the weight of each data point stored in the storage unit by means E using optimization means F for optimizing the control means displays on the screen the parameters after optimization in means F on the display unit, the display unit G stored in the storage unit as a new parameter, stored in means F It is characterized by comprising repeating means H for repeatedly performing means B to means G using the optimized parameter as a new parameter.
本発明に係る前記最適化シミュレーション装置は、前記重み付け手段Eにおいて、重みの大きさに応じて当該データー点の表示サイズを変更する、データー点表示サイズ変更手段I、を備えることが好ましい。
The optimization simulation apparatus according to the present invention preferably includes a data point display size changing unit I that changes the display size of the data point in accordance with the weight in the weighting unit E.
本発明に係る前記最適化シミュレーション装置における関数は光学薄膜の光学特性を計算するための関数であることが好ましい。 The function in the optimization simulation apparatus according to the present invention is preferably a function for calculating the optical characteristics of the optical thin film.
本発明によれば、ポインティング装置によるグラフの変形によって目標値となるデーター点を設定できるため、ユーザーが目標値となるデーター点を入力する手間を省くことができる。 According to the present invention, a data point that becomes a target value can be set by deforming a graph by the pointing device, so that it is possible to save the user from inputting a data point that becomes the target value.
また、繰り返し手段を有することにより、局所解に落ち込んでしまった場合に、目標値となるデーター点の再設定と最適化を繰り返しおこなうことで一旦局所解から脱出し、再度本来の目標値に向かって最適化をおこなうことが可能になる。 In addition, if it has fallen into the local solution due to having iterative means, it will once again escape from the local solution by re-setting and optimizing the data points that will be the target value, and then return to the original target value again. Optimization.
また、パラメーターの入力によるグラフ表示、グラフの変形によるパラメーターの表示という双方向の直感的なオペレーションが可能となるため、ユーザーの作業性が向上し、また、目標値への到達可否の判断が容易になる。 In addition, interactive operations such as graph display by parameter input and parameter display by graph deformation are possible, improving user workability and making it easy to determine whether or not the target value can be reached. become.
また、重み付けをおこなう場合には、グラフの変形時に同時にポインティング装置によって重み付けができるため、作業性を損なうことなく重み付けをおこなうことができる。 In addition, when weighting is performed, weighting can be performed by the pointing device at the same time when the graph is deformed, so that weighting can be performed without impairing workability.
また、重み付けの状態がグラフ上のデーター点のサイズで把握できるため、ユーザーの作業性、視認性が向上する。 In addition, since the weighting state can be grasped by the size of the data points on the graph, the workability and visibility of the user are improved.
以下、本発明の一実施形態に係る最適化シミュレーション装置の構成および動作について図面を用いて説明する。 Hereinafter, the configuration and operation of an optimization simulation apparatus according to an embodiment of the present invention will be described with reference to the drawings.
図1は、本発明の一実施形態における最適化シミュレーション装置の全体構成である。 FIG. 1 shows the overall configuration of an optimization simulation apparatus according to an embodiment of the present invention.
キーボード1は、ユーザーが関数の初期パラメーターを入力するためのものである。ディスプレイ2は、関数のパラメーター、グラフ、マウス3のカーソルを表示するためのものである。マウス3は、ディスプレイ2に表示されたカーソルと連動していて、ユーザーがマウスを前後左右に移動させるとそれに同期してカーソルが上下左右に移動する装置であり、押しボタンが付属しているものである。記憶部4は、関数のパラメーター、各データー点における関数の変数xと計算結果yの値、各データー点の重み、前回変更対象のデーター点のx値、現在変更対象のデーター点のx値を格納するためのものである。制御部5は、関数の計算、ディスプレイ2上へのグラフ表示、マウスが指し示すカーソル位置とマウスのボタン状態の把握、ディスプレイ2上へのカーソルの表示を制御するためのものである。
The
一例として、光学多層膜の分光反射特性の最適化をおこなうものとして前記数1〜数5の特性マトリックス式を含む計算式を関数として用いる。
As an example, as a function for optimizing the spectral reflection characteristics of the optical multilayer film, a calculation formula including the above-described
図2は、ディスプレイ2の表示内容を示す。パラメーター表示エリアには光学多層膜の各層の膜厚dと屈折率nが基板側の層から順番に上から表示されている。グラフ表示エリアにはパラメーターに基づいて前記数1〜数5の数式を用いて計算した結果がグラフ表示されている。本実施形態では横軸が波長、縦軸が光学多層膜の反射率である。
FIG. 2 shows the display content of the
図3は、記憶部に格納される項目を示す。 FIG. 3 shows items stored in the storage unit.
ここで、d, nはパラメーターであり、それぞれd1, d2,...,
dq、n1, n2, ..., nqのq個、合計2×q個のパラメーターである。dは層の膜厚、nは層の屈折率、層数はq層である。xはグラフのx軸に相当する値であり、ここでは波長である。yは、関数のxでの計算結果であり、グラフのy軸に相当する値(ここでは反射率)である。xには、シミュレーションをおこないたいx軸範囲の、x1, x2, ..., xNのN個の固定値をあらかじめ与えておく。zは点xにおける最適化に使用する重みである。
Where d and n are parameters, d 1 , d 2 , ...,
d q , n 1 , n 2 , ..., n q , a total of 2 × q parameters. d is the thickness of the layer, n is the refractive index of the layer, and the number of layers is q layers. x is a value corresponding to the x-axis of the graph, and here is a wavelength. y is a calculation result at x of the function, and is a value (in this case, reflectance) corresponding to the y-axis of the graph. x is given in advance N fixed values of x 1 , x 2 ,..., x N in the x-axis range to be simulated. z is a weight used for optimization at the point x.
以上の構成の最適化シミュレーション装置の制御手順について図4のフローチャートに従って説明する。 The control procedure of the optimization simulation apparatus having the above configuration will be described with reference to the flowchart of FIG.
最初にステップS101で、ユーザーが最適化の出発点となる2×q個の初期パラメーターをキーボード1を用いて入力する。制御部5は、入力されたパラメーターをディスプレイ2のパラメーター表示エリアに表示し、記憶部4にこれらのパラメーターを格納する。
First, in step S101, the
次にステップS102で、制御部5は記憶部4に格納されたパラメーターとx値を用いて関数の計算をおこない、計算結果として得られた前記計算式のy値を記憶部4に格納する。さらに重みzをすべて0にする。 Next, in step S102, the control unit 5 calculates a function using the parameter and x value stored in the storage unit 4, and stores the y value of the calculation formula obtained as a calculation result in the storage unit 4. Further, all the weights z are set to 0.
次にステップS103で、制御部5は、記憶部4に格納されているx値、y値を用いて、グラフの横軸をx座標、縦軸をy座標としてN個のx値に対するy値をグラフ上のデーター点としてプロットする。データー点間はわかりやすいように直線で結び、折れ線グラフとしてディスプレイ2に表示する。
Next, in step S103, the control unit 5 uses the x value and the y value stored in the storage unit 4, and the y value for N x values with the horizontal axis of the graph as the x coordinate and the vertical axis as the y coordinate. Are plotted as data points on the graph. The data points are connected with straight lines for easy understanding, and are displayed on the
次にステップS104では、ユーザーが終了ボタンを押すなどして終了指示を出した場合に動作を終了する。ユーザーが終了指示を出さなければ次のステップへ移る。 Next, in step S104, the operation ends when the user issues an end instruction by pressing an end button or the like. If the user does not give an end instruction, the process proceeds to the next step.
次にステップS105で、ユーザーがマウス3を用いて各波長(xi)の反射率(yi)が所望の値となるようにグラフを変形させる。ステップS105のフローチャートを図5に示す。 In step S105, the user using the mouse 3 reflectance of each wavelength (x i) (y i) deforms the graph to be a desired value. A flowchart of step S105 is shown in FIG.
最初にステップS201で制御部5は、カーソルがグラフエリア内にあるかどうかを判断する。カーソルがグラフエリア内にある場合はステップS202に進む。無い場合はステップS201を繰り返し実行する。 First, in step S201, the control unit 5 determines whether or not the cursor is in the graph area. If the cursor is in the graph area, the process proceeds to step S202. If not, step S201 is repeatedly executed.
ステップS202では、制御部5は、マウスボタンが押されているかどうかを判断する。マウスボタンが押されている場合はステップS203に進む。押されていない場合はステップS201に戻る。 In step S202, the control unit 5 determines whether or not the mouse button is pressed. If the mouse button is pressed, the process proceeds to step S203. If not, the process returns to step S201.
ステップS203では、制御部5はカーソルのグラフ上でのx,y値を検出する。この値をxc, ycとする。 In step S203, the control unit 5 detects the x and y values on the cursor graph. Let this value be xc, yc.
次にステップS204で制御部5は、N個データー点の中から、x値がカーソルのx値xcに最も近いデーター点を探索する。探索には、計算式d = (xc-xN)2 を用いてdが最も小さくなるデーター点を探す。制御部は探し出したデーター点のx値を、「現在変更対象のデーター点のx値」p1として記憶部4に格納する。 Next, in step S204, the control unit 5 searches for the data point whose x value is closest to the x value xc of the cursor from among the N data points. In the search, a data point where d is the smallest is searched using the calculation formula d = (xc−x N ) 2 . The control unit stores the x value of the found data point in the storage unit 4 as “x value of the current data point to be changed” p1.
次にステップS205で制御部5は、記憶部4に格納されている「前回変更対象のデーター点のx値」p0と、「現在変更対象のデーター点のx値」p1を比較する。p0とp1が異なっている場合はステップS206に進む。p0とp1が同じ場合はステップS209へ進む。 Next, in step S205, the control unit 5 compares the “x value of the data point to be changed last time” p0 stored in the storage unit 4 with the “x value of the data point to be changed last” p1. If p0 and p1 are different, the process proceeds to step S206. If p0 and p1 are the same, the process proceeds to step S209.
ステップS206で制御部5は、データー点p1のy値をカーソルのy値ycに変更し、ディスプレイ2のグラフ上のデーター点の位置も変更する。
In step S206, the control unit 5 changes the y value of the data point p1 to the y value yc of the cursor, and also changes the position of the data point on the graph of the
次にステップS207で制御部5は、データー点p1の重みを+1する。この際、図2のグラフ表示エリアに示す当該データー点の丸印の大きさを重みの大きさに応じて大きくし、隣接するデーター点を結ぶ直線の太さを重みの大きさに応じて太くする。 Next, in step S207, the control unit 5 increments the weight of the data point p1 by one. At this time, the size of the circle of the data point shown in the graph display area of FIG. 2 is increased according to the size of the weight, and the thickness of the straight line connecting the adjacent data points is increased according to the size of the weight. To do.
次にステップS208で制御部5は、記憶部4に格納されている「前回変更対象のデーター点のx値」p0の値を「現在変更対象のデーター点のx値」p1に変更する。 Next, in step S208, the control unit 5 changes the value of “x value of the data point to be changed last time” p0 stored in the storage unit 4 to “x value of the data point to be changed last” p1.
ステップS209で制御部5は、マウスボタンが押されているかどうかを判断する。マウスボタンが押されている場合はステップS203に進む。押されていない場合はこのフローチャートの手続きを終了する。 In step S209, the control unit 5 determines whether or not the mouse button is pressed. If the mouse button is pressed, the process proceeds to step S203. If not, the procedure of this flowchart is terminated.
図5のフローチャートの手続きが終了した後、図4のステップS106に進む。 After the procedure of the flowchart in FIG. 5 is completed, the process proceeds to step S106 in FIG.
ステップS106で制御部5は、記憶部4に格納されている重みが0の値を全て1に変更する。次に記憶部4に格納されているパラメーター、テーター点のx値、y値、データー点の重みを用いてパラメーターの最適化をおこなう。 In step S106, the control unit 5 changes all the values of the weights 0 stored in the storage unit 4 to 1. Next, the parameters are optimized using the parameters stored in the storage unit 4, the x value and y value of the data points, and the weights of the data points.
本実施形態では、最適化は、次の数8においてJが最小となるようにレーベンバーク・マーカート法を用いておこなう。 In the present embodiment, optimization is performed using the Levenberg-Markert method so that J is minimized in the following equation (8).
上記の数式において、Rは前記数5に示した数式を表わす。 In the above mathematical formula, R represents the mathematical formula shown in Formula 5.
この時の最適化アルゴリズムは、例えば、William H. Press他「NUMERICAL RECIPES in C」
第14章4項P.505 Levenberg-Marquardt法,
日本, 株式会社技術評論社,
平成18年5月5日初版第13刷, ISBN4-87408-560-1、に記載のコードを用いることができる。
The optimization algorithm at this time is, for example, William H. Press et al. “NUMERICAL RECIPES in C”
Chapter 14 Section 4 P.505 Levenberg-Marquardt method,
Japan, Technical criticism company,
The codes described in May 13, 2006, first edition, 13th edition, ISBN4-87408-560-1, can be used.
次にステップS107で制御部5は、最適化後のパラメーターをディスプレイ2に表示し、記憶部4に最適化後のパラメーターを格納する。
Next, in step S107, the control unit 5 displays the optimized parameters on the
次にステップS102へ戻り、ステップS102からステップS107までの動作を繰り返す。 Next, the process returns to step S102, and the operations from step S102 to step S107 are repeated.
1 キーボード
2 ディスプレイ
3 マウス
4 記憶部
5 制御部
1 keyboard
2 display
3 mouse
4 Memory
5 Control unit
Claims (6)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010180528A JP4690495B1 (en) | 2010-03-09 | 2010-08-11 | Optimization simulation program and optimization simulation apparatus |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010051271 | 2010-03-09 | ||
JP2010051271 | 2010-03-09 | ||
JP2010180528A JP4690495B1 (en) | 2010-03-09 | 2010-08-11 | Optimization simulation program and optimization simulation apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP4690495B1 true JP4690495B1 (en) | 2011-06-01 |
JP2011210226A JP2011210226A (en) | 2011-10-20 |
Family
ID=44236968
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010180528A Active JP4690495B1 (en) | 2010-03-09 | 2010-08-11 | Optimization simulation program and optimization simulation apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4690495B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104981721A (en) * | 2013-02-11 | 2015-10-14 | 哈利伯顿能源服务公司 | Fluid analysis system with integrated computation element formed using atomic layer deposition |
-
2010
- 2010-08-11 JP JP2010180528A patent/JP4690495B1/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2011210226A (en) | 2011-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10437445B2 (en) | Gestures involving direct interaction with a data visualization | |
JP5490225B2 (en) | Portable electronic device, method for operating portable electronic device, and recording medium | |
US7936341B2 (en) | Recognizing selection regions from multiple simultaneous inputs | |
US9213478B2 (en) | Visualization interaction design for cross-platform utilization | |
US9524097B2 (en) | Touchscreen gestures for selecting a graphical object | |
TWI482077B (en) | Electronic device, method for viewing desktop thereof, and computer program product therof | |
CN106126049B (en) | Menu-operating method and system | |
RU2627113C2 (en) | User interface for editing value on-site | |
US20130061122A1 (en) | Multi-cell selection using touch input | |
CN104317452B (en) | Method for controlling large-screen intelligent device | |
US11226734B1 (en) | Triggering multiple actions from a single gesture | |
TW201112074A (en) | Touch gesture detecting method of a touch panel | |
US20130009910A1 (en) | Mobile terminal | |
WO2015117341A1 (en) | Mobile terminal and method for one-handed operation thereof, and computer storage medium | |
US20100039449A1 (en) | Menu controlling method | |
WO2014179377A1 (en) | Automatically manipulating visualized data based on interactivity | |
US20130038555A1 (en) | Information Input Device, Information Input Method, and Information Input Program | |
CN107066176A (en) | A kind of control method and device of the singlehanded pattern of terminal | |
JP4690495B1 (en) | Optimization simulation program and optimization simulation apparatus | |
WO2016183912A1 (en) | Menu layout arrangement method and apparatus | |
WO2011159444A2 (en) | Localized layout and routing in an interactive diagramming system | |
CN107589892A (en) | Exchange method, system, equipment and the storage medium of menu drop-down expansion | |
JP4221007B2 (en) | Data display processing system | |
JP2017140252A (en) | Game program | |
US20150160746A1 (en) | Phased information providing system and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140225 Year of fee payment: 3 |
|
R154 | Certificate of patent or utility model (reissue) |
Free format text: JAPANESE INTERMEDIATE CODE: R154 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140225 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4690495 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |