Jun 21, 2004 - flock or swarm. ⢠The agents âflyâ around the .... tim ated. R2. 0.849. RMSE. 0.283. MADERR 0.184. R2. 0.559. RMSE. 0.548. MADERR 0.351.
Ocean Color Inversion by Particle Swarm Optimization Wayne H. Slade(1), Habtom Ressom(1), Mohamad T. Musavi(1), Richard L. Miller(2) (1) Deptartment of Electrical and Computer Engineering, University of Maine, 5708 Barrows Hall, Orono, ME 04469, USA (2) Earth Science Applications Directorate, NASA Stennis Space Center, MS 39529, USA
Overview
Application of PSO to remote sensing problem
• • •
Processing of imagery requires fast algorithms Spectral matching techniques are usually not well-behaved problems (local optima) GA and PSO are good at determining global optima, but GA are too slow
Motivations for Ocean Color Inversion Ocean Color 101 Ocean Color Forward and Inverse Models Spectral Matching Approach Particle Swarm Optimization PSO-Based Inversion Results Conclusions
21 June 2004
Ocean Color Inversion by Particle Swarm Optimization
2
1
Overview
Application of PSO to remote sensing domain
• • •
Processing of imagery requires fast algorithms Spectral matching techniques are usually not well-behaved problems (local optima) GA and PSO are good at determining global optima, but GA are too slow
Motivations for Ocean Color Inversion Ocean Color 101 Ocean Color Forward and Inverse Models Spectral Matching Approach Particle Swarm Optimization PSO-Based Inversion Results Conclusions
21 June 2004
Ocean Color Inversion by Particle Swarm Optimization
3
Overview
Motivations for Ocean Color Inversion Ocean Color 101 Ocean Color Forward and Inverse Models Spectral Matching Approach Particle Swarm Optimization PSO-Based Inversion Results Conclusions
21 June 2004
Ocean Color Inversion by Particle Swarm Optimization
4
2
Motivation for Ocean Color Inversion
Assessment of ocean and coastal biogeochemistry from the color of ocean water
• • •
Remote sensing is the only feasible means for long time series, repeat, high resolution observation of biogeochemistry
• • •
Absorption and scatter by water constituents Biology – community structure, health Geology – sediment dynamics, carbon cycle
Long term – daily satellite ocean color since 1997 Repeat – Typical local area revisit time ~1 day by satellite High resolution – ~1 km satellite, ~1 m airborne
Past focus has been open ocean, current challenge is the coastal zone Coastal region is disproportionately important – human impact, ecological monitoring, climate models, carbon cycle We need fast, robust, and accurate algorithms for inversion of ocean color data Ocean Color Inversion by Particle Swarm Optimization
21 June 2004
5
Ocean Color 101
Absorption and scatter of light by water constituents influences the apparent color of water Rrs(λ) is a convenient way of expressing the color of the water surface (spectral reflectance)
• • •
Rrs(λ) = Lw(λ) / Ed(λ), λ is wavelength of light Retrieval from space is possible, at the mercy of atmospheric correction Ocean color signal is ~10% of signal received at satellite
31°
Rrs(λ) [sr-1] 30°
29°
28° -94°
-93°
21 June 2004
-92°
-91°
-90°
-89°
-88°
400
450
500
550 600 650 Wavelength, λ [nm]
Ocean Color Inversion by Particle Swarm Optimization
700
750
6
3
Ocean Color 101 (2)
Typical models for ocean optics include
• • • • •
Phytoplankton – particles, strongly absorbing pigments Non-algal particles – sediment, detritus, absorbs and scatters Dissolved matter – typically organics, some terrestrial, some from phytoplankton, negligible scatter, sometimes strong absorption Usually interested in spectral (optical) absorption ([a m-1]) and backscatter (bb [m-1]) of various constituents Total absorption, total backscatter are the sum of the individual constituents: a( ) a( w) ( ) a( ) ( ) a( nap) ( ) a( cdm) ( ) bb ( ) bb ( w) ( ) bb ( ) ( ) bb ( nap) ( )
Spectral models for optical properties of various water constituents must be assumed
•
Decades of research have provided reasonable models for these constituents…
Once we determine the optically active constituents, we can use spectral matching (optimization) to figure out their relative concentrations
21 June 2004
Ocean Color Inversion by Particle Swarm Optimization
7
Ocean Color Forward and Inverse Models
S
Inverse Model is the task of satellite inversion algorithms Common (static) ocean color inverse models are based on regression, or sometimes neural nets
•
Simple case: G = a(φ)(440), S =Rrs(λ) Reality is generally more complicated: G = {phytoplankton, dissolved organics, suspended particles, etc} are all independent
Given a dataset of {G, S}, we can model the transfer function between S and G
S
S
f (·)
^ f -1 (·)
^ G
…
• •
G
…
Forward Model links ocean biogeochemistry and observed reflectance spectra
…
^ G
Other possibility (dynamic) is to use optimization in a spectral-matching framework
•
21 June 2004
Given S, optimize G to minimize error mse(S Sˆ ), Sˆ f (G) Ocean Color Inversion by Particle Swarm Optimization
8
4
Spectral Matching Approach
Goal of inversion is to retrieve a(φ)(440), a(cdm)(440), and bb(p)(555) from measured a (440) spectral reflectance ( ) A simple forward model is created linking rˆrs ( ) F ( ), a( cdm) (440) these three parameters to spectral reflectance bb ( p ) (555) [e.g., Sathyendranath et al. 1989]
bb ( ) bb ( ) g 2 rrs ( ) g1 bb ( ) a( ) bb ( ) a( )
2
bbw(λ) [m-1] aw(λ) [m-1]
a( ) a w ( ) a (440)aˆ ( ) a cdm (440)aˆ cdm ( ) bb ( ) bb w ( ) bb p (555)bˆb p ( )
1.2
a( ) ( ) a0 ( ) a1 ( ) ln a( ) (440) a( ) (440)
a(φ)(λ) [m-1]
1 0.8
-1
Normalized a [m ]
555 a(cd m) ( ) a(cd m) (440 bˆb ()p )exp ( ) Scd m( 440) Y
0.6
High [chl a]
0.4 0.2
r (440) 555 Low [chl a] bˆb ( p ) ( ) Y 2.21 1.2 exp 0.9 rs rrs (555) rrs (440) Color Inversion by Particle Swarm Optimization 2.22004 1 1.2 exp 0.9 Ocean 21Y June rrs (555) Y
0
-0.2 400
450
500 550 600 Wavelength [nm]
650
700
9
Spectral Matching Approach (2)
Forward model parameters (a(φ)(440), a(cdm)(440), and bb(p)(555)) are optimized to minimize error function between forward modeled reflectance and measured reflectance 1 n 2 f ( ) k 1 rrs (k ) rˆrs (k ) n
Parameters vary over several orders of magnitude Very nonlinear, problems with local minima Traditional search techniques rely on characteristics of search space, such as gradient
• • •
Can lead to non-globally optimum solutions – get “stuck” Stochastic techniques such as genetic algorithms (GA) have been shown to do better in such problems Define a priori sub-ranges of parameters (i.e. low or high bb(p)(555), low or high a(φ)(440), etc.)
GA have performed well on this problem [Zhan et al. 2003]
• •
21 June 2004
GA are slow – 400 x 400 pixel satellite image needs 160,000 optimizations PSO is fast! Ocean Color Inversion by Particle Swarm Optimization
10
5
Overview
Motivations for Ocean Color Inversion Ocean Color 101 Ocean Color Forward and Inverse Models Spectral Matching Approach Particle Swarm Optimization PSO-Based Inversion Results Conclusions
21 June 2004
Ocean Color Inversion by Particle Swarm Optimization
11
Particle Swarm Optimization
Particle Swarm Optimization (PSO) offers an alternative to GA Based on a population of potential solutions [Kennedy and Eberhart 1995]
•
• •
Inspired by flocking birds and swarming insects Each bird influenced by its own success as well as the success of the flock or swarm The agents “fly” around the space of possible solutions
Each particle (agent) in the swarm represents a candidate solution
21 June 2004
Ocean Color Inversion by Particle Swarm Optimization
12
6
Particle Swarm Optimization (2)
Each agent is a vector in D-dimensional space Each agent’s (i-th agent) trajectory update is simple
• • •
Inertia Direction of personal best, xi,best Direction of swarm best, xG,best
xi (t 1)
xi (t )
xi ,best (t )
xi (t 1)
xi (t )
xG ,best (t )
xi (t 1) xi (t 1) xi (t ) xi (t 1) xi (t 1) xi (t ) 1 xi ,best (t ) xi (t ) 2 xG ,best (t ) xi (t )
Φ are random components of update, as well as weighting factors
21 June 2004
Ocean Color Inversion by Particle Swarm Optimization
13
Particle Swarm Optimization (3)
Algorithm is simple
1.
Generate initial population of agents (candidate solutions) Evaluate each agent with objective function (such as MSE between measured and modeled spectra) If any particles have located new individual best solutions replace their previous xi,best, and keep track of the swarm global best xG,best Determine trajectories and new positions based on update rule If termination criteria (error goal or max iterations) is not met then go to 2 Optimum solution found is xG,best
2.
3.
4. 5.
6.
21 June 2004
Ocean Color Inversion by Particle Swarm Optimization
14
7
PSO-Based Inversion Experiment
PSO Inversion is tested on a simulated dataset (n = 270) and compared against GA approach of Zhan et al. [2003] on the simulated dataset Simulated dataset is based on complex forward model
•
Model parameters are varied across wide range of values corresponding to realistic oceanic and coastal waters
Dataset is hyperspectral (λ = 400–700 nm, 5 nm resolution)
Swarm of 200 particles, 100 iterations, global topology
•
More particles with global version of algorithm displayed good performance and speed characteristics
c1 = c2 = 2.05, with constriction coefficient
21 June 2004
Ocean Color Inversion by Particle Swarm Optimization
15
PSO-Based Inversion Results
RMSE = 0.053 MADERR = 0.040 r2 = 0.91
21 June 2004
RMSE = 0.069 MADERR = 0.048 r2 = 0.83
Ocean Color Inversion by Particle Swarm Optimization
16
8
PSO-Based Inversion Results (2)
RMSE = 0.162 MADERR = 0.093 r2 = 0.95
21 June 2004
RMSE = 0.409 MADERR = 0.247 r2 = 0.95
Ocean Color Inversion by Particle Swarm Optimization
17
PSO-Based Inversion Results (3)
RMSE = 0.006 MADERR = 0.004 r2 = 0.99
21 June 2004
Ocean Color Inversion by Particle Swarm Optimization
RMSE = 0.016 MADERR = 0.010 r2 = 0.98
18
9
Overview
Motivations for Ocean Color Inversion Ocean Color 101 Ocean Color Forward and Inverse Models Spectral Matching Approach Particle Swarm Optimization PSO-Based Inversion Results Conclusions
21 June 2004
Ocean Color Inversion by Particle Swarm Optimization
19
Overview
Motivations for Ocean Color Inversion Ocean Color 101 Ocean Color Forward and Inverse Models Spectral Matching Approach Particle Swarm Optimization PSO-Based Inversion Results Conclusions
21 June 2004
Ocean Color Inversion by Particle Swarm Optimization
20
10
Conclusions
PSO is a very simple and fast optimization algorithm
• • •
Easy implementation (dedicated hardware – DSP?) Few user parameters Good global convergence
More agents helps to converge to global optima? Computational efficiency of more agents vs. neighborhood approaches Comparison on this dataset against GA approach
• •
PSO offers objectively “better” retrievals Order of magnitude faster (~300 seconds vs. ~10 seconds per retrieval)
Future work
• • • •
More complicated forward reflectance model Substantial speed increase is necessary for imagery (O(100) pixels/sec) Tests on in situ and satellite data Better comparison between various methods, such as GA, matrix inversion, NN, empirical, traditional optimization
21 June 2004
Ocean Color Inversion by Particle Swarm Optimization
21
Questions?
Activities sponsored by the NASA Earth Science Enterprise and the Maine Space Grant Consortium
21 June 2004
Ocean Color Inversion by Particle Swarm Optimization
22
11
PSO Inversion Results 0
0
10
10
-1
-1
10
GA estimated
PSO estimated
10
-2
10
-3
10
-2
10
-3
10
R2 0.849 RMSE 0.283 MADERR 0.184
-4
R2 0.559 RMSE 0.548 MADERR 0.351
-4
10 -3 10
-2
10
10
-1
10 -3 10
0
10
-2
10
a(440)
10
-1
0
10
a(440)
Ocean Color Inversion by Particle Swarm Optimization
21 June 2004
23
PSO Inversion Results (2) 1
1
10
10
0
0
10
-1
GA estimated
PSO estimated
10
10
-2
10
R2 0.869 RMSE 0.358 MADERR 0.151
-3
10
-4
10 -3 10
21 June 2004
10
-2
-1
10 acdm(440) + anap(440)
10
0
-1
10
-2
10
R2 0.828 RMSE 0.598 MADERR 0.361
-3
10
-4
1
10
10 -3 10
10
-2
-1
10 acdm(440) + anap(440)
Ocean Color Inversion by Particle Swarm Optimization
10
0
1
10
24
12
PSO Inversion Results (3) 0
0
10
10
-1
-1
10
GA estimated
PSO estimated
10
-2
10
-3
10
-3
10
R2 0.990 RMSE 0.077 MADERR 0.040
-4
10 -4 10
21 June 2004
-2
10
R2 0.864 RMSE 0.342 MADERR 0.210
-4
10
-3
-2
10 bbp(555)
-1
10
0
10
10 -4 10
10
-3
-2
10 bbp(555)
Ocean Color Inversion by Particle Swarm Optimization
-1
10
0
10
25
13