ISSN 0236-235X (P)
ISSN 2311-2735 (E)
3

13 Сентября 2024

Возможности пакета Matlab в использовании удаленных вычислений для решения задач по численным методам


Нгуен Зуи Тхаи (duythaipistu@gmail.com) - Иркутский государственный технический университет
Ключевые слова: численные методы., математические задачи, удаленный доступ, удаленные вычисления, сервер, web-приложение, matlab web server
Keywords: numerical methods, mathematical tasks, remote access, remote computing, server, web-application, matlab web server


     

В настоящее время во многих учебных заведениях реформируются средства организации учебного процесса и интенсивно внедряется дистанционное обучение. Это требует большой подготовительной работы, которая начинается с разработки электронных учебников и практикумов. В таких условиях актуальна задача повышения эффективности выполнения лабораторного практикума за счет работы только при наличии Web-браузера. С этой целью в некоторых математических пакетах, таких как Mathcad, Maple и Matlab, появились средства для удаленной разработки Web-приложе­ния, ориентированного на сложные вычисления. MWS позволяет создавать Web-приложение, работающее на сервере, и пользователи взаимодействуют с ним лишь через Web-браузеры.

Создание Web-приложения является шагом в развитии программы «Лабораторный практикум» по численным методам в системе Matlab, которую реализовал автор. Данная программа представляет собой реализацию совокупности численных методов для решения различных математических задач, таких как вычисление функций с заданной точностью, решение нелинейных уравнений, системы линейных алгебраических уравнений, дифференциальных уравнений, интерполирование табличной функции полиномом, аппроксимация функции, численное интегрирование и оптимизация функций. Программа используется в процессе обучения студентов в Иркутском государственном техническом университете по специальности «технология машиностроения». Внедрение Web-приложения позволяет облегчить работу преподавателей, повысить эффективность использования программы при обучении в дистанционном режиме.

Перед созданием Web-приложения с помощью MWS при использовании данной программы в процессе обучения студентов на всех компьютерах сети необходимо установить систему Matlab, а затем запустить программу на каждом из них. Для установки системы Matlab 7.0 требуются процессор Pentium III, IV или Pentium M и выше, объем оперативной памяти в 256 MB (рекомендуется 512 MB) и как минимум 400 MB дискового пространства.

После создания Web-приложения нужны только один мощный компьютер и скоростная линия связи между компьютерами. MWS выгоден тем, что при работе пользователей компьютерных сетей с математическим пакетом Matlab отпадает необходимость установки данного достаточно ресурсоемкого ПО на локальные компьютеры, поскольку все вычисления выполняет сервер. Подготовка к работе Web-приложения в сети схожа с разработкой локального приложения Matlab и включает дополнительную стадию – разработку Web-интерфейса, которая заключается в создании Web-страниц с помощью языка HTML.

Среда разработки приложений MWS. Обширная библиотека стандартных функций MWS позволяет создавать приложения, в которых Matlab использует возможности WWW для посылки данных в Matlab и отображения результатов в Web-браузере. MWS зависит от протокола TCP/IP сетей передачи данных и является связующим звеном между клиентом системы и Matlab.

Другими словами, MWS позволяет разрабатывать приложения для работы в режиме удаленного доступа, используя стандартные компоненты Matlab. Приложение работает на сервере, а пользователь взаимодействует с ним через Web-брау­зеры, например, Microsoft Internet Explorer, Fire­Fox, Safari и др. Для работы с приложением пользователю не нужен Matlab, достаточно скоростной линии связи с сервером.

Принципы работы MWS. Имеются два варианта настройки MWS. При первом варианте Web-браузер загружается в клиентском компьютере, причем Matlab, MWS (matlabserver) и Web-сервер загружаются в другом компьютере. Схема первого варианта настройки показана на рисунке 1.

Другой вариант более сложный, при этом Web-сервер загружается в отдельном компьютере (см. рис. 2).

Принцип работы MWS заключается в следующем: пользователь заходит на специально подготовленную страницу в Интернете и вводит данные, необходимые для решения задачи. Они поступают в программу Matlab, которая на основе введенных данных осуществляет необходимые вычисления, отправляет результат, визуализируемый непосредственно на странице Web-браузера.

