Ax=b, missä x>0

SHT
Reactions:
Viestit: 616
Liittynyt: 29 Marras 2022, 21:05

Ax=b, missä x>0

Viesti Kirjoittaja SHT »

Ax=b, missä x>0, A on mxn-matriisi m>=n, X n-vektori ja b m-vektori.
Algoritmi millä ratkaistaan Ax=b, missä x>=0 on nimeltään NNLS (Lawson, Hanson) eli non-negative least squares.
Tämä ei aina ole se, mitä halutaan, koska NNLS-algoritmin antamaan vastaukseen tulee helposti x:n arvoja 0.
Tällainen tilanne on esimerkiksi silloin, kun x:n arvot kuvaavat virtauksia prosessikaavin putkissa. Jos xi, i= jokin luku/lukuja väliltä 1,..,n. Sillä sehän tarkoittaa, ettei kyseissä putkessa virtaa mitään. Se voi aiheuttaa ratkaisun, jossa johonkin osaan prosessikaaviosta virtaa mitään.
Olen tässä hahmotellut ratkaisua ongelmaan Ax=b, missä x>0, jossa arvoja xi ohjataan kauemmas nollasta eli kullekin xi asetetaan rajoituksia muotoa
Pj*xi>=Pj*Lj,
i=1,...n,
Lj on reaaliluku väliltä 0,...,Ls
s on vapaasti valittava luonnollinen luku ja 0< L1<L2<..<Ls
ja Pj on painokerroin
Eli tehtävälle etsitään ratkaisua positiivisten reaalilukujen joukosta. Tämä joukko on avoin ja se jaetaan arvoilla Lj alueisiin, jotka ovat kuin korkeuskäyriä, käyrien reunalla xi=Lj . Eri alueiden todennäköisyyttä painotetaan painokertoimilla Pj
En ole nyt tarkistanut edellisen järkevyyttä, mutta yritin hahmottaa sitä noilla käyrien rajaamilla alueilla.
HuuHaata
Reactions:
Viestit: 1716
Liittynyt: 12 Joulu 2022, 09:51

Re: Ax=b, missä x>0

Viesti Kirjoittaja HuuHaata »

Interior Point Method lienee mahdollinen. Mutta lienee toimivaa noinkin.
Avatar
xXx
Reactions:
Viestit: 934
Liittynyt: 11 Joulu 2022, 16:51

Re: Ax=b, missä x>0

Viesti Kirjoittaja xXx »

Kiinasta halpa kvanttikone, sillä sujuu. Mikää muu sillä ei sitten oikein sujukaan, fortnitee varten oma kone.
SHT
Reactions:
Viestit: 616
Liittynyt: 29 Marras 2022, 21:05

Re: Ax=b, missä x>0

Viesti Kirjoittaja SHT »

HuuHaata kirjoitti: 08 Helmi 2023, 17:30 Interior Point Method lienee mahdollinen. Mutta lienee toimivaa noinkin.
Katsoin Interior Point Method:ia. Olen joskus vuosia sitten kokeillut siinä käytettävää barrier-funktiota. Muistaakseni siinä kävi niin, ettei epälineaarisen optimoitiin käyttämäni Nmath -matematiikkakirjastosta otettu aliohjelma löytänyt ratkaisua.
Tuo aikaisemmin esittämäni ratkaisu on lineaarinen ja Lj:t voidaan valita barrier-funktion arvoista.
Vastaa Viestiin