JP4848320B2 - パラメータの同定装置およびそのプログラム - Google Patents

パラメータの同定装置およびそのプログラム Download PDF

Info

Publication number
JP4848320B2
JP4848320B2 JP2007165742A JP2007165742A JP4848320B2 JP 4848320 B2 JP4848320 B2 JP 4848320B2 JP 2007165742 A JP2007165742 A JP 2007165742A JP 2007165742 A JP2007165742 A JP 2007165742A JP 4848320 B2 JP4848320 B2 JP 4848320B2
Authority
JP
Japan
Prior art keywords
parameter
error
output
value
identification
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007165742A
Other languages
English (en)
Other versions
JP2009003817A (ja
Inventor
良一 日比野
友博 宮部
秀顕 大坪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Toyota Central R&D Labs Inc
Original Assignee
Toyota Motor Corp
Toyota Central R&D Labs Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp, Toyota Central R&D Labs Inc filed Critical Toyota Motor Corp
Priority to JP2007165742A priority Critical patent/JP4848320B2/ja
Publication of JP2009003817A publication Critical patent/JP2009003817A/ja
Application granted granted Critical
Publication of JP4848320B2 publication Critical patent/JP4848320B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Feedback Control In General (AREA)

Description

本発明は、非線形な物理モデルを用いてシミュレーションを行い、その出力と最適化対象の出力を比較し、その比較結果に基づき物理モデルのパラメータを繰り返し修正することにより、各パラメータを真値に漸近させていくパラメータの同定に関する。
従来より、モデルを用いたシミュレーションなどが行われており、このためには実態に則したモデルが必要となる。このため、モデルの諸元を決定する必要があり、モデルの諸元を実験データから同定することが行われており、この場合は同定が精度良く行えたかを判定するプロセスが必要である。
ここで、特許文献1には、適応制御器を車載し、内燃機関の適応パラメータを適応制御器で計算して、内燃機関の燃料噴射を制御することが記載されている。そして、この特許文献1では、各種の適応パラメータを調整する場合において、適応パラメータの変化速度を決定する同定誤差信号を所定の範囲に設定することで、同定誤差信号が変動した場合にも適応パラメータの変化速度を安定化して、良好な制御性を得ることが示されている。なお、同定誤差信号の範囲は、運転状態に応じて設定することなども記載されている。
特開平8−291746号公報
上述のように、特許文献1では、適応パラメータの変化速度を決定する同定誤差信号を所定の範囲に設定することで適応パラメータの変化速度を安定させて制御性を改善している。すなわち、適応パラメータの変化速度を制限することで、適応パラメータが適正値に収束しやすくしている。しかし、この手法では、変化速度が遅いため、収束までに時間が比較的長く、収束までの時間を短くしたいという要求がある。
本発明は、非線形な物理モデルを用いてシミュレーションを行い、その出力と最適化対象の出力を比較し、その比較結果に基づき物理モデルのパラメータを繰り返し修正することにより、各パラメータを真値に漸近させていくパラメータの同定装置であって、前記比較において得られる誤差の変化量に基づいて、パラメータの修正量についての上下限値を設定することで前記上下限値を逐次変更することを特徴とする。
また、前記比較に得られる誤差の変化量は、前回の出力の誤差と今回の出力の誤差との差であることが好適である。
また、前記誤差は、所定期間における最適化対象の出力とモデル出力の誤差の二乗和であり、前記修正量は二乗和のパラメータの変化に対する勾配に基づいて決定されることが好適である。
さらに、本発明は、上記装置において実行されることで、上記処理をコンピュータの行わせるプログラムに関する。
このように、本発明によれば、パラメータの修正量について、得られた誤差に基づいて逐次決定された制限をかけるため、パラメータの同定を比較的早めに収束させることができる。
以下、本発明の実施形態について、図面に基づいて説明する。
図2には、本実施形態において、同定の対象となる油圧系の概略構成を示す。エンジンには、自動変速機が接続されており、この自動変速機によりエンジン出力軸の回転が変更されてタイヤに伝達される。自動変速機は、油圧の供給を受け、変速動作を行う。例えば、車両の走行状態に応じて変速タイミングとなった場合には、ECU(電子制御ユニット)がこれを検出し、変速指令に応じた電流を油圧制御回路に供給し、油圧制御回路自動変速機内のクラッチパックへの油圧を制御して変速動作が行われる。
ここで、この自動変速機の油圧系は、エンジンで駆動される油圧ポンプを有し、この油圧ポンプからのオイルが油圧ラインに供給される。この油圧ラインの油圧ポンプの近くには油圧調整弁が設けられており、これによって油圧ラインにおけるライン圧(元圧)が所定値に制御される。油圧ラインには、リニアソレノイド弁が設けられており、油圧ラインのライン圧のクラッチパックへの供給を制御している。なお、リニアソレノイド弁からクラッチパックへ至る流路には、オリフィスが設けられ、クラッチパックへの油圧の供給を制限している。また、クラッチパックは、油圧によってピストンをばね圧に抗して移動させることで、入力側のディスクと出力側のディスクの係合・解放を制御するものである。例えば、1速から2速への変速であれば、元々入力側のディスクと係合している1速の出力ディスクを解放し、2速の出力ディスクを係合させる。
このような制御対象となる油圧系を考えると、入力は油圧指令値であり、出力はクラッチパックへの供給油圧になる。
図3には、本実施形態におけるパラメータの同定の概要を示してある。実機の油圧系出力とモデル出力との誤差を基に、油圧詳細モデル内の(i)〜(iv)のパラメータを同定することを示している。この例では、パラメータ(i)油圧系の時定数、(ii)クラッチパックの詰り位置、(iii)クラッチ作動荷重、(iv)油圧不感帯幅である。油圧指令値は、油圧詳細モデルに供給される。この油圧詳細モデルは、設計条件モデルと、特性変動モデルからなっている。そして、油圧指令値を入力することによって、油圧詳細モデルからは、クラッチパックに供給される油圧が出力される。また、実機の油圧系にも油圧指令値を供給し実際に出力される油圧を計測する。そして、両者の誤差が算出され、これが同定(最適化)手法に供給される。同定手法では、油圧詳細モデルの中の特性変動モデルの特性パラメータを誤差に応じて変更し、パラメータ(i)〜(iv)について新しいパラメータを特性変動モデルに設定する。これによって、次の油圧詳細モデルが設定されて、この出力を得るという動作が繰り返される。
また、図4Aには、油圧系のブロック図が示されている。まず、変速指令がECUに供給される。ECUは、変速指令に応じてリニアソレノイド弁にこれが動作するための信号を供給する。なお、実際には、解放側の油圧ラインのリニアソレノイド弁に対する解放用の信号と、係合側の油圧ラインのリニアソレノイド弁に対する係合用の信号の両方である。これによって、オリフィス流路にリニアソレノイド弁の動作に伴うオイルがクラッチパックに供給され、クラッチ圧が決定される。なお、オリフィス流路の流量:qとし、クラッチパックにおけるクラッチピストンストローク:xc、クラッチ面積Ac、クラッチ圧Pcとする。
図4Bには、同定する油圧系の諸元について示してある。変速指令が入力されるとECUでは、この指令に対する遅れが発生する。この例では、遅れは1/(T・s+1)で表され、Tが時定数であり、これがパラメータ(i)になる。また、リニアソレノイド弁には、動作開始までの不感帯があり、これがパラメータ(iv)となる。
オリフィスは、その流量qcが、qc=C0・Ac√{2(Pl−Pc)/ρ}によって決定される。ここで、Plはオリフィスの上流側圧力、Pcはクラッチパック側圧力、ρはオイルの密度、C0はオイルの粘度(開口比、レイノルズ数)に関する定数である。
そして、クラッチパックにおいては、そのクラッチピストンストロークxc及びクラッチ圧PCは、xc=∫qcdt/Ac,Pc=Kc・xc/Acで表される。Kcは定数である。さらに、クラッチパックの動作は、パック詰まりによって大きく影響を受ける。そこで、パック詰まり位置をxc_maxとして、その位置でのクラッチ圧をPc_maxとする。従って、パック詰まり位置において、xc=xc_max,Pc=Kc・xc_max/Ac=PC_maxとなる。
次に、本実施形態におけるパラメータの同定について、図1A、図1Bのフローチャートに従って説明する。なお、説明では、実機の出力データの代わりに、パラメータ(i)〜(iv)の値を適当に変動させた油圧詳細モデルの出力を用いる。
まず、ステップ1では、同定(最適化)するモデルパラメータの初期(ノミナル)値[a(1) b(1) c(1) d(1)]を決定する。このノミナル値は、通常考えられる正しそうな値とすることが好ましい。なお、この例において、同定の対象とする油圧系諸元を図4Bに破線の丸印で示してある。
ステップ2、3では、モデルのシミュレーションを行い、図5のようにモデル出力と実機の出力との誤差を得る。本実施形態では、この誤差の二乗和を評価値としており、これを式(1)または式(2)により計算する。式(1)はアナログデータの連続系の場合であり、式(2)はサンプリングデータによる離散系の場合である。連続系の場合、時間t=0〜tfまで、出力油圧Pcの誤差の二乗を積分した値であり、離散系の場合、N個のサンプルの誤差の二乗和のN分の1となっている。
Figure 0004848320
続いてステップ4において、式(1)または式(2)の誤差(評価値:誤差の二乗和)が閾値以内なら、目標とする出力が得られているため同定のステップは終了する。
ステップ4においてNO、すなわち誤差(評価値)が閾値より大きい場合には、ステップ5に進み、モデルパラメータの初期値を適当にずらしたものを新たなパラメータに設定する(式(3))。
[a(1) b(1) c(1) ...]=[a(1)+δ1 b(1)+δ2 c(1)+δ3 ...] (3)
ステップ6では、式(3)のパラメータにより、ステップ2と同様にモデルシミュレーションを行い、ステップ7で式(1)または式(2)により再度誤差(評価値)を計算して、ステップ8で誤差(評価値)が閾値以内か判定する。ステップ8の判定で閾値以内なら、同定のステップは終了する。一方、ステップ8の判定で、誤差(評価値)が閾値より大きい場合には、ステップ9へ進む。
ステップ9では、各パラメータの要因効果から勾配ベクトルを計算する。このために、まず図3、図4Bに示した4つのパラメータ(i)〜(iv)に対して、表1に示すように2水準(1つのパラメータについて2つの値)のパラメータの組合せ、計16通り用意し、各組合せごとに誤差の二乗和J1〜J16を計算する。
Figure 0004848320
求めた誤差から、表2に示すように、各パラメータの水準(2水準)ごとに、要因効果(水準ごとの平均値)を計算する。
Figure 0004848320
すなわち、Ja(1)は、パラメータ(油圧系時定数)がa(1)(水準1)である時の誤差の二乗和の平均値(評価値)、Ja(2)は、パラメータ(油圧系時定数)がa(2)(水準2)である時の誤差の二乗和の平均値である。Jb(1),Jb(2),Jc(1),Jc(2),Jd(1),Jd(2)も同様に各パラメータについての水準1、2の際の評価値の平均値である。従って、この表2から各パラメータについて水準1,2の変化に対する効果がわかる。
このような表2の要因効果から、式(4)で定義するパラメータ全体の勾配ベクトル[Sa(1) Sb(1) Sc(1) Sd(1)]が求められる。すなわち、上記勾配ベクトルの1つ1つの要素が1つのパラメータの水準1,2に対する出力の勾配である。
Figure 0004848320
ステップ10では、勾配ベクトルS(i)に基づき、パラメータの修正量を計算する。ここで、iは何回目の計算かを示しており、上記水準1,2は1回目、2回目の計算に用いたものを表しており、3回目の計算ではi=3であり、水準1がi=2、水準2がi=3となる。
次のモデルパラメータは、スカラ値kを用いて式(5)により計算する。
Figure 0004848320
このようにして、各パラメータについて、評価値に応じた修正量を加算して、次のパラメータが決定される。そして、次のパラメータが決定された場合には、ステップ6に戻って、誤差が閾値以下になるまで同じステップを繰り返す。
このようにして、誤差が所定値以下となるパラメータ(=油圧諸元)を同定することができる。
「修正量についての制限」
ここで、本実施形態においては、図1Aのステップ9とステップ10の間に図1Bに示すステップ20を設ける。すなわち、このステップ20によって、式(4)の勾配ベクトルS(i)の各要素の大きさを、誤差の二乗和値に応じて制限する。
すなわち、ステップ9において、勾配ベクトル[Sa(i) Sb(i) Sc(i) Sd(i)]が計算された場合には、得られた1つのパラメータaの勾配Sa(i)がその上限値Samaxと比較される(ステップ21)。このステップ21の判定でYesの場合には、Sa(i)=Samaxとする(ステップ22)。なお、この例では、Samax=√[(1/2)・(Ja(i)/k)]としている。ステップ21の判定において、Noの場合には、ステップ22の処理は行わない。
次に、勾配Sa(i)がその下限値−Samaxと比較される(ステップ23)。このステップ23の判定でYesの場合には、Sa(i)=−Samaxとする(ステップ24)。ステップ23の判定において、Noの場合には、ステップ24の処理は行わない。
同様にして、全てのパラメータについて同様の処理を行うことで、全てのパラメータについての勾配Sa(i),Sb(i),Sc(i),Sd(i)について上下限値を超える場合に、これを上下限の設定値にセットすることができる。
このようにして、ステップ20によって、勾配ベクトル[Sa(i) Sb(i) Sc(i) Sd(i)]の各要素について、上下限値の制限が掛けられる。
そして、このような各要素について上下限値の制限が掛けられた勾配ベクトルがステップ10に供給され、これに基づいて各パラメータの修正が行われる。
次に、修正量の制限について、具体的に説明する。まず、基本的な考え方を、図5に示す。同図は、修正回数がiの時のパラメータがa(i)で、モデルと実際の出力との誤差の二乗和値がJ(i)であることを示している。この時、修正i+1時における誤差の二乗和J(i+1)の変化量ΔJ(i)=J(i+1)−J(i)が、ある範囲、例えば1/2*J(i)の範囲に入るように式(4)の勾配ベクトルの大きさに制限をかければ、誤差の二乗和値J(i)は、ある変化量の範囲内(1/2*J(i)の範囲内)でしか変化しないので、同定パラメータの収束性も安定するものと考えられる。
次に、上記の考えを具体的に式で表現する。式(5)の関係式の中で、パラメータaを対象に説明する(式(6))。
a(i+1)=a(i)+k・Sa(i) (6)
ここで、iは修正回数である。
図5の誤差の二乗和の変化量ΔJ(i)は、式(7)のように計算できる。
Figure 0004848320
ここで、閾値の導出を間単にするために、修正i回目の勾配Sa(i)と修正i+1回目の勾配Sa(i+1)は同じ値をとるものと仮定する。この時、式(7)は最大の勾配値Samax(i)。すなわち、閾値と、誤差の二乗和の変化量の最大値|ΔJ(i)|maxを用いて、式(7)’のように書け、同式から閾値が式(8)のように導かれる。
Figure 0004848320
誤差の二乗和の変化量の最大値|ΔJ(i)|maxとして、例えば|ΔJ(i)|max=|(1/2)J(i)|とすれば、式(8)は式(8)’となる。
Figure 0004848320
なお、上記|(1/2)J(i)|の分母は、2である必要はなく、2〜n(n:正数値)の値を適宜設定しても良い。このようにして、修正量についての閾値を設定し、毎回の計算結果(誤差の二乗和)に応じて、修正量に制限を掛けることができる。
図6、7は、本実施形態を適用して同定した結果である。約15回の修正で、パラメータは真値に安定して収束しているのがわかる。
図8、9は、図6、7と同じ条件(パラメータの初期値、修正ゲイン)で、何ら制限を掛けずに同定を行った結果であり、図8は同定結果の時系列波形、図9は、修正による各パラメータの変化を示す図である。
さらに、図10、11は、図6、7と同じ条件(パラメータの初期値、修正ゲイン)で、勾配ベクトルについて、パラメータが安定して収束可能な所定の範囲(閾値)内に制限して同定を行った場合の結果であり、図10は同定結果の時系列波形、図11は、修正による各パラメータの変化を示す図である。このように、パラメータは真値に安定して収束している。しかし、収束までの収束回数が約50回程度と多く、収束速度が遅いことがわかる。
パラメータ同定の処理を示すフローチャートである。 パラメータの修正量の上下限値を設定する処理を示すフローチャートである。 油圧制御系の概要を示す図である。 パラメータの同定方法の概要を示す図である。 油圧系のブロック線図である。 同定する油圧系の諸元を示す図である。 勾配ベクトルの大きさに対する制限のかけ方を示す図である。 同定結果1:時系列波形を示す図である。 同定結果2:パラメータ値と誤差の二乗和を示す図である。 同定結果1:時系列波形を示す図である。 同定結果2:パラメータ値と誤差の二乗和を示す図である。 同定結果1:時系列波形を示す図である。 同定結果2:パラメータ値と誤差の二乗和を示す図である。

Claims (4)

  1. 非線形な物理モデルを用いてシミュレーションを行い、その出力と最適化対象の出力を比較し、その比較結果に基づき物理モデルのパラメータを繰り返し修正することにより、各パラメータを真値に漸近させていくパラメータの同定装置であって、
    前記比較において得られる誤差の変化量に基づいて、パラメータの修正量についての上下限値を設定することで前記上下限値を逐次変更することを特徴とするパラメータの同定装置。
  2. 請求項1に記載のパラメータの同定装置において、
    前記比較に得られる誤差の変化量は、前回の出力の誤差と今回の出力の誤差との差であることを特徴とするパラメータの同定装置。
  3. 請求項1または2に記載のパラメータの同定装置において、
    前記誤差は、所定期間における最適化対象の出力とモデル出力の誤差の二乗和であり、前記修正量は二乗和のパラメータの変化に対する勾配に基づいて決定されることを特徴とするパラメータの同定装置。
  4. 非線形な物理モデルを用いてシミュレーションを行い、その出力と最適化対象の出力を比較し、その比較結果に基づき物理モデルのパラメータを繰り返し修正することにより、各パラメータを真値に漸近させていくパラメータの同定処理をコンピュータに実行させるパラメータの同定プログラムであって、
    前記比較において得られる誤差に基づいて、パラメータの修正量についての上下限値を設定することで前記上下限値を逐次変更する工程をコンピュータに実行させることを特徴とするパラメータの同定プログラム。
JP2007165742A 2007-06-25 2007-06-25 パラメータの同定装置およびそのプログラム Expired - Fee Related JP4848320B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007165742A JP4848320B2 (ja) 2007-06-25 2007-06-25 パラメータの同定装置およびそのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007165742A JP4848320B2 (ja) 2007-06-25 2007-06-25 パラメータの同定装置およびそのプログラム

Publications (2)

Publication Number Publication Date
JP2009003817A JP2009003817A (ja) 2009-01-08
JP4848320B2 true JP4848320B2 (ja) 2011-12-28

Family

ID=40320115

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007165742A Expired - Fee Related JP4848320B2 (ja) 2007-06-25 2007-06-25 パラメータの同定装置およびそのプログラム

Country Status (1)

Country Link
JP (1) JP4848320B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6624855B2 (ja) * 2015-08-31 2019-12-25 ダイハツ工業株式会社 制御装置
CN105589334B (zh) * 2016-02-26 2018-08-31 北京控制工程研究所 一种基于输入平滑的特征模型参数辨识方法
JP7035457B2 (ja) * 2017-11-01 2022-03-15 ブラザー工業株式会社 パラメータ更新方法、パラメータ更新システム、及びプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0713608A (ja) * 1993-06-21 1995-01-17 Chino Corp 制御装置
JP3217755B2 (ja) * 1998-09-18 2001-10-15 川崎重工業株式会社 車両の制振装置
JP3602811B2 (ja) * 2001-06-19 2004-12-15 本田技研工業株式会社 プラントの制御装置
JP2002364311A (ja) * 2001-06-08 2002-12-18 Hitachi Ltd 火力発電プラント動特性解析支援システム
JP4432723B2 (ja) * 2004-10-21 2010-03-17 株式会社デンソー 制御装置
JP4727473B2 (ja) * 2006-03-23 2011-07-20 株式会社豊田中央研究所 最適パラメータ探索方法およびそのプログラム

Also Published As

Publication number Publication date
JP2009003817A (ja) 2009-01-08

Similar Documents

Publication Publication Date Title
JP4631937B2 (ja) 学習装置及び燃料噴射システム
CN104235344B (zh) 流动控制螺线管的适应性控制
JP4848320B2 (ja) パラメータの同定装置およびそのプログラム
CA2607055A1 (en) Control apparatus and control method
JP4727473B2 (ja) 最適パラメータ探索方法およびそのプログラム
JP2020537082A (ja) 内燃機関をモデルに基づき開ループ制御及び閉ループ制御する方法
US10337428B2 (en) Apparatus and method for controlling EGR valve
US9188221B2 (en) Adaptive control of a flow control solenoid valve
WO2014175818A1 (en) Method and system for control of an internal combustion engine
WO2010050061A1 (ja) 内燃機関の制御装置
Marano et al. Clutch-to-clutch transmission control strategy
CN107102555B (zh) 一种镇定一阶惯性加纯滞后系统的线性自抗扰控制器设计方法
JP4851396B2 (ja) パラメータの同定装置およびそのプログラム
CN102678361B (zh) 具有用于驱动器控制的算法的发动机控制系统
CN109839821A (zh) 一种船用柴油机bp神经网络燃烧-转速双闭环控制方法
KR20140044673A (ko) 댐퍼클러치 유압 제어 시스템 및 방법
CN114945741A (zh) 用于对燃烧发动机的基于模型的控制和调节的方法
CN103291689B (zh) 基于液压试验台的被试阀的负载压力的控制方法
US20220100155A1 (en) Compressed air provision device and method
JP5176422B2 (ja) コークス炉燃焼室のガス量調整方法およびコークスの製造方法
JP2003005802A5 (ja)
Miljić et al. Model based tuning of a variable-speed governor for a distributor fuel-injection pump
JP4824471B2 (ja) 自動変速機のクラッチ油圧指令値生成方法およびその装置
US20230220808A1 (en) Method and device for controlling an air charge of an internal combustion engine
JP5000460B2 (ja) パラメータ同定装置及びパラメータ同定プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100324

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110928

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111011

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111017

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141021

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141021

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees