Fuzzy-logic-database-and-queries

提供:Dev Guides
移動先:案内検索

ファジーロジック-データベースとクエリ

前の章で、ファジィロジックは、通常の「真または偽」のロジックではなく、「真実の度合い」に基づいて計算するアプローチであることを研究しました。 人間のロジックにより似た方法で問題を解決するために、正確ではなくおおよその推論を扱います。したがって、ブール代数の2つの価値のある実現によるデータベースクエリプロセスは適切ではありません。

データベース上の関係のファジーシナリオ

データベース上の関係のファジーシナリオは、次の例の助けを借りて理解することができます-

インドを訪れた人の記録があるデータベースがあるとします。 単純なデータベースでは、次のようにエントリが作成されます-

Name Age Citizen Visited Country Days Spent Year of Visit
John Smith 35 U.S. India 41 1999
John Smith 35 U.S. Italy 72 1999
John Smith 35 U.S. Japan 31 1999

さて、99年にインドと日本を訪れた人について質問し、米国市民である場合、出力にはJohn Smithという名前の2つのエントリが表示されます。 これは、単純な出力を生成する単純なクエリです。

しかし、上記のクエリの人物が若いかどうかを知りたい場合はどうでしょう。 上記の結果によると、その人の年齢は35歳です。 しかし、私たちはその人が若いかどうかを想定できますか? 同様に、同じことは、過ごした日、訪問年などのような他のフィールドにも適用できます。

上記の問題の解決策は、次のファジー値セットの助けを借りて見つけることができます-

  • FV(年齢)\ {非常に若い、若い、やや古い、古い}
  • FV(Days Spent)\ {わずか数日、数日、かなり数日、多くの日数}
  • FV(訪問年)\ {遠い過去、最近の過去、最近の}
  • クエリにファジー値が含まれる場合、結果も本質的にファジーになります。

ファジークエリシステム

ファジークエリシステムは、(準)自然言語文を使用してデータベースから情報を取得するためのユーザーへのインターフェイスです。 多くのファジークエリの実装が提案されており、言語がわずかに異なります。 さまざまな実装の特性に応じていくつかのバリエーションがありますが、ファジークエリ文への回答は通常、一致の程度によってランク付けされたレコードのリストです。