Кожомбердиева Г.И. (kgi-pgups@yandex.ru) - Петербургский государственный университет путей сообщения (доцент кафедры «Информационные и вычислительные системы»), г. Санкт-Петербург, Россия, кандидат технических наук, Бураков Д.П. (burakovdmitry8@gmail.com) - Петербургский государственный университет путей сообщения (доцент кафедры «Математика и моделирование»), г. Санкт-Петербург, Россия, кандидат технических наук, Хамчичев Г.А. (gyqn@yandex.ru) - Петербургский государственный университет путей сообщения Императора Александра I (аспирант кафедры информационных и вычислительных систем), Санкт-Петербург, Россия | |
Ключевые слова: принятие решений, формула байеса, байесовская вероятностная модель, групповое экспертное рейтинговое оценивание, нечеткая логика, вероятностная логика, байесовская логико-вероятностная модель нечеткого вывода, язык java |
|
Keywords: decision making, Bayes' formula, bayesian probabilistic model, group expert rating estimation, fuzzy logic, probabilistic logic, bayesian logical-probabilistic fuzzy inference model, java language |
|
|
Принятие решений – сложный процесс, требующий от лица, принимающего решения (ЛПР), учета различных факторов, в том числе неопределенных, при оценке альтернатив с целью выбора наиболее подходящей [1]. Довольно часто значения характеристик оцениваемых альтернатив неизвестны и/или не поддаются точному измерению. В таких ситуациях ЛПР вынуждены либо прибегать к услугам предметных экспертов, которые сравнивают или оценивают имеющиеся альтернативы (варианты решения), используя собственные субъективные оценки [1, 2], либо использовать аппарат нечеткого вывода [1, 3, 4], позволяющий получить решение, основанное на качественных оценках. В обоих случаях перед ЛПР встает проблема принятия решения на основе неточных (нечетких, некорректно определенных) данных, исследованная еще в классиче- ских работах по нечеткой логике и байесов- скому подходу [5–7]. В последнее время все больше специа- листов по машинному обучению и анализу данных признают теорему Байеса наиболее эффективным способом превращения их в знания, поэтому при увеличении объемов накопленных данных и повышении эффективности вычислений она может распространяться на ранее не охваченные области знаний [8]. Так, регуляризирующий байесовский подход давно и успешно применяется в области измерений в условиях неопределенности [9]. Аппарат байесовских сетей используется, например, при создании систем диагностики и прогнозиро- вания [10]. Более того, некоторые эксперты полагают, что, если у байесовского обучения и есть какие-то границы, пока они неизвест- ны [11]. Авторы настоящей статьи уже достаточно давно исследуют возможности применения байесовского подхода к решению задач, так или иначе требующих выбора из альтернативных вариантов в условиях нестохастической неопределенности, при обработке данных, основанных на экспертных оценках. Развитием авторских байесовских вероятностных моделей оценивания качества (решений, процессов, продуктов) стали байесовская модель группового экспертного рейтингового оценивания и байесовская логико-вероятностная модель нечеткого вывода [12–14]. Интерес авторов к программной реализации именно этих моделей вполне понятен и оправдан. В настоящее время ранжирование применяется повсеместно, в том числе и с использованием модифицированных классических подходов, например, для выделения пользовательских предпочтений [15], при выдаче результатов поиска [16], при анализе мультимедийных данных [17]. Классические нечеткие модели Мамдани–Заде и Такаги–Сугено–Канга используются при моделировании производственных процессов [4] и при построении нечетких нейронных сетей [18]. Нечеткий логический вывод, а также нечеткие расширения других известных методов принятия решения, таких как метод анализа иерархий, активно и успешно применяются в задачах поддержки принятия решений, например, для оценки надежности технических систем [19]. Байесовские вероятностные модели как основа программ для поддержки принятия решений Предложенные и исследованные авторами нетрадиционные модели на основе формулы Байеса, в том числе модели [12–14], объединены общей ключевой идеей. 1. Множество возможных альтернативных решений, из которых делает выбор ЛПР, представляет собой конечное множество гипотез {H1, H2, …, Hn}. В зависимости от типа задачи и используемой модели это могут быть гипотезы о качестве оцениваемого объекта (решения, процесса, продукта), о месте объекта, оцениваемого группой экспертов, в рейтинге, о возможном значении выходной лингвистической переменной. 2. Входные оценочные данные или результаты неточных измерений x1, x2, …, xm интерпретируются как набор свидетельств {ei}, i = 1, …, m, в пользу той или иной гипотезы Hj, j = 1, …, n, из множества возможных гипотез, определяемых типом решаемой задачи. 3. Полученные свидетельства специфичным для модели способом трансформируются в набор байесовских условных вероятностей {P(e1, …, em | Hj)}, вычисляемых в предположении истинности соответствующей гипотезы Hj, а далее в качестве промежуточного результата рассчитывается апостериорное распределение вероятностей {P(Hj | e1, …, em)}, j = 1, …, n, на множестве этих гипотез. Для этого используется формула Байеса, при необходимости модифицированная в соответствии со спецификой используемой модели. 4. Апостериорные распределения вероятностей в моделях [12–14] используются как основа для несложного вычисления конечного результата в отличие от байесовских моделей оценивания качества, в которых для принятия решений непосредственно применяется принцип MAP (Maximum A posteriori Probability). Для эффективного применения любого полезного подхода в области принятия решений необходимо оснастить ЛПР соответствующими программными инструментами, которые должны не только обеспечивать реализацию выбранной модели для решения задач соответствующего типа, но и осуществлять удобную для ЛПР поддержку процесса принятия решения. В настоящей статье предлагаются две программы, реализующие авторские модели для решения задач группового экспертного рейтингового оценивания и задач нечеткого логического вывода [12–14]. Программы обладают удобным графическим интерфейсом пользователя [20], позволяющим ЛПР эффективно решать прикладные задачи указанных типов. В качестве средства реализации выбран широко известный язык программирования Java, используемый для создания платформно-независимых приложений. Сообществом программистов Java для решения разнообразных задач разработаны и постоянно развиваются различные полезные библиотеки классов и визуальных компонентов, например, библиотеки обработки коллекций, вычислительной математики и символьных вычислений, визуальные компоненты для вывода графиков. Некоторые из этих специализированных библиотек [https://mvnrepository.com/ artifact/org.mvel/mvel2, https://mvnrepository. com/artifact/org.apache.commons, https:// mvnrepository.com/artifact/org.knowm.xchart] нашли применение в разработанных авторами программах. Программа для группового экспертного рейтингового оценивания на базе байесовской модели В основе программы лежит формальное описание байесовской модели группового экспертного рейтингового оценивания [12]. В этой модели байесовский подход к решению задач оценивания качества некоторого объекта по множеству показателей на основе субъективных экспертных оценок адаптирован к задаче рейтингового оценивания множества объектов группой экспертов. Результатом оценивания каждого ранжируемого объекта является апостериорное распределение вероятностей на множестве гипотез о ранге этого объекта. В случае неуверенности эксперты группы имеют право присваивать оцениваемому объекту два (возможно, более) смежных ранга, то есть привносить при назначении рангов элементы неопределенности. Используемые при вычислении апостериорного распределения значения условных вероятностей понимаются как степени соответствия полученных свидетельств (экспертных оценок) предположениям об истинности гипотез. Условные вероятности вычисляются как отношения числа экспертов, присвоивших объекту определенный ранг, к общей численности группы экспертов. Итоговый рейтинг объектов формируется в результате несложной математической обработки всех полученных для оцениваемых объектов апостериорных распределений. Два способа такой обработки описаны и продемонстрированы на примерах в [12]. Одним из способов является назначение объекту нормализованного ранга, полученного на основе вычисленного математического ожидания случайной величины, множеством значений которой является множество возможных рангов (гипотез), а законом распределения – апостериорное распределение вероятностей. При нормализации ранга математические ожидания заменяются натуральными числами с сохранением полученного порядка в рейтинге. Для разрешения возможных коллизий можно учитывать коэффициенты компетентности экспертов, а при необходимости выполнять многораундовое оценивание, в рамках которого апостериорные вероятности, полученные в текущем раунде, используются в качестве априорных при вычислениях в следующем раунде. Рассматриваемая программа предназначена для группового экспертного рейтингового оце- нивания объектов любой природы. Она оснащена графическим интерфейсом пользователя, предоставляющим оператору (ЛПР) возможность указать членов экспертной группы, производящей оценивание, перечень объектов, подлежащих рейтинговому оцениванию, компетентность экспертов и количество мест в итоговом рейтинге, как это показано на рисунке 1. В процессе оценивания эксперты вводят ранги, присвоенные ими оцениваемым объектам, при этом в случае неуверенности любой из экспертов может указать для любого оцениваемого объекта два смежных ранга. Эта возможность, безусловно, повышает комфортность условий работы команды экспертов и объективность формируемых рейтингов (рис. 2). Отметим, что авторами дополнительно исследуется опция расширения диапазона смежных рангов. После ввода оценок определяется итоговое распределение объектов по местам в рейтинге. При этом может учитываться различный уровень компетентности экспертов, выполняющих оценивание. Поддерживается возможность проведения многораундового оценивания, которое может быть использовано при наличии нескольких групп экспертов, нескольких различных критериев оценивания объектов либо при выявлении коллизий. На рисунке 3 показан пример ранжирования объектов на основе введенных экспертных оценок с учетом компетентностей экспертов, выполнявших оценивание. Для обеспечения удобной для ЛПР работы программа предусматривает сохранение настроек оценивания в файле и считывание их из файла, а также экспорт результатов оценивания в текстовый файл отчета. Разработанная авторами программа зарегистрирована в Роспатенте [21] и внедрена в учебный процесс в Петербургском государственном университете путей сообщения (ПГУПС) в качестве программного инструмента. В процессе использования программы студенты не только выполняют ранжирование выбранного ими набора объектов, выступая в качестве экспертов, но и сравнивают полученные результаты с ожидаемым ими порядком объектов, причем в большинстве случаев итоговое ранжирование совпадает с ожидаемым. По мнению авторов, разработанная программа может быть использована и для решения прикладных задач экспертного рейтингового оценивания, например, при составлении рейтингов участников творческих и профессиональных конкурсов, при проведении конкурсной экспертизы качества некоторых видов продукции на основе органолептических характеристик, при построении рейтингов, предусмотренных системами менеджмента качества различных предприятий и организаций, и т.д. Программа для решения задач нечеткого вывода на основе байесовской логико-вероятностной модели Программа разработана для верификации и демонстрации практической применимости байесовской логико-вероятностной модели (БЛВ-модели) нечеткого вывода, предложенной в [13] и наиболее полно представленной в [14], для решения прикладных задач. Суть процедуры нечеткого вывода, базирующегося на БЛВ-модели, заключается в следующем. Множество значений каждой выходной лингвистической переменной (ЛП) отождествляется с множеством соответствующих байесовских гипотез, а измеренные или оцененные «четкие» входные значения трактуются как свидетельства в пользу этих байесовских гипотез. Значения функций принадлежности (ФП) соответствующих термов входных ЛП используются как аргументы функций вероятностной логики (ФВЛ), получаемых преобразованием набора заданных нечетких продукций. Вычисленные таким образом значения используются как условные вероятности, определяющие степени соответствия свидетельств предположениям об истинности соответствующих байесовских гипотез. Далее они используются для определения апостериорного распределения вероятностей на множестве гипотез, соответствующих значениям выходной ЛП. Это распределение вероятностей применяется для дефаззификации полученного значения выходной ЛП путем нахождения соответствующего математического ожидания. Найденное дефаззифицированное значение выходной ЛП отождествляется с искомым значением выходной величины, которое используется ЛПР при принятии решения. В [20] отмечено, что предложенная БЛВ-модель нечеткого вывода не содержит ограничений, присущих моделям вывода Сугено и Цукамото, и по своим возможностям близка к модели Мамдани. Дополнительно это подтверждается сопоставлением результатов нечеткого логического вывода, полученных с использованием БЛВ-модели, с результатами работы алгоритма Мамдани [3, 4, 22]. Рассматриваемая программа оснащена удобным графическим оконным интерфейсом. С целью упрощения освоения программы заинтересованными пользователями авторы сознательно использовали принцип организации вкладок главного окна, повторяющий организацию визуальных компонентов дополнения Fuzzy Logic Toolbox, разработанного для математической системы общего назначения MATLAB [3]. На вкладке «Переменные» задаются входные и выходные ЛП, включая их терм-множества и ФП термов. Пример такой настройки приведен на рисунке 4. Программа позволяет ЛПР использовать как стандартные ФП, применяемые для описания числовых нечетких множеств (треугольные, Гаусса и т.д.), так и кусочно-линейные функции произвольной формы, задаваемые списком точек. Форма и местоположение (смещение) ФП на шкале переменной регулируются числовыми параметрами аналогично тому, как это реализовано в Fuzzy Logic Toolbox. На вкладке «Правила» перечисляются и редактируются нечеткие продукции. Здесь за образец также взята реализация работы с правилами в Fuzzy Logic Toolbox. Для каждого пра- вила задаются посылка в виде логического выражения, связывающего значения входных ЛП, заключение в виде указания значения, принимаемого выходной ЛП, и вес правила. Пример настройки правил приведен на рисунке 5. На вкладке «Логический вывод» осуществляются ввод входных значений и вывод результата нечеткого вывода в виде дефаззифицированного значения выходной ЛП. Разработанная программа зарегистрирована в Роспатенте [23]. Для поддержки внедрения программы в учебный процесс в ПГУПС в нее встроена функция загрузки демонстрационных примеров систем нечеткого вывода, в том числе описанных в [3, 22]. Кроме того, ориентация на студентов как целевую аудиторию позволила разработчикам программы ограничиться использованием нечетких моделей, содержащих только одну выходную ЛП. Особенности программной реализации байесовских вероятностных моделей Отдельный интерес представляет исследование вопроса о сложности программной реализации байесовских вероятностных моделей группового экспертного рейтингового оценивания и нечеткого вывода. Опыт авторов показал следующее. Байесовская модель группового экспертного рейтингового оценивания [12] вследствие относительной простоты формального описания может быть эффективно реализована стандартными средствами языка Java, включенными в состав JDK 1.8 [20]. Входные данные и результаты вычислений могут храниться в обычных двумерных массивах чисел с плавающей запятой, а единообразное использование модифицированной формулы Байеса для вычисления апостериорных вероятностей позволяет выполнять ранжирование как с учетом, так и без учета уровня компетентности экспертов. Упрощенная блок-схема алгоритма группового экспертного рейтингового оценивания представлена на рисунке 6. Одной из особенностей языка Java является его мультипарадигменность [24], хотя это объектно-ориентированный язык. Программы, написанные на Java, представляют собой совокупность классов, однако в силу простоты представленного алгоритма работы всю вычислительную логику программы можно сосредоточить в единственном классе, содержащем методы обработки исходных данных от оконных форм и получения рейтинга оцениваемых объ- ектов. Таким образом, фактически програм- мная реализация модели выполнена с применением концепции структурного программирования [25]. Полученные результаты ранжирования отображаются с помощью визуальных компонентов библиотеки Swing, а также могут быть экспортированы в файл стандартными сред- ствами ввода-вывода Java. В дополнение к этому разработанный класс можно оформить в виде автономной библиотеки, реализующей авторскую байесовскую модель рейтингового оценивания с целью использования в составе других программных инструментов для поддержки принятия решений. В противоположность модели рейтингового оценивания для реализации БЛВ-модели не- четкого вывода в силу ее большей сложности оптимальным решением было использовать возможности объектно-ориентированной парадигмы, предоставляемые языком Java. Внут- ренняя логика работы программы реализована пакетами связанных классов, представляющих основные сущности модели: лингвистическая переменная, терм, функция принадлежности терма, нечеткое продукционное правило. Содержимое пакетов разработанных классов представлено на рисунке 7. На иллюстрации для упрощения восприятия приведены непол- ные интерфейсы классов: отображены только их наиболее характерные методы, причем типы возвращаемых значений и списки параметров опущены. Дадим краткое описание структуры классов. Центральным классом модели, выполняющим всю координацию процесса хранения данных системы нечеткого вывода и последующих вычислений, является класс BayesianFuzzy. Объект класса RuleBase хранит базу нечетких правил, каждое из которых описывается объектом класса Rule. Объект класса VarBase обрабатывает совокупность входных ЛП системы нечеткого вывода. Каждая входная ЛП представляется объектом класса Variable, а выходная – объектом производного класса Output- Variable. В объектах этих классов хранятся списки объектов класса Term, описывающих термы соответствующей ЛП. Каждый терм связан с соответствующей ему ФП, представленной объектом класса TermFunction. Для решения задачи дефаззификации выходного значения в программу встроены методы численного интегрирования ФП. Для этого классы всех ФП реализуют интерфейс Function, который используется классом FIntegrator. Кроме того, интерфейс Function обеспечивает для объектов класса TermFunction возможность унифицированного взаимодействия с объектами классов ФП разных типов. Структура разработанных классов обладает степенью универсальности, достаточной для ее дополнения, например, новыми типами ФП. БЛВ-модель нечеткого вывода имеет встроенные возможности для оптимизации вычислительной сложности задачи [20]. Так, например, численное интегрирование ФП, используемое для нахождения характерных значений термов, достаточно выполнить только один раз, не повторяя вычисления многократно при дефаззификации, в отличие от классических алгоритмов типа Мамдани или Сугено. Другой особенностью метода нечеткого вывода, базирующегося на БЛВ-модели, является необходимость (в общем случае) редукции множества нечетких продукций путем объединения в процессе вывода заключений всех продукций с одинаковым заключением [13, 14]. Посылка объединенной продукции представляет собой дизъюнкцию посылок объединяемых продукций, которая записывается в ортогональной дизъюнктивной нормальной форме (ОДНФ) функции алгебры логики (ФАЛ). В работе [13] преобразование ФАЛ к ОДНФ, упрощающей построение и вычисление эквивалентной ей ФВЛ, рекомендуется вы- полнять по известному алгоритму Ю.В. Мерекина [26]. Однако для программной реализации авторы предпочли использовать дизъюнктивную совершенную нормальную форму (ДСНФ), которая по определению также является ортогональной ДНФ. ДСНФ имеет более регулярную структуру, хотя и включает большее количество элементарных произведений логических пе- ременных. ДСНФ посылки объединенной продукции для последующего перехода к ФВЛ формируется с использованием механизмов символьных вычислений, предоставляемых библиотекой MVEL. Формирование ДСНФ и соответствующей ФВЛ выполняется классом BooleanEvaluator. Данные преобразования реализуются на начальном этапе решения задачи вывода, когда множество нечетких продукций уже сформировано, и в дальнейшем полученные выражения ФВЛ используются для вычисления апостериорных вероятностей в готовом виде. При этом ФВЛ посылки каждой продукции имеет простой вид суммы произведений веро- ятностей, что позволяет рассчитывать ее с минимальными затратами вычислительных ресурсов. Дополнительно для организации эффективной обработки коллекций объектов были привлечены готовые средства библиотеки Apache Commons Lang, а также универсальный графический компонент xChart, обеспечивающий вывод на экран графиков ФП. Заключение Исследования авторов настоящей статьи ориентированы на продвижение байесовского подхода в нетрадиционных для него областях применения. В работе преследовалась цель не только продемонстрировать перспективность использования байесовских моделей для решения прикладных задач принятия решений в условиях нестохастической неопределенности при обработке данных, основанных на экспертных оценках, но и показать, что эти модели могут быть эффективно реализованы программно и позволяют строить программные инструменты для поддержки принятия решений. Такие программные средства могут быть задействованы в случаях, когда использование больших систем общего назначения, подобных MATLAB, неоправданно либо экономически невыгодно. В статье представлены краткое описание и программная реализация оригинальных автор- ских моделей группового экспертного рейтин- гового оценивания и нечеткого вывода, основанных на формуле Байеса. Обсуждаются опыт разработки программ на языке Java, использование при разработке концепций структурного и объектно-ориентированного программирования. Отмечены особенности программ и преимущества, обусловленные используемыми байесовскими моделями. Литература 1. Петровский А.Б. Теория принятия решений. М.: Академия, 2009. 400 с. 2. Колбин В.В. Математические методы коллективного принятия решений. СПб: Лань, 2015. 256 с. 3. Леоненков А.В. Нечеткое моделирование в среде MATLAB и fuzzyTECH. СПб: БХВ-Петербург, 2005. 736 с. 4. Кудинов Ю.И., Келина А.Ю., Кудинов И.Ю., Пащенко А.Ф., Пащенко Ф.Ф. Нечеткие модели и системы управления. М.: ЛЕНАНД, 2017. 327 с. 5. Заде Л.А. Понятие лингвистической переменной и его применение к принятию приближенных решений; [пер. с англ.]. М.: Мир, 1976. 165 с. 6. Моррис У.Т. Наука об управлении: байесовский подход; [пер. с англ.]. М.: Мир, 1971. 304 с. 7. Райфа Г. Анализ решений (введение в проблему выбора в условиях неопределенности); [пер. с англ.]. М.: Наука, 1977. 408 с. 8. Прокопчина С.В. Байесовские интеллектуальные технологии как методологическая основа обработки больших данных в условиях неопределенности // Экономика и управление: проблемы, решения. 2019. Т. 11. № 3. С. 105–109. 9. Прокопчина С.В. Новый тип нейросетей: байесовские измерительные нейросети (БИН) на базе методологии регуляризирующего байесовского подхода // Мягкие измерения и вычисления. 2020. Т. 35. № 10. С. 17–24. 10. Kondratyev S.I., Epikhin A.I., Malakhov S.O. A diagnostic system of an intelligent component based on Bayesian accurate inference networks. J. of Physics: Conf. Ser., 2021, vol. 2032, art. 012022. DOI: 10.1088/1742-6596/2032/1/012022. 11. Домингос П. Верховный алгоритм: как машинное обучение изменит наш мир; [пер. с англ.]. М.: МИФ, 2016. 336 с. 12. Кожомбердиева Г.И., Бураков Д.П., Хамчичев Г.А. Реализация группового экспертного рейтингового оценивания на основе формулы Байеса // Мягкие измерения и вычисления. 2019. № 11. С. 4–16. 13. Кожомбердиева Г.И. Байесовская логико-вероятностная модель нечеткого вывода // Матер. Междунар. конф. по мягким вычислениям и измерениям. 2019. Т. 1. С. 35–38. 14. Кожомбердиева Г.И., Бураков Д.П. Байесовская логико-вероятностная модель нечеткого вывода: этапы вывода заключений и дефаззификации // Нечеткие системы и мягкие вычисления. 2019. Т. 14. № 2. С. 92−110. DOI: 10.26456/fssc55. 15. Pei Ch., Zhang Y., Zhang Y., Sun F., Lin X. et al. Personalized re-ranking for recommendation. Proc. XIII ACM Conf. on Recommender Systems, 2019, pp. 3–11. DOI: 10.1145/3298689.3347000. 16. Robertson S. A brief history of search results ranking. IEEE Annals of the History of Computing, 2019, vol. 41, no. 2, pp. 22–28. DOI: 10.1109/MAHC.2019.2897559. 17. Orouskhani M., Shi D., Cheng X. A fuzzy adaptive dynamic NSGA-II with fuzzy-based borda ranking method and its application to multimedia data analysis. IEEE Transactions on Fuzzy Systems, 2021, vol. 29, no. 1, pp. 118–128. DOI: 10.1109/TFUZZ.2020.2979119. 18. Осовский С. Нейронные сети для обработки информации; [пер. с польск.]. М.: Горячая линия− Телеком, 2018. 448 с. 19. Мухаметзянов И.З. Нечеткий логический вывод и нечеткий метод анализа иерархий в системах поддержки принятия решений: приложение к оценке надежности технических систем // Кибернетика и программирование. 2017. № 2. С. 59–77. DOI: 10.7256/2306-4196.2017.2.21794. 20. Кожомбердиева Г.И., Бураков Д.П., Хамчичев Г.А. Опыт программной реализации авторских вероятностных моделей на основе формулы Байеса // Матер. Междунар. конф. по мягким вычислениям и измерениям. 2021. Т. 1. С. 61–64. 21. Хамчичев Г.А., Кожомбердиева Г.И., Бураков Д.П. Программа для группового экспертного рейтингового оценивания на основе байесовской модели: Свид. о регистр. ПрЭВМ № 2021613914. Рос. Федерация, 2021. 22. MathWorks. Mamdani and Sugeno Fuzzy Inference Systems. URL: https://www.mathworks.com/help/ fuzzy/types-of-fuzzy-inference-systems.html (дата обращения: 03.02.2022). 23. Кожомбердиева Г.И., Хамчичев Г.А., Бураков Д.П. Программа для решения задач нечеткого вывода на основе байесовской логико-вероятностной модели: Свид. о регистр. ПрЭВМ № 2021662943. Рос. Федерация, 2021. 24. Roy V.P., Haridi S. Concepts, Techniques, and Models of Computer Programming. MIT Press Publ., 2003, 896 р. 25. Авачева Т.Г., Пруцков А.В. Современный взгляд на концепцию структурного программирования // Cloud of Science. 2019. Т. 6. № 4. С. 646–665. 26. Мерекин Ю.В. Решение задач вероятностного расчета однотактных схем методом ортогонализации // Сб. тр. Института математики СО АН СССР. 1963. № 5. С. 10–21. References
|
http://swsys.ru/index.php?id=4894&lang=%29&page=article |
|