Имитациялық модельдеу

Автор работы: Пользователь скрыл имя, 15 Февраля 2013 в 12:45, доклад

Описание работы

GPSS модельдеу жүйесі. GPSS – General Purpose Simulation System [Система моделирования общего назначения] Дискретті оқиғалы имитациялық модельдерді құру және ЭЕМ- де эксперименттер жүргізуге арналған модельдеу тілі.
GPSS тілі объектілі- бағдарлы тілдің принципі бойынша құрылған декларативті типтегі тілі.
Тілдің негізгі элементтері болып модельденетін жүйенің динамикалық және статикалық объектілерін сәйкесінше бейнелейтін транзактілер мен блоктар табылады.

Файлы: 1 файл

Документ Microsoft Office Word (2).docx

— 28.53 Кб (Скачать файл)

                                Имитациялық модельдеу

               GPSS модельдеу жүйесі. GPSS – General Purpose Simulation System [Система моделирования общего назначения] Дискретті оқиғалы имитациялық модельдерді құру және ЭЕМ- де эксперименттер жүргізуге арналған модельдеу тілі.

GPSS тілі объектілі- бағдарлы  тілдің принципі бойынша құрылған  декларативті типтегі тілі.

Тілдің негізгі элементтері  болып модельденетін жүйенің  динамикалық және статикалық объектілерін сәйкесінше бейнелейтін транзактілер мен блоктар табылады.

Нақты модельде объектілерді таңдау модельденетін  жүйенің мінездемесіне  байланысты. Әрбір объекті бірнеше  қасиеттерге ие болады, осы қасиеттер GPSS-те стандартты сандық атрибуттардеп  аталады.(Стандартные числовые атрибуты - CRA). CRA- ның бөлігін ғана пайдаланушы  қолдана алады, ал басқа қасиеттерінің  мәндеріне сәйкес блоктарды қолданып етеді.

Әрбір GPSS- модель міндетті түрде  блоктар мен транзактілерден  құралады.

GPSS-те блоктан блокқа басқаруды беру концепциясы спецификалық ерекшеліктерге ие болады.

GPSS – модельдің блоктарының  тізбегі элементтер қозғалатын  бағыттарды көрсетеді. Әрбір осындай  элемент транзакт деп аталады.  Транзактілер GPSS- модельдің динамикалық  элементтері.

GPSS тілінің блоктары макроассемблерде  немесе Си тілінде жазылған  ішкі бағдармалар және оларға  қатынау үшін параметрлерді (операндалардың) жиынын құрайды.

Модельдеу тілдерінде, соның  ішінде GPSS- те шынайы жүйелерде динамикалық  процесстерді бейнелеуге мүмкіндік  беретін модельдік уақытта жүзеге асатын басқаруды беретін (передача) ішкі механизм болады. GPSS- бағдарламаларда  блоктан блокқа басқаруды беру модельдік  уақытта транзактілер көмегімен  жүзеге асады. Блоктардың ішкі бағдарламаларына қатынау транзактілер қозғалысы  арқылы жүреді.

Транзактілердің мазмұнды мәндерін модельді әзірлеуші анықтайды. Модельнетін  жүйенің транзактілері мен шынайы динамикалық элеметтерінің арасындағы аналогияны да қоятын сол әзірлеуші болып табылады. Осындай аналогия GPSS- тің трансляторына ешқашан көрсетілмейді, ол модельдерді әзірлеушінің қиялында ғана қалады.

 

Мысалы: Транзактілер мен  шынайы жүйенің элементтерінің арасындағы аналогиялар.

Жүйе

Транзактілермен модельденетін жүйенің  элеметтері

Магазин

Автомобиль шоссесі

Қойма

Сатушы

Автокөлік

Тапсырыс


Бағдарлама тұрғысынан алатын болсақ, транзакт дегеніміз мәліметтер құрылымы, онда мынандай өрістер болады:

1) транзакт аты немесе  нөмері

2) транзактінің пайда  болу уақыты;

3) ағымдағы модельдік  уақыт;

4) транзакт бар болатын  блок нөмері;

5) транзактінің жылжитын  блогының нөмері.

6) қозғалыс басталатын  уақыттың сәті;

7) транзакт приоритеті;

8) транзактілер параметрлері: Р1,Р2, ...

 

GPSS тілінде барлық транзактілер  модельге келуі (пайда  болуы)  бойынша нөмерленеді. Транзактілер  параметрлері модельденетін динамикалық  объектінің қасиеттерін бейнелейді. Мысалы, егер жолдағы автокөліктің  қозғалысы модельденетін болса,  онда транзактінің (автокөліктің) параметрлері  ретінде жылдамдық, тежегіш жол,  габариттер және тағы басқа  болуы мүмкін, бұл модельдеу мақсаттарына  байланысты.

Әрбір транзакт компьютердің жадысынан қандай да бір көлемді  алады. Транзактінің модельдің блоктары бойынша қозғалысы аяқталғаннан кейін оны жойып жіберу керек.

Сол себепті GPSS- модельде модельдеудің басталуында бірде бір транзакт болмайды. Модельдеу процесінде транзактілер модельденетін жүйенің қызмет жасау  логикасына сәйкес модельге уақыттың нақты бір сәтінде кіреді. Осылайша модельдеудің спецификасына байланысты модельден транзактілер шығады. Жалпы  алғанда модельде бірнеше транзактілер болады, бірақ уақыттың әрбір сәтінде  олардың  тек біреуі ғана қозғалады.

Егер транзакт өзінің қозғалысын бастаса, онда ол блоктан блокқа көрсетілген  блок- схемаға сәйкес жылжиды. Транзакт блокқа кірген сәтте, осы блокқа сәйкес ішкі бағдарлама шақырылады. Ары қарай  транзакт келесі блокқа кіруге әрекет жасайды. Оның жылжуы осылайша мынандай мүмкін шарттардың бірі орындамайы жалғаса  береді. Мүмкін шарттар:

1) Транзактінің қызметі  транзактіні қайсыбір уақытқа  дейін ұстау болып табылатын  блокқа кіруі;

2) «Транзактіні модельден  жою» қызметі бар блокқа транзакті  кіргенде;

3) Модельдің логикасына  сәйкес транзакт келесі блокқа  кіруге әрекет жасағанда, бірақ  бұл блок транзактіні қабылдамаған  сәтте. Осы жағдайда транзак  қай блокта болса, сол блокта  қалып қояды, кейінрек келесі  блокқа кіруге қайтадан әрекет  жасайды. Егер модельде шарттар  өзгеретін болса, онда осы әрекеттердің  біреуі нәтижелі болар еді.  Осыдан кейін транзакт өзінің  қозғалысын модель бойынша жалғастырады.

Егер аталған шарттардың біреуі орындалатын болса, онда транзакт орнында қалады да, ал модельде басқа  транзактінің қозғалысы әрекеті  жасалады.

GPSS- те шынайы жүйелердің  қызмет көрсетуші құрылғыларының  аналогтары болып «ресурстар»  типіндегі объектілер табылады. Осындай типті объектілерге көп  каналды құрылғылар мен логикалық  кілттер сияқты құрылғылар жатады.

ОББ тілдеріндегідей GPSS тілінде  де әрбір объектінің қасиеттері мен  әдістері болады, объектілер өздерінің  қасиеттерін өзгертіп  отырады.

GPSS- те объектілер қасиеттері  CCA(CRA) деп аталады. [басында айтылды].

Құрылғы (бір каналды құрылғы  прибор) уақыттың кез келген сәтінде  тек бір ғана транзактімен бос  болмайтын ресурсты көрсетеді. Интерпретатор  автоматты түрде құрылғының бос болмайтын жалпы уақыты, құрылғыда болған транзактілердің саны, құрылғыны қолдану коэффициентін, бір транзактімен құрылғының бос болмайтын орташа уақыты және тағы басқа сияқты ССА-ын есептейді.

Көп каналды құрылғылар (ККҚ) (бірнеше параллельді бірдей құрылғылар) параллельді өңдеу үшін объектілерді құрайды. Олар бірнеше транзактілермен  бір уақытта қолданылуы мүмкін. Пайдаланушы  модельде қолданылатын әрбір көп  каналды құрылғының сыйымдылығын анықтайды, ал интерпретатор уақыттың әрбір  сәтінде бос емес құрылғылардың  санын есепке алады. Интерпретатор  автоматты түрде мынандай ССА-ын санайды: ККҚ- ға кірген транзактілер санын, бір транзактімен бос болмайтын  каналдардың орташа санын, транзактінің құрылғыда болатын орташа уақытын  және тағы басқа.

Кейбір оқиғалар жүйеде транзактілердің  қозғалысын жауып тастауы (заблокировать) немесе өзгертуі мүмкін.

Мысалы: Бірнеше кассасы  бар кинотеатр немесе банкте, кассир «Түскі үзіліс» деген тақтайшаны касса терезесіне қоятын болса, онда кезектегі  келесі клиенттер басқа  кассаларға баруына тура келеді. Осындай  жағдайларды модельдеу үшін логикалық  кілттер енгізілген. Транзакт осы  кілттерді «Іске қосылған (включено)»  немесе «істен ажыратылған» (выключена) жағдайына қоюы мүмкін. Бірақ уақыттан соң кілттің жағдайы қозғалыстың 2 мүмкін жолының біреуін таңдау үшін немесе кілттің жағдайының өзгеру сәтін күту үшін басқа транзактілермен  қолдануы мүмкін.

Арифметикалық айнымалылар  объектілердің CCA (CRA)- ына қолданатын амалдардан тұратын арифметикалық  өрнектерді есептеуге мүмкіндік  береді. Өрнектерде функциялар (кітапханалық немесе пайдаланушының) қолдануы мүмкін. Бульдік айнымалылар пайдаланушыға  объектілердің жағдайына немесе ССА(CRA) мәндеріне байланысты бірнеше  шарттарды бір уақытта тексеруге  мүмкіндік береді.

Функцияларды қолдана  отырып, пайдаланушы функция аргументі  мен оның мәндерінің арасындағы үздіксіз немесе дискретті функцияналдық  тәуелділіктерді бере алады. GPSS-та функциялар функцияларды сипаттайтын операторлар  көмегімен кестелік тәсілімен беріледі.

Сақталатын шамалардың ұяшықтары  және матрицалар пайдаланушының қайсыбір сандық ақпараттарын сақтау үшін қолданылады, осы объектілерге жазуды транзактілер орындайды. Осы объектілерде жазылған ақпаратты кез келген транзакт оқи алады. Сонымен бұл объектілер ауқымды болып табылады және модельдің кез келген бөлігінен қатынауға болады.

Кез келген жүйеде ресурстар  қатынау мүмкін еместігіне транзактілер ағынының қозғалысы кешігуі мүмкін. Қажет құрылғылар немесе ККҚ- лар  бос болмауы мүмкін. Осы жағдайда кешіктірілген, ұсталған транзактілер кезекке тұрады.

Кезек – GPSS- тегі объектілердің  типі. Осы кезектерді есепке алу  интерпретатордың негізгі қызметтерінің  бірі.

Пайдаланушы кезектер  туралы статистиканы жинақтайтын модельдің  нүктелерін анықтауы мүмкін, яғни кезек  регистраторларын қоюы мүмкін. Сонда  интерпретатор автоматты түрде  кезектер туралы статистиканы жинайды. Мысалы: кезек  ұзындығын, транзактінің кезекті болуының орташа уақытын  және тағы басқа. Бұл ақпараттың барлығы  ССА-ы болып табылады және пайдаланушыға  модельдеу процесінде белгілі.

Интерпретатор автоматты  түрде кезекте қызмет көрсетудің FIFO («бірінші келдің- бірінші кеттің») тәртібін ұстанады, және пайдаланушы  осы кезектер туралы стандартты статистикалық  ақпаратты ала алады. Егер пайдаланушыға  транзактілерден қызмет көрсетілудің басқа тәтібімен кезекті ұйымдастырғысы келсе,(мыс, LIFO) онда пайдаланушылар тізімі қолданылады. Бұл тізімдер модель бойынша  әртүрлі транзактілердің қозғалысының синхронизациясын жүзеге асыру көмектеседі.

«Кесте» объектісі пайдаланушымен берілген кездейсоқ шамалар туралы статистиканы жинауға арналған. Кесте  нақты шамалардың дәл келуінің саны енгізілетін жиілікті кластардан тұрады. Әр кесте үшін математикалық күтулер  және орта квадраттың ауытқулар есептеледі.

Сонымен GPSS- модельдің объектілері:

  1. транзактілер;
  2. блоктар;
  3. «ресурстар»типіндегі объектілер;
  4. Айнымалылар;
  5. Функциялар;
  6. Сақталатын шамалардың ұяшықтары мен матрицалары.
  7. Кезектер;
  8. кестелер

 

Модельдік уақыттың сағаттар.

 

Шынайы жүйелердің әртүрлі  оқиғалары уақыттың қандай да мерзімінде болады. Мысалы, дүкенге келген сатып  алушылар, олардың кезектері келгенде оларға қызмет көрсетіледі. Егер осы  оқиғалардың барлығын модельде көрсететін болсақ, олардың пайда болуы модельдің  уақыттың фонында өтуі керек. Интерпретатор  автоматты түрде модельдік уақыттың сағатына қызмет көрсетеді.

Модельдеудің басталу  сәтінде интерпретатор бірінші  транзактінің пайда болуын жоспарлайды. Осыдан кейін модельдік уақыттың сағатын модельде 1-ші транзактінің пайда болу сәтіне сәйкес келетін  уақыттың мәніне қояды. Осы транзакт (және басқа да транзактілер, егер олар осы сәтте келсе) модельге кіреді. Ары қарай ол өзіне кездесетін модельдің барлық мүмкін блоктары арқылы жылжиды.

Блоктар арқылы транзактінің жылжуы салдарынан пайда болған оқиғалары  уақыттың алдағы сәттерінде жоспарланады.

Әрине, уақыттың белгіленген  алғашқы сәтінде жүйеде ештеңе болмайды. GPSS интерпретатор сағаттың мәндерін келесі жақын оқиға жоспарланған уақыттың мәніне ары қарай жылжытады.

Егер сағатпен белгіленген  уақыттың 2-ші сәтінде транзактілер болмаса, сағат тағы да алға жылжиды. Осылайша оқиғадан оқиғаға модельдік  уақыттың ауысуы болады.

GPSS сағатының ерекшелігі.

  1. GPSS- те сағат бүтін мәндерді тіркейді, яғни оқиғалар уақыттың бүтін сәттерінде ғана пайда болуы мүмкін. Бұл модельдеу процесін жылдамдату мақсатымен жасалған, себебі бүтін санды арифметика ЭЕМ процессорында тезірек орындалатындығында және жадыдан көп орын алмайды.
  2. Модельдік уақыттың бірлік әзірлеуші мен анықталады. Модельдік уақыттың бірлігін барлық берілген уақыт бірлігінде болады.
  3. GPSS жүйесі «келесі оқиғаның» интерпретаторы болып табылады.

Операторлар типтері.

GPSS операторлары 3 типке бөлінеді:

  1. блоктар,
  2. мәліметтерді сипаттау операторлар;
  3. GPSS командалары.

 

GPSS- те сандарға, блоктар  және объектілерге сілтеме үшін  аттар (идентификаторлар) қолданады.

Аттар GPSS/РС – де 20 символға дейінгі ұзындықта алфавитті- цифрлы тізбекті, ал GPSS World- да 250 символға дейінгі  тізбекті құрайды. Латын алфавитінің  символдары, цифр және асты сызылған таңба  ғана пайдаланылады.

GPSS- блоктарының форматы  мынандай:

Информация о работе Имитациялық модельдеу