От - математическата магия - до безплатния софтуер
Доцентът от катедрата по висша математика Илия Щуров намери начин да улесни студентите и учителите при работа с диференциални уравнения. Той разработи методология за обучение на студенти как да решават диференциални уравнения с помощта на безплатен софтуер. С проекта „Използване на IPython Notebook System при преподаване на математически курсове“ Шуров спечели конкурса „Създаване на оригинална интердисциплинарна учебна програма“, организиран от HSE Educational Innovation Foundation.
За организирането на курсове и технически "трикове"
Как обикновено са структурирани повечето курсове по математика? Има теоретична (лекционна) част и има семинари, които обсъждат как се решават задачи с химикал и хартия. Често говорим за различни техники и "трикове", като "математическа магия", която ви позволява да решавате някои класове уравнения. Сега обаче нуждата от познаване на тези „трикове“ намалява, тъй като компютрите и математическите пакети поемат част от техническата работа.
Исках да създам курс по диференциални уравнения, който в допълнение към дълбоката теория и традиционните семинари включва и силен компютърен компонент. Неговата задача е да даде възможност на учениците да използват компютърни инструменти за решаване на практически задачи, превод на проблеми на "компютърен" език и правилно интерпретиране на отговора.
Защо Python
От известно време обмислям какъв компютърен инструмент може да се използва за нашите задачи в рамките на курса "Диференциални уравнения". Например, в хода на математическия анализ използвахме уеб услугата WolframAlpha, но нейните възможности не са достатъчни за диференциални уравнения. Можете да вземете нещо по-сложно, например „по-старобрат" WolframAlpha, системата Wolfram Mathematica или системата Maple, която е близка по функция до нея, или някои други подобни инструменти. Всичко това са доста мощни, сложни и скъпи професионални системи. И ми се струва, че не е много правилно да ги използваме като основен инструмент за обучение, тъй като това създава привързаност на ученика към определен продукт и след това той е принуден да го купи.
Трябва да се помни, че компютрите не могат да заменят изследователя - не е достатъчно да получите отговор, трябва също да разберете какво означава той
Реших да се обърна към безплатния софтуер, по-точно програмния език Python. За него е разработен набор от библиотеки, които ви позволяват да работите ефективно с математическия апарат. Например библиотеките matplotlib и pyplot за създаване на графики и диаграми, библиотеката numpy за работа с вектори и матрици (аналог на MATLAB), системата за компютърна алгебра SymPy, напомняща на Mathematica и др.
Освен това, и това е много важно, има среда IPython Notebook, която прави много лесна интерактивната работа с всички тези библиотеки. Казано по-просто, потребителят въвежда няколко команди, натиска enter и компютърът брои всичко и рисува картина или дава формула в отговор.
За практическите ползи и трудностите при прилагането
Преподавам курса "Диференциални уравнения" на студентите 2-ра година от съвместната бакалавърска програма на HSE и NES. За тях това е избираема дисциплина. И тъй като не всички студенти, които се записаха, бяха готови за това, че ще трябва да се справят с елементи на програмирането, направихме частта, свързана с овладяването на системата IPython Notebook, незадължителна.
За да използвате тази система, не са необходими задълбочени познания по програмиране, но тъй като тя все още беше нова за ученицитематериал, Андрей Петрин проведе допълнителни часове по програмиране. В резултат на това около една четвърт от студентите от курса участваха в проекта. Въпреки че, разбира се, бих искал всички ученици да се научат как да използват IPython Notebook. Може би след няколко години тази част ще стане задължителна.
Но в същото време, разбира се, трябва да помним, че компютрите не могат да заменят изследователя - не е достатъчно да получите отговор, трябва също да разберете какво означава той. А за това трябва добре да познаваш теорията.
Например, моделирате демографска ситуация, пишете диференциално уравнение за нарастване на населението и виждате, че е твърде трудно да го решите „на ръка“. (Общо казано, повечето диференциални уравнения не се решават изрично.) След това въвеждате това уравнение в компютър и той моментално ви дава решение под формата на графика на промяната на населението спрямо времето. Но достатъчно ли е това? Да кажем, че графиката показва, че населението бавно намалява. Могат ли да се направят някакви изводи от това? Вероятно е възможно, но веднага възникват въпроси: какво ще се случи, ако чакате много дълго време, например няколко хиляди години - ще изчезне ли населението напълно или ще се стабилизира на определено ниво? И ако промените други параметри на модела? За да научите как да отговаряте на такива въпроси, трябва да овладеете теорията и да можете да правите много неща „на ръка“, без компютър.
За конкуренцията и мотивацията
От самото начало очаквах, че ще кандидатствам за конкурса за FOI, това беше допълнителен стимул да развивам този проект. Освен това, когато подготвях кандидатурата, проучих подобни проекти, които бяха пред нас, и намерих колеги за бъдещо сътрудничество. Системата IPython Notebook може да се използва във всеки курс по математика, който включва елементи на смятане, линейна алгебра,диференциални уравнения и други области на математиката, които изискват използването на компютърни инструменти за решаване на практически проблеми.
P.S. Ще говорим и за други победители в конкурса за FOI.
Людмила Мезенцева, новинарска служба на портала HSE