Re: NMinimize -DifferentialEvolution

• To: mathgroup at smc.vnet.net
• Subject: [mg114058] Re: NMinimize -DifferentialEvolution
• From: Daniel Lichtblau <danl at wolfram.com>
• Date: Mon, 22 Nov 2010 07:38:08 -0500 (EST)

```
----- Original Message -----
> From: "lightnation" <lightnation at naver.com>
> To: mathgroup at smc.vnet.net
> Sent: Friday, November 19, 2010 4:10:36 AM
> Subject: NMinimize -DifferentialEvolution
> NMinimize[Flatten[{obj,constraints}],var,Method-
> >"DifferentialEvolution"];
>
> The sentence above is to solve the optimzation problem whose objective
> function and constraints are represented as "obj", "constraints"
> respectively, using genetic algorithm built in Mathematica in the name
> of "DifferentialEvolution".
>
> This type of command is to solve the complex problem which cannot be
> solve in the analytic ways.
>
> The question is,
> How can we solve the optimization problem involving the system
> which is expressed in "DAE"(Differential and Algebraic Equation) way.
> The typical exampe of DAEsystem is the power system.
> The structure of electric grid is represented as the algebraic
> the dynamics concerning the motion of rotator in generator is
> represented in differential equations.
>
> For instance,
>
> letting
> constraints=Flatten[{constraint1,constraint2,constraint3,
> ...........eigconstraint}]
>
> eigconstraint can be represented as,
>
> Max[Re[#]&/@Eigenvalues[DAEsystem_Matrix]]<=0
>
> and DAEsystem_Matrix can be expressed through the system linearization
> in the symbolic way.
> However, Mathematica does not have the capability
> of calculating the large DAEsystem such as power system in the
> symbolic way.
> (The message meaning "Kernel" has been shut down emerged.
> I guess this is related to the capacity of RAM.)
> Instead, Mathematica can calculate the DAEsystem_Matrix when given the
> initial values.
>
> My question is
> How can we formulated this type of problem to the 'NMinmize" command?
> I mean
> how can I epxress the "eigconstraint" when it is not clearly expressed
> in symbolic way as described above?
>
> I am waiting for the wise answer from others.
> Thank you.

Not certain, but from your description it might be that an unneeded symbolic computation is being attempted. A way to avoid that is to define

eigconstraint[mat : {{_?NumericQ ..} ..}] :=
Max[Re[#] & /@ Eigenvalues[mat]] >= 0

This will restrict it to only operate on explicitly numeric matrices.

Daniel Lichtblau
Wolfram Research

```

• Prev by Date: FinancialDerivative Ver 8 (Bug maybe)
• Next by Date: Re: Finding a function that makes it possible to Solve[] a system of equations
• Previous by thread: NMinimize -DifferentialEvolution
• Next by thread: Q on SparseArray representation