Maple Professional
Maple Academic
Maple Student Edition
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professional
MapleSim Academic
Maple T.A. - Testing & Assessment
Maple T.A. MAA Placement Test Suite
Möbius - Online Courseware
Machine Design / Industrial Automation
Aerospace
Vehicle Engineering
Robotics
Power Industries
System Simulation and Analysis
Model development for HIL
Plant Modeling for Control Design
Robotics/Motion Control/Mechatronics
Other Application Areas
Mathematics Education
Engineering Education
High Schools & Two-Year Colleges
Testing & Assessment
Students
Financial Modeling
Operations Research
High Performance Computing
Physics
Live Webinars
Recorded Webinars
Upcoming Events
MaplePrimes
Maplesoft Blog
Maplesoft Membership
Maple Ambassador Program
MapleCloud
Technical Whitepapers
E-Mail Newsletters
Maple Books
Math Matters
Application Center
MapleSim Model Gallery
User Case Studies
Exploring Engineering Fundamentals
Teaching Concepts with Maple
Maplesoft Welcome Center
Teacher Resource Center
Student Help Center
Optimization[QPSolve] - 2 次計画問題を解く
使い方
QPSolve(obj, constr, bd, opts)
パラメータ
obj - algebraic ; 2 次の目的関数
constr - (オプション) set(relation) または list(relation); 線形制約条件
bd - (オプション) name = range の列; 境界条件
opts - (オプション) option = value の形の等式。ただし、option は assume, feasibilitytolerance, infinitebound, initialpoint, iterationlimit, maximize または output
説明
QPSolve コマンドは線形のもと 2 次を ( または ) にする 2 (QP) を解きます。
このヘルプページは QP が代数式(algebraic form)のときの QPSolve コマンドに使い方について述べます。この形の概要は Optimization/AlgebraicForm の中で与えられています。QPSolve はまた行列の形をした問題も認識します ( QPSolve (Matrix Form) を参照ください ) 。行列の形はより効率的な計算を引き出しますが、しかし形はより複雑になります。
第 1 引数 obj は 2 次の目的関数を指定します。もし obj が 1 次の関数の時は自動的に Optimization[LPSolve] コマンドが呼び出されます。 第 2 引数 constr は任意であり、線形不等式 ( タイプ `<=` または `=`) の集合またはリストを指定します。変数は obj と constr の中にある不定の名前のタイプです。 変数に関する境界条件は varname を変数、varrange を区間として各変数ついて varname=varrange の形で次の引数で与えます。区間の端点としてタイプ infinity の値を含めることができます。変数の非負性でデフォルトでは仮定されていませんが、assume=nonnegative オプションで指定することができます。
Maple は解として最小値 ( または最大値 ) およびそれを満たす点のリストを返します。output=solutionmodule オプションが指定されていれば、モジュールを返します。詳しくは Optimization/Solution を参照ください。 2 次計画問題が 計画問題ならば、最小値を返します。そうでない場合、解は最小値かもしれません。
オプション
引数 opts には次のオプションを 1 つ以上をいれることができます。オプションについて詳しくは Optimization/Options を参照ください。
assume = nonnegative -- すべての変数を非負に指定します。
feasibilitytolerance = realcons(positive) -- 許容できる誤差の量を指定します。
infinitebound = realcons(positive) -- infinitebound より大きい値を infinity とみなします。
initialpoint = set(equation) or list(equation) -- varname=value の集合またはリストで初期点を指定します。
iterationlimit = posint -- 有効制約法による反復回数を指定します。
maximize or maximize = truefalse -- true のとき最大値を計算し、false のとき最小値を計算します。'maximize' オプションは maximize = true と同じです。はじめは maximize = false が指定されています。
output = solutionmodule -- Optimization/Solution で説明されるモジュールを返します。
注意
QPSolve コマンドは Numerical Algorithms Group (NAG) によって提供されたライブラリの中の反復有効制約法を使います。初期点は initialpoint オプションで指定できます。そうでないなら、決まった点を使います。
計算は浮動小数で行います。さらに、すべての入力はデータは実数である必要があり、解は問題が正確な値で与えられない限りは浮動小数で返します。最適化パッケージの数値計算について詳しくは Optimization/Computation を参照ください。
問題がでない場合、エラーを返します。問題がとき、QPSolve は警告を出し計算途中の値を返します。この結果は意味を持たないかもしれません。
asumme=nonnegative を使うことができますが、最適化パッケージでは一般の仮定は提供されていません。
例
with(Optimization):
線形制約条件のもと、2 変数 2 次計画問題を解くためには QPSolve を使います。
QPSolve(2*x+5*y+3*x^2+3*x*y+2*y^2, {x-y>=2});
非負の制約条件をつけるときは、assume=nonnegative オプションを使います。
QPSolve(2*x+5*y+3*x^2+3*x*y+2*y^2, {x-y>=2}, assume = nonnegative);
境界を制約条件とすることができます。
QPSolve(2*x+5*y+3*x^2+3*x*y+2*y^2, {x-y>=2}, x=1.5..infinity);
参照
Optimization, Optimization/AlgebraicForm, Optimization/Computation, Optimization[LPSolve], Optimization/MatrixForm, Optimization/Options, Optimization[QPSolve] (MatrixForm), Optimization/Solution, realcons
Download Help Document