Chcem optimalizovať funkciu s viacerými premennými pomocou funkcie patternsearch
v MATLABe. Táto funkcia vyžaduje hornú a dolnú hranicu a vyzerá v hraniciach v kontinuálnej doméne.
Mám však diskrétnu sadu hodnôt v súbore programu Excel a chcel by algoritmus vyhľadávať v rámci tejto diskrétnej domény namiesto v kontinuálnej doméne.
Je to možné s patternsearch
?
odpovede:
0 pre odpoveď č. 1Možno správne nerozumiem vašej otázke, ale ak máte (nespravodlivý a konečný) súbor hodnôt, prečo si v týchto bodoch nevypočíte hodnotu funkcie a vrátite minium?
0 pre odpoveď č. 2
Stručne povedané, nie. To nie je to patternsearch
je určená pre. Optimalizačné techniky pre diskrétne a nepretržité vyhľadávacie priestory sú celkom očakávané.
Ak však hľadáte približnú odpoveď, je možné ju použiť spline
, polyfit
, atď., aby ste získali približnú nepretržitú funkciu pre svoje údaje a potom ich použili patternsearch
na to.
Ak poskytnete podrobnejšie informácie o vašom probléme, ja alebo niekto iný by mohol navrhnúť vhodnejší spôsob práce s vašimi údajmi.
0 pre odpoveď č. 3
Najlepším nástrojom na optimalizáciu je to Genetický algoritmus, Tento optimalizačný nástroj je dodávaný s globálnym nástrojom optimalizácie Matlab a umožňuje optimalizáciu súvislých aj diskrétnych premenných súčasne.
V genetickom algoritme musia byť premenné, ktoré sú celé čísla, deklarované ako také. Nesplnené premenné sú predvolene kontinuálne.
Informácie o tom, ako funguje, nájdete v príručke Global Optimization Toolbox: http://it.mathworks.com/help/pdf_doc/gads/gads_tb.pdf.