Przepraszam za długie pytanie, potrzebuje tylko wyjaśnienia, aby przejść do rzeczywistego problemu. Osoby zaznajomione z wymienionymi algorytmami prawdopodobnie mogłyby przejść bezpośrednio do pierwszego tablau simpleksowego.
Aby rozwiązać problemy z najmniejszymi odchyleniami bezwzględnymi (alias -optymalizacja), algorytm Barrodale-Roberts jest specjalną metodą simpleksową, która wymaga znacznie mniej pamięci i wysiłków obliczeniowych, aby znaleźć odpowiednie minimum.
Moja implementacja algorytmu kończy się na prostym przykładzie, zanim zostanie osiągnięte odpowiednie minimum. Najprawdopodobniej jednak najpierw przedstawię problem w bardziej rozbudowany sposób:
Podane dane , -optimization próbuje znaleźć to minimalizuje
Barrodale i Roberts zasugerowali (najwyraźniej szeroko stosowaną) modyfikację metody simplex, która radykalnie upraszcza metodę simpleks przy użyciu specjalnej struktury -problemy. Przede wszystkim dlatego, że optymalne rozwiązanie interpoluje przynajmniejpodanych punktów danych. Osoby z dostępem do Jstor mogą znaleźć odpowiedni artykuł tutaj .
Lei i Anderson w 2002 roku zaproponowali niewielką modyfikację, która ma zwiększyć stabilność numeryczną, a tym samym przezwyciężyć znane problemy z algorytmem simpleks.
Zasadniczo ten algorytm zakłada, że zaczynasz od określonego zestawu punktów, które muszą być interpolowane, użyj podanych procedur do zbudowania tablicy simpleksowej, a następnie użyj reguł Barrodale i Robertsa, aby zdecydować, które zmienne podstawowe należy zmienić, a zatem zmodyfikować zbiór punktów danych, który jest przybliżony.
Barrodale i Roberts dają mały przykład, który próbowałem odtworzyć. Próbuje przybliżyć punkty przez funkcję . Zakończ swój algorytm następującym skróconym obrazem simpleksowym:
Co najważniejsze, pierwszy i trzeci punkt są interpolowane, a ogólny błąd jest równy . Wnioskują to
Ponieważ wszystkie wektory niebazowe mają niepozytywny koszt krańcowy [...]
iteracja jest zakończona i osiąga się optymalne.
Jeśli użyję algorytmu Lei i Andersona, mogę odtworzyć ten simpleksowy zbiór dla zestawu interpolacji {1,3}, zgodnie z oczekiwaniami. Jednak jeśli zacznę algorytm od zestawu (co wyraźnie nie jest optymalne), otrzymuję następujący tableau simpleks:
Ten wynik mnie jednak zastanawia. Jeśli dobrze rozumiem powyższy cytat, brak dodatniego kosztu krańcowego oznacza, że osiągnięto optymalne. Jednak wartość funkcji około 2,33 z pewnością nie jest optymalna. Wymiana z dałoby wynik równy rozwiązaniu Barrodale'a i Robertsa, a zatem optymalny.
Informacje dodatkowe: Jeśli zacznę od początkowego układu tabel podanego przez Barrodale i Robertsa, będę w stanie odtworzyć powyższy układ za pomocą zwykłych kroków simpleksowych, więc jestem całkiem pewien, że rzeczywiste wartości liczbowe są prawidłowe i moja interpretacja reguły wyboru przestawnej jest wadliwy.
Masz jakieś przemyślenia na ten temat?
Zdaję sobie sprawę, że samo pytanie jest dość skomplikowane i prawdopodobnie wymaga wystarczającej znajomości przynajmniej algorytmu Barrodale i Robertsa. Algorytm jako całość musi powtórzyć go tutaj szczegółowo. Jeśli jednak masz dodatkowe pytania dotyczące podjętych przeze mnie kroków lub brakujących informacji, możesz je zadać i chętnie pomogę.
Odpowiedzi:
Rozwiązałem to. W rzeczywistości Barrodale i Roberts rozwiązali ten problem, a ja po prostu nie przeczytałem uważnie.
W moim pytaniu pozostawiłem czytelnikowi zrozumienie, że zmienne Barrodale i Roberts są oznaczoneuja oznaczają dodatnie reszty ja -ty punkt danych w stosunku do bieżącego dopasowania. Jeśli reszta jest ujemna,uja= 0 i vja przyjmuje odpowiednią wartość. Ponieważ tylko jeden z nich może znajdować się w obrębie podstawy, a współczynniki w tablicy simpleks są tylko ujemnymi wartościami siebie, nie jest konieczne jawne podawanie ich w tablicy simpleks. Barrodale i Roberts wspominają w swoim artykule:
Zatem mój powyższy obrazek simpleks powinien wyglądać następująco:
gdzie to wyraźnie widzimyv2) może zostać wykorzystany do zarchiwizowania lepszego wyniku. W ten sposób algorytm kończy się podczas interpolacji pierwszego i piątego punktu danych z ogólnym błędem 2 - co jest najlepszym rozwiązaniem.
Dziękuję za przeczytanie i danie mi miejsca do napisania mojego problemu, co zwykle pomaga znacznie zawęzić rozwiązanie. Mamy nadzieję, że ta odpowiedź może być czasem pomocna dla każdego, kto próbuje wdrożyć Barrodale & Roberts.
źródło