Програма складання розкладу навчальних занять. Проблема повної автоматизації при складанні шкільного розкладу

Анотація

Ця стаття знайомить читача з унікальним алгоритмом складання шкільного розкладу, що недавно з'явився. Повідомляються результати тестування єдиної у світі програми, яка може не складати, а скласти такий розклад у повністю автоматичному режимі. Спираючись на результати десятків мільйонів тестів (побудованих шкільних розкладів), розвінчується міф про неможливість складання шкільного розкладу без участі людини. Робляться прогнози подальшого розвитку цього програмного засобу. Обговорюється бізнес-модель SaaS його використання. Для розуміння основного змісту статті не потрібна будь-яка спеціальна математична підготовка, таким чином стаття адресована широкому колу зацікавлених читачів.

1. Введення

За останнє десятиліття в Російській Федерації було захищено не менш дюжені дисертацій з тем пов'язаних із завданням складання навчальних розкладів. За попереднє, перед цим, десятиліття кількість захищених дисертацій не менша. Хоча в основному дисертації захищаються на звання кандидата технічних наук та розглядаються завдання складання розкладу занять для вищого навчального закладу, проте цей факт свідчить про те, що до завдань складання шкільного розкладу виявляє увагу дедалі більше дослідників. Можливо, цей потік робіт пов'язаний з постійним прогресом і загальною доступністю обчислювальної техніки. Дійсно, на наших очах відбуваються по-справжньому дивовижні процеси. Ще якихось двадцять п'ять років тому таку електронно-обчислювальну машину, як EC1066, могло собі дозволити придбати лише велике, як правило оборонне, підприємство. Розташовувався такий комп'ютер у приміщенні площею до кількох сотень квадратних метрів, обладнаному потужною системою безперебійного енергоживлення та системою підтримки мікроклімату. Такі електронно-обчислювальні машини насамперед призначалися на вирішення унікальних науково-технічних завдань, які впливають на обороноздатність країни. Сьогодні у багатьох будинках на письмових столах стоять персональні комп'ютери. Але тільки вдумайтесь. Оперативна пам'ять такого персонального комп'ютера порівняно з вищезгаданим гігантом більша у 125 - 250 разів. Швидкодія вища, більш ніж у 1000 разів. І це не описка. Більш ніж у тисячу разів.

2 Покоління ПЗ складання навчальних розкладів

Перші публікації на тему застосування обчислювальної техніки з метою автоматизувати складання розкладу занять з'явилися на початку 60-х років попереднього століття, таким чином завдання складання навчального розкладу за допомогою обчислювальної техніки має досить тривалу історію. За майже 50 років інтенсивних досліджень було проведено величезну інтелектуальну роботу тисяч фахівців по всьому світу. Однак завдання побудови навчальних розкладів як раніше, так і зараз все ще залишається «міцним горішком». Цілком не дивно, що програми для складання шкільного розкладу з'являлися і вдосконалювалися в міру розвитку обчислювальної техніки. Тому звернемося (природно у телеграфному стилі) до вельми умовних періодів цього розвитку. Не вдаючись в історичні дослідження і ризикуючи сильно помилитися, поява комп'ютера (електронно-обчислювальної машини - ЕОМ) можна до 1945 року. Цю появу (знову ж таки не ризикуючи сильно помилитися) можна віднести на рахунок потреби у обчисленнях для військових потреб. Однією з перших завдань, які вирішувалися на перших ЕОМ, була задача складання балістичних таблиць для артилерії та авіації. Не останню роль потреби військових грала завдання вивчення атомного і термоядерного вибуху. У силу вище зазначених причин, сам факт існування ЕОМ та принципи її роботи спочатку залишалися засекреченими. Приблизно десять років знадобилося на те, щоб довести відомості про «тактико-технічні характеристики» перших ЕОМ до широкого кола вузьких фахівців - математиків, які займаються чисельними методами. Результат не змусив на себе довго чекати. З 1955 року спостерігалося вибухоподібне зростання такої галузі наукових знань, як прикладна математика. Сотні та тисячі практично важливих завдань стали предметом дослідження математиків із застосуванням електронно-обчислювальної техніки, що спричинило розробку абсолютно нових чисельних методів вирішення цих задач. З тієї причини, що вартість комп'ютерів була абсолютно не порівнянна з тим економічним ефектом, які вони могли принести для цивільного промислового підприємства, єдиними користувачами цієї техніки були військові і дуже вузьке коло вчених. Тобто ті люди, які не знали слів - дорого, витрати або словосполучення - економічний ефект. Але час минав. Технології виробництва та проектування обчислювальної техніки розвивалися стрімкими темпами. В результаті, продуктивність комп'ютерів зростала не досвідченими кроками, а їхня вартість швидко знижувалася. Ціни на комп'ютери від астрономічних неухильно наближалися до земних (хоч і захмарних). До 1965 року дуже помітно виросло коло вчених, яким для досліджень була доступна обчислювальна техніка. На той час (початок шістдесятих років), як було зазначено вище, і відносяться перші публікації на тему складання на великих ЕОМ шкільного розкладу. Цілком природно, що спочатку мали постановочний характер, і потім теоретичний. Близько п'ятнадцяти років знадобилося на те, щоб придумати все, що можна було легко придумати щодо завдання складання шкільного розкладу. Цей період (з 1965 по 1980 рік) викликає різкі змішані почуття. З одного боку, були запропоновані красиві та оригінальні математичні моделі завдання складання шкільного розкладу (вершинне розмальовка графів, реберне розмальовка графів), а з іншого боку, поза сумнівом, ці моделі слід віднести до дуже спрощеного варіанту завдання. Іншими словами, повністю завдання не було вирішено і навіть не сформульовано в деталях. Понад те, 1976 року з'явилася робота ізрайльських математиків де, на думку, було доведено важлива труднощі розв'язання завдання складання шкільного розкладу. Отже, до 1980 року незважаючи на те, що продуктивність ЕОМ постійно підвищувалася, а їх вартість постійно знижувалася, внаслідок чого вже й цивільні промислові підприємства перейшли до категорії активних користувачів обчислювальної техніки, наше завдання, як і раніше, залишалося до кінця не вирішеним, а обчислювальна техніка. для головного користувача - шкіл, що залишалася не доступною. Ось, мабуть, до цього періоду можна було б віднести програми першого покоління для складання розкладу занять. В силу вищевказаних двох причин (важко вирішуваність завдання і не доступність обчислювальної техніки для кінцевого споживача) інтерес до автоматичного складання розкладу занять помітно ослаб (а може бути навіть повністю згас). Вищі навчальні заклади, що використовують дане програмне забезпечення, взяли крен від власне складання розкладів занять до обліку та контролю за успішністю студентів. Ще раз наголосимо, що адміністрації шкіл у переважній більшості навіть і не здогадувалися про існування таких програм. Проте, на той час (природно там) серед деяких «яйцеголових» студентів виникає мода на конструктори з радіодеталей. З'явилася епоха персональних комп'ютерів. Мода виявилася дуже прилипливою і коло «яйцеголових» неухильно розширювалося. Цілком імовірно, що конструктори з радіодеталей так і залишилися б долею купки «не нормальних» якби найбільший на той час виробник машинок, що пишуть, а за одне і найпоширеніших на той час ЕОМ, американська корпорація IBM, приблизно в 1985 році, прозорливо не не збагнула б, що ці конструктори, якщо їм надати форму друкарської машинки, могли б ці друкарські машинки замінити. Причому не просто замінити, а зробити з друкарської машинки понад інтелектуальну друкарську машинку склавши конкуренцію «свинцевим технологіям» у видавничій справі. Зрозуміло в той час ніхто, хіба що крім найпрозорливіших, і припустити не міг, що конструктори з радіодеталей коли-небудь зможуть скласти конкуренцію справжнім обчислювальним пристроям. Тим не менш, жереб був кинутий, почалося масове виробництво вбивць машинок, що пишуть. Недовго себе змусили чекати і ідеї виробництва спочатку «два в одному» (пишуча машинка плюс помічник бізнесмена - електронна таблиця), потім «три в одному» (ще плюс бухгалтерська програма), потім «чотири в одному», і так далі, і так далі, і так далі. Вчорашні студенти з моновенії чарівної палички стали перетворюватися на мільярдерів, а колишні конструктори з радіодеталей дедалі більше стали схожими на справжні електронно-обчислювальні машини. До технічної та ділової мови увійшла поважна абревіатура «Пі-Сі» (PC), що означало персональний комп'ютер і вже на початку 90-х років XX століття ні в кого не викликало сумнівів, що у них на столі була не іграшкова, а справжня. електронно-обчислювальна машина. Протилежні тенденції - вибухоподібне зростання продуктивності колишніх іграшок, з одного боку, і стрімке падіння їхньої ціни, з іншого боку, зробили свою справу. У деяких розвинених школах на столі у керівників з'явилися, за сьогоднішніми мірками, здорові монітори, які як живий докір кричали: - «Наповни мене потрібним програмним забезпеченням». Не дивно, що згадалася вже здавалося б зовсім забута ідея складання розкладу навчальних занять. Тисячі любителів легкої наживи кинулися писати програми для шкіл, гарантуючи повну автоматизацію всього, що тільки потрапить під руку. До цього періоду, мабуть, можна віднести програми другого покоління, що автоматизують процес складання шкільних розкладів. У 90-х роках минулого століття промисловість персональних комп'ютерів переживала неймовірне зростання. Продуктивність персоналок збільшувалася вдвічі чи не щороку і щороку приносила інноваційні програмні продукти. У працюючих у цій сфері «на черевиках рвалися підмітки». А програми зі складання шкільних розкладів щось ні-як не хотіли правильно працювати... Зараз звичайно важко сказати, знали чи ні виробники програм для складання шкільного розкладу про ту спадщину, яку їм залишили їх попередники в 1965 - 1980-х роках минулого століття і про попередження ізрайльських математиків 1976 року про те, що це завдання важко розв'язати, але факт залишається фактом - адміністрація навчальних закладів потихеньку списувала старі добрі машинки замінюючи їх персональними комп'ютерами. Розклад, як і раніше, за невеликими винятками, складався в ручну. До початку XXI століття разом з остаточним домінуванням операційних систем з графічним інтерфейсом користувача, приходить і кінець програмам другого покоління зі складання шкільного розкладу, які використовували псевдографічний інтерфейс операційної системи MS-DOS. Промисловість персональних комп'ютерів благополучно припинила свій бурхливий розвиток і перейшла до горезвісної «стабільності». Персональна обчислювальна техніка здолала рубіж продуктивності великих ЕОМ середини 80-х років минулого століття, все було готове для розробки програм третього покоління. Наприкінці минулого століття не кошторисна кількість виробників, вкотре але вже, як їм здавалося, на новому технічному та технологічному рівні взялися за розробку програм складання шкільного розкладу. З огляду на припинення помітного (хоч і плавного) зростання продуктивності персональних комп'ютерів, стабілізації ідей у ​​сфері програмного забезпечення розвивалися програми, які можна було б зарахувати до програм третього покоління. Основною особливістю цих програм, як нам здається, є те, що вони могли розроблятися з огляду як на помилки, так і на оригінальні знахідки попередників. Тут насамперед маються на увазі розробники дев'яностих. З математичними результатами шістдесятих, сімдесятих і вісімдесятих справа простіше. Якщо ти про них знаєш, то використовуєш, якщо не знаєш, то вигадуєш велосипед за нове. Іншою особливістю є те, що ці програми розроблялися з використанням нового на той час – графічного інтерфейсу користувача. Немає сумнівів у тому, що графічний інтерфейс надає розробнику принципово більші здібності в порівнянні з псевдографічним (текстовим). Але в цьому водночас криється і небезпека. Якщо ми почнемо порівнювати наявні на ринку (у використанні) програми складання шкільного розкладу, то виявимо дуже приголомшливу різноманітність способів формування (введення) вихідних даних, необхідних для розрахунку, хоча з математичної точки зору всі програми роблять (або принаймні повинні робити) абсолютно одне й теж. Таким чином, на якість програм складання шкільного розкладу стало істотно впливати логічність і зручність інтерфейсу користувача. Сьогодні (2013 рік) варто відзначити, що в порівнянні з програмами дев'яностих, програми третього покоління (нульових) дуже «розумнішали». Оптимізму у розробників помітно зменшилося. Обіцяти повну автоматизацію всього, що потрапило під руку, вже ніхто (або майже ніхто) не береться. Багато з проектів започаткованих наприкінці дев'яностих до теперішнього часу припинили своє існування через їхню не затребуваність. Інші ж продовжують розвиватися та вдосконалюватися. Треті протягом останніх десяти років завмерли у своєму розвитку. Але як раніше було зазначено, про остаточне та безповоротне вирішення завдання складання шкільного розкладу сьогодні говорити ще зарано.

3 Чи потрібні такі програми?

Зазвичай, говорячи про користь (необхідність) використання програми з автоматизованої побудови розкладу, вказують такий фактор, як на порядок скорочення трудовитрат (часу) завуча при складанні навчального розкладу. Часто вказують на те, що розклад за допомогою комп'ютера може бути отриманий кращої якості. Хоча цей аргумент, враховуючи сказане трохи нижче, є небезперечним. На нашу думку слід погодитися з тим, що розрахунок розкладу за допомогою комп'ютера дозволить, крім економії часу та отримання кращої якості розкладу, з одного боку, виключити суб'єктивні оцінки та особисті симпатії завуча по відношенню до вчителя (частини вчителів), при складанні розкладу, в тому числі і при розподілі педагогічного навантаження, а з іншого боку, дозволить повністю виключити незаслужені звинувачення на адресу завуча з боку вчителів у таких суб'єктивних оцінках та симпатіях, оскільки очевидно, що комп'ютер «обличчя не зацікавлений» (у всьому «винний» комп'ютер) . Тим самим, розрахунок розподілу педагогічного навантаження та розкладу на комп'ютері, може покращити психологічний клімат в учительському колективі (дотримати принципи справедливості та рівноправності), так само як покращує настрій гравців футбольної команди суддя матчу після того, як розігрує право першого удару по м'ячу за допомогою жеребу. . У 2001 році компанією «Хронобус» було проведено анкетування майже 1000 московських шкіл щодо необхідності створення та впровадження АРМ(а) «Розклад». Результати анкетування показали, що всі школи мають щире бажання користуватися такою програмою, але ніхто цього не робить. Причому причиною дружнього ігнорування подібних засобів автоматизації є не відсутність необхідної техніки чи грошей, а якість пропонованих над ринком програм. Фраза: - «Якби мені запропонували збільшити зарплату у півтора рази, за те, що я користуюся такою програмою складання шкільного розкладу, то я б від цієї пропозиції відмовилася» була не рідкістю. Тобто на думку завучів програми зі складання шкільного розкладу є програмним забезпеченням з негативною вартістю. Сьогодні через дванадцять років з моменту вище зазначеного анкетування у потенційних користувачів програм зі складання навчальних розкладів - завучів шкіл, до таких програм, ще більшою мірою і не без ґрунтовно сформувалося стійке негативне, а часто й агресивне ставлення. Реклама, що вводить в оману про нав'язуваний «інформаційний простір школи» формує уявлення про авторів цього простору, як про шахраїв збувають тухлий товар. На думку завучів шкіл з великим стажем роботи, практика показує, що дані програми можуть бути використані тільки як інструмент для початкової розміщення предметів з подальшим її ручним доведенням, а також збереження інформації та виведення її на друк. Після автоматизованого розподілу предметів (програма, як правило, розставляє від 40 до 70 %) враховувати гігієнічні вимоги до розкладу уроків практично не можливо, тому що доводиться не тільки доставляти не розставлені предмети, що залишилися, а й істотно змінювати (до 60 %) автоматизовану розстановку предметів за принципом «аби розставити». Навчені досвідом майстра своєї справи, рекомендують початківцям при складанні розкладу навчальних занять користуватися десятком - інших порад, перевірених багаторічним досвідом та практикою, використовуючи при цьому, замість комп'ютера, макети таблиці розкладу уроків з листів картону, кольорового паперу, широкого прозорого скотчу, клею, і т.п. І вони безумовно мають рацію. Використання комп'ютера в режимі звичайного редактора (як усім знайомого текстового редактора) або використання програм, що заводять процес розстановки занять у тупикові ситуації, коли жодного заняття неможливо влаштувати в сітку розкладу теоретично, нічого крім невиправданих труднощів, незручностей та озлобленості принести не може. Очікування користувачів таких програм (завучів) сумнівів не викликає. На думку програми складання шкільного розкладу після введення всіх вихідних даних, мають у повністю автоматичному режимі, складати розклад за своєю якістю перевищує розклад складений ручну. Неадекватність очікувань користувачів і отриманого результату від таких програм породжує агресивне ставлення користувачів до цих програм і разом з ними до автоматизаторів, які «розсувають інформаційний простір школи». Слід зазначити, що розробники програм із складання шкільного розкладу під час «природного відбору» поділилися втричі групи. Перша група публічно відстоює думку, що завдання автоматичного розрахунку шкільного розкладу неможливо вирішити у принципі. І тому вони «не будь безглуздими» навіть і не намагаються цього зробити. А ті, хто намагається, на їхню думку повні невігласа. «У нас не програма розрахунку шкільного розкладу, а редактор шкільного розкладу. Ми не будуємо розклад замість людини, а допомагаємо людині побудувати самостійно (в ручному режимі) розклад» – з гордістю заявляють вони. Друга група розробників декларує як мету - повну автоматизацію побудови шкільного розкладу, але у своїх рекламних матеріалах та посібниках користувача дипломатично замовчує досягнення поставленої мети. «Наша програма може будувати розклад в автоматичному режимі, в ручному режимі та в змішаному (напівавтоматичному) режимі» - не обманюючи користувачів констатують вони. Увага потенційних користувачів на тому, що кінь може пити воду з річки, але не може випити її, а програма може будувати розклад в автоматичному режимі, але не може його побудувати, ці розробники не акцентують. На нашу думку, це дуже зважена і гідна позиція, яка, незважаючи на маленьку хитрість, може викликати лише повагу. Або принаймні не викликає агресивного ставлення до розробників з боку користувачів. І, нарешті, третя група розробників. «Введіть вихідні дані, натисніть кнопку розрахунок, і за кілька хвилин ви гарантовано отримаєте розклад із розстановкою всіх без винятку занять. Обмежень на розмірність завдання жодних. Класів хоч – 99. Викладачів хоч – 216. Сумісників хоч половина. Поділимо клас на групи хоч до 256 груп. Обмеження для викладачів та предметів будь-які. Кожен викладач вибирає для себе зручні для нього робочі дні та години. Жодних вікон у викладачів. Заняття з предметів проводяться лише у дозволений для цих предметів годинник. Неухильне дотримання паралелей. Кожному предмету надаються бали складності. Точна відповідність до санітарних норм розподілу сумарної складності предметів у часі гарантовано.» - Без сорому заявляють вони. До речі, на такий невигадливий хід йдуть розробники найбільш безпорадних програм у плані автоматичного складання розкладу і до того ж неохайних на вигляд (хоча є одна, на вигляд вельми приваблива). Такі програми в Microsoft влучно охрестили – food dog – «собача їжа». Важко сказати, що саме рухає людьми, що йдуть на прямий та нехитрий обман споживачів. Цей обман завжди стає очевидним при першому введенні навчального плану школи в програму. За Російським законодавством, відповідно до ст. 179 Цивільного кодексу РФ, угоди вчинені під впливом обману можуть бути визнані судом недійсними, при цьому ошуканець повертає ошуканому всі отримані гроші, відшкодовує ошуканому реальні збитки і на додаток ще повинен перевести в дохід держави таку ж суму, що їм була отримана від продажу програми.

4 Трохи про складність розв'язуваної задачі

