Poprzedni wpispreviousnextNastępny artykuł

Permanent jest obliczany z definicji permutacyjnej podobnie jak wyznacznik, ale w permanencie wszystkie wartości dodaje się.
Permanent macierzy
Permanent macierzy
Permanent macierzy można obliczyć przy użyciu metody perm(Matrix).
Przykład użycia metody znajdującej się w klasie Matrix071.

double[][] array1 = {{1, 2, 1, -1}, {2, 3, 1, 1}, {-1, -1, -2, -3},
                {1, -2, 3, -1}};
        Matrix matrix1 = new Matrix(array1);
        matrix1.printToConsole();
        try {
            Util.print(matrix1.det());
        } catch (MatrixException e) {
            e.printStackTrace();
        }
        try {
            Util.print(MatrixUtil.perm(matrix1));
        } catch (MatrixException e) {
            e.printStackTrace();
        }

Po uruchomieniu klasy na konsoli zobaczymy:

1.0 2.0 1.0 -1.0 
2.0 3.0 1.0 1.0 
-1.0 -1.0 -2.0 -3.0 
1.0 -2.0 3.0 -1.0 
-30.0
74.0

Wyznacznik = -30.0, permanent = 74.
Istnieją lepsze i szybsze metody obliczania permanentu, ale nie uwzględniamy ich tutaj, gdyż permanent nie jest zbyt często potrzebny.

Właściwości permanentu

Permanent ma następujące właściwości:

  1. Transpozycja nie zmienia permanentu
  2. Permanent nie zmienia się przy zamianie dwu kolumn albo dwóch wierszy
  3. Pomnożenie wiersza albo kolumny przez skalar oznacza pomnozenie permanentu przez ten skalar
  4. Przy dodaniu do wiersza (albo kolumny) innego wiersza (albo kolumny) zmienia się wartość permanentu
  5. Nie można zastosować metody eliminacji Gaussa
  6. Nie ma zastosowania twierdzenie Cauchy’ego, tj.
    1. Permanent macierzy
    2. Permanent macierzy

Zastosowania permanentu

Jest używany głównie w kombinatoryce – w teorii grafów oraz w statystyce nieparametrycznej.

Pliki do ściągnięcia

matrices014.zip
Moduł matrices – aktualny stan projektu = 014;

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *