| 
    
            
         
         | 
    
  | 
OFF: Заметки из Зазеркалья: платформа 1С сможет решать СЛАУ | ☑ | ||||||
|---|---|---|---|---|---|---|---|---|
| 
    0
    
        vis_tmp    
     10.08.18 
            ✎
    12:50 
 | 
    
 
        "Механизм решения систем линейных алгебраических уравнений"
 
        https://wonderland.v8.1c.ru/blog/mekhanizm-resheniya-sistem-lineynykh-algebraicheskikh-uravneniy Интересно, будут ли применять в "старых" решениях типа УПП 1.3 ?  | 
|||||||
| 
    82
    
        ERWINS    
     11.08.18 
            ✎
    09:21 
 | 
         
        (79) регрессия решается не через матрицу, а итерационно для больших систем (сотни и тысячи уравнений)
 
        МНК даже при предположении номрмальности не эквивалентен наибольшему правдоподобию. (80) РАУЗ решение СЛАУ часто правил?  | 
|||||||
| 
    83
    
        ERWINS    
     11.08.18 
            ✎
    09:22 
 | 
         
        инетересно а как это все будет себя чувствовать на миллионах уравнений?     
         | 
|||||||
| 
    84
    
        ERWINS    
     11.08.18 
            ✎
    09:23 
 | 
         
        Миллионы уравнений это расчет себестоимости за месяц на крупном предприятии     
         | 
|||||||
| 
    85
    
        Михаил Козлов    
     11.08.18 
            ✎
    09:52 
 | 
         
        (82) Зависит от структуры матрицы: если заполнена, то итерации вряд ли подойдут. Для матриц специального вида (полосатые, блочные с небольшим числом повязывающих уравнений) есть спец. методы. Как правило такие задачи возникают при численном решении задач мат. физики (разностные схемы в механике сплошных сред).
 
        Плохо себе представляю необходимость выявления линейной регрессии для сотен или тысяч факторов. Впрочем совсем не хочу с Вами меряться: был в теме, но во времена царя Гороха. (84) Не смешите: миллион позиций ТМЦ?  | 
|||||||
| 
    86
    
        ERWINS    
     11.08.18 
            ✎
    10:01 
 | 
         
        (85) посерийка
 
        сомневаюсь, что там решение для матриц специального вида. Максимум 2 варианта плотной и разряженной матриц.  | 
|||||||
| 
    87
    
        bolder    
     11.08.18 
            ✎
    10:28 
 | 
         
        Обсуждение кота в мешке.Пока 8.3.14 никто не видел.     
         | 
|||||||
| 
    88
    
        Гобсек    
     11.08.18 
            ✎
    13:01 
 | 
         
        "Особенностью нового функционала является то, что он поддерживает параллельное использование вычислительных ресурсов. Вы можете регулировать количество используемых потоков вычисления. Функционал доступен на сервере, в толстом клиенте и в COM-соединении."
 
        Принципиально важный момент.  | 
|||||||
| 
    89
    
        kauksi    
     11.08.18 
            ✎
    13:52 
 | 
         
        Я еще в 2011 когда тока CUDA появилась, предлагал написать компоненту, которая будет решать СЛУ, используя графический процессор. Но в 1С УПП на тот момент это было не самым тормозным местом     
        Да      | 
|||||||
| 
    90
    
        Aleksey    
     11.08.18 
            ✎
    13:56 
 | 
         
        Интересно а когда 1с сможет в многоядерность?     
         | 
|||||||
| 
    91
    
        Сияющий в темноте    
     11.08.18 
            ✎
    18:32 
 | 
         
        (90) На сервере она и сейчас это умеет, если фоновые задания запускать. А вот на клиенте, видимо из-за желания работать в режиме Web-клиента многопоточности не будет никогда.     
         | 
|||||||
| 
    92
    
        Aleksey    
     12.08.18 
            ✎
    06:06 
 | 
         
        (91) какое отношение имеет запуск разных потоков на разных ядрах к многоядерности? Или хочешь сказать каждое фоновое умеет в многоядерность? Или оно опять упирается в производительность 1 ядра     
         | 
|||||||
| 
    93
    
        bolder    
     12.08.18 
            ✎
    07:01 
 | 
         
        (92) В такое же как и любое иное многопоточное приложение.Задачи эффективно распараллеливаются по разным потокам.Решение СЛАУ в 1с насколько мне известно ,в версии 8.3.14 можно будет распределить в несколько потоков:
 
        «Особенностью нового функционала является то, что он поддерживает параллельное использование вычислительных ресурсов. Вы можете регулировать количество используемых потоков вычисления. Функционал доступен на сервере, в толстом клиенте и в COM-соединении.»  | 
|||||||
| 
    94
    
        kuromanlich    
     12.08.18 
            ✎
    11:40 
 | 
         
        наверное хотят чтоб корректировки списаний были летучими     
         | 
|||||||
| 
    95
    
        vis_tmp    
     12.08.18 
            ✎
    13:52 
 | 
         
        (89)Кому предлагал?     
         | 
|||||||
| 
    96
    
        zak555    
     12.08.18 
            ✎
    18:53 
 | 
         
        Вот это здорово.
 
        Теперь расчёт себеса в УП будет секунды ?  | 
|||||||
| 
    97
    
        bolder    
     12.08.18 
            ✎
    19:49 
 | 
         
        (96) Ну этого ещё дождаться нужно.А то будет как расширениями - вроде есть,а типовые не поддерживают в полной мере.
 
        Наверное не раньше 2021 года...  | 
|||||||
| 
    98
    
        bolder    
     12.08.18 
            ✎
    19:52 
 | 
         
        (97) К тому времени поддержку УПП вероятно закроют.     
        Нет      | 
|||||||
| 
    99
    
        Михаил Козлов    
     13.08.18 
            ✎
    09:24 
 | 
         
        (88) Присоединяюсь. Тем более интересно было бы увидеть (или прочитать про) внутренности.     
         | 
|||||||
| 
    100
    
        Провинциальный 1сник    
     13.08.18 
            ✎
    09:32 
 | 
         
        Теперь ждем платформенной реализации быстрого преобразования Фурье. На всякий случай. Вдруг 1с выпустит конфигурацию для обработки видео!     
        Да      | 
|||||||
| 
    101
    
        Кирпич    
     13.08.18 
            ✎
    09:34 
 | 
         
        (80) не переживай. в этом черном ящике стопудово будет лежать какая нибудь либа, написанная на фортране, которой лет 30 и она используется в роскосмосе, гугле, наса и т.д.     
         | 
|||||||
| 
    102
    
        ERWINS    
     13.08.18 
            ✎
    09:54 
 | 
         
        (100) тогда прогноз продаж     
         | 
|||||||
| 
    103
    
        Nyoko    
     13.08.18 
            ✎
    10:07 
 | 
         
        пострадали херней, теперь нормальные задачи надо делать, своя библиотека ИИ например.     
        Да      | 
|||||||
| 
    104
    
        YurAnt    
     13.08.18 
            ✎
    10:37 
 | 
         
        Ну если завезут нормальную поддержку распределенных вычислений на GPU - будет очень и очень интересно.
 
        Пока что гораздо производительнее себя показывают решения на том же питоне. Да      | 
|||||||
| 
    105
    
        Вафель    
     13.08.18 
            ✎
    10:38 
 | 
         
        (101) 1с заявляет о СВОЕМ алгоритме     
         | 
|||||||
| 
    106
    
        Новиков    
     14.08.18 
            ✎
    12:00 
 | 
||||||||
| 
    107
    
        Eiffil123    
     14.08.18 
            ✎
    12:41 
 | 
         
        ну теперь можно биткоины майнить на видюхах, не выходя из 1С.
 
        А как эти СЛАУ к системе взаиморасчетов можно прикрутить, я не очень понял? Нет      | 
|||||||
| 
    108
    
        Вафель    
     14.08.18 
            ✎
    12:45 
 | 
         
        те основная фишка алгоритма, то что они делят на компоненты связности?     
         | 
|||||||
| 
    109
    
        vis_tmp    
     14.08.18 
            ✎
    12:51 
 | 
         
        (107)Приблизительно, вероятно )     
         | 
|||||||
| 
    110
    
        lodger    
     14.08.18 
            ✎
    12:54 
 | 
         
        (107) первое, и возможно последнее, место применения это расчеты для РАУЗ по себестоимости товаров.     
         | 
|||||||
| 
    111
    
        Eiffil123    
     14.08.18 
            ✎
    12:59 
 | 
         
        (110) Ну вот из их статьи из зазеркалья:
 
        Задачи планирования; Взаиморасчеты между некоторым множеством юридических лиц, предприятий или отраслей; Балансовые модели; Прогнозирование; Задачи поиска экстремумов, в том числе условных экстремумов. Т.е. как-то взаиморасчеты будут обсчитывать через СЛАУ  | 
|||||||
| 
    112
    
        Вафель    
     14.08.18 
            ✎
    12:59 
 | 
         
        (111) те с фифо на рауз перейдут чтоли?     
         | 
|||||||
| 
    113
    
        ERWINS    
     14.08.18 
            ✎
    13:10 
 | 
         
        (112) в ЕРП рауз     
         | 
|||||||
| 
    114
    
        Вафель    
     14.08.18 
            ✎
    13:10 
 | 
         
        (113) по расчетам?     
         | 
|||||||
| 
    116
    
        ERWINS    
     14.08.18 
            ✎
    13:20 
 | 
         
        Всего система заполнялась на 5-10%.
 
        Матрицы в РАУЗ почти пустые. заполнение для матрицы 5000 уравнений должно быть 50 000.  | 
|||||||
| 
    117
    
        ERWINS    
     14.08.18 
            ✎
    13:20 
 | 
         
        и где оценка точности? или просто посчитали и не сравнили результат?     
         | 
|||||||
| 
    118
    
        Мыш    
     14.08.18 
            ✎
    13:24 
 | 
         
        (115) Этот форум постоянно мониторят сотрудники 1С. Особенно пристальное внимание они обращают на переполненные эмоциями сообщения. И немедля мчатся исправлять все замечания.     
         | 
|||||||
| 
    119
    
        H A D G E H O G s    
     модератор 
    14.08.18 
            ✎
    13:25 
 | 
         
        (115) Рекомендую внимательно почитать пост.     
         | 
|||||||
| 
    120
    
        NSSerg    
     14.08.18 
            ✎
    13:33 
 | 
         
        (117) Суть метода в упрощении системы уравнений, без потери точности. Например если в уравнение входит только одна неизвестная, то это уравнение можно исключить. А потом уже решается стандартными методами.     
         | 
|||||||
| 
    121
    
        H A D G E H O G s    
     14.08.18 
            ✎
    13:37 
 | 
         
        (120) Товарищь перепутал точный метод Гаусса и приближенный итерационный метод Гаусса-Зейделя и возбудился.     
         | 
|||||||
| 
    122
    
        Вафель    
     14.08.18 
            ✎
    13:49 
 | 
         
        Разве может быть 100% точность? 
        ведь если разделить 10 на 3 то уже 100% точности не будет  | 
|||||||
| 
    123
    
        ERWINS    
     14.08.18 
            ✎
    14:38 
 | 
         
        (119) я внимательно читал     
         | 
|||||||
| 
    124
    
        ERWINS    
     14.08.18 
            ✎
    14:39 
 | 
         
        (120) тут им браво. Хотя для метода сопряженных градиентов это не дало бы выйгрыша или метода переменных шагов.     
         | 
|||||||
| 
    125
    
        ERWINS    
     14.08.18 
            ✎
    14:41 
 | 
         
        (122) смотрим точность для Гауса. 
 
        для n=10 0.0000001 для n=20 0.0000001*2^10 = 0,00001 для n=30 0.0000001*2^20 = 0,01 для n=40 0.0000001*2^30 = 10? для простой итерации точность падает как N^2  | 
|||||||
| 
    126
    
        ERWINS    
     14.08.18 
            ✎
    14:47 
 | 
         
        (121) разницы нет. если они не считают в рациональных числах. Но тогда им придется счиать в десятичной записи.     
         | 
|||||||
| 
    127
    
        ERWINS    
     14.08.18 
            ✎
    15:16 
 | 
         
        как у нее поведение с плохообусловленными матрицами?     
         | 
|||||||
| 
    128
    
        ERWINS    
     14.08.18 
            ✎
    15:17 
 | 
         
        а деление на подкластеры легко делается декстрой. там сложность О(N) это нет смыла переностить в спецмодуль. 1с для этого достаточно быстра.     
         | 
|||||||
| 
    129
    
        Михаил Козлов    
     14.08.18 
            ✎
    15:33 
 | 
         
        (127) Вот появится и проверим (если не будет лень).
 
        (128) Скажем, несколько почти независимых производств (не пересекающихся по ТМЦ). И заготовительный участок, который делает на всех. Как будете декомпозировать?  | 
|||||||
| 
    130
    
        Eiffil123    
     14.08.18 
            ✎
    15:36 
 | 
         
        Как регистры расчета - изобретены для ЗИК, так и этот механизм - для РАУЗ в ERP     
         | 
|||||||
| 
    131
    
        NSSerg    
     14.08.18 
            ✎
    15:39 
 | 
         
        (128) Их алгоритм работает с асимптотикой  Θ(n⋅log(n)⋅log(n)), и хорошо параллелится.
 
        Поиск компонент связности это О(n+m) Если это делать в 1С - то не параллелится и имеет плохую константу. Конечно же нельзя переносить поиск компонент связности в 1С.  | 
|||||||
| 
    132
    
        ERWINS    
     14.08.18 
            ✎
    15:46 
 | 
         
        (131) откуда асимптотика?     
         | 
|||||||
| 
    133
    
        ERWINS    
     14.08.18 
            ✎
    15:50 
 | 
         
        в матрице n*n*10% коэффициентов. Даже если каждый используется 1 раз асимптотика будет n^2     
         | 
|||||||
| 
    134
    
        Михаил Козлов    
     14.08.18 
            ✎
    15:51 
 | 
         
        (132) log(n) - средний размер компоненты связности.
 
        Может в 1С смотрели, может нет: Цурков В.И. "Декомпозиция в задачах большой размерности", 1981г. Там несколько похитрее.  | 
|||||||
| 
    135
    
        NSSerg    
     14.08.18 
            ✎
    15:53 
 | 
         
        (132) Из статьи, которую ты внимательно читал :)     
         | 
|||||||
| 
    136
    
        ERWINS    
     14.08.18 
            ✎
    15:54 
 | 
         
        (135) см (133)     
         | 
|||||||
| 
    137
    
        ERWINS    
     14.08.18 
            ✎
    15:56 
 | 
         
        (135) нижняя граница не меньше чем n^2*(плотность) - плотность 10%     
         | 
|||||||
| 
    138
    
        Михаил Козлов    
     14.08.18 
            ✎
    15:59 
 | 
         
        (136) Пусть k - размер компоненты связности. Тогда общая трудоемкость - О(k^3*n/k) = O(n*k*k). Считаем, что k = log(n).
 
        Так устроит?  | 
|||||||
| 
    139
    
        vvp91    
     14.08.18 
            ✎
    16:03 
 | 
         
        В самом расчете СЛАУ или графов на языке проблемы нет, если алгоритм написан правильно, в соответствии с теорией.
 
        Основное время занимает запись результатов расчетов в базу данных. Еще много времени отжирает получение данных для расчета из базы данных. Запись и выборка занимают до 95%% времени. Убедиться в этом можно в протоколах партионного расчета и расчета себестоимости в ЕРП.  | 
|||||||
| 
    140
    
        Eiffil123    
     14.08.18 
            ✎
    16:06 
 | 
         
        (139) о да. В УПП в свое время 50% времени уходило на запись проводок в регистр бухгалтерии.     
         | 
|||||||
| 
    141
    
        бигмак    
     14.08.18 
            ✎
    16:09 
 | 
         
        (139) а щас в памяти будет прикинь     
         | 
|||||||
| 
    142
    
        vvp91    
     14.08.18 
            ✎
    16:12 
 | 
         
        (141) что будет в памяти?
 
        И сейчас сами расчеты ведутся в памяти. СЛАУ решается на запросах в памяти SQL, а партионный граф считается в памяти сервера 1С. Только данные для расчета читать из таблиц СУБД и результаты расчета писать в таблицы СУБД все равно придется.  | 
|||||||
| 
    143
    
        Вафель    
     14.08.18 
            ✎
    16:13 
 | 
         
        (139) но тут утверждают что часами и даже днями расчет бывает идет     
         | 
|||||||
| 
    144
    
        NSSerg    
     14.08.18 
            ✎
    16:13 
 | 
         
        (133) Они под n могут иметь в виду m, но сути это не меняет.     
         | 
|||||||
| 
    145
    
        бигмак    
     14.08.18 
            ✎
    16:21 
 | 
         
        (142) ты говоришь что основное время это запись данных. Ты про итоговые данные расчета говоришь? Я предполагал что при расчете создается много промежуточных записей в РС или врем таблицах, которые при работе нового механизма будут не нужны. Или как?     
         | 
|||||||
| 
    146
    
        vvp91    
     14.08.18 
            ✎
    16:30 
 | 
         
        (139) как правило сутками может идти весь блок "закрытие месяца", а там столько навоза намешано разными программистами.
 
        Еще красавцы с суточными расчетами отличаются открытием прошлых периодов за пару лет. При этом сам расчет партий или само решение СЛАУ длится секунды. (145) Конечно и при новом механизме запись на диск будет нужна - память то не резиновая. И сейчас платформа 1С активно использует диск для хранения больших таблиц значений. Например, на ИТС явно описаны ограничение в 64 Мб для выборок, после которого платформа начинает использовать диск. При этом появление такого механизма в платформе - это огромный плюс. Но он направлен на упрощение разработки и снижение требований к прикладным программистам, которым больше не потребуется делать таких алгоритмов самостоятельно.  | 
|||||||
| 
    147
    
        NSSerg    
     14.08.18 
            ✎
    16:33 
 | 
         
        (146) Вы уверены, что ваш пост, и утверждение что расчет идет часами - относятся к одинаковому объему данных?     
         | 
|||||||
| 
    148
    
        Вафель    
     14.08.18 
            ✎
    16:34 
 | 
         
        (146) так никто кроме самих 1с таких алгоритмов и не делал     
         | 
|||||||
| 
    149
    
        ERWINS    
     14.08.18 
            ✎
    16:35 
 | 
         
        (138) у них явно сказано, что k= 0.1*n
 
        (139) Insert group решает проблему с запись. выйгрыш в 100 раз. так как индексы и т д обновляются одноименно. (144) у них алгоритм лучше теоретического предела!!!!! это минимум абелевка. если правильно написали.  | 
|||||||
| 
    150
    
        NSSerg    
     14.08.18 
            ✎
    16:53 
 | 
         
        Да, что-то они не то написали. Коэффициентов у них 0,1*n^2 - О(n^2), а сложность алгоритма О(n*ln^2) - так не бывает.     
         | 
|||||||
| 
    151
    
        NSSerg    
     14.08.18 
            ✎
    16:58 
 | 
         
        Я думаю, что они имеют в виду - что у них переменных не 0,1*n^2, а 0,1*n. Тогда всё похоже на правду.     
         | 
|||||||
| 
    152
    
        NSSerg    
     14.08.18 
            ✎
    16:59 
 | 
         
        Ну или в принципе ребер О(n), а не О(n^2)     
         | 
|||||||
| 
    153
    
        NSSerg    
     14.08.18 
            ✎
    17:00 
 | 
         
        (148) Параллельные алгоритмы решения больших разреженных СЛАУ востребованы не только в 1С.     
         | 
|||||||
| 
    154
    
        бигмак    
     14.08.18 
            ✎
    17:01 
 | 
         
        Партионный граф считается на врем таблицах. Т.е. на СУБД. А будет типа in-memory     
         | 
|||||||
| 
    155
    
        Михаил Козлов    
     14.08.18 
            ✎
    17:14 
 | 
         
        (153) Большие разреженные <> блочные.
 
        Например, разностные схемы (полосатые). А по их поводу - половина ЖВМиМФ в советское время. Ничего особо интересного в ссылке (106) не увидел.  | 
|||||||
| 
    156
    
        бигмак    
     14.08.18 
            ✎
    17:44 
 | 
         
        Хотя если посмотреть протокол расчета в ерп, время на создание ВтТаблицаРешений плевое по сравнению с подготовкой данных в другие врем таблицы.     
         | 
|||||||
| 
    157
    
        ERWINS    
     14.08.18 
            ✎
    18:09 
 | 
         
        (151) это как?
 
        более вероятно что число не нулевых коэффициентов допустим 10n что в принципе сценарий РАУЗ тогда декстра даст такой порядок, но ГАУСС!!!!! это пи---ц  | 
|||||||
| 
    158
    
        ERWINS    
     14.08.18 
            ✎
    18:10 
 | 
         
        (153) большие это итерационные или даже монтекарло     
         | 
|||||||
| 
    159
    
        ERWINS    
     14.08.18 
            ✎
    18:11 
 | 
         
        Добавили бы групповой инсерт.....
 
        пусть блокировка, но БЫСТРО  | 
|||||||
| 
    160
    
        Shrk_V_V_V    
     15.08.18 
            ✎
    12:20 
 | 
         
        Вьюху бы. Уморился одно и тоже из запроса в запрос переписывать. 
 
        Но СЛАУ тоже круто))  | 
|||||||
| 
    161
    
        Вафель    
     15.08.18 
            ✎
    12:21 
 | 
         
        (159) групповой инсерт есть в регистр сведений     
         | 
|||||||
| 
    162
    
        Вафель    
     15.08.18 
            ✎
    12:22 
 | 
         
        (153) И что не в 1с специально купят 1с чтоб слау считать?     
         | 
|||||||
| 
    163
    
        Гена123    
     15.08.18 
            ✎
    12:29 
 | 
         
        (162) Это всё попытки влезть в Ынтерпрайз, пока не очень успешные...     
         | 
|||||||
| 
    164
    
        NSSerg    
     15.08.18 
            ✎
    13:37 
 | 
         
        (162) при чем тут это? Речь шла о том, что крутых алгоритмов решения больших разреженных слау нет потому что они практически нигде не применяются кроме 1С. А я говорю - что применяются, и алгоритмы еще как востребованы.     
         | 
|||||||
| 
    165
    
        Вафель    
     15.08.18 
            ✎
    13:58 
 | 
         
        (164) я говорил, что никто кроме  самой 1с с ее РАУЗ в 1сном мире не считает СЛАУ     
         | 
|||||||
| 
    166
    
        Вафель    
     15.08.18 
            ✎
    14:00 
 | 
         
        И это было ответ на упрощение разботки конф     
         | 
|||||||
| 
    167
    
        Михаил Козлов    
     15.08.18 
            ✎
    14:31 
 | 
         
        (165) СЛАУ могут пригодиться не только для РАУЗ.
 
        (164) Алгоритм из (106) не имеет преимуществ перед "классикой": у меняя создалось впечатление, что сравнение делалось на блочных матрицах. Если подкинуть ему 3-х диагональную матрицу, то блоков не будет и трудоемкость - O(n^3), тогда как прогонка - O(n). Апеллируя к содержательной задаче производства, как основному объекту для расчета (дескать, матрица будет блочной) выпадает из внимания случай общих заготовительных цехов.  | 
|||||||
| 
    168
    
        Вафель    
     15.08.18 
            ✎
    14:32 
 | 
         
        (167) покажи мне хотя бы 1 конфу где такое есть? 
        Хотя может они потом появятся )))  | 
|||||||
| 
    169
    
        Михаил Козлов    
     15.08.18 
            ✎
    14:44 
 | 
         
        (168) Конфу (типовую) не покажу. 
 
        Но может понадобиться для анализа, прогноза, регрессионной модели. Например, как зависят объемы продаж от длины менеджеров по продажам. Хотя для этих задач проще данные выгрузить и крутить их в пакетах анализа.  | 
|||||||
| 
    170
    
        vi0    
     16.08.18 
            ✎
    16:00 
 | 
         
        коллеги, помогите вспомнить математику
 
        приведите практический производственный пример слау с некоторым количество неизвестных, например с четырьмя Чтобы тематика была близка к типовым: себестоимость, взаиморачеты или что то типа того  | 
|||||||
| 
    171
    
        vi0    
     17.08.18 
            ✎
    10:46 
 | 
         
        м?     
         | 
|||||||
| 
    172
    
        Вафель    
     17.08.18 
            ✎
    11:02 
 | 
||||||||
| 
    173
    
        vi0    
     17.08.18 
            ✎
    14:39 
 | 
         
        (172) вот спасибо!
 
        автор крут  | 
|||||||
| 
    174
    
        vi0    
     22.08.18 
            ✎
    15:56 
 | 
         
        https://habr.com/company/1c/blog/420029/
 
        Объясните, кто в статье понял фразу про транспонирование матрицы. Что здесь дает транспонирование? "При первом же взгляде на неё возникает ассоциация с другим математическим объектом — матрицей смежности графа. Так почему бы не преобразовать данные в списки смежности, сэкономив оперативную память в процессе выполнения и ускорив доступ к ненулевым коэффициентам? Для этого нам достаточно транспонировать матрицу и установить инвариант.."  | 
|||||||
| 
    175
    
        rphosts    
     22.08.18 
            ✎
    15:59 
 | 
         
        (172) супер!     
         | 
|||||||
| 
    176
    
        GANR    
     23.08.18 
            ✎
    11:52 
 | 
         
        На кой? Переписывать море уже существующих алгоритмов в умирающей программе.     
        Нет      | 
|||||||
| 
    177
    
        vi0    
     23.08.18 
            ✎
    15:04 
 | 
         
        (176) да разве там море     
         | 
|||||||
| 
    178
    
        Вафель    
     23.08.18 
            ✎
    15:05 
 | 
         
        (117) вообще-то всего одна     
         | 
|||||||
| 
    179
    
        Вафель    
     23.08.18 
            ✎
    15:06 
 | 
         
        ну и остальные вырезаются из нее, так что за самостоятельные можно не считать     
         | 
|||||||
| 
    180
    
        Михаил Козлов    
     23.08.18 
            ✎
    22:01 
 | 
         
        (174) Я думаю, речь идет о том, чтобы быстро получать коэффициенты матрицы как в строке i, так и в столбце j.
 
        Например, для доступа по строке: массив (по i) соответствий - ключ = j, значение = A[i][j]. По i получаете ссылку на массив соответствий, в котором находите коэффициент для j.  | 
|||||||
| 
    181
    
        vi0    
     24.08.18 
            ✎
    12:56 
 | 
         
        (180) похоже на то     
         | 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |