Використання PLUS-процедур для моделювання неперервних систем

Приклад 4. Моделювання системи “Хижак-здобич”

Розглянемо модель Лотка-Волътерра (Lotka-Volterra) або модель “Хижак–здобич” [3]. Нехай на певній території нестримно росте колонія шкідників сільського господарства. Одним із важливих заходів для боротьби зі шкідниками є завезення на цю територію хижаків, які поїдають шкідників. Потрібно визначити, скільки хижаків необхідно завезти, щоб знищити всіх шкідників.

Ця модель описується системою звичайних диференціальних рівнянь. Для моделювання роботи системи “Хижак-здобич” необхідно виділити неперервну й дискретну складові процесу моделювання.

Імітаційну модель “Хижак-здобич” формуємо із трьох секторів. У першому секторі моделюється неперервний процес. У цій частині представимо систему із двох диференціальних рівнянь першого порядку і початкові вихідні дані моделі.

У другому секторі моделюється дискретний процес моделі.

У третьому секторі представимо праву частину системи диференціальних рівнянь моделі за допомогою PLUS-процедур.

Перший сектор моделі:

Hyzhak INTEGRATE (Pryrist_hyzhak())

Zdobych INTEGRATE (Pryrist_zdobych())

Hyzhak EQU 50

Zdobych EQU 800

A_ EQU 0.3000;Коеф. народжуваності хижака.

B_ EQU 0.0100;Коеф. смерті хижака.

C_ EQU 0.0002;Ефективність нападу.

D_ EQU 0.0500;Коеф. народжуваності здобичі

Другий сектор моделі може бути представлений у такому вигляді:

GENERATE 2000

TERMINATE 1

Третій сектор моделі може бути представлений у такому вигляді:

PROCEDURE Pryrist_hyzhak() BEGIN

TEMPORARY Din_narodzhennja, Din_smerti, Din_pryrostu;

IF (Hyzhak < 0) THEN Hyzhak = 0;

IF (Hyzhak > 10e50) THEN Hyzhak = 10e50;

Din_narodzhennja = A_ # C_ # Hyzhak # Zdobych;

Din_smerti = B_ # Hyzhak;

Din_pryrostu = Din_narodzhennja - Din_smerti;

RETURN Din_pryrostu;

END;


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: