LSM logoKOMPUTEROWY PROGRAM 
METODA NAJMNIEJSZYCH KWADRATÓW

English version
Conditions         Shareware version        Registering

                         Opis programu.
Program MNK przeprowadza obliczenia Metodą Najmniejszych Kwadratów, tzn.
dopasowuje parametry analitycznie zadanej(ych) funkcji do danych punktów.
Nazwa Estymacja Metodą Największej Wiarygodności lokuje zastosowany algorytm w odpowiednim dziale statystyki.
Taka aproksymacja (regresja nieliniowa) może być wykonana przez program:

MNK 2.4  -  najnowsza wersja o ulepszonym algorytmie.
Teraz program MNK liczy szybko i bardzo dokładnie.

Wskazówki
Parametry muszą być oznaczone jako   a1, a2, a3, ...,
a współrzędne punktów - jako   x1, x2, x3, ...
  (zamiast x, y, z, ...).

Każda wprowadzana funkcja musi mieć postać otrzymaną po przeniesieniu wszystkich wyrażeń na jedną stronę równania.
Przykład:  zastępując równanie
z = a1*x2 + a2*y + a3    przez    x3= a1*x1^2 + a2*x2 + a3
i pisząc je w formie uwikłanej  F(x1,x2,x3)=0,   bez części "=0", otrzymujemy:   a1*x1^2 + a2*x2 + a3 - x3

Istnieje dzięki temu możliwość zapisania krzywych nie będących wykresem żadnej funkcji, nie mających postaci, z której można by wyznaczyć którąś ze zmiennych, a także modyfikowania przez użytkownika równań krzywych (funkcji), w celu uniknięcia wyrażeń nie dających się obliczyć.
Ostatni przypadek może zajść, gdy zmienione w czasie iteracji programu wartości współrzędnych punktów lub parametrów funkcji chwilowo wykroczą poza dziedzinę funkcji.

Program jest szczególnie przydatny, gdy niepewności są na wielu osiach i są znane, lub gdy są znane współczyniki korelacji lub macierz kowariancji dla punktów, lub gdy problem jest w więcej niż dwóch wymiarach, lub gdy krzywa nie jest wykresem funkcji (np. okrąg), lub gdy krzywa jest dana równaniem, z którego nie można wyznaczyć żadnej zmiennej, lub gdy używane są jednocześnie dwie (lub więcej) krzywe "sklejone " punktami lub parametrami.

W celu kontroli dobroci dopasowania, na podstawie wejściowych niepewności pomiarowych obliczana jest wielkość Chi-sqr wraz z jej odchyłką standardową. Wartość oczekiwana wielkości Chi-sqr jest równa liczbie stopni swobody. Jeżeli otrzymana wartość Chi-sqr jest bliska liczbie stopni swobody (liczba punktów minus liczba parametrów), to jest prawdopodobne, że punkty wraz ze swoimi błędami pasują do założonego modelu. Za duża wartość świadczy o niewłaściwym dobraniu analitycznej postaci krzywej do punktów pomiarowych, lub o przyjęciu za małych niepewności pomiarowych. Za mała wartość świadczy o założeniu zbyt dużej liczby parametrów, lub o przyjęciu za dużych niepewności pomiarowych.

W celu dodatkowej kontroli dobroci dopasowania, obliczany jest współczynnik korelacji strony krzywej (Side-Correlation coefficient - rsc), razem z jego odchyłką standardową. Gdy punkty pomiarowe położone są przypadkowo po obu stronach krzywej (powierzchni, hiper-powierzchni), to współczynnik rsc przyjmuje wartość bliską zeru. Gdy punkty układają się w grupy, z których każda położona jest po jednej stronie krzywej, to współczynnik rsc znacznie odbiega od zera, t.zn. jest większy niż jego podwójna odchyłka standardowa, lub nawet zbliża się do jedności, wskazując, że krzywa została niewłaściwie wybrana (może potrzebnych jest więcej parametrów) albo punkty są skorelowane (może punkty z jednej grupy pochodzą z jednego miernika z biasem). Gdy współczynnik rsc jest ujemny i znacznie odbiega od zera lub nawet zbliża się do minus jedności, jest to statystycznie mało prawdopodobne (może punkty zostały stworzone "ludzką ręką").

Jeżeli jesteś pewny dopasowywanej krzywej i stosunków niepewności dla wszystkich punktów i wymiarów, zamiast samych niepewności, możesz pomnożyć wszystkie wejściowe i wyjściowe niepewności (punktów i parametrów) przez pierwiastek ze stosunku wyjściowego parametru Chi-sqr (z GInf menu) do liczby stopni swobody. W ten sposób możesz uzyskać najlepsze estymaty niepewności w tym przypadku niepełnej informacji o wejściowych niepewnościach.

Metoda użyta w programie MNK daje dokładnie te same wartości niepewności parametrów co "inne programy" nie dopuszczające błędów na osi X,  jeżeli w programie MNK wszystkie wejściowe niepewności w kierunku osi X (lub X1, X2, ... dla wielu wymiarów) są równe zeru  oraz wejściowe niepewności w kierunku Y są takie, że wartość chi-sqr (pozycja menu GInf) jest równa liczbie stopni swobody.

