इष्टतमकरण

right|thumb|200px|परवलयज का अधिकतम बिन्दु

गणित में **अभीष्टीकरण** या **इष्टतमकरण** (optimization) उन गणितीय समस्याओं के अध्ययन को कहते हैं जिनमें किसी वास्तविक फलन (real function) का मान अधिकतम या न्यूनतम करने की चेष्टा की जाती है।

इसके लिये उचित विधियों का सहारा लेते हुए, उस फलन में निहित वास्तविक चरों या पूर्णांक चरों का मान इस प्रकार चुना जाता है कि उस फलन का मान अधिकतम या न्यूनतम (अभीष्टतम् / optimum) हो जाय। इसके साथ यह भी आवश्यक है कि ये चर एक दिये हुए डोमेन (या समुच्चय) में से हों; दूसरे शब्दों में, ये चर कुछ अन्य दी हुई शर्तों का पालन भी करना चाहिये (जैसे x < 1000)।

अभीष्टतम प्राप्ति के उपायों को गणित में **गणितीय क्रमानुशीलन** (मैथेमैटिकल प्रोग्रामिंग) के नाम से भी जाना जाता है।

## इष्टतमकरण समस्याओं के प्रकार
300px|right|thumb|दो-आयामी स्पेस के लिए अनोत्तल (Non-convex) किन्तु अवकलनीय मूल्य-फलन (कॉस्ट फंक्शन)
इष्टतमीकरण समस्याओं को कई तरह से वर्गीकृत किया जा सकता है, जैसे-

*(१) प्रतिबन्धित और अप्रतिबन्धित (Constrained and unconstrained)

*(२) सतत और असतत (contineous and discrete)

*(३) रैखिक, द्विघात या अरैखिक (linear, quadratic and nonlinear)

*(४) शून्य, एक, दो या बहु-लक्ष्य समस्याएँ (None, One or Many Objectives)

