7-қадам — Автоматты генерация

Сабақтар құрылғаннан кейін оларды уақыт торына орналастырасыз. Кестені құру іс жүзінде жалғыз әрекет емес, цикл:

  1. бірнеше сабақты қолмен орналастырасыз — өзгермейтін сабақтарды бекіту немесе қатаң шектеулерді құлыптау үшін (күні белгіленген сыртқы мұғалімдердің сабақтары, емтихандар, қолмен келтірілген орындар);
  2. генерацияны іске қосасыз (толық немесе ішінара), алгоритм қалғанын шектеулерді сақтай отырып орналастырсын;
  3. шеттегі жайттарды түзетесіз — ерекше жағдайды жөндеу, сабақты жылжыту, шешімді өзгерту;
  4. және бұл қайта қайталануы мүмкін: генерацияны жұмыс барысында қайта іске қосасыз (қосылған сабақтар үшін немесе — күнтізбе режимінде — күн аралығымен, сыныптар не бөлімшелер бойынша).

Алгоритмсіз, 100 % қолмен да жасауға болады. Қолмен орналастыру (орналастыру, жылжыту, құлыптау — бір-бірлеп немесе жаппай) өз бетінде сипатталған: Қолмен орналастыру. Жалпы жұмыс барысын Модульге шолу бетінен қараңыз.

Бұл бетте автоматты генерация сипатталады.

Генерация сабақтарды орналастырады, құрмайды

Генерация алгоритмі бұрыннан бар сабақтармен жұмыс істейді. Ол оларға уақыт аралығы мен кабинет іздейді. Ал мұғалімдер — курсқа Сіз тағайындағандар: алгоритм оларды ауыстырмайды және басқасын таңдамайды, тек олар бос емес уақыт аралығын қабылдамайды.

Сондықтан реттілікті сақтау қажет:

  1. әр сынып үшін пәнді және оның көлемін енгізіңіз: бұл — курс, сағат көлемінің жолы;
  2. осы көлемнен сабақтарды құрыңыз — Сағаттарды бөлу және сабақтарды құру қадамында; алгоритм дәл осыларды орналастырады;
  3. содан кейін генерацияны іске қосыңыз.

Сабақтар құрылмай тұрып генерация қойындысын ашсаңыз, батырма әрекетсіз болады: орналастыратын ештеңе жоқ, ал тексеру экранында Белгіленген сабақ жоқ деп жазылады.

Генерация батырмасы неге сұр түсті

Батырма дәл жоғарыда Тексеру қойындысында көрсетілген диагностиканың нәтижесін қайталайды. Үш жағдай бар:

  • Дабыл жоқ немесе тек ескертулер бар — батырма белсенді қалады, бірақ күңгірттеу көрінеді. Ескерту (сары) тәуекелді білдіреді, мүмкін еместікті емес; көк түс — ақпараттық.
  • Бөгейтін дабыл (қызыл) — негізгі батырма өшіріледі. Есептеуді Қосымша опциялар арқылы әлі де іске қосуға болады, бірақ өз жауапкершілігіңізбен: генерация алгоритмі дабыл көрсеткен мәселені көрмейді, бәрібір кесте жасайды, ал нәтижеге Сіз жауап бересіз. Дабылды түзеген дұрыс.
  • Толық бөгейтін дабыл — батырма де, параметрлер мәзірі де өшіріледі. Онсыз есептеудің мағынасы жоқ деректің бірі жоқ: сабақ жоқ, пайдалануға жарамды сынып жоқ (сыныпта алаң және сабақтар болса, ол жарамды), немесе пайдаланылатын алаңның уақыт торы анықталмаған. Бірде-бір алаң құрылмаған оқу орны да осы жағдайға түседі: алаңсыз ешбір сынып жарамды болмайды.

Соңғы жағдайда Белгіленген сыныптар саны көрсеткіші қызыл түске боялады.

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

Пайдалану мүмкіндігі

