ツール
ファジィ論理を学び、使ってみましょう。
初学者向けの短い学習の道筋、この分野の出発点となった論文、そして研究者が実際に使っているツールキットを紹介します。
ファジィ論理は思ったより簡単に始められます。まずは一つの例と一つのツールキットから。
ファジィを学ぶ
1
考え方をつかむ
ホームページのデモを試してみてください。ファジィ集合は、ある物事がどの程度属するかを 0 から 1 で表します。
2
システムを一つ作る
scikit-fuzzy の定番であるチップ問題の例に沿って進めます。所要時間は 1 時間ほどです。
3
古典を読む
この分野全体を形づくった 3 本の短い論文を下に掲載しています。
4
自分の研究に活かす
下のツールキットから一つ選び、ご自身の研究対象をモデル化してみてください。
古典的論文
- Fuzzy setsL. A. Zadeh · 1965 · Information and Control 8(3)
- An experiment in linguistic synthesis with a fuzzy logic controllerE. H. Mamdani, S. Assilian · 1975 · International Journal of Man-Machine Studies 7(1)
- Fuzzy identification of systems and its applications to modeling and controlT. Takagi, M. Sugeno · 1985 · IEEE Transactions on Systems, Man, and Cybernetics SMC-15(1)
ツールキット
特に記載のない限り、無料のオープンソースです。
- Python
scikit-fuzzy
- 適した用途
- Python でファジィ論理を学び、メンバーシップ関数を図示しながら Mamdani 型システムを構築する。
- こんなときに
- Python に慣れていて、制御器の試作や教科書の例題をなぞりたいとき。
- Python
Simpful
- 適した用途
- ファジィルールを読みやすいテキストで記述し、Mamdani 型または高木・菅野型の推論を実行する。
- こんなときに
- プログラマーでない人にも読めるルールが必要なとき、または菅野型の出力が必要なとき。
- Python
pyFUME
- 適した用途
- データセットからファジィモデルを自動的に学習する。
- こんなときに
- 表形式のデータから解釈可能な高木・菅野モデルを構築したいとき。
- C++, Java, Python
FuzzyLite
- 適した用途
- C++、Java、Python で高速なファジィ制御器を実装する。
- こんなときに
- アプリケーションや機器に制御器を組み込んで提供する必要があるとき。
- MATLAB

Fuzzy Logic Toolbox
- 適した用途
- アプリや Simulink ブロックを用いてファジィシステムを設計、調整、シミュレーションする。
- こんなときに
- 授業や研究室ですでに MATLAB を使っているとき。MATLAB のライセンスが必要です。