Czas obliczeń jest wydłużony w przypadku wejściowej macierzy kowariancji, która wiąże także błędy różnych punktów (zamiast współczynników korelacji, które wiążą błędy współrzędnych każdego punktu osobno). Czas ten jest wydłużony także przez nieliniowość metody, spowodowaną założeniem błędów dla wszystkich współrzędnych punktów. Taka regresja jest nieliniowa nawet w przypadku dopasowania linii prostej.
 
Dokładny opis programu
 
Lista podstawowych funkcji
Porównanie z "innymi programami" Teoria (in English)


Dokładny opis programu również w pliku readme w pakiecie programu.
Program MNK wymaga MS-DOS lub Microsoft Windows (3/95/98/2000/XP).
W przypadku dopasowania prostej oraz niepewności dla każdej współrzędnej, program MNK-2 daje dokładnie taki sam wynik, jak nie stosująca linearyzacji metoda last-minute, opisana w: D. York, N.M. Evensen, M.L. Martinez, J. Delgado, Unified equations for the slope, intercept and standard errors of the best straight line, Am. J. Phys., Vol. 72, No 3.

Przykładowe wyniki aproksymacji


Points fitted to ellipse Two curves with common parameter
Aproksymowana krzywa - elipsa;
Wejściowe prostokąty błędów (czerw.);
Wyjściowe (skorygowane) elipsy błędów (ziel.).
Dwie różne aproksymowane krzywe ze wspólnym parametrem (czyli odciętą asymptoty);
Wejściowe współczynniki korelacji - elipsy błędów (czerw.).

Każda wprowadzana funkcja musi mieć formę otrzymaną po przeniesieniu wszystkich wyrażeń na jedną stronę równania!
Parametry muszą być oznaczone jako  a1, a2, a3, ...,
a współrzędne punktów - jako  x1, x2, x3, ... (zamiast x, y, z, ...).
 


  Początek strony
     Pobieranie wersji "free"

MNK 2.4  -  najnowsza wersja o ulepszonym algorytmie.
Teraz program MNK liczy szybko i bardzo dokładnie.
Przeczytaj   Warunki

Pakiet MNK 2.4
(0.5 MB) v. sierpień 2013
go to Opis programu
go to Porównanie
get the Theory


  Instalacja i uruchamianie
Zawartość pakietu po rozpakowaniu należy skopiować gdziekolwiek na dysk.
Używaj  MNK23-demo.exe  jako demo.
Używaj  MNK24-s.exe  w normalnej pracy z pojedynczą precyzją obliczeń i z największą liczbą punktów.
Używaj  MNK24-r.exe  w normalnej pracy z rzeczywistą precyzją obliczeń.
Używaj  MNK24-d.exe  w normalnej pracy z podwójną precyzją obliczeń i z najmniejszą liczbą punktów.
Program nawet nie dotyka rejestrów Windows.
Program wymaga 32-bit Windows.
W 64-bit Windows należy zainstalować 16-bit emulator.

 
  Rejestracja   
Ponieważ program jest obecnie w wersji free dla zastosowań niekomercyjnych, żadna rejestracja nie jest już potrzebna.
 
  Historia   
MNK 1   (Styczeń 1998) - pierwsza wersja.
MNK 1.1 (Lipiec 2009) - mała modyfikacja, pozwalająca na dalsze iteracje po osiągnięciu dokładności obliczeń ma poziomie 1/10 standardowej niepewności. Zwiększono także dokładność obliczania numerycznych pochodnych w celu dostosowania do tej modyfikacji .
MNK 2   (Wrzesień 2009) - ulepszenie głównego algorytmu. Teraz program może obliczać parametry, dopasowane punkty i ich niepewności z dokładnością do ostatniej cyfry (co jest potrzebne chyba tylko do porównania z innymi programami).
MNK 2.1 (Grudzień 2009) - znaczne skrócenie czasu obliczeń i zwiększenie maksymalnej liczby punktów w najbardziej powszechnym przypadku, gdy dane wejściowe są dwuwymiarowe i gdy różne punkty nie są skorelowane i gdy różne krzywe (jeśli takie są) nie są sklejone punktami. To ulepszenie zostało osiągnięte przez analityczne przekształcenie macierzowych wzorów na parametry wyjściowe. Dodanie w przypadku dwuwymiarowym możliwości wprowadzenia współczynników korelacji dla współrzędnych każdego punktu, bez wprowadzania wejściowej macierzy kowariancji, która odtąd jest potrzebna tylko w przypadku, gdy różne punkty są skorelowane. Przywrócenie funkcjonalności myszce. Dodanie kilku drobnych usprawnień.
MNK 2.2 (Styczeń 2010) - skrócenie czasu obliczeń i zwiększenie maksymalnej liczby punktów w każdym przypadku liczby wymiarów (nie tylko w 2D). Dodanie kilku drobnych usprawnień.
MNK 2.3 (Maj 2010) - oprócz wielkości chi-sqr, został dodany współczynnik korelacji rsc (Side-Correlation coefficient) dla lepszej kontroli dobroci dopasowania. Została dodana także możliwość obliczenia najlepszych estymat niepewności w przypadku niepełnej informacji o wejściowych niepewnościach. Dodanie kilku drobnych usprawnień (jak zachowanie wykresu w pliku bmp - Ctrl S) i usunięcie kilku niezręczności w procedurach wejścia-wyjścia.
MNK 2.4 (Grudzień 2010) - wykres nie zawiesza się, gdy rysowany zakres przekracza dziedzinę funkcji. Max. liczba punktów została zwiększona z 3275 (w przypadku 2D) do
   8190 -  wersja MNK24-s,
   5460 -  wersja MNK24-r,
   4095 -  wersja MNK24-d.