Автоматты генерация апталық кесте, циклдік кесте және күнтізбе режимі түрлерінде бар. Күнтізбе режимінде сабақтар нақты күндерге орналастырылады, ал параметрлер генерацияланатын күн ауқымын шектей алады.

Дайындық

Кестені генерациялау батырмасын баспас бұрын:

  • жалпы статистиканы тексеру үшін Генерация қойындысын ашыңыз (күнтізбелік кестеде ол Тексеру деп аталады),
  • бөгейтін дабылдарды (қызыл) түзеңіз — сұр батырма туралы алдыңғы бөлімді қараңыз,
  • ескертулерді (сары) қайта қарап шығыңыз — олар бөгемейді, бірақ тәуекелді білдіреді (тым қатаң қолжетімділік, шекті сыйымдылық және т.б.).

Экранда сондай-ақ мыналар көрсетіледі:

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

Іске қосу

Кестені генерациялау батырмасын басыңыз. Omniscol арнайы, параллель есептеу ортасын іске қосады. Ұзақтығы кестенің көлеміне, шектеулер санына және таңдалған параметрлерге байланысты. Мектеп жағында кезек басқарудың қажеті жоқ; есептеу іс жүзінде басталғанға дейін инициализация көбіне он секундтай алады.

Есептеу жиырма минутпен шектелген, бірақ іс жүзінде бұл қажеттіден әлдеқайда көп: шамамен 200 курстық кесте көбіне жиырма секундтай уақытта дайын болады — алгоритм дерлік лезде жұмыс істейді, негізінен машинаның іске қосылуы уақыт алады — ал ~600 курс шамамен бір минутта шығады. Осы шекке жақындайтын өте үлкен оқу орны үшін Omniscol командасы сұраныс бойынша есептеу машинасының қуатын арттыра алады.

Генерация параметрлері

Әдепкі бойынша генерация құрылған және орналастырылмаған барлық сабақтарды орналастырады. Егер бұл кестені жақсартса, ол бұрыннан орналастырылған сабақтарды да жылжыта алады. Құлыпталған сабақтар өз орнын сақтайды.

Параметрлер мәзірі, атап айтқанда, мыналарға мүмкіндік береді:

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

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

Күнтізбе режиміне тән параметрлер

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

Екінші маңызды параметр — сыныптар үшін күндерді жинақтау. Әдепкі бойынша генерация алгоритмі пайдалануға болатын күндер бойынша теңдестіруге тырысады; жылдың сабақтарының тек бір бөлігін генерациялайтын болсаңыз, бұл мінез-құлық курстарды жасанды түрде созып жіберуі мүмкін. Жинақтау мыналарды сұрауға мүмкіндік береді:

  • терезенің басына;
  • терезенің соңына;
  • басына да, соңына да басымдықсыз, бірақ күндерді мүмкіндігінше тығыз ұстай отырып.

Қайталану күнтізбе кестесінде: алдымен типтік апта

күнтізбе кестесі әр сабақты жеке-жеке күнге байлайды. Алайда кейбір оқу бағдарламалары олай жұмыс істемейді: дүйсенбі күнгі сағат 10 сабағы мүмкіндігінше әр апта қайталанады. Сынып мұны Қайталанатын сабақтар параметрі арқылы мәлімдейді; сыныптың курсы одан Қайталанымнан тыс параметрі арқылы шығады. Ештеңе болжанбайды: мәлімдеме болмаса, генерация әр сабақты өз күніне орналастырады, олардың арасында ұқсастық болса да. бөлу саясаты міндетті емес: қайталанудың өзі жеткілікті; нақты ереже алгоритм мүмкіндігінше сақтауы тиіс ырғақты көрсетеді.

