logo
РПЗ САФИН

Исследование зависимости времени работы алгоритма от числа учащихся

Данный программный продукт был разработан с целью поиска наиболее приемлемого распределения учащихся с учетом следующих критериев:

Программа должна решать поставленную задачу распределения в пределах 10 минут. Это время выбрано с учетом быстро меняющейся рыночной ситуации, т.к. в среднем образовательное учреждение набирает 10000 клиентов за 2 недели, что соответствует потоку клиентов, равному 4 человека/10 минут. При большей длительности работы алгоритма пользователь не сможет вовремя получать достоверный результат по текущей рыночной ситуации, что может привести к неправильному принятию управленческих решений.

Проведем ряд тестов для нашей программы. Будем искать зависимость времени получения результатов от количества клиентов, которые хотят записаться на курсы. Верхней планкой для числа клиентов будет взято число 100000, нижней 100. Полученные данные занесем в таблицу и построим график (см. рис. ).

В качестве входных данных возьмем клиентов, 20% из которых запишутся на 2 курс, а 10% которых запишутся на 2 и 3 курс одновременно. Таким образом, мы внесем достаточное количество зависимых клиентов в нашу базу данных, а тестируемая выборка по сложности её обработки будет соответствовать реальной выборке.

Таблица 23. Зависимость времени работы алгоритма от числа клиентов

Число клиентов в базе данных

Время работы алгоритма

110000

36 мин. 12 секунд

100000

18 мин. 10 секунд

90000

12 ми 32 секунд

80000

6 мин. 33 секунд

70000

7 мин. 2 секунд

60000

9 мин. 3 секунд

50000

4 мин. 48 секунд

40000

3 мин. 18 секунд

30000

4 мин. 36 секунд

20000

45 секунд

15000

48 секунд

10000

71 секунд

5000

10 секунд

4000

6 секунд

3000

10 секунд

2000

8 секунд

1000

1 секунд

500

0 секунд

Рисунок 28. Зависимость времени работы алгоритма от числа клиентов

Из данного графика видно, что разработанный алгоритм распределения имеет экспоненциальную сложность. Но при числе клиентов, меньших 90000, он показывает достаточно хороший результат, время его работы составляет меньше 10 минут. Результат показывает, что данный алгоритм может быть применен в тех образовательных учреждениях, в которых число клиентов, проживающих в одном городе, меньше 80000-90000 человек. Для сравнения в крупной компании Юниум-ФТК число клиентов в Москве варьируется в пределах 10000-20000 человек.

Для числа клиентов, меньших 5000, время работы алгоритма меньше 10 секунд. Это связано с тем, что для набора даже одной группы в некоторых ОЦ не хватает клиентов. Рекурсивный алгоритм отрабатывает гораздо быстрее вследствие уменьшения числа возможных ситуаций.