При этом нужно иметь в виду, что MWS не является Web-сервером, это сервис взаимодействия MatLab с Web-сервером. Сервисом, или службой, принято называть программу, которая может постоянно находиться в памяти компьютера в ожидании предназначенных для нее команд. Этим сервис отличается от обычной программы, которая автоматически выгружается из памяти компьютера, завершив обработку поступившей команды. В качестве сервера используются Apache или Internet Information Services (IIS). В авторской конфигурации применены пакеты Matlab, Matlab Web Server и Web Server (Apache) на одном компьютере.

Создание MWS-приложений. MWS-приложе­ния представляют собой сочетание М-файлов, HTML-файлов и графиков. Разработчику необходимо лишь знание программирования на Matlab и основных возможностей HTML. Процесс разработки приложений требует небольшого количества простых шагов:

–      создание HTML-документа для сбора исходных данных от пользователей;

–      создание М-файлов для получения данных из HTML-файлов, анализа данных и генерации нужных графиков, помещения результатов в Matlab-структуру и вызова htmlrep для помещения результатов в выходной html-файл;

–      создание html-документа для вывода результатов в браузере.

Кроме этого, перед созданием MWS-прило- же­ния необходимо настроить файлы конфигурации httpd.conf и matweb.conf, сопровождающие программы Apache и matlab.exe соответственно. Подобная настройка этих файлов была описана в [1–3].

Создание Web-приложения «Лабораторный практикум»

Создание HTML-файлов для сбора данных. Для каждой задачи «Лабораторного практикума» готовится соответствующий файл, объединяющий все исходные данные пользователя. Данные передаются Matlab в виде структуры данных instruct. Чтобы обеспечить связь с Matlab, нужно указать путь к программе matweb.exe и имя M-файла, в котором будут производиться расчеты. Такая конструкция имеет следующий вид:

action="/cgi-bin/matweb.exe" target="outputwin­dow">

Подпись:  
Рис. 3. Интерфейс «Решение нелинейных уравнений»
В данном случае M-файл solve_system_equa­tions предназначен для решения системы линейных алгебраических уравнений.

Создание M-файлов. Для каждого HTML-фай­ла создается M-файл, который получает данные в виде структуры данных instruct. Для решения  системы линейных алгебраических уравнений (func­tion rs=solve_system_equations(instruct)) структура данных instruct содержит следующие поля:

instruct.matrix_A – матрица коэффициентов A;

instruct.matrix_B – матрица свободных членов B;

instruct.matrix_P – матрица первого приближения P при решении методом простой итерации;

instruct.valid_deviation – допустимое отклонение;

instruct.max_iterations – максимальное число итераций;

instruct.method – метод решения (Крамера, простой итерации, Гаусса).

Получив исходные данные, M-файл выполняет требуемые вычисления, генерирует заданные графики. Графики сохраняются во временном каталоге, и имя файла графиков используется для отображения на HTML-файле вывода.

Результат выполнения M-файла также представлен в виде структуры и отправляется в HTML-файл вывода (solve_system_equations2.html) при вызове команды htmlrep:

templatefile=which(‘solve_system_equations2.html')

rs=htmlrep(outstruct, templatefile)

Создание HTML-файлов для отображения результатов. Этот файл получает данные, сгенерированные M-файлом, и отображает полученную информацию пользователю.

Использование Web-приложения «Лабораторный практикум». Доступ к Web-приложению «Лабораторный практикум» осуществляется через Web-браузеры.

На рисунке 3 показан интерфейс работы Web-приложения.

В заключение отметим следующее. Создание Web-приложения с помощью MWS является особой возможностью Matlab по использованию удаленных вычислений для повышения эффективности решения задач. Она значительно облегчает работу преподавателей и играет важную роль в повышении эффективности средств организации учебного процесса, интенсивном внедрении дистанционного обучения. 

Литература

1.     Пономарева И.С., Зелепухина В.А., Тарасевич Ю.Ю. Разработка приложений для Matlab Web Server // Компьютерные инструменты в образовании. 2005. № 4. С. 48–56.

2.     Котельников И.А., Черкасский В.С. MATLAB Web Server: вычисления в Интернете // Exponenta Pro. Математика в приложениях. 2004. № 1 (4). С. 4–11.

3.     Настройка MatLab web-server на платформе Apache и его приложения для моделирования физических процессов. URL: http://infocom.uz (дата обращения: 29.06.2011).

4.     MATLAB Web Server. The Math Works, Inc. 2002.



http://swsys.ru/index.php?id=3241&lang=%E2%8C%A9%3Den&like=1&page=article


Perhaps, you might be interested in the following articles of similar topics: