1

Тема: Новий алгоритм

Я тут створив новий алгоритм обчислення определителя(рос.)
Що з ним можна зробити??

2 Востаннє редагувалося bunyk (05.08.2013 14:22:32)

Re: Новий алгоритм

Новий алгоритм обчислення визначника матриці? Ну якщо він працює краще за той що використовує LU розклад з бібліотеки LAPACK, то думаю вам варто опублікувати статтю або захистити кандидатську.

Якщо він не кращий - тоді нічого не потрібно робити.

3 Востаннє редагувалося koala (05.08.2013 14:38:39)

Re: Новий алгоритм

Цікаво, який такий "новий" алгоритм ви могли придумати.
Хоча ні, брешу - не цікаво.
Можете в кошик перенести, там йому місце.
Так, і детермінант українською - визначник.

4 Востаннє редагувалося elektryk (05.08.2013 14:41:30)

Re: Новий алгоритм

Я не знаю, що саме використовує LU розклад з бібліотеки LAPACK. Підозрюю, що це удосконалений метод Гаусса чи якийсь чисельний ітераційний метод.
Мій алгоритм грунтується на класичному визначенні визначника (даруйте за тавтологію). Він найточніший із всіх можливих. Але за це доводиться розплачуватись швидкістю.

5

Re: Новий алгоритм

Ви всіх заінтригували - а що, є НЕТОЧНІ алгоритми обчислення визначників?

Подякували: Очі.завидющі, Chemist-i, FakiNyan3

6

Re: Новий алгоритм

НЕТОЧНІ алгоритми обчислення визначників

Це все квантові комп'ютери й кубіти

Подякували: Chemist-i, FakiNyan2

7

Re: Новий алгоритм

koala написав:

Ви всіх заінтригували - а що, є НЕТОЧНІ алгоритми обчислення визначників?

Тю-ю-ю!! Всі чисельні методи не точні.
Алгоритм Гаусса теж не точний, бо є машинні похибки "усечения и округления". Ділення найбільш вразливе до них. А в методі Гаусаа його до біса.
Якщо ж взяти класичне визначення визначника, то в ньому немає жодної операциї ділення.

8

Re: Новий алгоритм

koala написав:

Ви всіх заінтригували - а що, є НЕТОЧНІ алгоритми обчислення визначників?

Вас на першому курсі про машинний нуль і те чим float відрізняється від double не вчили?

9

Re: Новий алгоритм

Про точність - це питання не алгоритму, а методів обчислення. Ми обговорюємо якийсь алгоритм, з якими він працює числами - 4-байтовими float чи абстрактними класами, що уособлюють обчислювані числа - немає різниці. Ще раз прочитайте питання.

10

Re: Новий алгоритм

koala написав:

Цікаво, який такий "новий" алгоритм ви могли придумати.
Хоча ні, брешу - не цікаво.
Можете в кошик перенести, там йому місце.
Так, і детермінант українською - визначник.

Ги-ги-ги

koala написав:

Про точність - це питання не алгоритму, а методів обчислення. Ми обговорюємо якийсь алгоритм, з якими він працює числами - 4-байтовими float чи абстрактними класами, що уособлюють обчислювані числа - немає різниці. Ще раз прочитайте питання.

Ну, не зустрічав я обчислення визначника канонічним методом. Тому довелось алгоритм робити самому.

11

Re: Новий алгоритм

elektryk написав:

Ну, не зустрічав я обчислення визначника канонічним методом. Тому довелось алгоритм робити самому.

Ви, здається, маєте на увазі, що не зустрічали реалізації обчислення визначника канонічним методом. Бо якби ви не зустрічали алгоритму, то не вважали б його канонічним...

12

Re: Новий алгоритм

koala написав:

Про точність - це питання не алгоритму, а методів обчислення. Ми обговорюємо якийсь алгоритм, з якими він працює числами - 4-байтовими float чи абстрактними класами, що уособлюють обчислювані числа - немає різниці. Ще раз прочитайте питання.

