Skip to main content
. 2021 Feb 6;21(4):1149. doi: 10.3390/s21041149
Algorithm 1 RBF-ESKF multi-sensor fusion for underwater navigation
  •    

    Initialization:

  • 1:

    Initialize ESKF variables x0,P0,Q0,R0

  • 2:

    Initialize RBF variables w0,c0,σ0,ηw,ηc

  •    

    Kalman gain update:

  • 3:
    calculate Kalman gain
    Kk=PkHkHkPkHk+Rk1
  •    

    RBF Gaussian function update:

  • 4:
    Learning non-linearity of error state vector
    yk(i)=expδxkcik22σi2,i=1,2,,Nc
  •    

    Innovation update:

  • 5:
    Non-linearity influence is minimized by using output of RBF neural network in innovation term
    s˜k=δzk(Hkδxk+Wkyk)
  •    

    Measurement update:

  • 6:
    Estimate error state by using innovation term and Kalman gain
    δxk+=δxk+Kks˜k
  • 7:
    Error state covariance update.
    Pk+=IKkHkPk
  •    

    Full State correction

  • 8:
    Full state is corrected by error adding error estimate.
    x=x^+δxk+
  •    

    RBF Neural Network Weight and Center update:

  • 9:
    RBF weight update
    wmk+1=wmk+ηw(δzk(m)Hk(m)δxk(m)wmkyk)ykT
  • 10:
    RBF center update
    cmk+1(j)=cik(j)+ηc(wik(j)yk(j)cik(j)σi2).i=1M(δzk(i)(Hk(i)δxk(i)+wikyk))
  •   

    Time propagation:

  • 11:
    Time propagation of error state and covariance
    δxk+1=Φkδxk+
    Pk+1=Φkpk+Φk+Qk
  • 12:

    Next iteration (posterior becomes prior)