Вступ приклад виконання роботи

Постановка завдання. Реалізувати нечітку систему, що керує кутом повороту крана гарячої води, для підтримання температури води в змішувачі на заданому рівні (близько 35 оС).

1. Відкрити редактор нечіткої системи виведення, прописавши в режимі командного рядка fuzzy.

У FuzzyLogic – редакторі створити нечітку експертну систему, що має дві вхідні змінні, а саме: температура (назва змінної в редакторі temp) та напір води (назва змінної – head). Вихідна змінна – це вихід, що генерує система на базі експертних правил. Для даної системи вихідна змінна – це кут повороту крана гарячої води (назва – valve). Створити всі змінні та дати їм відповідні імена.

Зберегти створену систему з ім’ям Control_temp, вибравши в меню File->Export->ToFile….

2. Перейти в редактор функцій належності, натиснувши двічі на будь-якій з функцій. Для вхідних та вихідної змінної необхідно визначити терми, а саме їх кількість, вид (трикутні, трапецеїдальні, ґауссові та ін.), діапазон зміни.

3. Візьмемо для вхідної змінної temp три терми: холодна (cold), середня (mid), гаряча (hot). Діапазон для температури [10; 80]. Задамо в редакторі відповідні значення для термів вхідної змінної temp, вибравши тип термів трикутний: cold [10 20 35], mid [30 35 40], hot [40 50 80].

4. Вхідна змінна head характеризує напір води, візьмемо наступні терми:малий (small), нормальний (norm) та великий (big). Діапазон зміни параметра [0;1] у відносних одиницях. Можна задати наступні числові значення термів: small [0 0.1 0.3], norm [0.25 0.5 0.75], big [0.6 0.8 1].

5. Вихідна змінна valve характеризує, наскільки необхідно повернути кран гарячої води і в який бік – на закриття чи відкриття. Для більш точного регулювання визначимо п’ять термів: відкрити швидко (open_q), відкрити повільно (open_s), не змінювати (norm), закрити повільно (close_s), закрити швидко (close_q). Значення для термів узяти у відносних одиницях у діапазоні
[-10;10]. Числові значення для термів: open_q [-10 -7 -5], open_s [-6 -3 -1], norm [-2 0 2], close_s [1 3 6], close_q [5 7 10].

6. Після визначення всіх змінних необхідно створити базу знань, що може складатися з будь-яких правил, але чим точніше сформулювати правила, тим краще буде працювати система. Відкрити редактор правил RuleEditor та задати в ньому наступні правила для експертної системи:

вступ приклад виконання роботи - student2.ru

Рисунок 8.6 – Вікно редактора правил

7. Перевірити роботу системи, задаючи у вікні RuleViewer значення для вхідних змінних (рис. 8.7). А також переглянути поверхню відгуку системи, вибравши з меню View->Surface (рис.8.8)).

вступ приклад виконання роботи - student2.ru

Рисунок 8.7 – Вікно перегляду роботи правил

вступ приклад виконання роботи - student2.ru

Рисунок 8.8 – Поверхня відгуку нечіткої системи

8. Для розробленої системи змінити параметри функцій належності для досягнення кращих результатів роботи. Наприклад, можна змінити числові значення термів, тип функцій належності (трапецеїдальні, ґауссові 1 та 2-го порядку), додати правила в базу знань та ін.

9. Порівняти отримані результати, зробити висновки з роботи.

Наши рекомендации