Прочитайте визначення терміну алгоритм і поясніть що ви маєте на увазі під методами обчислення. І подумайте чому алгоритм Кехена називається алгоритмом, а не методом обчислення?

13

Re: Новий алгоритм

koala написав:
elektryk написав:

Ну, не зустрічав я обчислення визначника канонічним методом. Тому довелось алгоритм робити самому.

Ви, здається, маєте на увазі, що не зустрічали реалізації обчислення визначника канонічним методом. Бо якби ви не зустрічали алгоритму, то не вважали б його канонічним...

Саме так.

14 Востаннє редагувалося koala (05.08.2013 21:54:49)

Re: Новий алгоритм

bunyk написав:

Прочитайте визначення терміну алгоритм і поясніть що ви маєте на увазі під методами обчислення. І подумайте чому алгоритм Кехена називається алгоритмом, а не методом обчислення?

Так, я надто поспішав і тому висловився некоректно.
Я мав на увазі, що алгоритм обчислення детермінанту навряд чи буде ефективно вирішувати проблему неточних обчислень в елементарних арифметичних операціях; принаймні, для створення такого алгоритму потрібен неабиякий математичний хист, і це буде явно складніше за LU-факторизацію, до якої ОП так і не дістався.
Будь-який алгоритм має складатися з певних елементарних операцій, зрозумілих виконавцю. Якщо ми говоримо про класичний алгоритм обчислення визначника, то такими елементарними операціями швидше за все будуть арифметичні дії з числами; а алгоритми Кехена чи Карацуби за елементарні операцію мають дії із цифрами. Мені видалося очевидним, що ОП не деталізує свої дії до такого рівня, а покладається на стандартну реалізацію FPU.
Звідси найголовніше - обчислення ділення на комп'ютері дає точно таку саму точність, як і будь-яка інша операція з рухомою комою; це досягається часом, потрібним на таку операцію. Втім, ефективність алгоритму явно дає виграш порівняно із стандартним методом навіть з урахуванням втрат на ділення.

15

Re: Новий алгоритм

elektryk написав:
koala написав:
elektryk написав:

Ну, не зустрічав я обчислення визначника канонічним методом. Тому довелось алгоритм робити самому.

Ви, здається, маєте на увазі, що не зустрічали реалізації обчислення визначника канонічним методом. Бо якби ви не зустрічали алгоритму, то не вважали б його канонічним...

Саме так.

То, може, викладете його сюди на загальне обговорення?

16 Востаннє редагувалося elektryk (05.08.2013 22:35:25)

Re: Новий алгоритм

Та нема чого викладати. Канонічний метод обчислення - це звичайна формула. Вона є в будь-якому довіднику. І все! Я просто взяв бейсик та й запрограмував її. Це зробить будь хто.
Повторюю: спосіб дуже повільний. Але в окремих випадках, коли матриця погано обусловлена(рос.), тобто визначник близький до нуля є сенс примінити канонічну формулу.

17

Re: Новий алгоритм

elektryk написав:

Я тут створив новий алгоритм обчислення определителя(рос.)
Що з ним можна зробити??

зробити з нього детермінант

Подякували: FakiNyan1

18

Re: Новий алгоритм

Обумовлена погано, хочете сказати? Давайте спробуємо: ваш "канонічний" проти мого LU. Подивимося, в кого краще порахує.

Подякували: Очі.завидющі1

19 Востаннє редагувалося elektryk (05.08.2013 22:37:49)

Re: Новий алгоритм

koala написав:

Обумовлена погано, хочете сказати? Давайте спробуємо: ваш "канонічний" проти мого LU. Подивимося, в кого краще порахує.

Так, так обумовлена. Ось бачите, як ви мене збагачуєте.
Згода.

20

Re: Новий алгоритм

bunyk написав:

Новий алгоритм обчислення визначника матриці? думаю вам варто опублікувати статтю або захистити кандидатську. Якщо він не кращий - тоді нічого не потрібно робити.

Може підкажете видання. Або просто якусь фірму з математичного забезпечення.