Варто сказати два слова про складність розв'язання задачі складання шкільного розкладу. Кваліфікованим користувачам персонального комп'ютера, які повірили в його всемогутність, здається, що завдання складання шкільного розкладу не є складнішим за завдання створення, наприклад, якісного редактора відеофільмів або звукового редактора. Однак, як згадувалося раніше, кількість дослідників, що так чи інакше вивчали це завдання, важко піддається підрахунку. Серед них десятки докторів технічних і фізико-математичних наук, сотні кандидатів наук, не тільки технічних, а й фізико-математичних, не кажучи вже про тисячі рядових аматорів математичних головоломок, які безумовно включають численну армію студентів технічного та фізико-математичного профілю навчання. Серед дослідників завдання складання шкільного розкладу можна згадати і двох академіків - В.С. Крім учених не оминали своєю увагою завдання складання шкільного розкладу видатні бізнесмени. І тим не менше, незважаючи на, без перебільшення, титанічні зусилля дослідників, говорити про повне і всеосяжне (або хоча б задовільне) вирішення завдання складання навчального розкладу - не доводиться. Як підтвердження сказаного наведемо цитату відомого вітчизняного математика. ... Так як завдання складання розкладів добре всім відоме за шкільним побутом, то на кожному курсі знаходиться один або кілька студентів, що обурюються ідеєю алгоритмізації складання розкладу занять. Тому я мушу попередити, що це дуже складне завдання. ... Існує особлива наука - теорія розкладів, що вивчає та систематизує завдання такого роду, а також різні наближені методи їх вирішення (на точні методи надії майже немає). Особливе місце у тому числі займають евристичні методи, у яких робляться спроби описати логіку і техніку дій диспетчера. ...Цікавим є одне спостереження. Але спершу наведемо ще одну цитату. Гіпотезу чотирьох фарб можна з повною підставою назвати "хворобою чотирьох фарб", оскільки вона багато в чому схожа на захворювання. Вона дуже заразна. Іноді вона протікає порівняно легко, але в деяких випадках набуває затяжного або навіть загрозливого характеру. Жодних щеплень проти неї не існує; щоправда, люди з досить здоровим організмом після короткого спалаху набувають довічного імунітету. На цю хворобу людина може хворіти кілька разів, і вона часом супроводжується гострим болем, але жодного летального результату зареєстровано не було. Відомий принаймні один випадок передачі хвороби від батька до сина, отже, можливо, вона спадкова. Тут видатний американський математик іронізує над старовинним завданням про розмальовку політичної карти в чотири кольори, де країни, які мають спільний кордон, мають бути пофарбовані в різні кольори. Звісно ж, що це сказане ним, можна зарахувати і щодо завдання складання шкільного розкладу. Так, автору цих рядків надумалося, в міру своєї можливості, відстежити подальшу кар'єру людей, які захистили дисертацію з відповідної теми. Здавалося б, новому вченому «сам Бог» наказав звернути свої наукові досягнення в гроші. Тобто якимось чином вивести своє дітище на ринок, оскільки практично завжди після захисту дисертації залишається програма або частина автоматизованої системи зі складання розкладу занять. Так ось – ні. Усі відомі автору випадки захисту дисертації на цю тему закінчуються одним - після захисту, дисертант кидає це завдання і, як правило, починає (або продовжує) кар'єру викладача у ВНЗ. Інакше кажучи, набуває завдання складення навчального розкладу довічний, стійкий імунітет. Закінчуючи загальні міркування про складність розв'язання завдання складання шкільного розкладу, пошлемося ще на дві думки. Але насамперед звернемо увагу на те, хто цю думку висловлює. Ні для кого не секрет, що деякі шкільні викладачі інформатики у нападах дидактичних експериментів доручають школярам як «домашнє завдання» розробити програму складання розкладу занять для улюбленої школи. Школярі, звичайно, засукавши рукави з ентузіазмом беруться за вирішення цього завдання. Як вихлоп від цієї ідеї в мережі інтернет можна зустріти численні міркування і теоретизування з цього приводу вище вказаного контингенту. Чого тільки не вигадують і яких тільки думок не висловлюють піонери... Не менший ажіотаж ця тема викликає й у людей із технічною освітою у спробах автоматизувати діяльність диспетчерів улюбленого вишу. Але ці думки, м'яко кажучи, великого інтересу не становлять. Професійні математики, фахівці з теорії розкладів, висловлюються про проблему складання навчального розкладу надзвичайно рідко. Тому (або тим біліше) їхня думка з цього приводу є дуже цікавою. Отже. Сотсков Юрій Назарович, доктор фіз.-мат. наук, професор, головний науковий співробітник Об'єднаного інституту проблем інформатики НАН Білорусі, Мінськ, один із найвизначніших фахівців у галузі теорії розкладів, автор низки монографій з теорії розкладів. У своїй статті зокрема пише: ... З математичної точки зору завдання побудови оптимального розкладу навчальних занять є досить складним, оскільки воно належить класу так званого NP-важкого завдання. ... У цій статті показано, як забарвлення вершин графа може застосовуватися для побудови розкладу навчальних занять. ... ... Завдання розмальовки вершин графа є NP-важкою, і, отже, її узагальнення, описане в розд. 2, також є NP-важким завданням. ...Далі. Лазарєв Олександр Олексійович, доктор фіз.-мат. наук, професор, головний науковий співробітник Інституту проблем керування ім. В.А.Трапезникова РАН, Москва, один із найвизначніших фахівців у галузі теорії розкладів, автор низки монографій з теорії розкладів. У своїй статті зокрема пише: ... Завдання складання навчального розкладу є добре відомим завданням комбінаторної оптимізації «Складання часових таблиць» (timetabling). Навіть знаходження допустимого розкладу є NP-важкою у сильному значенні проблемою. Тому за її вирішенні необхідно використовувати математичні методи розв'язання задач комбінаторної оптимізації. ...Коротше: - «Зливай воду, суши весла, туши світло...»

5 Ринок ПЗ складання навчальних розкладів

Ринок ПЗ складання навчальних розкладів, який складався разом з ринком будь-якого ПЗ для персональних комп'ютерів, видається просто унікальним, або принаймні дивним, або на крайній край вельми дивним. То в чому ж його унікальність чи дивина? Вам коли-небудь доводилося бачити таку рекламу: - Купіть наш пилосос, який не може всмоктувати пил. Або таку: - «Всі каструлі, які ми вам може запропонувати, - діряві». Або таку: - "Наш телевізор унікальний - він ніколи, нічого не показує". А ось рекламу: - «Купіть нашу програму для складання шкільного розкладу, яка не може його скласти, але може складати», нам доводилося бачити скільки завгодно. Ну купіть, купіть, купіть. Наша програма може складати розклад. Вона вам розставить майже всі заняття, ну а вже інші, як самі. Вибиратися з глухого кута, це ж так цікаво. Ну хоч за 15 доларів. Це ж не великі гроші, адже ми стільки працювали...». То скільки коштує пилосос, який не всмоктує пил, дірка каструля чи телевізор, який ніколи, нічого не показує? Перш ніж відповісти на це нелегке питання, спробуємо оцінити кількість потенційних покупців і порівняти його з кількістю шкіл (завучів), які вже здійснили свою покупку. Демографами встановлено, що близько 16% населення розвинених країн є школярами. Саме ця цифра використовується при будівництві нових шкіл у нових районах забудови. Далі будемо робити арифметичні обчислення на прикладі Російської Федерації (батьківщина все-таки). Отже, населення становить приблизно 140 млн осіб. Таким чином, школярів приблизно 22 млн. шкіл близько 50 тис. Значить середня кількість учнів у школі 440 осіб. Але це середня кількість. Відомо, що за останні 60 – 70 років типовими проектами шкіл, вважалися школи на 1000 – 1400 учнів. Звідси висновок - є величезна кількість шкіл з кількістю учнів набагато меншою, ніж наша середня цифра - 440 осіб. Очевидно, що це школи у сільській місцевості чи в дуже невеликих містах. Звідси сильніший висновок - величезній кількості шкіл, програми для складання розкладу навчальних занять не потрібні в принципі. Оцінити кількість шкіл, яким такі програми не потрібні в принципі, звичайно дуже важко. Тим не менш, уважно подивившись на стелю побачимо там цифру – 70%. З чого випливає, що 30% шкіл мають кількість учнів від 500 і більше, а таким школам програма, яка не може складати шкільний розклад, а може його скласти, не завадила б. Отримуємо остаточну цифру – 15 тис. шкіл. Ось це, мабуть, потенційна ємність ринку для Російської Федерації. А що ми маємо на сьогодні в реальності? Питання не просте. Достовірна статистика відсутня. Насамперед на думку спадає одна програма, яка для всіх шкіл РФ була їм «впендюрина безкоштовно». Початок розробки цієї програми відноситься до 1998 року, а закінчення (остання версія) до 2003 року. На вигляд, тим більше для свого часу, програма звичайно ж не погана. Порівняно з іншими аналогічними програмами, має дуже логічний та продуманий інтерфейс користувача. На нашу суб'єктивну думку, найкращий інтерфейс користувача. Однак, хоча там і є кнопка Скласти розклад, програма абсолютно безпорадна у плані автоматичного (без участі людини) складання розкладу. Вона не здатна вирішити навіть тих простих завдань, з якими інші програми легко справляються. Зважаючи на відгуки в інтернеті, цією програмою майже ніхто не користується. Отже, вважатимемо її «радіаційним тлом», що не впливає на загальну ринкову ситуацію. Поїхали далі. Поставимо таке питання. Чи є на ринку програми, які можуть надати завучу хоч якусь допомогу при складанні розкладу? Наприклад, багато завучів у ручну складають розклад у два етапи. На першому етапі за їх висловом: - «Розбираються з іноземцями». Іншими словами, складають розклад для викладачів та класів щодо іноземної мови. Другим етапом іде все інше. Принаймні дві програми, представлені на ринку, з цим першим етапом справляються на заздрість чудово. Тут можна спланувати час проведення елективних курсів. У цьому розставляється від 10 до 40 відсотків занять. Так що деяка користь від застосування комп'ютера, оснащеного цими програмами, звичайно ж є. Причому одна з цих програм дуже агресивно та наполегливо намагається добудувати розклад. У деяких випадках, нехай і рідкісних, це вдається. Інша ж, при добудові розкладу абсолютно безпорадна. То скільки ж народу сьогодні користується ПЗ для складання розкладу навчальних занять в Російській Федерації? Деякі виробники такого ПЗ на своїх сайтах публікують інформацію про своїх клієнтів. Щоправда, до цієї інформації варто ставитись дуже обережно. Як було зазначено вище, деякі виробники в «припадках маркетингу» йдуть на досить нехитрий обман потенційних клієнтів. І тим не менше, відокремивши зерна від полови отримаємо цифру - близько 1500 шкіл. Що становить близько 10% місткості потенційного ринку. Відтак 90% потенційних клієнтів ще не підсаповані. Тепер звернемо свій погляд на світовий ринок. Як випливає з попередніх обчислень, дуже зручним способом розрахунку кількості потенційних клієнтів є такий спосіб. Беремо населення країни, відкидаємо чотири нулі, отримуємо кількість потенційних клієнтів. Так і вчинимо. Європа – 500 млн. осіб. США – 300 млн. осіб. Канада – 30 млн. чоловік. Японія – 125 млн. чоловік. Австралія – 20 млн. чоловік. Інші розвинені країни – 25 млн. чоловік. Ось він – «Золотий мільярд». Відкидаємо чотири нулі. Отримуємо – 100 тис. потенційних клієнтів. Тепер питання: - «Скільки ж шкіл із цього золотого мільярда використовують ПЗ для складання шкільного розкладу?» Застосовуємо тугіше методику, відокремлюючи зерна від полови, що і для Російської Федерації. Отримуємо цифру – близько 30 тис. шкіл. Що становить 30% ринку. При цьому 70% відкриті для агресивного маркетингу (підгортання). Тепер залишається перевести кількість якість. Тобто помножити кількість потенційних клієнтів на ціну однієї ліцензії ПЗ. Інакше кажучи, оцінити ємність світового ринку на американських рублях. Але для цього потрібно знати ціну такої ліцензії. Цікаво, чи доводилося читачеві тримати в руках товсту книжку з приблизно такою назвою: - «Вартість програмного забезпечення». А нам доводилось. Насправді формула дуже проста. Програмне забезпечення, якої б складності та обсягу воно не було, коштує рівно стільки, скільки за нього платить клієнт (користувач). Найяскравішим прикладом є операційна система Windows від Microsoft. Напевно мало хто замислювався про те, що за кількістю праці, таланту, знань тощо, висаджування людини на Місяць, порівняно з цією операційною системою, є дитячими витівками. І все ж сто п'ятдесят баксів на бочку, і ти легальний користувач. Проблема лише в тому, що кількість потенційних клієнтів - користувачів операційної системи та програми для складання шкільного розкладу не можна порівняти, ні в першому, ні в другому наближенні. Звідси висновок: - «Незважаючи на те, що дехто просить по 15 доларів за діряві каструлі, програма яка справді могла б вирішити більшість проблем завучів, має коштувати дорого». Залишається тільки відповісти на запитання: - Що таке дорого? Звісно ж, у кожного уявлення про «Дорого» свої. Але, напевно, для завуча (або аналогічної посади, якщо ми говоримо про світовий ринок), дорого це його місячна зарплата. Тобто, від 1000 до 5000 доларів США. Що власне, ми й спостерігаємо, чи принаймні раніше спостерігали, насправді. Спочатку, на світовому ринку ці програми саме стільки й коштували. Падіння цін, як ми вважаємо, сталося саме через те, що раптом виявилося - за 5000 доларів було куплено діряву каструлю. І нарешті, перемноживши кількість на ціну, отримаємо зразкову ємність світового ринку ПЗ для складання шкільного розкладу – від 100 до 500 млн. доларів США. Тобто ринок не менш грошово-ємний, ніж, скажімо, ринок різних систем автоматизованого проектування в промисловості та будівництві. І до речі кажучи, не менш наукомісткий.

