Метод случайного поиска

В предыдущих статьях описаны результаты для векторов разной длины, но ничего не говорится о том, как я их подобрал. Векторы меньшей размерности были подобраны экспериментально. Для больших размерностей был применён метод случайного поиска. Почему выбор пал именно на него? На этот вопрос у меня внятного ответа нет, возможно потому что он наиболее простой из всех возможных и в то же время не является полным перебором (Иначе бы я состарился пока ждал окончания просчёта). В любом случае я думаю, что познакомившись с этим методом читатель ничего не потеряет.

Метод случайного поиска

Реализация метода случайного поиска заключалась в том, что брался Δ, такой, что сумма его элементов равнялась нулю. Затем вектор дельта прибавлялся к вектору α. И с новым вектором α заново проводился эксперимент (10000 систем нелинейных уравнений). Если был решён больший процент систем, метод повторялся с этим вектором α в качестве стартового. В противном случае значение вектора α возвращалось к прежнему:

  • Если это был первый запуск для текущей компоненты, то у вектора Δ менялся знак и алгоритм запускался заново для текущей компоненты.

  • Если это был не первый запуск, то вектор Δ делился на двое, альфа становился прежним и алгоритм запускался заново для текущей компоненты.

  • Если размер Δ и так уже был слишком мал, то осуществлялся переход к новой компоненте вектора α. Для чего создавался новый Δ.

Для удобства перебора каждой компоненты вектора α, вектор Δ брался не случайно, а по правилу: Δj для текущей перебираемой компоненты вектора α, был равен значению d, тогда как другие элементы вектора дельта были равны . Где k — размер вектора α. Несложно заметить, что в сумме получается ноль: .

Применив метод случайного поиска для векторов α размерности 4-11. Были получены следующие оптимальные коэффициенты векторов:

Табл. 1

Размер α

α1

α2

α3

α4

α5

α6

α7

α8

α9

α10

α11

4

0.490

0.332

0.146

0.032

5

0.420

0.357

0.195

0.027

0.001

6

0.450

0.316

0.178

0.048

0.001

0.007

7

0.502

0.259

0.108

0.078

0.046

0.007

0.000

8

0.408

0.268

0.134

0.066

0.061

0.055

0.016

-0.008

9

0.425

0.299

0.147

0.062

0.050

0.021

-0.001

-0.002

0.000

10

0.338

0.305

0.173

0.094

0.030

0.049

0.011

0.000

-0.006

0.006

11

0.458

0.216

0.091

0.083

0.061

0.046

0.037

0.019

0.000

-0.011

0.000

Leave a reply

Your email address will not be published.

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.