Эволюция элитных групп в организационных системах
Рефераты >> Программирование и компьютеры >> Эволюция элитных групп в организационных системах

При данном способе задача сводится к максимизации суперкритерия:

2.5.5. Алгоритм решения

1. k=0; A=0; B=0;

2. A¬A+ik;

3. B¬B+jk;

4. k¬k+1;

5. Если k<N, то переход к п. 2;

6. Если A>B, то 1-ый элемент лучший, иначе 2-ой элемент лучший;

7. Конец.

3. ОПИСАНИЕ ПРОГРАММЫ

3.1. Описание программы ELITE.PAS

3.1.1. Вводная часть

Программа ELITE.PAS предназначена для наблюдения за формированием и развитием элитной группы с большим количеством критериев отбора.

Программа написана на языке прграммирования Borland Pascal 7.0 фирмы Borland International на ПЭВМ IBM PC AT 486DX/50.

3.1.2. Функциональное назначение

Данная программа моделирует процесс отбора в элитную группу и эволюцию этой группы.

Для функционирования данной программы может быть использован любой персональный компьютер, совместимый с IBM PC с минимальным объемом свободной оперативной памяти не менее 128К.

3.1.3. Описание информации

Выводимые сообщения описаны в таблице 3.

Таблица 3.

Сообщение

Описание

Введите количество критериев отбора(до 20)

Запрос на ввод количества критериев

Введите разброс значений критерия

Запрос на ввод разброса значений каждого критерия

Введите приоритет критерия

Запрос на ввод приоритета каждого критерия

Введите размер элитной группы(до 200)

Запрос на ввод размера элитной группы

Введите количество циклов жизни элитной группы(до 4000)

Запрос на ввод количества циклов жизни

Введите размер делегирующей группы(до 400)

Запрос на ввод размера делегирующей группы

Сколько элементов удалять на каждом шаге

Запрос на ввод количества удаляемых на каждом шаге элементов из элитной группы при использовании процедур “прополка” и “делегирование”

Среднее арифметическое показателей элитной группы по различным критериям

Заголовок таблицы, показывающей среднее ариф­мети­чес­кое показателей по элитной группе до и после моделирования

После запуска программа выводит основное меню программы, содержащее следующие пункты:

1. Справка

2. Претендент-рекомендатель

3. Прополка

4. Сбор урожая

5. Делегирование

6. Выход

При выборе 1-го пункта выводится сообщение об авторах программы. Необходимо нажать любую клавишу для возврата в меню.

При выборе пунктов 2-5 будет выведено следующее меню:

1. Критерии

2. Значения

3. Размер элитной группы

4. Размер делег. группы

5. Количество циклов жизни

6. Выход

При выборе пункта 1 будет выведен запрос на ввод количества критериев. После ввода произойдет возврат в меню.

При выборе пункта 2 будет выведены запросы на ввод разброса значений критериев и их приоритет. После ввода произойдет возврат в меню.

При выборе пункта 3 будет выведен запрос на ввод размера элитной группы, и если была выбрана процедура “прополка” или “сбор урожая” - то и запрос на количество удаляемых элементов. После ввода произойдет возврат в меню.

При выборе пункта 4 будет выведен запрос на ввод размера делегирующей группы. После ввода произойдет возврат в меню.

При выборе пункта 5 будет выведен запрос на ввод количества циклов жизни. После ввода произойдет возврат в меню.

При выборе пункта 6 в любом меню произойдёт выход из программы или в предыдущее меню.

3.1.4. Используемые подпрограммы

Данная программа , кроме стандартных подпрограмм библиотеки языка программирования Borland PASCAL версии 7.0 фирмы Borland International, использует следующие подпрограммы:

help - для вывода на экран сообщения об авторах программы;

input - для моделирования элитных групп;

menu - для вывода меню.

3.1.5. Описание логики

1. n:=0; b:=false;

2. Если not B, то переход к п. 9;

3. nm:=menu(1);

4. Если nm=1, то переход к п. 5, иначе к п. 6;

5. Вызов подпрограммы HELP; переход к п. 8;

6. Если (nmÌ[2 5]), то вызов подпрограммы INPUT(nm); переход к п. 8;

7. Если (nmÌ[0,6]), то b:=true;

8. переход к п. 2;

9. Конец

Блок-схема программы приведена на рис.1 .

3.2. Описание подпрограммы PARET

3.2.1. Вводная часть

Синтаксис:

function paret(kol:byte;x,y:word):shortint;

Подпрограмма используется в программе ELITE.PAS. Подпрограмма написана на языке программирования Borland Pascal версии 7.0 фирмы Borland International на ПЭВМ IBM PC AT 486DX/50.

3.2.2. Функциональное назначение

Подпрограмма PARET предназначена для попарного многокритериального сравнения двух альтернатив и выбора одной из них.

3.2.3. Описание информации

Входные данные:

Kol - количество критериев;

x - номер первого элемента;

y - номер второго элемента.

Выходные данные:

Возвращает 0, если элемент с номером х превосходит элемент с номером у; возвращает 1, если элемент у превосходит х.

3.2.4. Используемые подпрограммы

Данная подпрограмма paret не использует других подпрограмм, кроме стандартных функций и процедур библиотеки языка программирования Borland Pascal версии 7.0 фирмы Borland International.

3.2.5. Описание логики

Описание блок-схемы подпрограммы PARET.

1. a:=true; b:=true; i:=0; j:=0;

2. k:=0;

3. a:=a & (otb[x,k]*ran[2,k]>otb[y,k]*ran[2,k]); b:=b & otb[x,k]*ran[2,k]<otb[y,k]*

ran[2, k]); k:=k+1;

4. Если k<Kol, то переход к п. 3;

5. Если not(a or b), то переход к п. 6, иначе к п. 15;

6. k:=0;

7. i:=i+otb[x,k]*ran[2,k]; j:=j+otb[x,k]*ran[2,k]; k:=k+1;

8. Если k<Kol, то переход к п. 7;

9. a:=(i>j);

10. Если A, то переход к п. 11, иначе к п. 12;

11. paret:=0. Переход к п. 15;

12. Если B, то переход к п. 13, иначе к п. 14;

13. paret:=1; переход к п. ;

14. paret:=-1;

15. Конец.

Блок-схема подпрограммы приведена на рис.2 .

3.3. Описание подпрограммы ELEM

3.3.1. Вводная часть

Синтаксис:

procedure elem(kol,Num:word);

Подпрограмма используется в программе ELITE.PAS. Подпрограмма написана на языке программирования Borland Pascal версии 7.0 фирмы Borland International на ПЭВМ IBM PC AT 486DX/50.

3.3.2. Функциональное назначение

Подпрограмма ELEM предназначена для моделирования элемента из общей совокупности элементов.


Страница: