Overview: Mathematical optimization

Definition

Mathe­ma­ti­cal optimi­zation is the sci­ence of making the best pos­si­ble decis­i­on. It lies at the inter­sec­tion of mathe­ma­tics, soft­ware, and indus­tri­al appli­ca­ti­on and has seen tre­men­dous growth over the last few deca­des due to its prac­ti­cal rele­van­ce and con­ti­nuous com­pu­ta­tio­nal advan­ces. It has beco­me one of the most cur­rent and prac­ti­cal­ly rele­vant fields of modern appli­ed mathe­ma­tics and is indis­pensable in many indus­tri­al sectors.

Mathe­ma­ti­cal optimi­zation deals with optimi­zation pro­blems, i.e., tasks of the form:
\[
\begin{align}
\min_{x} ~~&f(x) \\
\text{s.t.} ~~& x \in D
\end{align}
\]
This is to be unders­tood as the search for a choice of the vec­tor \(x\) such that the func­tion \(f(x)\) achie­ves the smal­lest value while \(x\) meets cer­tain pro­per­ties \(D\).

Explanation

The func­tion \(f(x)\) is cal­led the objec­ti­ve func­tion and repres­ents the quan­ti­ty who­se value is to be mini­mi­zed. This could include cos­ts, time dura­ti­ons, or risks. The vec­tor \(x\) con­ta­ins the decis­i­on varia­bles — con­trol varia­bles, who­se values can be cho­sen to influence the objec­ti­ve func­tion. The cons­traint \(x \in D\) defi­nes rest­ric­tions to which the decis­i­on varia­ble is sub­ject. For exam­p­le, if \(x\) were a quan­ti­ty of mate­ri­al, then the requi­re­ment \(x \geq 0\) might be sensible.

Figu­re 1: Objec­ti­ve func­tion \(f(x)\) with opti­mal point \(x^*\) such that \(f(x^*) \leq f(x)\) for all \(x \in D\).

Relevance

When the three components—objective func­tion, decis­i­on varia­bles, and constraints—are careful­ly sel­ec­ted and com­bi­ned to repre­sent a real-world pro­blem, the solu­ti­on to the optimi­zation pro­blem yields the best pos­si­ble cour­se of action. The­r­e­fo­re, optimi­zation is a very powerful tool when decis­i­ons need to be made that have far-rea­ching and com­plex con­se­quen­ces. The spe­ci­fic appli­ca­ti­ons may invol­ve sel­ec­ting pro­duct para­me­ters, desig­ning sche­du­les, esti­mat­ing unknown quan­ti­ties, or set­ting con­trol signals.
Espe­ci­al­ly in com­plex real-world pro­blems, this often leads to mathe­ma­ti­cal models with thou­sands of decis­i­on varia­bles and cons­traints. Sol­ving such models has only beco­me pos­si­ble through the explo­si­ve growth in com­pu­ting power of modern com­pu­ters and the deve­lo­p­ment of dedi­ca­ted optimi­zation soft­ware. A uni­fied theo­ry for the stu­dy of optimi­zation pro­blems has sin­ce been deve­lo­ped, lea­ding to a set of methods that have often been pro­fi­ta­b­ly appli­ed in practice.

Theory

Optimi­zation pro­blems come in all shapes and colors and can cover all com­ple­xi­ty cri­te­ria from simp­le to impos­si­ble. Objec­ti­ve func­tions of optimi­zation pro­blems can be stu­di­ed and clas­si­fied based on their mathe­ma­ti­cal pro­per­ties. For exam­p­le, if they are con­vex, gua­ran­tees can be made about the uni­que sol­va­bi­li­ty of the problem.

It is often also pos­si­ble to find lower bounds for the mini­ma, thus pro­ving the opti­ma­li­ty of a pro­po­sed solu­ti­on. The­se rela­ti­onships are used by nume­ri­cal methods that ite­ra­tively set up and sol­ve sys­tems of equa­tions until no fur­ther impro­ve­ments are possible.

Methods

Depen­ding on the cha­rac­te­ristics of the optimi­zation pro­blem, the­re may be tail­or-made methods for its solu­ti­on. This pri­ma­ri­ly invol­ves distin­gu­is­hing based on the degree of non­linea­ri­ty in the optimi­zation pro­blem and the role of rand­om­ness. Optimi­zation pro­blems with a line­ar objec­ti­ve func­tion and line­ar cons­traints are known as Line­ar Pro­grams.

They can be relia­bly sol­ved, even when the num­ber of decis­i­on varia­bles rea­ches into the hundreds of thou­sands. Non­line­ar com­pon­ents of a pro­blem must take cer­tain forms to not jeo­par­di­ze sol­va­bi­li­ty. The same appli­es when ran­dom effects need to be con­side­red. Eit­her the pro­ba­bi­li­stic requi­re­ments are trans­for­med into (non­line­ar) con­di­ti­ons, or sto­cha­stic simu­la­ti­ons must be employ­ed. Deve­lo­ping high­ly spe­cia­li­zed and powerful algo­rith­ms is chal­len­ging in any case. For­t­u­na­te­ly, the­re is now free­ly available and open-source software.

Applications

The prac­ti­cal appli­ca­ti­ons are diver­se and hard to over­see. Making opti­mal decis­i­ons as an abs­tract goal is so gene­ral that vir­tual­ly any real-world pro­blem can be for­mu­la­ted as optimi­zation pro­blems. Of cour­se, this does not neces­s­a­ri­ly mean that they are sol­va­ble. Prac­ti­cal appli­ca­bi­li­ty of optimi­zation methods to indus­tri­al pro­blems requi­res careful for­mu­la­ti­on of objec­ti­ves and cons­traints and some­ti­mes spe­cia­li­zed solu­ti­on algorithms.

This requi­res inves­tem­ent into rese­arch; an effort that is still being under­ta­ken. The grea­test suc­ces­ses in optimi­zation have been achie­ved in are­as such as fin­ding opti­mal sche­du­les, traf­fic rou­tes, resour­ce dis­tri­bu­ti­ons, stock port­fo­li­os, model para­me­ter sets, pro­ba­bi­li­ty dis­tri­bu­ti­ons, esti­ma­tors, sys­tem con­trols, and maxi­mal­ly sta­ble game stra­te­gies. We divi­de this hete­ro­ge­neous set of appli­ca­ti­ons into the disci­pli­nes of opti­mal design, opti­mal esti­ma­tion, and opti­mal con­trol.

Context

The tran­si­ti­ons and inter­sec­tions with machi­ne lear­ning are num­e­rous. Sin­ce typi­cal­ly every machi­ne lear­ning pro­blem can be writ­ten as the optimi­zation of suc­cess pro­ba­bi­li­ties, optimi­zation is an inte­gral aspect of data-dri­ven lear­ning. Mathe­ma­ti­cal optimi­zation is ver­sa­ti­le, prac­ti­cal, and powerful. It is no exag­ge­ra­ti­on to call it one of the most pro­mi­sing disci­pli­nes of modern appli­ed mathematics.