Эволюция элитных групп в организационных системахРефераты >> Программирование и компьютеры >> Эволюция элитных групп в организационных системах
При данном способе задача сводится к максимизации суперкритерия:
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 предназначена для моделирования элемента из общей совокупности элементов.