Выбор оптимального языка программирования для генерации математических задач
https://doi.org/10.25205/1818-7900-2024-22-3-15-27
Аннотация
Cравниваются математические библиотеки языков веб-программирования JavaScript, PHP, Python для создания генераторов в области некоторых тем математического анализа и вычислительной математики.
Основная цель исследования − провести эксперимент с заданным набором задач, используя библиотеки Math.js, Algebrite, Nerdamer, MathPHP, NumPy, SymPy, SciPy, чтобы определить оптимальные по функциональности и производительности для осуществления символьных и численных вычислений.
Экспериментальное исследование выполнялось с помощью перечисленных библиотек, в которых осуществлялось вычисление соответствующих задач с измерением скорости их выполнения. Представлен сравнительный анализ результатов исследования. Показаны основные проблемы, которые возникали в ходе эксперимента в различных библиотеках. Полученные результаты могут быть использованы разработчиками и исследователями, которые занимаются проектированием и реализацией генераторов математических задач. В процессе работы выявлено, что библиотеки JavaScript и PHP в полной мере не поддерживают все функции для создания генераторов математических задач. Python оказался намного эффективнее как в символьных, так и в численных вычислениях.
Ключевые слова
Об авторе
Д. В. ВинокуроваРоссия
Дарья Валентиновна Винокурова, аспирант
Санкт-Петербург
Список литературы
1. Винокурова Д. В. Метод генерации уникальных вариантов для математических задач // Компьютерные инструменты в образовании. 2024. № 1. С. 71–84. DOI: 10.32603/2071-2340-2024-1-100
2. Зорин Ю. А. Автоматизация построения многовариантных тестовых заданий на основе деревьев И/ИЛИ : Дис. … канд. техн. наук. Томск, 2014. 139 с.
3. Посов И. А. Автоматизация процесса разработки и использования многовариантных учебных заданий : Дис. … канд. техн. наук. СПб., 2012. 134 с.
4. Иванова Н. А. Возможные направления применения ресурсов программирования среды Mathematica при решении математических задач // Вестн. Балт. федер. ун-та им. И. Канта. Серия: Филология, педагогика, психология. 2012. № 5. С. 155–160.
5. Сосновский Н. Н. Разработка методических материалов в среде системы Mathematica // Компьютерные инструменты в образовании. 2015. № 5. С. 53–60.
6. Свидетельство о государственной регистрации программы для ЭВМ № 2023618413 Российская Федерация. Программный модуль «Нахождение расположения корней квадратного уравнения с параметром». Версия 1.0 : No 2023616932 : заявл. 11. 04. 2023 : опубл. 25. 04. 2023 / Д. В. Винокурова.
7. Гилев П. А., Казанков В. К., Табиева А. В. Автоматическая генерация и проверка задач по дисциплинам математического цикла в высшей школе // Современное педагогическое образование. 2022. № 11. С. 142–147.
8. De Jong J., Mansfield E. Math.Js: An Advanced Mathematics Library For JavaScript // Computing in Science & Engineering. 2018. Vol. 20, no. 1. P. 20–32, 2018. DOI: 10.1109/mcse.2018.011111122
9. Ranjani J., Sheela A., Meena K. P. Combination of NumPy, SciPy and Matplotlib/Pylab – a good alternative methodology to MATLAB – A Comparative analysis // 1<sup>st</sup> International Conference on Innovations in Information and Communication Technology (ICIICT). 2019. DOI: 10.1109/ICIICT1.2019.8741475
10. Винокурова Д. В. Экспериментальное исследование производительности математических библиотек языков JavaScript, PHP и Python // Zenodo. 2024. DOI: 10.5281/zenodo.11402820
11. Кузнецов Л. А. Сборник заданий по высшей математике (типовые расчеты). М.: Высшая школа, 1994.
12. Зенков А. В. Вычислительная математика для IT-специальностей : Учеб. пособ. М.; Вологда: Инфра-Инженерия, 2022.
13. Зализняк В. Е. Теория и практика по вычислительной математике : Учеб. пособ. Красноярск: Сиб. федер. ун-т, 2012.
Рецензия
Для цитирования:
Винокурова Д.В. Выбор оптимального языка программирования для генерации математических задач. Вестник НГУ. Серия: Информационные технологии. 2024;22(3):15-27. https://doi.org/10.25205/1818-7900-2024-22-3-15-27
For citation:
Vinokurova D.V. Choosing the optimal programming language for the generation of mathematical problems. Vestnik NSU. Series: Information Technologies. 2024;22(3):15-27. (In Russ.) https://doi.org/10.25205/1818-7900-2024-22-3-15-27