Добавил:
СПбГУТ * ИКСС * Программная инженерия Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Отчеты по лабораторным работам / Лабораторная работа №1

.pdf
Скачиваний:
409
Добавлен:
06.07.2020
Размер:
236.51 Кб
Скачать

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ "САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М. А. БОНЧ-БРУЕВИЧА"

Факультет инфокоммуникационных сетей и систем Кафедра сетей связи и передачи данных

ЛАБОРАТОРНАЯ РАБОТА №1

«Ознакомление с системой численных вычислений Octave» по дисциплине

«Оптимизация и математические методы принятия решений» Вариант 10

Выполнил:

студент 2-го курса дневного отделения группы ИКПИ-81 Коваленко Л. А.

Преподаватель:

Владимиров С. А.

Санкт-Петербург

2020

Цель работы

Ознакомиться с общими принципами работы в системе компьютерной алгебры Octave, приобрести начальные навыки программирования во встроенном интерпретаторе и составить программу выполнения задания с получением результатов своего варианта.

1.

 

 

 

 

 

 

Постановка задачи

 

 

 

 

 

 

 

 

 

 

Получить исходные данные матрицы A и B.

 

 

 

 

 

 

 

 

 

 

 

 

2.

Транспонировать матрицы A и B.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3.

Вычислить обратную матрицу A и выполнить проверку полученного

4.

результата.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

)]

 

 

 

Выполнить проверку матрицы A на ортогональность.

 

 

 

 

 

 

 

 

6.

Выполнить умножение матриц

[ и]

и

[ ]

.

= [ (

 

 

 

 

7.

Найти определители матриц

 

 

.

 

 

 

 

 

 

.

 

 

 

5.

Получить матрицу нормированных коэффициентов

 

 

 

 

 

 

 

 

8.

Найти все

главные

(

 

[

 

]

 

 

 

 

 

 

 

матрицы

 

 

 

 

(

9.

 

 

) и алгебраические дополнения (

 

 

 

( + )

 

 

). , =

det[ ( , , )]

 

 

 

диагональные)

 

, = (1)

 

 

,

 

 

 

 

 

 

 

 

миноры

 

 

 

 

 

 

 

 

 

 

Найти решение системы линейных алгебраических уравнений

 

=

методом

10.обратной матрицы и проверить результат.

 

 

 

 

 

 

 

 

 

Гаусса и проверить результат.

 

 

 

 

 

 

 

 

 

 

 

 

=

 

 

 

Найти решение системы линейных алгебраических уравнений

 

 

 

 

методом

11.Представить

графически заданную

на

интервале

аналитическую

функцию

 

принадлежности.

 

1 = cos( ) +

 

cos(3 )

 

 

 

 

 

 

 

 

 

 

 

 

 

+ 3

 

 

 

 

 

 

 

 

 

12.Найти графическим способом решение целевой функции (MAX).

 

3

 

 

 

( ) = max

 

 

 

 

 

2

= + 1

 

 

, 4

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

22

23

 

Ход работы

 

 

147

 

 

 

 

 

 

 

 

1.

 

 

 

 

22

27

 

 

28

 

 

 

 

 

 

 

 

 

 

Исходные данные: матрицы A и B.

 

 

22

 

 

129

 

 

 

 

 

 

 

 

 

 

 

 

 

24

21

20

23

 

 

 

 

 

 

 

 

 

 

 

 

 

 

= 23

28

23

25

 

 

26

, = 165

 

 

 

 

 

 

 

2.

 

 

 

 

22матриц23

A30и B.24

 

 

23

 

 

173

 

 

 

 

 

 

 

 

 

Транспонирование

27

28

27

26

 

 

20

 

 

144

 

 

 

 

 

 

 

 

 

 

22

24

23

 

22

27

 

 

 

 

 

 

 

 

 

 

 

 

 

 

=

23

 

21

28

 

23

28

 

, = (147, 129,165,173,144)

 

 

 

 

22

 

20

23

 

30

27

 

 

 

 

 

27

 

23

25

 

24

26

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

28

 

22

26

 

23

20

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

3. Вычисление обратной матрицы A и выполнение проверки полученного

 

результата.

 

 

0.166

0.264

 

 

0.005

 

 

0.007

0.072

 

 

 

−1 =

0.053

0.099

 

0.153

 

0.050

0.041

 

 

 

 

0.049

0.015

 

0.017

 

 

0.117

0.028

 

 

 

 

 

 

 

 

0.346

0.248

 

0.242

 

0.124

0.246

 

 

 

 

 

 

 

 

0.086

0.125

1

0.118

0

0.062

0.192

 

 

 

 

 

 

 

 

 

 

 

 

0

0

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

−1 =

0

1

0

0

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0

1

0

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

на ортогональность0 0 0 1.

 

0

 

 

 

 

 

 

 

4. Проверка матрицы A ортогональной0 0 : 0

0

 

1

21.993

 

27.072

 

 

 

 

 

 

 

 

 

22.166

 

23.736

22.995

 

 

 

 

Матрица не является

 

 

 

 

 

 

 

27.847

 

 

 

 

 

27.959

 

 

 

 

 

 

 

 

23.053

 

21.099

 

23.050

 

 

 

 

−1 = 22.049

 

20.015

23.017

 

29.883

 

27.028

 

 

 

 

 

 

 

 

26.654

 

23.248

25.242

 

24.124

 

25.754

 

 

 

 

 

 

 

 

 

28.086

 

21.875

25.882

 

22.938

 

20.192

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

= [ (

)]

 

5.

 

 

 

 

 

 

= max( ) min( ) [

min(

 

)]

 

 

Матрица нормированных коэффициентов

 

 

 

 

 

 

 

.

 

6.

Умножение

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

= (0.40909, 0.00000,0.81818,1.00000,0.34091)

 

 

 

 

 

 

 

 

 

[ ]

 

 

[ ]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

матриц

 

[

]

= 417.23

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

60.13636

0

 

 

120.27273

147.00000

 

50.11364

 

 

[

 

]

=

 

52.77273

0

 

 

105.54545

129.00000

 

43.97727

 

 

 

 

 

0

 

 

135.00000

165.00000

 

56.25000

 

 

 

67.50000

 

 

 

 

7.

 

 

 

 

70.77273матриц

0

 

 

141.54545и .

173.00000

 

58.97727

 

Определители58.90909

0

 

 

117.81818

144.00000

 

49.09091

 

 

 

 

 

 

 

 

 

[ ]

 

 

 

147.00000

50.11364

 

 

 

 

 

60.13636

0

 

 

120.27273

 

 

 

 

 

 

52.77273

0

 

 

105.54545

129.00000

43.97727

 

 

det( ) = 67.50000

0

 

 

135.00000

165.00000

56.25000 = 0

 

 

 

 

 

70.77273

0

 

 

141.54545

173.00000

58.97727

 

 

 

 

 

 

58.90909

0

 

 

117.81818

144.00000

49.09091

 

 

 

 

 

 

 

 

 

 

22

 

23

 

 

22

27

28

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

24

 

21

 

 

20

23

22

 

 

 

 

 

 

 

 

 

 

 

 

 

det( ) = 23

 

28

 

 

23

25

26 = 40836

 

 

 

 

 

 

 

 

 

 

 

 

 

22

 

23

 

 

30

24

23

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

27

 

28

 

 

27

26

20

 

 

 

 

 

 

 

 

3

 

8.

и алгебраические дополнения (

 

 

 

 

 

 

 

 

)., = [ ( , , )])

 

 

 

 

 

28

 

23

 

25

 

26

 

 

 

, = ()( + )

 

,

 

1+1

 

 

 

 

 

 

 

 

 

 

 

 

Все главные (диагональные) миноры матрицы

 

 

(

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1,1

= 23

 

30

 

24

 

23 = 6793

 

1,1

= (1)

 

 

1,1

 

 

= 6793

 

 

 

 

 

 

28

 

27

 

26

 

20

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2,2

 

23

 

23

 

25

 

26

 

 

 

 

 

 

2,2

= (1)

2+2

2,2

 

 

= 4048

 

 

 

= 22

 

30

 

24

 

23 = 4048

 

 

 

 

 

 

 

 

 

 

 

 

27

 

27

 

26

 

20

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3,3

 

 

24

 

 

21

23

22

 

 

 

 

 

3,3

 

= (1)

3+3

3,3

= 700

 

 

 

= 22

 

 

23

24

23 = 700

 

 

 

 

 

 

 

 

 

 

 

 

27

 

 

28

26

20

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4,4

 

24

 

21

 

20

 

22

 

 

 

 

 

 

4,4

= (1)

4+4

4,4

 

 

= 5064

 

 

 

= 23

 

28

 

23

 

26 = 5064

 

 

 

 

 

 

 

 

 

 

 

 

27

 

28

 

27

 

20

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5,5

= 24

 

21

 

20

 

23 = 7860

 

5,5

=

 

(1)5+5 5,5

 

 

= 7860

 

 

 

Гаусса и проверка результата.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

=

методом

 

 

 

 

 

23системы28

23линейных25

алгебраических уравнений

 

 

 

 

 

 

9.

Решение 22

 

23

 

30

 

24

 

1

 

0

0

0

0

1.26104

 

 

 

 

 

 

 

 

 

 

1.26104

 

 

22

24

23

 

22

 

 

27 147

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

23

Метод Гаусса:

 

28 129

 

 

0

 

1

0

0

0

2.04016

 

 

 

 

 

 

 

 

 

 

2.04016

 

 

21

28

 

23

 

 

 

 

 

 

 

 

,

=

 

 

22

20

23

 

30

 

 

27 165 ~

0

 

0

1

0

0

4.35341

 

 

 

4.35341

 

27

Проверка23 25

 

24

 

 

26

173:

 

 

0

 

0

0

1

0 7.14458

 

 

 

 

 

 

 

7.14458

 

28

22

26

 

23

 

 

20

144

 

 

0

 

0

0

0

1

6.05221

 

 

 

 

 

 

 

 

6.05221

 

 

 

 

 

 

= 0

 

 

 

27

 

1.26104

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

22

 

24

23

22

 

 

 

 

 

 

 

 

147

 

 

 

 

0

 

 

 

 

 

 

 

 

 

23

 

21

28

23

 

28

 

2.04016

 

 

 

129

 

 

 

 

0

 

 

 

 

10.Решение

 

22 20 23 30

 

27

4.35341

 

165

0

 

 

 

 

 

матрицы28 22 и

26проверка23 20результата6.05221.

 

 

 

 

 

144

 

 

 

0

 

 

 

 

 

обратной

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Метод обратной матрицы ( −1 = ):

 

 

 

 

уравнений173

 

=

методом

 

 

 

 

 

 

системы27 23линейных25 24

алгебраических26 7.14458

 

 

0

 

 

 

0.166

 

0.264

 

0.005

 

0.007

 

0.072

 

 

 

147

 

 

 

 

 

1.2610

 

 

 

 

 

0.053

0.099

 

0.153

 

0.050

0.041

 

 

 

129

 

 

 

 

 

2.0402

 

 

 

 

0.049

0.015

0.017

 

0.117

 

0.028 165 =

 

4.3534

 

 

Проверка0.346

 

0.248:

0.242 0.124

0.246

 

 

 

173

 

 

 

 

7.1446

 

 

 

 

 

0.086

 

0.125

 

0.118

 

0.062

 

0.192

 

 

144

 

 

 

 

 

6.0522

 

 

 

 

 

 

= 0

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

22

24

23

22

27

 

1.2610

 

147

0

 

 

23

21

28

23

28

 

2.0402

 

129

0

 

22

20

23

30

27

4.3534

165

0

 

 

27

23

25

24

26

 

7.1446

173

0

 

 

заданная22 26

23

на20

 

 

 

 

 

11.Графически28

интервале6.0522

аналитическая144 0

функция

принадлежности.

точка максимума

12.Решение целевой функции (MAX).

 

10

cos(3 )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Исходные данные:

1 = 7 cos( ) + 13

, 4 ≤ ≤ 3

 

( )

= max

 

2 = 5

+

 

 

 

 

 

0.93441,

= 7, = 1

 

 

 

3.4344

 

 

1( )

= 2( )

Полученные результаты:

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

Код программы (Octave)

 

 

 

 

 

clc; close all; clear all;

 

 

 

 

 

 

 

 

 

 

 

 

disp('Enter variant number [1...30]');

 

 

 

 

 

 

 

 

n = input('n=');

 

 

 

 

 

 

 

 

 

 

 

 

 

if n <= 0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n = 1;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

elseif n > 30;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n = 30;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

end

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

disp('Initial data');

 

9 4 6

7;3

4 11

5 4;8

9

8

7 1];

Aish=[3 4

3 8 9;5 2

1 4 3;4

Bish=[61;43;79;87;58];

 

 

 

 

 

 

 

 

 

 

 

 

A=Aish.+(2*n-1)

 

 

 

 

 

 

 

 

 

 

 

 

 

B=Bish.+(9*n-4)

 

 

 

 

 

 

 

 

 

 

 

 

 

disp('Transposed matrices A and В');

 

 

 

 

 

 

 

 

5

At = A'

Bt = B'

disp('Inverse matrix A with check'); Aobr = inv(A)

provA = A * Aobr

disp('Check the matrix A for orthogonality'); Eort = At - Aobr

disp('Matrix of normalized coefficients: С = Norm(Bt)');

C = (Bt.-min(Bt)) / (max(Bt) - min(Bt)) disp('Matrix multiplication result: Fcb = С * B');

Fcb = C * B

disp('Matrix multiplication result: Fbc = B * C'); Fbc = B * C

disp('The main angular minors of matrix A');

disp(det([

A(2,

4),

A(2,

5);

 

A(2, 2), A(2, 3),

 

A(3, 2), A(3, 3),

A(3,

4),

A(3,

5);

 

A(4, 2), A(4, 3),

A(4,

4),

A(4,

5);

 

A(5, 2), A(5, 3),

A(5,

4),

A(5,

5);]))

disp(det([

A(1,

4),

A(1,

5);

 

A(1, 1), A(1, 3),

 

A(3, 1), A(3, 3),

A(3,

4),

A(3,

5);

 

A(4, 1), A(4, 3),

A(4,

4),

A(4,

5);

 

A(5, 1), A(5, 3),

A(5,

4),

A(5,

5);]))

disp(det([

A(1,

4),

A(1,

5);

 

A(1, 1), A(1, 2),

 

A(2, 1), A(2, 2),

A(2,

4),

A(2,

5);

 

A(4, 1), A(4, 2),

A(4,

4),

A(4,

5);

 

A(5, 1), A(5, 2),

A(5,

4),

A(5,

5);]))

disp(det([

A(1,

3),

A(1,

5);

 

A(1, 1), A(1, 2),

 

A(2, 1), A(2, 2),

A(2,

3),

A(2,

5);

 

A(3, 1), A(3, 2),

A(3,

3),

A(3,

5);

 

A(5, 1), A(5, 2),

A(5,

3),

A(5,

5);]))

disp(det([

A(1,

3),

A(1,

4);

 

A(1, 1), A(1, 2),

 

A(2, 1), A(2, 2),

A(2,

3),

A(2,

4);

 

A(3, 1), A(3, 2),

A(3,

3),

A(3,

4);

 

A(4, 1), A(4, 2),

A(4,

3),

A(4,

4);]))

disp('Solve SLAE AX

= B by the Gauss method');

AGs = rref([A B])

 

 

 

 

 

r = size(AGs)

 

values [X] SLAE AX = B');

disp('Vector of variable

XGs=AGs(:,r(2))

 

of SLAE AX -

B = 0');

disp('Check the solution

EpsGs=A * XGs - B

= B by the inverse matrix method');

disp('Solve SLAE AX

Xom = inv(A) * B

 

of SLAE AX -

B = 0');

disp('Check the solution

Epsom = A * Xom - B

 

 

 

 

function in a graphical way')

disp('Find the value of the objective

k = round(((32 - n)/(41 - n)) * n)

 

w = round((n - k + 6)/(n

+ 1))

 

 

t = -4 * pi : 0.1 :

3 * pi;

 

 

 

 

 

 

 

6

 

V1 = k * cos(w * t) + (n / (n + 3)) * cos(3 * w * t);

V2 = k / 2 + w * t - 1; hf = figure ();

hold on; plot(t,V1,'b','linewidth',4,t,V2,'g','linewidth',4); set(gcf,'position',[200 200 600 300]); set(gca,'fontsize',18);

grid on;

f = @(x) k * cos(w * x) + n * cos(3 * w * x) / (n + 3) - (k / 2 + w * x - 1);

disp('Find a minimum (the correct answer is chosen according to the graph)')

minimumX = fsolve(f, [-12 -10 -8 -6 -4 -2 0]); disp('Minimum X:')

disp(minimumX) disp('Minimum Y:')

disp(k / 2 + w * minimumX - 1)

disp('Finding the maximum (the correct answer is chosen according to the graph)')

maximumX = fsolve(f, [0 2 4 6 8 10 12]); disp('Maximum X:')

disp(maximumX) disp('Maximum Y:')

disp(k / 2 + w * maximumX - 1)

Ответы на вопросы:

 

 

 

 

 

 

 

 

 

 

 

 

, полученная

 

 

 

 

 

1.

Транспонированная

матрица

 

матрица

 

 

из

исходной

 

матрицы

заменой строк на столбцы.

−1

 

 

 

 

 

 

 

 

 

 

 

2.

Обратнаяматрица— такаяматрица

 

 

,приумножениинакоторуюисходная

 

Квадратная матрица обратима

 

=

 

 

=

 

 

 

 

 

 

 

матрица даёт в результате единичную−1 −матрицу1

:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

тогда и только тогда, когда она невырождена, то

 

есть если её определитель не равен нулю. Для неквадратных матриц и

 

вырожденных матриц обратных матриц не существует.

 

 

 

 

 

 

3.

где

 

 

— минор,

 

 

 

 

=

(1)

+

 

 

 

 

 

 

 

 

Алгебраическое дополнение элемента матрицы — число

 

 

 

 

 

 

 

 

матрицы

 

путём вычёркивания

-й строки и -го столбца.

 

 

 

 

 

 

 

 

определитель матрицы, который получается из исходной

4.

Графическое решение

. Полученная точка

максимальная

(по

 

и

 

) из всех

 

общих точек двух функций

и .

 

 

 

 

 

 

 

 

 

 

 

5.

Минор

 

 

 

и вычисления этого самого определителя.

 

 

 

 

можно получить1

2

 

 

 

 

 

 

 

 

 

 

 

 

-го столбца

 

 

 

 

 

 

 

 

 

путём вычёркивания -й строки и

 

определителя матрицы

7