## इष्टमकरण के प्रमुख उपक्षेत्र (Major subfields)
* रैखिक क्रमानुशीलन (Linear programming) studies the case in which the objective function *f* is linear and the set A is specified using only linear equalities and inequalities. Such a set is called a polyhedron or a polytope if it is bounded.
* पूर्णांक क्रमानुशीलन (Integer programming) studies linear programs in which some or all variables are constrained to take on integer values.
* द्विघात क्रमानुशीलन (Quadratic programming) allows the objective function to have quadratic terms, while the set A must be specified with linear equalities and inequalities.
* अरैखिक क्रमानुशीलन (Nonlinear programming) studies the general case in which the objective function or the constraints or both contain nonlinear parts.
* Convex programming studies the case when the objective function is convex and the constraints, if any, form a convex set. This can be viewed as a particular case of nonlinear programming or as generalization of linear or convex quadratic programming.
** Second order cone programming (SOCP)। 
* Semidefinite programming (SDP) is a subfield of convex optimization where the underlying variables are semidefinite matrices. It is generalization of linear and convex quadratic programming.
* Stochastic programming studies the case in which some of the constraints or parameters depend on random variables.
* Robust programming is, as stochastic programming, an attempt to capture uncertainty in the data underlying the optimization problem. This is not done through the use of random variables, but instead, the problem is solved taking into account inaccuracies in the input data.
* Combinatorial optimization is concerned with problems where the set of feasible solutions is discrete or can be reduced to a discrete one.
* Infinite-dimensional optimization studies the case when the set of feasible solutions is a subset of an infinite-dimensional space, such as a space of functions.
* स्वानुभविक विधियाँ (Heuristic algorithms
** Metaheuristics
* Constraint satisfaction studies the case in which the objective function *f* is constant (this is used in artificial intelligence, particularly in automated reasoning)। 
** Constraint programming.
* Disjunctive programming used where at least one constraint must be satisfied but not all. Of particular use in scheduling.
* Trajectory optimization is the speciality of optimizing trajectories for air and space vehicles.
In a number of subfields, the techniques are designed primarily for optimization in dynamic contexts (that is, decision making over time):
* विचरण कलन (Calculus of variations) seeks to optimize an objective defined over many points in time, by considering how the objective function changes if there is a small change in the choice path.
* इष्टतम नियंत्रण theory is a generalization of the calculus of variations.
* गतिक क्रमादेशन (Dynamic programming) studies the case in which the optimization strategy is based on splitting the problem into smaller subproblems. The equation that relates these subproblems is called the Bellman equation.
* Mathematical programming with equilibrium constraints is where the constraints include variational inequalities or complementarities.

## सन्दर्भ

## इन्हें भी देखें

* इष्टतमकारी सॉफ्टवेयरों की सूची
* विकासात्मक कलनविधियाँ
* जेनेटिक एल्गोरिद्म
* गतिक क्रमादेशन (Dynamic programming)
* फजी तर्क (Fuzzy logic)
* खेल सिद्धान्त (Game theory)
* लक्ष्य क्रमादेशन (Goal Programming)

* Important publications in optimization
* Interior point methods
* संक्रिया विज्ञान (Operations research)
* इष्टतमकरण समस्या (Optimization problem)
* Mathematical optimization software
* प्रक्रिया इष्टतमकरण (Process optimization)

* Radial basis function
* Random optimization
* एकधा विधि (सिम्प्लेक्स विधि)
* Topkis's Theorem
* विचरण-कलन (Variational calculus)
* विचरण असमता (Variational inequality)
* इष्टतम नियंत्रण (Optimal control)

## सॉल्वर (Solvers)
* CPLEX
* IMSL Numerical Libraries are collections of math and statistical algorithms available in C/C++, Fortran, Java and C#/.NET. Optimization routines in the IMSL Libraries include unconstrained, linearly and nonlinearly constrained minimizations, and linear programming algorithms.
* IPOPT - an open-source primal-dual interior point method NLP solver which handles sparse matrices
* KNITRO - solver for nonlinear optimization problems
* Mathematica - handles linear programming, integer programming and constrained non-linear optimization problems
* NAG Numerical Libraries-The NAG Library contains a comprehensive collection of Optimization routines, which cover a diverse set of problems and circumstances.http://www.nag.co.uk/optimization/index.asp
* OpenOpt - a free toolbox with connections to lots of solvers, for Python language programmers

## बाहरी कड़ियाँ
* Decision Tree for Optimization Software
* COIN-OR — Computational Infrastructure for Operations Research
* Decision Tree for Optimization Software Links to optimization source codes
* Global optimization
* Mathematical Programming Glossary
* Mathematical optimization
* Mathematical Programming Society
* NEOS Guide currently being replaced by the NEOS Wiki 
* Optimization Online A repository for optimization e-prints
* Optimization Related Links
* The Basics of Practical Optimization An undergraduate optimization text

**मॉडलिंग भाषाएँ**
* AIMMS
* AMPL
* GAMS — General Algebraic Modeling System
* MPL
* OPL
* OPTIMJ

**अभीष्ट हल देने वाले प्रोग्राम**
* CONOPT
* CPLEX - linear, quadratic, and mixed-integer programming solver
* JOpt
* Moocho - a very flexible open-source NLP solver
* Mosek - linear, quadratic, conic and mixed-integer programming solver
* SAS/OR
* SmartDO - Engineering global optimization (commercial) software
* TANGO Project - Trustable Algorithms for Nonlinear General Optimization

**कोड लाइब्रेरी (Libraries)**
* ALGLIB Optimization sources. C++, C#, Delphi, Visual Basic.
* CPLEX Component Libraries
* IOptLib (Investigative Optimization Library) - a free open source library for development of optimization algorithms (ANSI C)। 
* OAT (Optimization Algorithm Toolkit) - a set of standard optimization algorithms and problems in Java.
* OOL (Open Optimization library) - a set of optimization routines in C.

इष्टमकरण