Кестедегі бір сынып қайталанатын болса болғаны, генерация үш кезеңмен жұмыс істейді.

  1. Алдымен типтік апта. Сабақтар сериялар болып топтастырылады. Екі жағдай бар:

    • курста сағаттарды бөлу саясаты болса: алгоритм сабақтарды осы бөлуді сериялар ішінде сақтау үшін жинайды, ал сериялар нақты қайталану тілегін қамтуы мүмкін;
    • әйтпесе сериялар болжанады: бір пән, бір топ, бір ырғақ — ұқсас ұзақтық пен мұғалімдер. Бір сыныпты бөлу шеңберіндегі топтар бөлек қалады, өйткені бір мезгілде жұмыс істейтін екі топ екі уақыт аралығын алады. Өз түрінде жалғыз қалған сабақ серия құрмайды.

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

  2. Күнтізбеде жаю. Табылған апта содан кейін сыныптың күн аралығында қайталанады: сынып үшін күнтізбелік терезе берілсе, сол терезеде, әйтпесе кестенің бүкіл кезеңінде. Серияның әр сабағы сол жерден өз аптасын, күнін, уақыт аралығын алады. Қайшылықтар күндер бойынша қарастырылады; нақты орын бос болмаса, алгоритм ең жақын шешімді таңдайды.

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

Генерация қалай жұмыс істейді

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

  1. Бәрін сыйғызу — абсолютті басымдық: қатаң шектеулерді сақтай отырып, барлық сабақтарды орналастыру.
  2. Сапаны оңтайландыру — бәрі сыйған соң, бос терезелерді азайту, күндерді тегістеу, қалауларды орындау.

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

Бәрі сыймаған кезде: құрбан ету

Егер кесте бәрін орналастыруға болмайтындай тым шектеулі болса, генерация алгоритмі бас тартпайды: қалғаны сыю үшін шетте қалдырылатын сабақтардың ең шағын жиынын таңдайды, содан кейін осы ішінара кестені оңтайландырады. Құрбан болған сабақтар орналастырылатын жапсырмалар жолағында қалады. Сұрыптау ең қиын және ең сирек сабақтарға басымдық бергендіктен, көбіне жеңіл және көп сабақтар шетте қалады: көлемі үлкен пәннің 5-ші сағаты жалғыз сирек пәннің сағатынан бұрын.

Бұл таңдауларды өзіңіз басқарасыз: ешқашан қозғалмауы тиіс сабақтарды құлыптаңыз — олар бірінші орналастырылады және құрбан болмайды — және бәрі сыюы үшін мүмкін болған жерде артық шектеуді босатыңыз (ашық уақыт аралықтары, қолжетімділік).

Қатаң және жұмсақ шектеулер

Барлық шектеулер тең емес:

  • Қатаң — ешқашан бұзылмайды: бос еместік (мұғалім, сынып, топ, кабинет немесе ресурс бір мезгілде екі рет пайдаланылмайды), мұғалімде, сыныпта, кабинетте, курста немесе топта Қолжетімсіз (қара) деп белгіленген уақыт ауқымдары, уақыт аралығында бос кабинеттің немесе ресурстың болмауы, жабық күндер, құлыпталған орындар және туралау.
  • Жұмсақ — қалғанының бәрі; генерация алгоритмі бәрін орналастыру үшін оларды айыппұл төлеп бұза алады: Қалаусыз (қызыл — аулақ болу керек, тыйым емес) деп белгіленген уақыт ауқымдары және оңтайландыру қалаулары (тығыздық, таралу, күн бойынша топтастыру…). Жоғары басымдықты шектеу төмен басымдықтыдан ауыр келеді, бірақ ешқайсысы бөгемейді. Ешбір сабақты құрбан етпеу үшін қажет болғанда, алгоритм жекелеген жеңілдетулерді де (тордың ішкі аралықтарына орналастыру…) байқап көреді.

Оңтайландырусыз тексеру

Жылдам генерация (оңтайландырусыз) параметрі ең алдымен мына сұраққа жауап беретін жеңіл өтуді іске қосады: бәрі сыя ма? Толық оңтайландыруға уақыт жұмсамас бұрын конфигурацияның орындалу мүмкіндігін тексеру үшін пайдалы.

