I have a system of ordinary differential equations (ODE) with some parameters (coefficients). I want to make fuzzy some of these coefficients.
What is the best way to do this in MATLAB?

3 个评论

Fuzzy systems are typically piecewise defined, and might be differentiable between the breakpoints, but typically have discontinuous first or second derivatives.
As such, most fuzzy systems are not suitable for use with any of the ode*() routines, all of which require continuous first and second derivatives within any one call.
The way to approach it with ode45() or similar would be to use an event function to terminate the integration each time you passed between fuzzy sub-domains.
🙏🏻🙏🏻

请先登录,再进行评论。

 采纳的回答

Sam Chak
Sam Chak 2022-8-2

1 个投票

Say the ODE is given by
where A and B are the coefficients of the state x and the input u, respectively.
From your description of the problem, if you want to fuzzifyA and B, perhaps you want to look up for the Takagi–Sugeno Fuzzy modeling approach.

2 个评论

🙏🏻🙏🏻
You are welcome, @fateme zrbd. For a deeper treatment of the topic, considering reading "Fuzzy Control Systems Design and Analysis: A Linear Matrix Inequality Approach" by Kazuo Tanaka, and Hua O. Wang.
If you like my suggestions, please consider accepting ✔ and voting 👍 the Answer as a closure. Thanks!

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Fuzzy Logic Toolbox 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by