Harva matriisi

Matematiikassa, varsinkin numeerinen analyysi, harva matriisi on matriisi, jonka arvot ovat lähes kaikki nolla.

Käsitteellisesti, niukkuus yhteyden kytketty järjestelmiin. Harkita useita palloja, jossa jokainen niistä on yhteydessä seuraavaan avulla jousien; Tämä on levinnyt. Sen sijaan, jos sama pallot olivat kaikki on kytketty toisiinsa, järjestelmä edustaa tiheä matriisi. Käsite niukkuus on hyödyllinen combinatorics ja niillä alueilla, hakemuksen, kuten teoria verkkojen, joissa on alhainen tiheys tietoja tai merkitseviä suhteita.

Harva matriisit joidenkin monimutkaisuus usein esiintyy joissakin tieteellisen tai teknisen kun on tarpeen ratkaista osittaisdifferentiaaliyhtälöihin.

Kun harva matriisit tallennetaan ja käsitelty tietokoneessa, se on hyödyllistä ja usein jopa välttämätöntä, käyttää erikoistuneita algoritmeja ja tietorakenteita, joissa otetaan huomioon luonne harva matriisi. Suorittaa operaatioita käyttäen tavanomaista matriisi rakenteet ja algoritmit on hyvin hidasta, ja myös johtaa suurta hävikkiä muistia, jos matriisi hallita leviämistä. Tiedot ovat hajallaan, luonteensa, helposti puristettavissa, ja niiden puristus lähes aina liittyy käyttöä merkittävästi vähemmän muistia. On kuitenkin totta, että jotkut hyvin suuria harva matriisit on mahdotonta hallita standardin algoritmeja.

Tallentaminen harva matriisi

Tietorakenne klassisen matriisi on, että kaksiulotteinen matriisi. Jokainen alkio edustaa yleinen elementti ai, j, jossa voit saada läpi kaksi indeksien i ja j. Saat matriisi m × n on oltava saatavilla vähintään vähimmäismäärä muistia tarvitaan tallentamaan arvoja matriisin.

Monet, elleivät kaikki arvot harva matriisi ovat nolla. Perusperiaatteena joka seuraa tallentaa harva matriisi on säästää sijaan kaikki arvot, ainoastaan ​​eri nollasta. Riippuen määrä ja jakauma ei-nolla-arvot, voit käyttää erilaisia ​​tietorakenteita ja saada huomattavia säästöjä muistin mahdotonta saada tavallista lähestymistapaa.

Esimerkki muoto tallentaa harva matriisit on Yale Harva matriisimuodossa, joka tallentaa harva matriisi m × n, M, peräkkäin käyttämällä kolmiulotteisia taulukoita. Sekä määrä ei-nolla-arvot M. Ensimmäinen jono on, pitkä, ja tallentaa kaikki ei-nolla-arvot M määräsi vasemmalta oikealle ja ylhäältä alas. Toinen joukko on, että on pitkä-m + 1. Se sisältää indeksin ensimmäisen elementin ja ei-nolla rivi j: nnen. Pituus rivin määräytyy tästä syystä IA on oltava pituudeltaan. Kolmas array ,, sisältää sarakkeen indeksi kunkin elementin, ja sitten on pitkä.

Esimerkiksi, matriisi

on matriisi, kolme neljä kuuden ei-nolla-elementit, jolloin

Toinen mahdollisuus on käyttää quadpuu.

Esimerkki

Bittikarttakuvan bikromaattista, jossa yksi kahta väriä on hallitseva voidaan koodata harva matriisi, joka sisältää vain rivien ja sarakkeet pikseliä väri ei ole määräävässä asemassa.

Lävistäjä matriisit

Rakenne on diagonaalinen matriisi hyvin tehokkaasti säädetään varastoinnin vain arvot päälävistäjän kuin yksiulotteinen matriisi, niin että n × n-diagonaalinen matriisi vaatii vain n arvoa.

Bändi

Alempaa kaistaa matriisi on pienin määrä p siten, että arvo aij on merkityksetön, kun & gt; j + s. Vastaavasti ylempi vyöhyke on pienin s siten, että aij = 0, kun i & lt; j - s. Esimerkiksi, tridiagonal matriisi on alemman kaistan ja ylemmän kaistan yhtä suuri kuin 1.

Matriisit ylemmän ja alemman kaistan kutsutaan pieni bändi matriisit ja usein ajankäytön algoritmit yksinkertaisempi kuin ne, joita sovelletaan harva matriisit yleensä; joskus on mahdollista hakea algoritmeja tiheä paneelit ja toista käyttö pienempi määrä indeksit.

Vähentäminen bändi

Voidaan käyttää algoritmia Cuthill-McKee kaistanleveyden pienentämiseksi harvan symmetrinen matriisi. On olemassa, kuitenkin, matriisit, joille algoritmi Cuthill-McKee käänteisen käyttäytyy paremmin.

US-.. Geodeettinen Survey käyttää algoritmia kutsutaan "pankki" Richard Snay koska se on nopeampi Käyttöpääoman realistisiin harva matriisit käytetään Geodesia. Voit käyttää muita menetelmiä.

Vähennä fill-in

Fill-in matriisin muodostavat ne arvot, jotka tulevat eri nollasta nollasta suorituksen aikana algoritmin. Vähentää muistin vaatimukset ja aritmeettisten operaatioiden määrä käytetään algoritmia, on hyödyllistä minimoida täyttö-vaihdossa rivejä ja sarakkeita matriisin. Symbolinen Cholesky hajoaminen voidaan laskea täytettävän pahin mahdollinen ennen suorittaa todellinen Cholesky hajoaminen.

Muita menetelmiä kuin Cholesky-hajotelmaa voidaan käyttää. Ortogonali- menetelmät ovat yleisiä, esimerkiksi päätöslauselmassa ongelmia pienimmän neliösumman menetelmällä. Vaikka fill-in on teoriassa sama käytännössä "false-nolla-arvot" voi olla erilainen, jos menetelmät muuttuvat. Symbolinen versioita näistä algoritmeja voidaan käyttää samalla tavalla kuin symbolinen Choleskyn laskea pahin täytettäviä.

Ratkaiseminen yhtälöryhmiä liittyy harva matriisit

On iteratiivisia, sekä suoraan päätöslauselman liittyvien järjestelmien harva matriisit. Iteratiivinen menetelmä on hyvin yleistä, että konjugaattigradienttimenetelmä.

Aiheeseen liittyvää

  • Matriisiesitys
  • Pareto Periaate
  • Jagged array
  • Harva array
  • Koodi kuvaaja irtoa
  • Harva tiedosto
  0   0
Edellinen artikkeli Valloitus Mythodea

Aiheeseen Liittyvät Artikkelit

Kommentit - 0

Ei kommentteja

Lisääkommentti

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Merkkiä jäljellä: 3000
captcha