Нәтиже

  • Жасыл баннер: генерация сәтті аяқталды. Сұралған ауқымдағы сабақтар орналастырылып, нәтижені қарап шығуға болады.
  • Қызыл баннер: толық шешім табылмады. Есептелген ең жақсы кестені қарап шығуға болады, ал орналастырылмаған сабақтар диагностика үшін жапсырмалар жолағында көрінеді.

Сәтсіз аяқталған генерацияны диагностикалау бетін қараңыз.

Біріктіру немесе көшіру

Сәтті генерациядан кейін Omniscol екі нұсқа ұсынады:

  • ағымдағы кестеге біріктіру (жаңа орналасу бар орналасуды алмастырады).
  • Көшірме жасау (ағымдағы кесте өзгеріссіз қалады, оңтайландырылған нәтиже жаңа кестеге айналады).

Кейін қайта генерациялауды жоспарласаңыз (мысалы, кестені біртіндеп құрып жатсаңыз), біріктірмеңіз: әйтпесе бұрын орналастырылған сабақтар жаңа генерацияның бастапқы нүктесі болады.

Генерацияны қайта іске қоспас бұрын сабақты құлыптау

Орналастырылған сабақта оның орнының құлыпшасын пайдаланып, оны құлыптаңыз. Келесі генерация оны жылжытпайды, бірақ айналасындағы басқа сабақтарды реттейді. «Өзгермейтін» сабақтарды (күні белгіленген сыртқы мұғалімдердің сабақтары, емтихандар, қолмен келтірілген орындар…) бекіту үшін ыңғайлы. Толық мәліметтер Сабақты құлыптау бетінде: жаппай құлыптау, диагностикаға әсері (қызылдан қызғылт сарыға), алгоритмнің мінез-құлқы.

Кестені JSON форматында экспорттау

батырмасы тек ағымдағы кестені JSON форматында экспорттайды. Бұл Импорт және экспорт бетінде сипатталған есептік жазбаның толық экспорты емес.

Тән жағдайлар:

  • жоюдың алдында нобайдың немесе сценарийдің ізін сақтау;
  • үлкен қайта ұйымдастырудың алдында аралық күйді мұрағаттау;
  • осы нақты кестені қолдау аясында Omniscol командасына жіберу.

Мектеп есептік жазбасының толық JSON экспорты сияқты, қайта енгізу мектеп жағынан еркін орындауға болатын стандартты әрекет емес.

Одан әрі

Соңғы қадам: Кестені жариялау.

Нұсқаулық

Автоматты генерацияны іске қосу

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

  2. Генерация қойындысын тексеріңіз. Онда жалпы статистика көрсетіледі: құрылған және орналастырылған сабақтар, енгізілген сағат көлемі және мұғалімдердің жұмыс сағаттары, бөгейтін дабылдар (қызыл), ескертулер (сары — ескертеді, бірақ бөгемейді).

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

  4. Қажет болса, генерация параметрлерін белгілеңіз: тағайындалатын, тек тексерілетін немесе еске алынбайтын кабинеттер; мақсатты сыныптар немесе пәндер; оңтайландырусыз жылдам генерация; бұрын тағайындалған кабинеттерді немесе ағымдағы орындарды еске алмау. Күнтізбе режимінде қосымша параметрлер генерацияланатын күн терезесін шектеуге және сабақтарды кезеңнің басына, соңына немесе басымдықсыз жинақтауға да мүмкіндік береді.

  5. Кестені генерациялау батырмасын басыңыз. Өңдеу фонда жүреді; экран генерация күйін көрсетеді және нәтиже дайын болғанда оны қарап шығуға мүмкіндік береді.

  6. Баға көңілден шыққанда сақтаңыз. Кесте орналастырылды. Келесі қадам: болуы мүмкін қайшылықтарды қарап шығыңыз, ерекше жағдайларды қолмен түзетіңіз (Қолмен орналастыру бетін қараңыз), содан кейін жариялаңыз.

  7. Одан әрі: Кестені жариялау.

Сондай-ақ қараңыз