Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
P.S. Кажется, я начинаю понимать, что вычисление определителя через миноры низших порядков - и правда задачка не по зубам чистому MQL4...
В тоже время для реализации МКЭ (метод конечных элементов) мы ( кафедра Динамики и прочности машин. кафедра Прикладной математики Харьковского Политеха - тогда еще там работал) решали ситемы свыше 64К степеней свободы - там правда симметричные матрицы и разряженные (то есть не полностью заполненные), что несколько снижает требования к железу :).
Возьмите Гаусса с выбором главного элемента и получите нормальный метод - лучше пока ничего нет. Еще раз повторюсь - ранги матриц проверяйте.
Успехов.
ЗЫ Эксел решает методом Ньютона(если не ошибаюсь). Это итерационный метод, более дорогостоящий в плане вычислительных затрат, но более и универсальный - подходит не только для СЛАУ.
На 1990 год вообще не существовало компьютеров способных в конечный период времени (менее тысячелетия, если не ошибаюсь) решать этим методом системы порядка выше 10
Вы не ошиблись порядком? Уж больно маленькая циферка (правда, и год древний совсем для ЭВМ)...
Спасибо, VladislavVG. У меня такой вопрос к Вам. Может ли при выборе метода решения как-то помочь тот факт, что все коэффициенты и свободные члены положительны и имеют небольшой разброс (ну, скажем, не более 15-20%)? Я понимаю, что есть вероятность слабой обусловленности матрицы. Вот потому и спрашиваю: Гаусс с выбором гл. элемента в этом случае адекватен - или лучше что-нибудь итерационное?
На 1990 год вообще не существовало компьютеров способных в конечный период времени (менее тысячелетия, если не ошибаюсь) решать этим методом системы порядка выше 10
Вы не ошиблись порядком? Уж больно маленькая циферка (правда, и год древний совсем для ЭВМ)...
По поводу итерационных методов - не думаю, лучше возьмите Гаусса. Для того круга задач вполне и решение дает точное.
По поводу порядков - если и ошибся то не сильно. Кстати не факт, что сейчас машины позволяют решать намного большие задачи этим методом - там при возрастании порядка матрицы степенная (точнее, факториальная) зависимость количества операций. Условно: если тогда пороговая величина была 10, то сейчас 11-12, что, согласитесь, весьма немного.
Успехов.
И вызов решения:
Спасибо, chv, за кучу умных буковок, с налёту ниасилить :) Будем разбираться, попробуем приложить ее к своей системе, которая вполне может оказаться плохо обусловленной. (В каждом уравнении системы все коэффициенты мало отличаются друг от друга, включая и свободный член.)
P.S. Сам пытаюсь сотворить итерационный алгоритм по очень простой геометрической идее. Грубо говоря: выбираем произвольную точку в пространстве решений и строим от нее "перпендикуляры" ко всем гиперплоскостям, соответствующим уравнениям системы. Затем берем среднее арифметическое всех полученных векторов и получаем новую исходную точку, от которой снова строим "перпендикуляры". Оценка точности - по норме вектора ошибки между значением левой части системы в полученной точке и вектором свободного столбца. Так как над матрицей исходной системы мы при этом не производим никаких преобразований, то есть надежда, что процесс должен сходиться к решению независимо от степени обусловленности матрицы системы. Скорость сходимости, начиная с некоторого момента, похоже, стремится к экспоненциальной, хотя показатель экспоненты может не сильно отличаться от единицы, особенно если все гиперплоскости почти параллельны (т.е. система плохо обусловлена).
Получится - погоняю и сравню. У Вас, как я понял, Гаусс с выбором главного элемента?
http://www.intel.com/cd/software/products/asmo-na/eng/307757.htm
Я наткнулся на этот интеловский пакет после усердного поиска оптимизированных-по-скорости алгоритмов для разных математических проблем. Например, я нашёл следующее сравнение БПФ алгоритмов, в котором интеловский оказался победителем
http://www.fftw.org/speed/
Я скачал демо версию. Есть исходники кода, но всё по частям и разбросано.
Получится - погоняю и сравню. У Вас, как я понял, Гаусс с выбором главного элемента?
Не могу 100% утверждать, не помню точно определение алгоритма Гаусса, но похоже, что так. Здесь матрица последовательно сводится к диагональной, и в обрабатываемом столбце выбирается элемент, максимальный по модулю. Как я помню из курса линейной алгебры, такой метод помогает в нахождении устойчивого решения. Хотя, как уже писал, после 12-15 порядка матрицы оно всё равно "расползалось", слишком велик был разброс порядков чисел в матрице после сведения к диагонали.
Драсьте Всем!
Я вот сколько не думал так и не смог придумать куда можно ввернуть метод решения системы линейных уровнения ?
Разве что только для метода наименьших квадратов только.
Просветите пожалуйста, а то уж больно интересно =)
Хотя, как уже писал, после 12-15 порядка матрицы оно всё равно "расползалось", слишком велик был разброс порядков чисел в матрице после сведения к диагонали.
Я в своих экспериментах предполагаю решать системы с порядком матрицы до сотни (ну как минимум до нескольких десятков), которая к тому же может быть хило обусловленной. Поэтому интенсивные преобразования матрицы нецелесообразны, вот я и ищу нечто устойчивое. Симплекс-метод вспомнить, что ли? Не зря ведь за него Нобеля дали...
2 shobvas: например, в индикаторе полиномиальной регрессии в Code Base (см. код индикатора). Или в НС, состоящей из одного перцептрона с линейной функцией активации. Или в генетическом алгоритме с линейной аппроксимирующей функцией. Вообще говоря, к рынкету можно что угодно применить, совсем не обязательно зацикливаться на стандартных фильтрах и осцилляторах. Просто сам метод должен иметь статистическое основание для применения... А твой ник мне нравится :)