The role of this function is to update parameters within the simplified TSK fuzzy rule
generation method using heuristics and the gradient descent method (FS.HGD).
This function is called by the main function
of the FS.HGD method, see `FS.HGD`

.

```
HGD.update(data.train, miu.rule, func.tsk, varinp.mf, step.size = 0.01,
def)
```

data.train

a matrix (\(m \times n\)) of normalized data for the training process, where \(m\) is the number of instances and \(n\) is the number of variables; the last column is the output variable.

miu.rule

a matrix with the degrees of rules which is the result of the `inference`

.

func.tsk

a matrix of parameters of the function on the consequent part using the Takagi Sugeno Kang model. See `rulebase`

.

varinp.mf

a matrix of parameters of membership functions of the input variables.

step.size

a real number between 0 and 1 representing the step size of the gradient descent.

def

a matrix which is obtained by the `defuzzifier`

.