Разработка обучающей программы по теме "Обыкновенные дифференциальные уравнения"

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



?ием программного продукта широкого спектра специалистов, требует предварительного обучения системы, а также не предоставляет возможностей достаточного строгого выявления типа, так как данные системы призваны осуществлять лишь поддержку новых специалистов, не являющихся экспертами в области, и выносят решение, носящее рекомендательных характер. Такое решение не может быть использовано в рамках создания обучающих программ, так как вероятность правильно принятого решения при обучении должна быть достаточно высока в районе 90 процентов от общего числа случаев.

Из рассмотренных методов наиболее простым в реализации и вполне удовлетворяющим требованиям задач А и Б из постановки задачи (пункт 1.1) является использование синтаксического анализа бинарного дерева. Дополнительным основанием в пользу использования данного метода решения является его ориентированность на работу с математическими выражениями и равенствами, а также предоставление данным методом средств для анализа в виде хорошо зарекомендовавших себя методов обхода.

2.2 Методы решения ДУ в символьном виде

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

В целом методы решения математических задач можно разделить на два подтипа: точные и численные методы решения. Особенностью точных методов решения ДУ является необходимость задания таких последовательностей и алгоритмов работы программного средства, которые на основании установленного типа ДУ будут выбирать наиболее адекватный метод решения, описанный в теории дифференциальных уравнений. Аналоги решения данной задачи существуют в таких математических пакетах как Mathematica, MatLab и других пакетах символьной математики. Однако главным недостатком, который затрудняет использование данных программных продуктов при обучении студентов по теме, является тот факт, что в качестве решения приводится только ответ, и студент не имеет возможности освоить метод, приводящий к такому ответу.

Численные методы позволяют также построить символьное решение за счет выполнения процедур приближенного решения дифференциальных уравнений методами Эйлера, Рунге-Кутта и другими. Программа, позволяющая задать возможности вычисления широкого набора таких решений, может быть использована с той точки зрения, что полученные численные решения являются численными значениями некоторой функции. Построение аналитического выражения по заданному набору значений этой функции можно производить посредством использования интерполяционных методов Ньютона или Лагранжа, аппроксимирующих данную функцию, методов сплайн-интерполяции и других методов, приводящих к символьной записи функции, заданной точками. Хотя данный метод и позволяет построить символьное приближенное решение поставленной задачи, однако не позволяет прийти к точному решению, и тем более полученная в результате функция не будет являться результатом применения метода решения, преподаваемого в теории.

Для получения решения задачи В из общей постановки задачи (пункт 1.1), удовлетворяющего целям обучения, можно предложить способ заполнения параметризированных шаблонов. Суть данного метода сводится к тому, что для решения ДУ ранее определенного типа необходимо выполнить ряд следующих шагов:

-выявить параметры канонической формы ДУ установленного типа;

-заполнить шаблон решения ДУ указанного типа параметрами рассматриваемого ДУ;

-считать ДУ решенным, если оно сведено к интегралам.

Таким образом, для решения поставленной задачи необходимо произвести формирование шаблонов, предназначенных для вывода общего решения или общего интеграла заданного ДУ. Параметрами шаблона являются параметры канонической формы, которые могут быть выявлены в ходе синтаксического анализа частей ДУ. Подставляя в шаблон выявленные параметры канонической формы, можно получить достаточно подробный алгоритм решения ДУ.

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

3. Описание программного решения

3.1 Обоснование выбора программной среды и инструментов разработки

Начиная разработку программного продукта, необходимо определить основной инструментарий, призванный помочь программисту в выполнении поставленной задачи. В настоящее время для разработки локально-ориентированных приложений используются такие среды разработки как Visual Studio, JAVA, Borland C++.

Рассмотрим преимущества и недостатки использования каждого из данных средств разработки программных продуктов.

Среда разработки С++ Builder предназначена для визуальной разработки приложений в сочетании с высокой степенью соответствия стандарту ANSI C++. Использование широкого спектра компонентов для визуального оформления интерфейса разрабатываемых продуктов позволяет сконструировать интерфейс при помощи технологии Drag-and-Drop. Отладка сложных приложений осуществляется за счет использования возможностей системы CodeGuard, установки точек останова, просмотра локальных переменных в любой момент исполнения программы. Studio.NET - это среда разработчика, позволяющая значительно суще