Max. liczba punktów zmniejsza się proporcjonalnie dla większej liczby wymiarów.
Błąd w menu "Which" został usunięty (2011.08.20).
 



 
Pytania lub sugestie proszę przesyłać do autora: janand@prz.edu.pl

 

informacje
o autorze


J. A. Mamczur, dr
Katedra Fizyki
Politechnika Rzeszowska
Al. Powstanców Warszawy 6
35-959 Rzeszów,

 

Początek strony
UWAGA: PRZECZYTAJ ZANIM SKOPIUJESZ TEN SOFTWARE.
Obecnie ograniczenia dotyczące niekomercyjnego używania i rozpowszechniania programu są anulowane.

SKOPIOWANIE PRZEZ DOWOLNĄ OSOBĘ (zwaną dalej UŻYTKOWNIKIEM) PROGRAMU MNK (zwanego dalej PROGRAMEM) JEST TOŻSAME ZE ZGODĄ NA PRZESTRZEGANIE WARUNKÓW TEJ UMOWY. POZWOLENIE (LICENCJA) NA UŻYWANIE PROGRAMU NIE BĘDZIE PRZYZNANE DOPÓKI UŻYTKOWNIK NIE ZGODZI SIĘ NA WARUNKI TEJ UMOWY. SKOPIOWANIE I ZAINSTALOWANIE PROGRAMU BĘDZIE NIEODWOŁALNĄ AKCEPTACJĄ TEJ UMOWY.

UŻYTKOWNIKOWI WOLNO:
1. używać programu do celów obliczeniowych na pojedynczym komputerze (zestawie komputerów), w danym czasie przez jedną osobę. Stosowanie programu przez większą ilość osób wymaga dodatkowych licencji dla każdego użytkownika;
2. wykonać jedną kopię programu do celów archiwalnych.

UŻYTKOWNIKOWI NIE WOLNO:
1. używać programu lub robić jego kopie do celów innych niż zezwala ta umowa;
2. dekompilować, deasemblować, wykonywać translacji programu;
3. wynajmować, leasingować, udostępniać (za opłatą czy bez) komukolwiek program;
4. modyfikować program lub dołączać jego część lub całość do innego programu;
5. rozpowszechniać zarejestrowaną wersję programu lub kod rejestracyjny, także poprzez sieć internetową.

Zastrzeżenia
Autor nie ponosi odpowiedzialności za jakiekolwiek koszty, szkody lub straty wynikłe z użytkowania programu.
Jeśli użytkownik rejestruje program, zakłada się, że wypróbował wcześniej działanie programu i upewnił się, że jest on dostosowany do wymagań posiadanego sprzętu i oprogramowania.
Nie ma możliwości zwrotu kosztów opłaty rejestracyjnej, jeśli np. użytkownik zmieni zdanie.
Nie zarejestrowana wersja programu jest ograniczona tylko maksymalną ilością punktów pomiarowych. Nic więcej, oprócz tego ograniczenia, nie zmieni się po zarejestrowaniu programu.
Żadna część dokumentacji tego programu lub towarzyszących mu plików nie może być reprodukowana w jakimkolwiek środku przekazu.

Rejestracja
Rejestracja programu wyposaża użytkownika w prawa do używania programu ograniczone tą umową. Rejestracja nie upoważnia użytkownika do rozpowszechniania programu lub kodu rejestracyjnego. Ograniczenia do używania programu nie dotyczą plików, czy obrazów stworzonych za pomocą programu.
W opłatę rejestracyjną nie są wliczone koszty serwisu technicznego, lub doradztwa. Ewentualne dodatkowe informacje mogą być udzielone użytkownikowi jedynie dobrowolnie.

... Download       ... Początek strony
 
  stat4u


data utworzenia: 1998.01.01    ostatnia zmiana: 2011.08.20
Słowa kluczowe:
nieliniowa metoda najmniejszych kwadratów, regresja nieliniowa / aproksymacja / estymacja metodą najmniejszych kwadratów, dopasowanie funkcji do punktów, dopasowanie krzywej do punktów, komputerowy program, download, downloading, software, freeware.