eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › zadanie optymalizacyjne
Ilość wypowiedzi w tym wątku: 56

  • 51. Data: 2012-09-26 17:51:04
    Temat: Re: zadanie optymalizacyjne
    Od: bartekltg <b...@g...com>

    W dniu 2012-09-26 14:42, M.M. pisze:

    > Moja poprzednia metoda daje takie wyniki:
    > https://rapidshare.com/files/330997453/dane.html

    Rozwiązania ok.

    Solver LP z oo calc dla 'zmodyfikowanego' i przeskalowaniu
    podaje praktycznie te same. Małe różnice na korzyść calca,
    np w 3 rozwiązanie
    0 0 0 0 0.44427410497 0 0.55572589503 0
    i wynik
    2.79714937844 ( w linko było 2,7970190403)

    pzdr
    bartekltg


    pzdr
    bartekltg


  • 52. Data: 2012-09-26 20:15:06
    Temat: Re: zadanie optymalizacyjne
    Od: Miroslaw Kwasniak <m...@i...zind.ikem.pwr.wroc.pl>

    M.M. <m...@g...com> wrote:
    > W dniu środa, 26 września 2012 12:53:27 UTC+2 użytkownik Piotr Chamera napisał:
    >> Po przeczytaniu, co napisali przedpiścy, spróbowałem napisać
    >> proste rozwiązanie iteracyjne (w Common Lispie).
    >> W założeniu zaczynam z wektorem x na wierzchołku hiperkostki
    >> jednostkowej i poruszam się w jej wnętrzu po płaszczyźnie
    >> wyznaczonej przez jej narożniki ruchami w kierunku tego wierzchołka
    >> kostki, który daje aktualnie największy gradient funkcji celu.
    >> Kiedy nie ma już możliwości ruchu zmniejszam krok o połowę
    >> (a la szukanie binarne). To chyba powinno działać? - możecie
    >> zweryfikować czy się gdzieś nie machnąłem?
    >
    > Moja poprzednia metoda daje takie wyniki:
    > https://rapidshare.com/files/330997453/dane.html
    > Warunek stopu to 500tys iteracji bez poprawy rozwiazania.
    > Czas to okolo 0.05s na i3. Dokladnosc obliczen jak widac :)
    > Mozna porownac czy podobne sa wyniki.
    > Pozdrawiam

    Wyniki linprogiem w octave (wszystkie minimalnie lepsze od Twoich):
    CPU=0.004001 s suma(x)-1= 0.000000000000
    (new-old)=(3.170567443334-3.170034951200)=0.00053249
    2134
    CPU=0.004000 s suma(x)-1= 0.000000000000
    (new-old)=(3.373006654139-3.372657667300)=0.00034898
    6839
    CPU=0.004000 s suma(x)-1= -0.000000000000
    (new-old)=(2.797149378443-2.797019040300)=0.00013033
    8143
    CPU=0.004000 s suma(x)-1= -0.000000000000
    (new-old)=(1.320463591122-1.320396145600)=0.00006744
    5522


  • 53. Data: 2012-09-27 06:32:06
    Temat: Re: zadanie optymalizacyjne
    Od: "M.M." <m...@g...com>

    W dniu środa, 26 września 2012 20:15:07 UTC+2 użytkownik Miroslaw Kwasniak napisał:
    > Wyniki linprogiem w octave (wszystkie minimalnie lepsze od Twoich):
    Wszystko sie zgadza.
    Pozdrawiam


  • 54. Data: 2012-09-28 13:34:35
    Temat: Re: zadanie optymalizacyjne
    Od: "M.M." <m...@g...com>

    W dniu środa, 26 września 2012 12:53:27 UTC+2 użytkownik Piotr Chamera napisał:
    > W założeniu zaczynam z wektorem x na wierzchołku hiperkostki
    > jednostkowej i poruszam się w jej wnętrzu po płaszczyźnie
    > wyznaczonej przez jej narożniki ruchami w kierunku tego wierzchołka
    > kostki, który daje aktualnie największy gradient funkcji celu.
    > Kiedy nie ma już możliwości ruchu zmniejszam krok o połowę
    > (a la szukanie binarne).
    > To chyba powinno działać? - możecie
    Jesli zmieniasz dlugosc korku, to rozumiem ze pracujesz na oryginalnym
    zadaniu a nie na zmodyfikowanym. Nie dziala dlatego ze oryginalna
    funkcja min(f1,f2,f3) ma plaskie miejsca, gradient czesto wynosi zero.
    Zdaje sie ze identycznym algorytmem probowalem to ugryzc za pierwszym razem :)
    Pozdrawiam


  • 55. Data: 2012-09-28 14:13:45
    Temat: Re: zadanie optymalizacyjne
    Od: "M.M." <m...@g...com>

    W dniu piątek, 28 września 2012 13:34:35 UTC+2 użytkownik M.M. napisał:
    > > To chyba powinno działać? - możecie
    > Jesli zmieniasz dlugosc korku, to rozumiem ze pracujesz na oryginalnym
    > zadaniu a nie na zmodyfikowanym. Nie dziala dlatego ze oryginalna
    > funkcja min(f1,f2,f3) ma plaskie miejsca, gradient czesto wynosi zero.
    > Zdaje sie ze identycznym algorytmem probowalem to ugryzc za pierwszym razem :)
    > Pozdrawiam
    Chyba bzdure napisalem. Jesli gradient jest rowny zero to mamy rozwiazanie.
    Zdaje sie ze to jest wypukle w calej przestrzeni (nie tylko gdy suma = 1).
    W takim razie dlaczego ogolne procedury optymalizacyjne tak slabo sobie z
    tym radza?
    Pozdrawiam


  • 56. Data: 2012-09-28 16:00:17
    Temat: Re: zadanie optymalizacyjne
    Od: bartekltg <b...@g...com>

    W dniu 2012-09-28 14:13, M.M. pisze:
    > W dniu piątek, 28 września 2012 13:34:35 UTC+2 użytkownik M.M. napisał:
    >>> To chyba powinno działać? - możecie
    >> Jesli zmieniasz dlugosc korku, to rozumiem ze pracujesz na oryginalnym
    >> zadaniu a nie na zmodyfikowanym. Nie dziala dlatego ze oryginalna
    >> funkcja min(f1,f2,f3) ma plaskie miejsca, gradient czesto wynosi zero.
    >> Zdaje sie ze identycznym algorytmem probowalem to ugryzc za pierwszym razem :)
    >> Pozdrawiam
    > Chyba bzdure napisalem. Jesli gradient jest rowny zero to mamy rozwiazanie.
    > Zdaje sie ze to jest wypukle w calej przestrzeni (nie tylko gdy suma = 1).
    > W takim razie dlaczego ogolne procedury optymalizacyjne tak slabo sobie z
    > tym radza?


    p1,
    p2,
    p3

    1)
    Jesteś na p1 x==p2 x < p3 x

    Jak Twoja procedura liczy gradient.
    Dlaczego jest nim p1 lub p2, a nie
    taki wektor, by obie wartosći rozły jednakowo?
    :)

    2)
    Jesteś na p1 x < p2 x, ale niewiele,
    czyli jesteśmy blisko 'dziubka'

    Jak Twoja procedura liczy gradient.
    Gdzie ląduje kolejny x? Dlaczego 'wpizdu'
    poza dziobem?
    :)


    To, że mamy ten szpikulec min (x,-x)
    jest jeszcze gorsze niż standardowe
    http://en.wikipedia.org/wiki/Rosenbrock_function


    Podobny problem jest w rozwiązywaniu programowania liniowego.
    Ale można go uładnić, wtdy procedury zaczynają działać.
    Są nawet konkurencyjne dla Simplexa:

    > *) a właśnie. Pisałem o próbach zaatakowania tego zwykłym
    > solverem. Źle się do tego zabrałem. Prawidłowo robi się
    > to tak:
    >
    > http://www.math.umbc.edu/~potra/talk0930.pdf
    > http://www.stanford.edu/class/ee364a/lectures/barrie
    r.pdf
    > http://en.wikipedia.org/wiki/Interior_point_method
    > http://en.wikipedia.org/wiki/Logarithmic_barrier_fun
    ction
    >
    > Idea: Nasz problem jest wypukły, a ta bariera ładnie wszytko
    > wygładza. Łazimy po wnętrzu, bariera słabnie, aż lądujemy
    > w rozwiązaniu na brzegu.



    pzdr
    bartekltg



strony : 1 ... 5 . [ 6 ]


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: