Huom! Jotta tämän sivun kaavojen alaindeksit ja eksponentit näkyisivät oikein, HTML 3:n soveltuvin osin hallitseva selain on tarpeen. TKK:n atk-keskuksen koneissa sellaisia ovat Arena ja Netscape 2.0, jotka käynnistyvät komennoilla arena ja netscape2.

Cox-Little-O'Shean kirjan esimerkki 2.8.3

Etsitään funktion x3+2xyz-z2 ääriarvot rajoitusehdolla x2+y2+z2 = 1 käyttäen Lagrangen kertoimien menetelmää. [1]

Lagrangen funktion gradientti on laskettu kirjassa:


> clos28ex3:=[3*x^2+2*y*z-2*x*lambda,2*x*z-2*y*lambda,2*x*y-2*z-2*z*lambda,x^2+y^2+z^2-1];

                           2
          clos28ex3 := [3 x  + 2 y z - 2 x lambda, 2 x z - 2 y lambda,

                                         2    2    2
              2 x y - 2 z - 2 z lambda, x  + y  + z  - 1]


Ratkaistaan tehtävä generalsolvella, muokataan tulosta ja yhdistetään ratkaisut:
> joo:=allvalues(generalsolve(clos28ex3),`d`);

joo :=

[{lambda = 0, y = -1, z = 0, x = 0}, {lambda = 0, y = 1, z = 0, x = 0},

    {lambda = -3/2, y = 0, z = 0, x = -1}, {lambda = 3/2, y = 0, z = 0, x = 1},

    {z = 1, y = 0, x = 0, lambda = -1}, {z = -1, y = 0, x = 0, lambda = -1},

    {x = -2/3, lambda = -4/3, y = 1/3, z = 2/3},

    {x = -2/3, lambda = -4/3, z = -2/3, y = -1/3},

                                          1/2             1/2
    {x = -3/8, lambda = 1/8, y = - 3/16 22   , z = 1/16 22   }],

[{lambda = 0, y = -1, z = 0, x = 0}, {lambda = 0, y = 1, z = 0, x = 0},

    {lambda = -3/2, y = 0, z = 0, x = -1}, {lambda = 3/2, y = 0, z = 0, x = 1},

    {z = 1, y = 0, x = 0, lambda = -1}, {z = -1, y = 0, x = 0, lambda = -1},

    {x = -2/3, lambda = -4/3, y = 1/3, z = 2/3},

    {x = -2/3, lambda = -4/3, z = -2/3, y = -1/3},

                                        1/2               1/2
    {x = -3/8, lambda = 1/8, y = 3/16 22   , z = - 1/16 22   }]

> joo2:=convert(joo[1],set) union convert(joo[2],set);

joo2 := {{lambda = 0, y = 1, z = 0, x = 0}, {lambda = 0, y = -1, z = 0, x = 0},

    {lambda = 3/2, y = 0, z = 0, x = 1}, {lambda = -3/2, y = 0, z = 0, x = -1},

    {z = 1, y = 0, x = 0, lambda = -1}, {z = -1, y = 0, x = 0, lambda = -1},

    {x = -2/3, lambda = -4/3, y = 1/3, z = 2/3},

    {x = -2/3, lambda = -4/3, z = -2/3, y = -1/3},

                                        1/2               1/2
    {x = -3/8, lambda = 1/8, y = 3/16 22   , z = - 1/16 22   },

                                          1/2             1/2
    {x = -3/8, lambda = 1/8, y = - 3/16 22   , z = 1/16 22   }}

Saatiin samat ratkaisut kuin kirjassa. Tässä tapauksessa Maplen oma solve antaa samat tulokset:
> solve(convert(clos28ex3,set));

{{lambda = 0, y = 1, z = 0, x = 0}, {lambda = 0, y = -1, z = 0, x = 0},

    {lambda = 3/2, y = 0, z = 0, x = 1}, {lambda = -3/2, y = 0, z = 0, x = -1},

    {z = 1, y = 0, x = 0, lambda = -1}, {z = -1, y = 0, x = 0, lambda = -1},

    {x = -2/3, lambda = -4/3, y = 1/3, z = 2/3},

    {x = -2/3, lambda = -4/3, z = -2/3, y = -1/3},

                                        1/2               1/2
    {x = -3/8, lambda = 1/8, y = 3/16 22   , z = - 1/16 22   },

                                          1/2             1/2
    {x = -3/8, lambda = 1/8, y = - 3/16 22   , z = 1/16 22   }}

Katsotaan seuraavaksi, miten muuttujien järjestyksen vaihtaminen vaikuttaa saatavaan Groebner-kantaan ja yhtälöryhmän ratkaisuihin.
Kenrick Bingham 13.5.1996