DMUG-Archiv 2004

Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

FindMinimum mit selbstdefinierten Funktionen

Hallo Liste,

wieso geht folgendes nicht (Mathematica 4.2):

f[x_, y_] := LinearProgramming[{x + y, x - y}, {{}}, {}, {{0, 1}, {2, 3}}];
g[a_, b_] := a + b + f[a + b, a - b];


FunctionalFindMinimum[f_, start_List] := (# /. Last[
    FindMinimum[f[#], Evaluate[Sequence @@ (
          Transpose[{#, start}])]]]) &[Unique[x] & /@ start];

FunctionalFindMinimum[g, {0.1, 0.1}]


ergibt

FindMinimum::fmgs: Could not symbolically find the gradient of \
g[{x$340,x$341}]. Try using the default method, giving two starting values \
for each variable.


ReplaceAll::reps: {{x$341,0.1}} is neither a list of replacement rules nor a \
valid dispatch table, and so cannot be used for replacing.


Die Definition von FunctionalFindMinimum habe ich ergoogelt, ein einfaches FindMinimum funktioniert auch nicht.

In Wirklichkeit ist natürlich das Problem, das ich lösen möchte, komplexer, er lässt sich aber allgemein als Verkettung von LinearProgramming und FindMinimum darstellen.

Ich verstehe nicht, warum Mathematica den Gradienten symbolisch bestimmen möchte, aus der Dokumentation erwarte ich, dass numerisch ein Minimum gesucht wird?

Dankbar für Hinweise

Andreas Tanner.

--
Intelligente Netze und Management verteilter Systeme
TU Berlin
Fakultät 4, Sekretariat EN 6
Einsteinufer 17
D-10587 Berlin
Tel. +49 30 314 79835 Fax +49 30 314 24573
http://www.ivs.tu-berlin.de


Antworten:
Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

DMUG DMUG-Archiv, http://www.mathematica.ch/archiv.html