| Author |
Message |
MG science forum beginner
Joined: 16 Jun 2006
Posts: 1
|
Posted: Fri Jun 16, 2006 4:09 pm Post subject:
(Preconditioned) Steepest Descent Method
|
|
|
Hi!
I've written in C++ few iterative methods solving systems of linear
equations. How to make preconditioning in Steepest Descent Method (SDM)?
How to use preconditioned matrix in Steepest Descent Method? I would
like to make preconditioning in Steepest Descent Method as f.e. in
Preconditioned Conjugate Gradients Method. I couldn't find any useful
general algorithm or pseudo-code of Preconditioned Steepest Descent
Method (PSDM). Any idea how to change SDM to PSDM?
MG |
|
| Back to top |
|
 |
Peter Spellucci science forum Guru
Joined: 29 Apr 2005
Posts: 702
|
Posted: Fri Jun 16, 2006 6:11 pm Post subject:
Re: (Preconditioned) Steepest Descent Method
|
|
|
In article <e6ul3u$8cc$1@news.onet.pl>,
MG <sf_ishmael@poczta.onet.pl> writes:
| Quote: | Hi!
I've written in C++ few iterative methods solving systems of linear
equations. How to make preconditioning in Steepest Descent Method (SDM)?
How to use preconditioned matrix in Steepest Descent Method? I would
like to make preconditioning in Steepest Descent Method as f.e. in
Preconditioned Conjugate Gradients Method. I couldn't find any useful
general algorithm or pseudo-code of Preconditioned Steepest Descent
Method (PSDM). Any idea how to change SDM to PSDM?
MG
|
instead of f(x) you minimize f(B*z) in the hope that
B*Hessian(f)*B'
is better condtioned than Hessian(f).
Hence you use
B'*grad(f) instead of grad(f)
and make the line search for f(B*z)
Now
x=B*z hence original x solves inv(B)*x = z
and the transformed gradient is solves
inv( B')* grad( f_new) = grad(f_orig)
inserting this: what you get: preconditioned cg with a restart after each step.
hth
peter |
|
| Back to top |
|
 |
spasmous science forum addict
Joined: 03 May 2005
Posts: 66
|
Posted: Fri Jun 16, 2006 10:09 pm Post subject:
Re: (Preconditioned) Steepest Descent Method
|
|
|
MG wrote:
| Quote: | Hi!
I've written in C++ few iterative methods solving systems of linear
equations. How to make preconditioning in Steepest Descent Method (SDM)?
How to use preconditioned matrix in Steepest Descent Method? I would
like to make preconditioning in Steepest Descent Method as f.e. in
Preconditioned Conjugate Gradients Method. I couldn't find any useful
general algorithm or pseudo-code of Preconditioned Steepest Descent
Method (PSDM). Any idea how to change SDM to PSDM?
MG
|
"Conjugate gradient without the agonizing pain" is an good document to
look at:
http://www.cs.cmu.edu/~quake-papers/painless-conjugate-gradient.pdf
It covers steepest descent too. In the first case, you could try a
diagonal preconditioner (Jacobi) - look on page 39. Then you're on your
own! Good luck  |
|
| Back to top |
|
 |
Google
|
|
| Back to top |
|
 |
|