6 «Давньоєгипетський» алгоритм розв'язання задачі

Навесні 2012 року один учений-археолог звернувся до знайомих програмістів із дивним проханням. За його словами при розшифровці давньоєгипетських рукописів він натрапив на опис алгоритму складання шкільного розкладу. Авторство алгоритму приписувалося єгипетській жриці на ім'я Ануш. Власне його прохання полягала в тому, щоб перевірити на сучасному комп'ютері чи справді цей алгоритм здатний побудувати шкільний розклад. Спочатку друзі його підняли на сміх. Але уважно ознайомившись із дивними записами все ж таки вирішили їх перевірити. Отже, розпочинаємо опис ідеї цього алгоритму, по суті до короткого викладу перекладу стародавнього рукопису. Попередньо скажемо, що сама термінологія цього алгоритму і організація давньоєгипетської школи представляє окремий історичний інтерес, але оскільки дана стаття призначена не для істориків, викладати алгоритм будемо в сучасній і звичній для людини термінології, що живе зараз. Основна відмінність давньоєгипетського алгоритму (далі слово давньоєгипетський опускатимемо) від сучасних підходів полягає в тому, що завдання розбивається на частини, або точніше, на ряд послідовно розв'язуваних задач, при цьому кожна розв'язана задача на попередньому кроці є обмеженням для завдання, що підлягає вирішенню на наступному кроці. . У сучасній термінології - застосовано метод декомпозиції розв'язуваного завдання. Слід зазначити, що кожна окремо із завдань, які послідовно вирішуються в ході алгоритму, не є NP-важкою (не вирішуваною). Це і дозволяє за допомогою послідовного розв'язання серії задач, що легко розв'язуються, вирішити все завдання складання шкільного розкладу цілком. На першому кроціслід вибрати режим роботи навчального закладу, а саме, визначитися з тим, скільки днів на тиждень працюватиме школа (5 або 6) і визначитися з кількістю уроків, що проводяться за навчальний день (7 або 6 відповідно). Так само потрібно задати кількість класів учнів у школі. Далі потрібно поставити заборони на ті години, за якими уроки не проводяться. Це останній годинник у кожному навчальному дні. Для молодших класів (у нашій термінології це починаючи з 5-го) таких заборон більше, для середніх класів менше, а для найстарших (11 класи) ці заборони зовсім відсутні. Що відповідає нашим санітарним нормам. Таблиця заборон на проведення уроків, яка далі використовуватиметься протягом усього алгоритму, запам'ятовується. На другому кроцібудується розклад для сумісників. Виявилося, що й давньоєгипетські навчальні заклади не гребували роботою сумісників. Основна особливість цього завдання полягає в тому, що сумісникам дозволено в ультимативній формі заявляти дні, за якими вони працюватимуть. Крім того, деяким сумісникам дозволено відмовитися від роботи на перший урок усіх робочих днів, коли вони працюють. Мабуть, цими сумісниками були жінки і вони не могли рано приходити до школи. Завдання вирішується за допомогою алгоритму розмальовки вершин звичайного графа. З цією математичною моделлю можна докладно познайомитися за допомогою згадуваної статті або за допомогою інших численних журнальних статей, наприклад, [ , ], а також познайомившись з книгами [ , ]. Далі кожному заняття (клас, викладач, час) з допомогою алгоритму розв'язання завдання про призначення підбирається приміщення щодо цього заняття. Алгоритм розв'язання задачі про призначення описаний у безлічі сучасних підручників, зокрема з ним можна познайомитись за книгою. Закінченням другого кроку є операція з об'єднання таблиці заборон на проведення уроків, побудованої відповідно до санітарних обмежень та отриманого розкладу для сумісників. Таким чином, ми отримуємо нову таблицю заборон на проведення уроків, яка буде одним із обмежень для наступного кроку алгоритму. Третій крокскладається з розв'язання завдання проведення занять з вибору учнів (у нашій термінології елективних курсів). Особливістю цього завдання є те, що кілька класів, в деякий навчальний час, об'єднуються в потоки, щоб потім у цей час розійтися за своїми елективними курсами. Побудова розкладу полягатиме в тому, що кожному потоку буде призначено час, у який будуть проводитися елективні курси, але викладачі призначатимуться вже після того, як весь розклад буде остаточно побудований. Тобто, на цьому етапі викладачі для проведення елективних курсів не призначаються. При побудові розкладу дотримується правило - для будь-якого потоку в один навчальний день може бути призначено не більше одного навчального часу для проведення курсу. Крім того, дотримується інше правило - будь-якої миті часу не можуть бути заплановані елективні курси більш ніж для одного потоку. Це правило (обмеження) є цілком розумним, оскільки під час проведення елективних курсів різко зростає потреба у приміщеннях щодо занять. Воно введено саме з тією метою, що б не виникло ситуації коли кільком потокам одночасно потрібна велика кількість вільних приміщень. Приміщення для проведення елективних курсів, на цьому кроці, так само як і викладачі не підбираються, вони підбиратимуться разом із викладачами після побудови всього розкладу. Алгоритмом розв'язання завдання проведення елективних курсів, є алгоритм запропонованої розмальовки верші звичайного графа, який ми вказували в описах попереднього кроку. Нова таблиця заборон на проведення уроків будуватиметься так само, як і на попередньому кроці. Отриманий розклад поєднується з таблицею заборони. На четвертому кроціалгоритм будувати розклад для уроків з вивчення іноземної мови. Особливістю цього завдання є те, що клас може бути поділений на групи. Викладачі не можуть в ультимативному порядку заявляти про те, в які дні вони працюватимуть. Однак для викладачів з невеликим навантаженням гарантовано один або два вихідні, які їм будуть надані. Так само як і на другому кроці алгоритму деякі викладачі, які навчають іноземної мови, можуть вимагати звільнити їх від уроків у першу годину робочого дня, коли вони працюють. Завдання про розклад викладачів/класів з вивчення іноземної мови, так само як і на другому і третьому кроці вирішується за допомогою алгоритму розмальовки вершин звичайного графа. Так само, як і на другому кроці за допомогою алгоритму про призначення кожному занять, а точніше, кожній групі учнів та їх викладачеві підбирається приміщення для його проведення. Закінченням четвертого кроку, як і другого і третього, є операція по об'єднанню таблиці заборони щодо уроків з отриманим розкладом. Таким чином ми отримуємо новий варіант цієї таблиці, який будемо використовувати на шостому кроці. Після закінчення 4-го кроку алгоритму, залежно від навчального плану школи, зазвичай розставляється від 15% до 40% всього навчального навантаження, передбаченого цим планом. На п'ятому кроціпідраховується навантаження, визначене навчальним планом, на приміщення, які для школи є дефіцитними. Такими приміщеннями, як правило, є спортзали, майстерні для проведення уроків праці (технології), кабінети оснащені комп'ютерами для проведення уроків інформатики. Цей підрахунок здійснюється з метою максимально можливого завантаження (мінімального «простою») таких приміщень. На шостому кроцібудуватися розклад для всіх предметів, що залишилися, крім тих, що проводяться в дефіцитних приміщеннях. У викладачів немає можливості заявити ультиматум про те, в які дні вони працюватимуть, але для тих викладачів, які мають низьке навантаження, гарантовано один або два вихідні, а для частини викладачів є можливість відмовитися від роботи в перший урок. Це завдання вирішується за допомогою алгоритму розмальовки ребер дводольного мультиграфа. З ідеєю цього алгоритму можна познайомитися за книгою чи з журнальних статей[ , , , , ]. Побудований розклад складається з четвірок – клас, викладач, предмет, час. На цьому ж кроці всім четвіркам за допомогою алгоритму вирішення завдання про призначення зіставляються приміщення, де проводитимуться ці заняття (четвірки). Після закінчення цього кроку вся сітка розкладу заповнена, за винятком занять, що проводяться в дефіцитних приміщеннях. Проте «діри», що залишилися в розкладі, це і є розклад для проведення занять у дефіцитних приміщеннях. Отже, вважатимуться, що у цьому - шостому кроці, у певному сенсі, одночасно будуються два розклади - для звичайних викладачів/класів і дефіцитних приміщень/класів. На сьомому кроціздійснюється поділ класів на групи з предметів, які будуть проводитися в дефіцитних приміщеннях. Як правило, з таких предметів як фізкультура, праця (технологія), інформатика класи поділяються на групи. Якщо безліч викладачів для яких побудовано розклад на попередньому кроці, перетинається з безліччю викладачів, які проводять заняття в дефіцитних приміщеннях, тоді формується таблиця на заборонені години роботи викладачів, які є перетином цих множин. За допомогою алгоритму розв'язання задачі про призначення здійснюється підбір викладачів кожної групи. Останній крок – восьмий.На цьому етапі здійснюється об'єднання всіх отриманих раніше розкладів, тобто формування фінального розкладу. Для цього кроку ніяких алгоритмів не потрібно, досить простих арифметичних операцій. Після отримання фінального розкладу, кожен викладач може вирішити для себе, коли йому буде зручно проведення елективних курсів. Час для них було зарезервовано на етапі 3 алгоритму. І якщо цей викладач зможе набрати собі групу учнів, то він самостійно поставить свій елективний курс у розклад, разом із підібраним ним самим приміщенням. Загальним правилом для всіх раніше описаних кроків, крім п'ятого, є правило - у кожного класу в один день не може бути більше одного уроку з якогось предмета. Крім того, загальним правилом для викладачів є те, що кожен викладач може проводити заняття з кількох предметів, у тому числі й одного класу.

7 Тестування алгоритму

Як видно з попереднього розділу, нічого складного для розуміння в роботі алгоритму побудови шкільного розкладу немає. Одна за одною вирішуються, пов'язані між собою, окремі задачі, що легко розв'язуються (не NP-важкі), доки всі вони не будуть вичерпані. Проте з упевненістю стверджувати, що кожне з цих завдань може бути вирішене, не було жодних підстав. За відсутності будь-яких теоретичних обґрунтувань алгоритму перевірити його працездатність можна було лише експериментально, тим більше, що саме таке завдання і було поставлено вченим-археологом, який натрапив на стародавній рукопис і зробив його переклад. Цілком природно те, що перша думка яка спала на думку програмістам - це створити звичайне додатки для операційної системи Windows. Але що таке звичайне win-додаток? Будучи активованим (запущеним виконання) воно очікує надходження подій від користувача, наприклад, введення вихідних даних. А як можна отримати ці вихідні дані, а потім занести в програму? Слава богу, а точніше США, в даний час, хоч трохи поважає себе школа відкрила свій сайт в інтернеті і перше що з'являється на цьому сайті, не рахуючи фотографій з різних святкових заходів, так це навчальний план школи. Залишається тільки його скопіювати та ввести в програму як вихідні дані для розрахунку розкладу. Запитання. Скільки потрібно цього часу? Практика використання нині пропонованих ринком програм складання шкільного розкладу показала, що для введення навчального плану разом з формуванням таблиці розподілу педагогічного навантаження потрібно від 8-ї до 10-ї години, м'яко кажучи копіткої праці. Припустимо, що цей навчальний план запроваджено, а таблицю розподілу педагогічного навантаження сформовано, і про диво... розклад побудовано. Про що це свідчить. Повністю ні про що. Жодної гарантії того, що наступне завдання буде вирішено немає. Ось якби розклад не було побудовано, то це говорило б багато про що, а саме, про те, що алгоритм не вирішує поставленого завдання. Інакше кажучи, звичайне win-додаток, у певному сенсі, мало піддається тестуванню. Як же бути? Знову ж таки - слава богу, а точніше слава Microsoft, у сучасних версіях операційної системи Windows підтримується так званий режим консольної програми. До речі, для деяких молодих людей це є повним одкровенням, їм ніколи не доводилося бачити чорних вікон з рядками тексту, що біжать всередині цих вікон. Справді, це стиль великих ЕОМ з далекого минулого і давно покинула сцену – MS-DOS. Але ці вікна мають одну перевагу. Вони можуть висіти на екрані комп'ютера, роблячи потрібні обчислення, без участі людини і день, і місяць, і... не беруся стверджувати скільки. Саме це й було потрібне для перевірки алгоритму. Далі перебіг міркувань був наступний. Написання генератора вихідних даних (грубо кажучи, навчального плану типової школи та таблиці розподілу педагогічного навантаження) звичайно ж займе деякий час, але зате, будучи один раз написаним він дозволить отримати не обмежену кількість тестових завдань для перевірки алгоритму, достатньо буде лише після вирішення чергової завдання передати керування цьому генератору для побудови нового (наступного) завдання. З'явиться можливість отримати статистично достовірні дані про якість алгоритму, що тестується. Наприклад, 80 відсотків завдань вирішено, а 20 ні, чи навпаки. Потрібно лише, кількість розв'язуваних завдань зробити досить великим. Саме так і треба було вчинити - консольний додаток, таким бачився вихід із ситуації. Як кажуть, швидко казка дається взнаки, та не швидко справа робиться. Вигадати генератор вихідних даних, що адекватно відображає всі практичні ситуації, нехай навіть і типової школи, виявилося не таким простим заняттям. Але одного разу збулися мрії божевільні..., рано чи пізно... скільки мотузочка не вийся... Генератор вихідних даних закінчено, давньоєгипетський алгоритм запрограмований, «усі помилки виправлені», пастки на помилки розставлені, перевірки результатів обчислень встановлені. На початку програмі пропонувалося для складання розкладу невелика кількість класів – від 9 до 14 (маленька школа). Рішення вискакували як із кулемета. При збільшенні кількості класів - від 15 до 21 (середня школа) рішення вистрілювалися швидко, але вже не як із кулемета... скоріше як з пістолета. Далі. Ось вона... велика школа, до чотирьох класів у паралелі, загальна кількість класів від 22 до 28. Явно включилися гальма... Процес став нагадувати ліниву качку, що перевалюється з ноги на ногу. Але одне тішило - рядок: «Кількість не вирішених завдань =» постійно показувала нуль. Стало зрозуміло. Для отримання статистично достовірних даних, що підтверджують можливість вирішення будь-якого розумного завдання у повністю автоматичному режимі, одного комп'ютера недостатньо. Невеликі арифметичні розрахунки показували - щоб оперувати числами від шести і більше знаків про кількість вирішених завдань, потрібно не менше десятка комп'ютерів. А для десятка комп'ютерів (можна прикинути кількість тепла, що виділяється від цих комп'ютерів, і постійний шум, що видається від вентиляторів) потрібна окрема кімната. Але нічого, нас не зупиниш... Десяток не десяток, а сім чотирьох-ядерних комп'ютерів невдовзі було введено в експлуатацію. В результаті після року «насильницьких дій» давньоєгипетського алгоритму по відношенню до високоповажної чотириядерної сімки, і після десятків мільйонів вирішених завдань, можна з упевненістю стверджувати: - «Будь-яке, без винятків, розумне, коректно задане завдання з розрахунку шкільного розкладу, може бути вирішена без участі людини у повністю автоматичному режимі». При цьому, сумарний час розрахунку 1000 завдань приблизно такий: для групи завдань від 9 до 14 класів = 20 хвилин, для групи завдань від 15 до 21 класу = 40 хвилин, для групи завдань від 22 до 28 класів час розрахунку становить від 6 до 8 годин, тобто. для цієї групи в середньому приблизно по пів хвилини на одне завдання. Таким чином, більш ніж річний експеримент з перевірки (тестування) алгоритму складання шкільного розкладу в повністю автоматичному режимі, без участі людини, за яку було вирішено десятки мільйонів тестових завдань, був успішно завершений. Практично всім тестових завдань (вихідних даних) було повністю побудовано розклад, задовольняє всім обмеженням.

8 Логічна модель майбутнього ПЗ

Після завершення річного тестування алгоритму складання шкільного розкладу постало питання: - І що далі?. Насамперед, впадає в око те, що консольний додаток, нікого не зможе переконати в тому, що справді вирішується завдання складання шкільного розкладу... хіба що, самого програміста, який написав цей додаток. Створити чорне віконце, що з часом з'являються там рядками типу: - «Кількість вирішених завдань = 12547564» підсилу навіть п'ятикласнику, що погано встигає. Таким чином, нормальна людина просто не повірить такій, з дозволу сказати, програмі, і правильно зробить. Обійтися без повноцінного win-програми, ніяк не вийде. Але спочатку не погано було б, визначиться з цілями створення такого додатка. Принаймні на увазі дві такі цілі. Це - створення повноцінного ПЗ з усіма наслідками, що випливають з цього, і - створення додатка демонструючого роботу алгоритму, яке гірше або краще зможе переконати людину в тому, що її не обманюють. І їжачку зрозуміло, що за трудомісткістю ці два проекти просто не можна порівняти. Цілком природно, що було прийнято рішення піти легким шляхом. Добре: - «Що потрібно від такого win-програми - демонстрації?». Насамперед навіть можна поставити інше питання: - «Яке воно має бути?». По перше. Відразу ж знімається головний біль про зручний, зрозумілий, практичний і красивий інтерфейс користувача. Для такої демонстрашки досить примітивного інтерфейсу. Важливо лише те, щоб користувачеві були видно ті вихідні дані, які пропонуються програмі для розрахунку (згенеровані природно випадковим чином) і результати цього розрахунку. Принаймні теоретично у користувача буде можливість перевірити відповідність вихідних даних та отриманого за допомогою програми результату. Чи складна така перевірка?... Відповідь однозначна: - «Та не проста...». Особливо якщо знати скільки пасток і перевірок міститься в консольному додатку для постійної верифікації одержуваних результатів, а також розмір коду цих перевірок і пасток. Чи є інші способи переконання?... Хіба що, передача всім вихідним текстам програми, що цікавляться.... Але ось, наприклад, у Microsoft це не прийнято. По-друге. Знімається проблема файлу допомоги, посібника користувача та інших бантиків та прибамбасів абсолютно необхідних для повноцінного програмного забезпечення. Так і зробили. На головну форму програми наліпили з лишком двадцять кнопок, з яких на кожному етапі розрахунку активна тільки одна, не рахуючи кнопок типу - Про програму, Почати нове завдання, Закрий мене. Натискаєш на таку кнопку, з'являється віконце з кнопкою Генерація даних. Натискаєш Генерація даних, у вікні на білому тлі з'являються побудовані дані. Закриваємо віконце. Кнопка на яку щойно натиснули, тухне (перестає бути активною), наступна на яку слід натиснути стає активною. Тиснемо. Відкривається наступне віконце. А там кнопка Побудувати розклад. Натискаємо на Збудувати розклад, з'являється побудований розклад. Охочий може перевірити - правильно побудовано розклад чи ні. І так доти, доки не будуть пройдені всі кроки алгоритму. А далі можна натиснути на велику кнопку Почати нове завдання. І так по колу. Або натиснути кнопку Закрий мене. На перший погляд може здатися: - «Вся ця демонстраційна програма - мавпа праця». Але це не так. Принаймні з трьох причин. По перше. У ході розробки демонстрації було вирішено досить важливе завдання щодо розробки майбутньої архітектури повноцінного ПЗ. А саме. Потрібно було найжорстокішим чином відокремити «мозки» від «тулуба». Якщо виражатися більш зрозуміло, відокремити код алгоритму розрахунку розкладу від коду генератора вихідних даних і коду інтерфейсу користувача. Весь код алгоритму розрахунку розкладу зосереджений в бібліотеці, що динамічно підключається, таким чином, інтерфейс користувача, як клієнт, може звертатися із завданнями до динамічної бібліотеки, яка виступає як сервер, на побудову різних розкладів, що складаються на різних кроках алгоритму. Це дозволить у майбутньому, не чіпаючи код алгоритму розрахунку розкладу, проводити експерименти з різними варіантами інтерфейсу до повного та остаточного задоволення користувачів. По-друге. Незважаючи на свою примітивність, демонстраційний інтерфейс користувача являє собою логічну модель майбутнього зручного, зрозумілого, практичного і красивого інтерфейсу користувача. Так, наприклад, у ньому реалізована можливість повернення до попереднього кроку алгоритму, а ця можливість, у свою чергу, вплинула на структуру даних програми. Крім того, демонстраційний інтерфейс підтримує таку особливість алгоритму, як просування від кроку до кроку у суворій послідовності, що забезпечує цілісність даних та їх захист від неправильних змін. По-третє. Знову ж таки, повторимося, незважаючи на свою примітивність, наявний інтерфейс придатний для аналізу математичної моделі практичних ситуацій, які виникають при складанні шкільного розкладу, прийнятої в даній програмі. Такий аналіз чи експертизу могли б здійснити фахівці добре знайомі з темою, наприклад, завучі з достатнім досвідом роботи, які викладають у школі математику. Розібратися в деталях розрахунку, звичайно ж їх кваліфікації мало (та й ні в кого не виникне такого бажання), зате в силу отриманої загальної математичної культури, розглянути явні недогляди в постановці завдання вони можуть набагато краще за будь-якого професійного математика, який знайомий з роботою школи тільки з чуток або з різноманітних публікацій. "І що ж далі?". А далі розробка повноцінного програмного забезпечення за всіма законами і правилами програмної інженерії, яке тепер вже, за складністю, не перевищує стандартне програмне забезпечення для ERP-систем. Ось тільки не питайте: - «Скільки для цього знадобиться часу і яка трудомісткість розробки такого програмного забезпечення?...». І тим більше не питайте: - «В скільки обійдеться така технологія?...».

9 Проблеми з бізнес-моделлю

Як раніше було підраховано, загальносвітовий ринок програмного забезпечення складання шкільного розкладу, в повністю автоматичному режимі, становить від 100 млн. до 500 млн. доларів США. Однак цей ринок, як висловлюються венчурні інвестори, ще потрібно «підняти». І тут, цілком виразно вимальовуються щонайменше дві проблеми. Одна проблема, це: – «Дорого». На ній ми вже зупинялися. І інша, на наш погляд серйозніша, це: - «Репутація такого ПЗ». Якщо вдатися до метафори, то репутація подібного ПЗ нагадує загажену, сильно зневажену і димлячу, як після битви на Куликовому полі, сміттєзвалище. Причому дим настільки їдкий, що хочеться заплющити очі та припинити дихання. Як згадувалося раніше, під час розмови з потенційними клієнтами ПО складання шкільного розкладу, ця розмова легко переходить на матершину. «Дістали... своєю автоматизацією, інформаційним простором школи та електронними щоденниками, дайте спокійно працювати...». Що можна зробити для зміни репутації подібного ПЗ і ставлення до нього завучів з ворожого, хоча б нейтрального? Про позитивний образ ми поки що не заїкаємось. Років десять тому, ще можна було говорити про те, що комп'ютери в кабінетах завучів стоять для меблів як неодмінний аксесуар вченості та прогресивності. Що в кращому випадку, комп'ютер використовується замість машинки (хоча, як було зазначено раніше саме ця обставина і послужило такому бурхливому розквіту індустрії персональних комп'ютерів). Нині ситуація змінилася. Вже багато хто спробував... Результати таких проб ми щойно обговорювали. Залишається все розпочати з початку. А саме. З бізнес-моделі розповсюдження подібних програм. Навіть не дуже уважно придивившись, можна побачити, що за останні 15 років ця бізнес-модель практично не змінилася. Знайдіть сайт програми, скачайте демонстраційну версію, випишіть рахунок на оплату... З рахунком на оплату все зрозуміло. Без сайту програми теж ніяк не обійтися. А ось що із демо-версіями? А з демо-версіями все по-різному. Варіант перший. Наша демо-версія нічим не відрізняється від робочого варіанту програми, тільки не можна зберігати введені дані, і не можна виводити на принтер отримані результати. А так все працює. Чи можна за допомогою такої демо-версії оцінити всі переваги та недоліки програми? Як уже було зазначено раніше, для введення всіх вихідних даних, щоб там не пискляво гунділа реклама про годину, максимум півтора, реально потрібно мінімум 8 - 10 годин безперервної і копіткої (до рис нудної) роботи. Нормальна людина, а тим більше користувач, що вперше приступає до роботи з програмою, коли їй потрібно одночасно і з програмою вчитися працювати і акуратно, без помилок вводити гору вихідних даних, за один раз цього зробити не зможе. Потрібно щонайменше два, а то й три дні (рази). Тепер уявіть страх початківця перед тим, що зараз неодмінно відключитися харчування або що-небудь перезавантажиться. Ну... не виникне у нормальної людини бажання скористатися такою демоверсією. Так що, або зважитися на покупку "кота в мішку", знаючи про "припадки маркетингу" деяких розробників, або, що найчастіше і буває, з гіркотою за безцільно витрачений час натиснути на клавішу Del. Заради справедливості слід зазначити, що ті ж розробники вигадали інший варіант. Зробили для своєї програми «ламалку». Нічого не підозрюючи, добродушний користувач, попередньо відключивши невеликим ключиком своє сумління, завантажує нелегальну копію (дема + ломалка). Встановлює, ламає, і... все працює... Як кажуть, користуйтеся на здоров'я... Щоправда, приблизно через пів року, програма вам оголосить, що переходить у демо-режим, а для збереження своїх даних, будьте ласкаві. .., зверніться до розробника за випискою рахунку ... Дивлячись з боку на такі хитрощі, цей варіант видається - зрештою, більш чесним. Хоча звичайно, користувач намагається обдурити виробника, виробник обманює користувача..., до речі, обіцяючи йому, що через кілька хвилин після введення всіх вихідних даних він отримає готовий розклад. З упевненістю можна стверджувати, що переважна більшість користувачів так ніколи і не дізнаються про те, що їхні дані наражалися на реальну загрозу. Витративши 15 - 20 годин працювати з програмою і переконавшись у її марності, з криком: - «Усі програми, як і мужики, такі...», потенційні покупці гнівно видаляють цю програму зі свого комп'ютера. А за годину – півтори, заспокоївшись, віддихавшись, кажуть собі: – «Яка ж я. .. все-таки розумна, що не заплатила грошей за це... , казала мені мама - "Не бери кота в мішку"». Варіант другий.Наша демо-версія нічим не відрізняється від робочого варіанту, обмеження лише одне, максимальна кількість класів – п'ять. А так все працює. В результаті на форумі з'являється така заява. «Бачив я вашу, з дозволу сказати програму. І ввів те, всього нічого – чотири класи. А вона мені: - "Не можу скласти розклад". Можете засунути її собі в... Спекулянти прокляті. Тут ми стикаємося з нагодою коли розробники знайшли на свою «…(голову)» пригод. Ті, хто думають, що скласти розклад для школи з чотирма класами набагато легше, ніж, наприклад, із двадцятьма, глибоко помиляються. Саме тому при тестуванні «Давньоєгипетського» алгоритму складання розкладу було прийнято рішення - при генерації тестових даних, за мінімум кількості класів, вибрати число - дев'ять. Це пояснюється часом неможливістю в автоматичному режимі скласти таблицю розподілу педагогічного навантаження. Простіше кажучи, розподілити навантаження між мізерною кількістю класів і, відповідно, мізерною кількістю вчителів. Очевидно, такі фокуси може показувати тільки дуже досвідчена рука (або око, якщо завгодно) людини. Варіант третій.Ну добре. Використовуйте нашу програму. Але два тижні. А за два тижні все, шабаш. "Воду відключимо...". Чи можна за два тижні освоїти програму та оцінити її всі переваги та недоліки? Поклавши руку на серце скажемо: - "Мабуть, що можна ...". Але за однієї умови. Потрібно перестати займатися рештою. А улюблене слово завучів: – «Зайнято». «Ой, зайнята. Так зайнята, що ні вдихнути, ні... ніколи». Чи кине завуч на два тижні все на світі і чи поринути на цей термін програму для складання розкладу? Як кажуть вчені: - "Сказати важко...". Коротше кажучи, все погано... І так погано, і так не зручно... Де шукати вихід? Можливо оренда?

10 Бізнес-модель SaaS використання ПЗ

Спочатку вся комп'ютерна галузь використовувала орендну бізнес-модель – перші комп'ютери коштували величезних грошей та їх обчислювальні потужності здавалися замовникам. З появою Інтернету стару бізнес-модель було реанімовано, але на принципово іншій технологічній базі. SaaS(англ. software as a service - програмне забезпечення як послуга) - бізнес-модель продажу та використання програмного забезпечення, при якій постачальник розробляє веб-додаток та самостійно керує ним, надаючи замовнику доступ до програмного забезпечення через Інтернет.

Головна відмінність SaaS від старої моделі полягає в тому, що раніше замовники отримували доступ до комп'ютерів безпосередньо, а не за допомогою глобальних мереж. Оскільки модель SaaS орієнтована на надання послуг через Інтернет, її розвиток безпосередньо пов'язаний з розвитком глобальної мережі. Перші компанії, що пропонували програмне забезпечення як послугу, з'явилися в західних країнах у 1997 – 1999 роках, а акронім SaaS увійшов у широке вживання у 2001 році. Звісно ж, що у нашому «важкому разі», ця бізнес-модель є найоптимальнішою, і, можливо, навіть, єдино прийнятною. Вона позбавить потенційних клієнтів ризикувати відносно великою сумою грошей при оплаті програмного продукту із групи продуктів із майже безнадійно зіпсованою репутацією. Використовуючи орендну бізнес-модель, замовник зможе спокійно і поступово переконатися в тому, що запропонований продукт йому дійсно потрібен, і що його очікування від використання продукту збігаються з тим, що він насправді отримує. Про очікування завучів від таких програм, ми раніше говорили досить докладно.

11 Замість ув'язнення

Іноді, дехто з єхидцем питає: - «А бізнес-план у вас є?...» Є. І при тому дуже простий. «Послідовно вирішувати проблеми, що виникають, у міру їх надходження...». В крайньому випадку, можна буде скористатися моделлю SaaS (бізнес-план – на вимогу). Якщо комусь знадобиться, можна буде все докладно і в деталях спланувати, жоден бухгалтер не причепиться!

Список літератури

Балтак С.В., Сотсков Ю.М. Побудова розкладу навчальних занять з урахуванням розмальовки вішин графа // Інформатика, 2006, № 3, з. 58 – 69. Бородін О.В. Розмальовки та топологічні уявлення графів // Дискретний аналіз та дослідження операцій. 1996, Том 3 № 4, с. 3 – 27. Бородін О.В. Узагальнення теореми Коцига і розмальовка ребер плоских графів // Математичні нотатки. 1990, Том 48, Випуск 6, с. 22 – 28. Візинг В.Г. Розмальовка вершин графа при мажоритарних обмеження на використовувані кольори // Дискретний аналіз та дослідження операцій. 2009, Том 16, № 4, с. 21 – 30. Візинг В.Г. Про зв'язне забарвлення графів у запропоновані кольори // Дискретний аналіз та дослідження операцій. 1999, Серія 1, Том 6 № 4, с. 36 - 43. Гафаров Є.Р., Лазарєв А.А. Математичні методи оптимізації під час складання навчального розкладу // Нові інформаційні технології освіти. Збірник наукових праць. – К.: 1С-Паблішинг, 2013, Частина 2, с. 51 - 55. Гері М., Джонсон Д. Обчислювальні машини і завдання, що важко вирішувати. - М: Мир, 1982. - 416 с. Дистель Р. Теорія графів: Пров. з англ. – Новосибірськ: Изд-во Ін-та математики, 2002. – 336 с. Ємелічов В.А., Мельников А.І., Сарванов В.І., Тишкевич Р.І. Лекції з теорії графів. - М: Наука. Гол. ред. фіз.-мат. літ., 1990. – 384 с. Ічбана Д., Кнеппер С. Біл Гейтс та створення Microsoft. – Ростов-на-Дону: Видавництво «Фенікс», 1997. – 352 с. Карпов Д.В. Динамічні правильні забарвлення вершин графа. // Записки наукових семінарів ПОМИ. 2010, Том 381, с. 47 - 77. Магомедов А.М., Магомедов Т.А. Інтервальна на одній частці правильне реберне 5-розмальовка дводольного графа // Прикладна дискретна математика. 2011. №3 (13), с. 85 – 91. Пападимитру Х., Стайгліц К. Комбінаторна оптимізація. Алгоритми та складність. Пров. з англ. - М: Мир, 1985. - 512 с. Романовський І.В. Дискретний аналіз. Навчальний посібник для студентів, що спеціалізуються на прикладній математиці та інформатиці. - Видання 2-ге, виправлене. – СПб.: Невський діалект, 2000. – 240 с. Свамі М., Тхуласіраман К. Графи, мережі та алгоритми: Пер. з англ. - М: Мир, 1984. - 455 с. Смирнов В.В. Перербурзькі школи та шкільні будівлі. Історія шкільного будівництва в Санкт-Петербурзі – Петрограді – Ленінграді 1703 – 2003 рр. – СПб.: Видавництво «Російсько-Балтійський інформаційний центр "БЛІЦ"», 2003. – 144 с. Стеценка О.П. Про один вид розмальовки ребер графа на вказані кольори // Дискретна математика. 1997. Том 9, випуск 4, 92 – 93. Урнов В.А. Розклад – найбільш затребуваний АРМ в освіті // Інформатика та освіта. 2001 № 4, с. 47 – 52. Харарі Ф. Теорія графів. - М: Мир, 1973. - 302 с. Even S., Itai A., Shamir A. На складності timetable і multicommodity flow problems // SIAM J: Comput. Vol. 5, No. 4, December 1976, 691-703

Посилання:

Тому весь поверх, де розташовувалася така ЕОМ, обтягували дрібною металевою сіткою, щоб виключити можливість «електронного підглядання» з боку заклятих ворогів радянської влади. Саму ж задачу складання навчального розкладу (без допомоги обчислювальної техніки), мабуть, не менше як триста років. Зафіксовані випадки коли завучі - загалом культурні та виховані люди, почувши словосполучення: - «Програма для складання шкільного розкладу» миттєво переходили на матюкину. Тут ми не будемо зупинятися на теорії NP-важких завдань, оскільки обговорення цього питання відвело б читача далеко в бік від теми, що цікавить нас, а так само носило б явно передчасний і поверховий характер. Зацікавленому ж читачеві, можна порекомендувати звернутися до, мабуть, самого цитованого в нашій країні видання з цієї теми. Для повного розуміння цієї статті під NP-важкими завданнями можна розуміти - практично нерозв'язні задачі, хоча це не зовсім точний переклад. Маються на увазі російськомовні публікації, яких, порівняно з англомовними, не так багато. Швидше за все їхня кількість не перевищує загального вкладу Російської Федерації у сфері високих технологій, який оцінюється в межах 0.4 - 0.6% (від нуля цілих чотирьох десятих відсотка до нуля цілих шести десятих відсотка) від загальносвітового. Щоправда, фізико-математичних наук значно менше. Танаєв В'ячеслав Сергійович (1940 – 2002) – білоруський математик, директор НДВ «Кібернетика» НАН РБ, доктор фізико-математичних наук (1978), професор (1980), дійсний член Національної академії наук Білорусі (2000). Область наукових інтересів: дослідження операцій, теорія розкладів, методи оптимізації. Михалевич Володимир Сергійович (1930 – 1994) – український математик та кібернетик, академік АН України, академік РАН (1991; академік АН СРСР з 1984). Праці з теорії оптимальних статистичних рішень, системного аналізу, теоретичної та економічної кібернетики. Державна премія СРСР (1981). Втім, передача коду генератора вихідних даних та коду перевірки правильності складеного розкладу цілком можлива, оскільки цей код жодної комерційної цінності не становить. На честь давньоєгипетської жриці Ануш програму, на російську манер, назвали - Аннушка.

І навіть... може... Але що! мрія порожня.
Не буде цього аж ніяк.
Доля заздрісна, зла!
Ах, чому я не тютюн! А.С. Пушкін

File translated from T E X by T T H , version 4.03.
On 27 Jul 2013, 00:53.

Завантажуй собі на телефон, щоб нічого не забувати і нікуди не спізнюватися.

Android

Timetable

Красивий та інтуїтивно зрозумілий додаток для управління шкільним життям. Можна внести розклад, домашні завдання, екзамени і навіть канікули. Програма може синхронізуватися з усіма вашими Android-пристроями, а під час занять сама перейде в беззвучний режим.

Шкільний щоденник

У цьому електронному щоденнику можна вести розклад, вказуючи ім'я та телефон викладача, а також місце уроку. Щоб точно нічого не забути, програма має віджети на головний екран телефону. Також існує можливість вести нотатки з предметів та проставляти за ними оцінки. Але, мабуть, найприємніша функція – викреслювання виконаних домашніх завдань.

LightSchool

Дозволяє як вести розклад і записувати домівки, а й відстежувати час на початок чи закінчення уроку. Особливість – наявність теоретичних матеріалів. Якщо раптом забув, як знаходити синус кута, можна подивитися прямо в додатку.

Розписка

Не дуже барвистий, але багатофункціональний додаток. У ньому можна скласти розклад та експортувати його до календаря на пристрої. Можна переглядати графік занять на тиждень або одразу кілька та виводити віджет з нагадуванням на головний екран. Під час уроку програма автоматично включає беззвучний режим, а до домашніх завдань можна встановлювати термін виконання.

Розклад – шкільний планувальник

Суть програми: один користувач публікує розклад своєї школи, щоб його однокашники могли потім знайти готовий графік занять. Зручно! Шкода, що сервісом користуються поки що небагато людей. Зате є віджет та сканер QR-кодів.

iOS

iШкола

Дозволяє створити гарний різнокольоровий розклад із зазначенням кабінетів, де відбуватимуться заняття. Зручно записувати завдання можна просто сфотографувати дошку або надиктувати голосом. І ще одна суперкорисна функція: можна вносити оцінки з предметів та розраховувати середній бал. Програма підтримує російську мову, працює синхронізація з iCloud.

iStudiez pro

Дозволяє складати розклад з уроками, що повторюються. Кожному предмету можна надати свій колір - так надалі буде простіше орієнтуватися в розкладі. Можна вносити в календар канікули та вихідні, а також зберігати корисну інформацію про однокласників та викладачів.

Class Timetable

Райдужний планувальник для учнів. Стандартний набір функцій включає розклад з нагадувачами і перелік домашніх завдань. Але є й цікава особливість: програма працює не тільки на iPhone та iPad, але на Apple Watch. Зручно, якщо крім навчання, є спортивні секції і треба встигати скрізь.

Grade Hound

Календар для школярів та студентів з можливістю маркування предметів за кольорами та проставлення оцінок з предметів. Родзинка: тимчасові графіки, що показують, скільки часу ви витратите на той чи інший предмет. Мінус: не підтримує російську мову.

Розклад занять – Timetable

Ще один помічник для учнів, яким бракує організованості. Можна складати графік занять з тижнями, що повторюються або чергуються, ділитися ним з друзями і записувати домашні завдання. Завдяки зручному віджету навіть не потрібно розблокувати пристрій для швидкої перевірки розкладу.

Розклад Фоксфорда

Розклад занять у Домашній школі та екстернаті Фоксфорда знаходиться на сайті в розділі «Навчальний процес».

Виберіть клас і натисніть «Докладніше». Ви побачите який день тижня і який час проходить той чи інший урок і зможете внести розклад у свій електронний планувальник.

Також на початку навчального року учні одержують розклади у вигляді зручних pdf-таблиць.

Усі домашні завдання зберігаються у Власному кабінеті учня. Потрібно лише вибрати курс та номер заняття.

Про нові та вже виконані завдання нагадає дашборд. З нього можна в один клік перейти до виконання завдання.

Ну а якщо учень забуде про якийсь урок або домашнє завдання, йому про це одразу нагадає. Надійніше будь-якої програми! :)

Є вісім основних модифікацій програми для різних навчальних закладів:
. AVTOR School - для середніх загальноосвітніх шкіл, ліцеїв та гімназій;
. AVTOR College - для коледжів, технікумів та професійних училищ;
. AVTOR Art College - для училищ мистецтва та культури;
. AVTOR High School – для вузів (очна форма навчання);
. AVTOR High School Semestric – для вузів (заочна форма навчання);
. AVTOR M High School Semestric – для військових вузів;
. AVTOR Educational Centers - для навчальних центрів, КПК та ІПК;
. AVTOR High Shool Pro – для вузів з кількома віддаленими навчальними корпусами з урахуванням часу переїзду між ними (очна та заочна форми навчання, мережева версія).

Історія створення та розвитку системи.
. Перша версія програми АВТОР-2 (під MS DOS) була розроблена науковим співробітником РГУ Ігорем Губенком у квітні 1993 р. Програма спочатку призначалася для складання розкладів у багатопрофільному ліцеї при РГУ з посиленим вивченням іноземної мови, інформатики та безліччю спеціальних предметів (де заняття 2-4 підгрупи і можуть поєднуватися в потоки). Вже перша версія програми дозволяла будувати коректні розклади.
. Потім програма пройшла випробування ще кількох школах м. Ростова-на-Дону. Було враховано досвід багатьох завучів та специфіка розкладів різних шкіл. Програму було суттєво вдосконалено та впроваджено за 2 роки більш ніж у десяти школах, ліцеях та гімназіях.
. До 1996 року автору вдалося розробити унікальний алгоритм автоматичної побудови та оптимізації розкладів, що дозволило суттєво посилити потужність програми. У тому ж році виходить перша версія АВТОР-2 для коледжів та для невеликого вишу.
. У 1997-98 р.р. автор розробляє та успішно впроваджує першу версію програми для великого вузу з кількома навчальними корпусами (РДЕУ "РІНГ").
. У 2000 році виходить перша WIN-версія програми AVTOR-2000 для всіх видів навчальних закладів.
. У 2001 році випускається версія програми з інтерфейсом трьома мовами: російською, українською та англійською.
. У 2001 році впроваджено в експлуатацію першу вузівську версію для заочної форми навчання.
. У 2002 році з'являється мережева версія програми для ВНЗ з кількома робочими місцями та загальною базою даних з аудиторій.
. У 2003 році AVTOR-2003 успішно інтегрований в єдиний пакет з ППП "Plany" (ЮРГУЕС), що дозволило автоматизувати введення бази даних у програму та побудувати повний розклад цього ВНЗ за 2 години! У ЮРГУЕС (м.Шахти) 7 навчальних корпусів, два з них далеко розташовані. Раніше цей же розклад складався двома методистами вручну за 2-3 місяці.
. У 2004 році розроблено версію програми AVTOR для військових вузів.
. У 2005 році вийшла версія AVTOR для училищ культури та мистецтв, а також – для навчальних центрів.


Клієнти.

В даний час програму AVTOR успішно використовують понад триста навчальних закладів Росії, України, Білорусії, Прибалтики та Казахстану. Серед них: Донська Реальна гімназія (ЗОШ №62), Класичний Ліцей при РГУ, ЗОШ №104, №38, №67, №81, №52, №92, №27, №46, №69, №83 (Ростов- на-Дону), ЗОШ №297, №1117 (Москва), ЗОШ №315, №17, Гімназія Східних мов (Київ), ЗОШ №44 (Запоріжжя), Тихорецький технікум залізничного транспорту, Білоярський педколедж, Ростовський Машинобудівний коледж РДЕУ "РІНХ", ІУБіП, СКАГС, РДАСГМ, РДСУ (Ростов-на-Дону), ЮРГУЕС (Шахти), РДАУ ім.Тімірязєва (Москва), МУ МВС Росії (Москва), Іркутський держ. УрДУ (Єкатеринбург), СДСЕУ (Саратов), а також десятки інших шкіл, ліцеїв, гімназій, коледжів та вишів.

Технічні характеристики.
Час роботи програми залежить від розмірності навчального закладу та потужності комп'ютера. Повний розрахунок та оптимізація розкладу школи середнього розміру зі складними вихідними даними (40 класів, 80 викладачів, з них понад 10 сумісників; дві зміни; дефіцит аудиторій) триває близько 2-3 хвилин на комп'ютері типу Celeron-2000.

AVTOR дозволяє:

    будувати розклад без "оквіну класів (навчальних груп);

    оптимізувати у розкладі"Вікна" викладачів;

    враховувати необхідний діапазон днів/годин для класів, для викладачів та аудиторій;

    враховувати характер роботи і побажання як штатних працівників, так і сумісників-погодинників;

    оптимально розміщувати заняття з кабінетів (аудиторій) з урахуванням особливостей класів, предметів, пріоритетів викладачів та місткості кабінетів;

    вводити розклад дзвінків;

    встановлюватичас переходу (переeзда) між навчальними корпусами;

    оптимізувати кількість переходів із кабінету в кабініт, та з корпусу в корпус;

    легко з'єднувати будь-які класи (навчальні груп) у потоки при проведенні будь-яких занять;

    розділяти класи (навчальні групи) при проведенні занять з іноземної мови, фізичної культури, праці, інформатики (і будь-яких інших предметів) на будь-яку кількість підгруп (до десяти!);

    вводити комбіновані уроки для підгруп (типу "іноземний/інформатика") з будь-яких предметів;

    вводити (крім основних предметів) спецкурси та факультативи;

    оптимізувати рівномірність та трудомісткість розкладу;

    легко та швидко вводити та коригувати вихідні дані;

    мати будь-яку кількість варіантів розкладів;

    автоматично перетворювати розклад при зміні бази даних;

    легко зберігати в архівах, копіювати та пересилати поE- mailповні бази даних та варіанти розкладів (об'єм архіву повної бази розкладу середньої школи - 10-30K, великого ВНЗ - 50-70K);

    швидко вносити будь-які необхідні коригування до розкладу;

    знаходити заміни тимчасово відсутніх викладачів;

    автоматично контролювати розклад, виключаючи будь-які "накладки" та протиріччя;

    виводити розклади у вигляді зручних та наочних документів: текстових,Word, HTML, а також файлівdBaseта книгExcel;

    виставляти готові розклади у локальній мережі та на Інтернет-сторінках для спільного доступу.

Відмінність від аналогів.
Порівняльний аналіз роботи програми AVTOR та програм інших розробників неодноразово проводили фахівці різних навчальних закладів. Результати досліджень опубліковані на відомих Сайтах в Інтернеті, а також у доповідях на конференціях та майстер-класах. Зроблено висновки, що AVTOR має найпотужніший алгоритм автоматичного складання та оптимізації розкладів: працюючи в 10-20 разів швидше за аналоги, програма будує більш якісні розклади за багатьма критеріями. Наприклад, кількість "вікон" у розкладі викладачів у 2-3 рази менша, ніж при використанні інших програм.
AVTOR – програма з унікальними можливостями. Основні переваги порівняно з аналогічними програмами СНД:
. швидкодія, компактність системних файлів і можливість роботи в дужевеликихнавчальних закладів зі складними розкладами;
. високий рівень автоматизації (розміщує 100% можливих занять);
. висока продуктивність:cістема дозволяє протягом одного сеансу роботи створити новий розклад, а потім швидко коректувати, зберігати, роздруковувати різні варіанти розкладів, модифікуючи їх при необхідності протягом усього навчального року;
. потужний автоматизований РЕДАКТОР РОЗКЛАД,Котрийдозволяє легко виконувати БУДЬ-ЯКІ дії з розкладом (додавання, видалення, перестановка занять, розрахунок та оптимізація розкладу, зміна кабінетів, заміна викладачів тощо). При цьому програма наочно та зручно підказує різні варіанти перестановок (змін) розкладу та порівнює їх якість;
. наявність докладної статистики та об'єктивної оцінки якості будь-якого варіанту розкладу;
. можливість підтримки будь-якої національної мови (за бажанням клієнта).

Адаптація та налаштування програми.
За бажанням замовника AVTOR модифікується та налаштовується під умови конкретного навчального закладу (з урахуванням специфіки навчального процесу, режиму роботи, форми документів тощо).



Випадкові статті

Вгору