<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Электронный научно-практический журнал «Современная техника и технологии» &#187; expert system</title>
	<atom:link href="http://technology.snauka.ru/tags/4883-247/feed" rel="self" type="application/rss+xml" />
	<link>https://technology.snauka.ru</link>
	<description></description>
	<lastBuildDate>Fri, 30 Jan 2026 18:56:12 +0000</lastBuildDate>
	<language>ru</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Экспертная система выбора наиболее рациональной нейрокомпьютерной структуры</title>
		<link>https://technology.snauka.ru/2016/12/11259</link>
		<comments>https://technology.snauka.ru/2016/12/11259#comments</comments>
		<pubDate>Wed, 14 Dec 2016 13:30:28 +0000</pubDate>
		<dc:creator>Романчук Виталий Александрович</dc:creator>
				<category><![CDATA[Общая рубрика]]></category>
		<category><![CDATA[cluster computing system]]></category>
		<category><![CDATA[expert system]]></category>
		<category><![CDATA[neuroprocessor]]></category>
		<category><![CDATA[вычислительная система]]></category>
		<category><![CDATA[Кластер]]></category>
		<category><![CDATA[нейрокомпьютер]]></category>
		<category><![CDATA[нейропроцессор]]></category>
		<category><![CDATA[экспертная система]]></category>

		<guid isPermaLink="false">https://technology.snauka.ru/?p=11259</guid>
		<description><![CDATA[Массовый параллелизм в многочисленных приложениях сложной обработки видео, изображений, коммуникации, безопасности и других видов сигналов присутствует в основном на уровне данных (Data Level Parallelism – DLP). Реализация DLP в большинстве современных процессоров осуществляется в виде одиночного потока команд и множественного потока данных – как SIMD (векторная архитектура). Перечисленные выше многие приложения также обладают и значительным [...]]]></description>
			<content:encoded><![CDATA[<p><span>Массовый параллелизм в многочисленных приложениях сложной обработки видео, изображений, коммуникации, безопасности и других видов сигналов присутствует в основном на уровне данных (Data Level Parallelism – DLP). Реализация DLP в большинстве современных процессоров осуществляется в виде одиночного потока команд и множественного потока данных – как SIMD (векторная архитектура). Перечисленные выше многие приложения также обладают и значительным параллелизмом на уровне инструкций (Instruction Level Parallelism – ILP). В этом случае с помощью параллельного задания нескольких скалярных операций и/или SIMD-операций осуществляется параллельное выполнение на уровне инструкций ILP. Однако SIMD – архитектура может оказаться не самым лучшим решением для приложений с варьируемым DLP, что приводит к снижению производительности и возрастанию энергопотребления [1–4].</span><br />
<span>В современных вычислительных системах для реализации ILP и DLP используется VLIW архитектура [2,3]. Одними же из методов ускорения развития альтернативных повышению частоты способов увеличения быстродействия являются использование высокопараллельной вычислительной техники, например, нейропроцессоров и разработка принципиально новых и хорошо распараллеливающихся алгоритмов с элементами интеллектуальной компиляции. Такая концепция направлена на упрощение аппаратного обеспечения и извлечения как можно больше ”скрытого параллелизма” на уровне команд, используя большую ширину ”выдачи” команд (WIW–Wide Issue Width) и длинные (глубокие) конвейеры с большой задержкой (DPL – Deep Pipeline Latency). </span><br />
<span>Кроме того, в настоящее время специалисты [4,5] ожидают появления суперскалярного VLIW-процессора с масштабируемым параллелизмом, объединяющим явный статический параллелизм с неявным динамическим. Однако пока нет видимых способов совмещать статическое и динамическое переупорядочивание, так как в таких системах по отношению к существующим классическим ”RISC–inside CISC–outside” архитектурам можно добиться лишь путем переноса интеллектуальных функций из аппаратного обеспечения в программное посредством такого компилятора. Поэтому, вариантом повышения быстродействия в нейрокомпьютерных системах является выбор наиболее рациональной многопроцессорной вычислительной структуры для реализации текущего алгоритма. В данной работе исследуются возможности и предлагается вариант выбора наиболее рациональной нейрокомпьютерной структуры на основе явного и неявного кластерного параллелизма.</span></p>
<div align="center"><strong><span>1. Структура интеллектуальной компиляции</span></strong></div>
<p><span>На основе исследований авторов [6] предлагается следующая модель структуры интеллектуальной компиляции, включающей в себя следующие шаги.</span><br />
<span>1. Анализ исходных алгоритмов функционирования проектируемой микронейропроцессорной системы (МНПС) и представление группы независимых операций согласно явному параллелизму в очень длинные слова инструкций c целью упаковки, обеспечения быстрого запуска и более эффективного их исполнение функциональными модулями (ФМ) (микропроцессорами или ядрами) МНПС некоторой структурой.</span><br />
<span>2. Продукционная модель экспертной системы наблюдения за операциями из разных базовых блоков с целью помещения этих операций в одну и ту же длинную инструкцию и, тем самым, обеспечения большего параллелизма ФМ. </span><br />
<span>3. Прокладка «маршрута» по всей программе &#8211; трассировки. </span><br />
<span>4. Осуществление оптимизации планировщиком вычислений на уровне всей программы, а не ее отдельных базовых блоков. </span><br />
<span>5. Прогнозирование компилятором наиболее подходящего маршрута и планирование прохождения, рассматривая его как один большой базовый блок. </span><br />
<span>6. Повторение процесса п.4 для всех других возникших после этого программных веток до самого конца программы.</span><br />
<span>7. Выполнение компилятором различных «интеллектуальных шагов» в виде развертывания программного цикла, исполнения IF &#8211; преобразование для удаления всех логических переходов из подвергающихся трассировке секций, перемещения их с одного места на другое до обнаруженного ветвления, с возможностью формирования отката назад.</span></p>
<div align="center"><strong><span>2.</span></strong><span> </span><strong><span>Анализ алгоритмов функционирования явного параллелизма</span></strong></div>
<p><span>Исходными данными для анализа являются алгоритмы функционирования МПС, представляемые посредством конечного кортежа операций </span><img src="http://content.snauka.ru/technology/11259_files/0LQHLNCOB.gif" alt="" width="20" height="21" /><span> выражением: </span><img src="http://content.snauka.ru/technology/11259_files/0LYA2EFSU.gif" alt="" width="218" height="26" /><span> длиной </span><img src="http://content.snauka.ru/technology/11259_files/0.gif" alt="" width="40" height="24" /><span>, и микропроцессорная система, рассматриваемая как совокупность устройств на основе выбранной элементной базы – chipset со множеством команд </span><img src="http://content.snauka.ru/technology/11259_files/0(1).gif" alt="" width="169" height="21" /><span> конкретного комплекта СБИС. Здесь под МК подразумевается внутренний язык микропроцессорной нейрокомпьютерной системы со своей производительностью, стоимостью, количеством СБИС и др.</span><br />
<span>Каждый алгоритм может представлять собой кортеж алгоритмов, в том числе и стандартных: отбраковки, сжатия, калибровки, автоконтроля и других. Тогда в процессе проектирования [5] выбирается элементная база и решается математическая задача нахождения отображения множества операций </span><img src="http://content.snauka.ru/technology/11259_files/0(2).gif" alt="" width="21" height="22" /><span> во множество команд МК: </span><img src="http://content.snauka.ru/technology/11259_files/0HG7AOOHS.gif" alt="" width="212" height="24" /><span>. (1)</span><br />
<span>Причем, в общем случае под </span><img src="http://content.snauka.ru/technology/11259_files/0NDP2XVJY.gif" alt="" width="36" height="21" /><span> понимается оптимальное количество команд, реализующее операцию </span><img src="http://content.snauka.ru/technology/11259_files/00FCPBGGP.gif" alt="" width="20" height="21" /><span>. Далее в зависимости от решения задачи (1) проектирования каждому </span><img src="http://content.snauka.ru/technology/11259_files/0E6S8LDSB.gif" alt="" width="12" height="18" /><span>-му алгоритму обработки ставится в соответствие программа обработки </span><img src="http://content.snauka.ru/technology/11259_files/06XFWHY9G.gif" alt="" width="37" height="20" /><span> в виде кортежа команд: </span><img src="http://content.snauka.ru/technology/11259_files/0(3).gif" alt="" width="240" height="24" /><span> посредством определяемого отображения: </span><img src="http://content.snauka.ru/technology/11259_files/0(4).gif" alt="" width="134" height="24" /><span>. (2)</span><br />
<span>При этом рассматриваемая программа </span><img src="http://content.snauka.ru/technology/11259_files/0(5).gif" alt="" width="37" height="20" /><span> характеризуется длиной программы </span><img src="http://content.snauka.ru/technology/11259_files/0(6).gif" alt="" width="49" height="24" /><span>, определяемой общим числом команд, входящих в программу, временем выполнения программы и др.</span><br />
<span>Выражение (2) определяет однопроцессорный вариант МНПС и практически в общем виде представляет процесс компиляции.</span><br />
<span>Далее для осуществления задачи распараллеливания используется понятие кластера Cl</span><strong><sub><span>k</span></sub></strong><span>, и решается задача разбиения программы обработки </span><img src="http://content.snauka.ru/technology/11259_files/0(7).gif" alt="" width="37" height="20" /><span>. С этой целью воспользуемся понятием равенства кластеров </span><em><span>CL</span></em><strong><em><sub><span>l</span></sub></em></strong><span> и </span><em><span>CL</span></em><strong><em><sub><span>k</span></sub></em></strong><span> обработки информации: </span><em><span>CL</span></em><strong><em><sub><span>l</span></sub></em></strong><em><span> = Cl</span></em><strong><em><sub><span>k</span></sub></em></strong><strong><sub><span>.</span></sub></strong><span>, под которым понимается равенство длин указанных кластеров </span><em><span>|CL</span></em><strong><em><sub><span>l</span></sub></em></strong><strong><em><span>|</span></em></strong><em><span> = |CL</span></em><strong><em><sub><span>k</span></sub></em></strong><em><span>|</span></em><span> и совпадение их с точностью до команды </span><em><span>MK</span></em><strong><em><sub><span>i</span></sub></em></strong><strong><em><sup><span>(k)</span></sup></em></strong><em><span>=MK</span></em><strong><em><sub><span>i</span></sub></em></strong><strong><em><sup><span>(l)</span></sup></em></strong><strong><span>,</span></strong><span> </span><em><span>PR</span></em><strong><em><sup><span>(j)</span></sup></em></strong><strong><em><span>=&lt;</span></em></strong><em><span>MK</span></em><em><sub><span>i</span></sub></em><em><span>,MK</span></em><em><sub><span>1</span></sub></em><em><span>,&#8230;MK</span></em><em><sub><span>j</span></sub></em><strong><em><span>&gt;</span></em></strong><span>:</span><br />
<img src="http://content.snauka.ru/technology/11259_files/0(8).gif" alt="" width="264" height="58" /><span> . (3)</span><br />
<span>При этом выражение (3) является критерием качества разбиения на кластеры исходной программы с точностью до команды, что и является метрикой кластеризации.</span><br />
<span>Далее процесс распараллеливания кластеров рассматривается как отношение параллельности выполнения кластеров </span><img src="http://content.snauka.ru/technology/11259_files/0NXU3WOTO.gif" alt="" width="56" height="21" /><span>двумя различными микропроцессорными модулями: </span><img src="http://content.snauka.ru/technology/11259_files/1.gif" alt="" width="157" height="21" /><span>проектируемой вычислительной системы.</span><br />
<span>Таким образом, структурная организация проектируемой вычислительной системы обработки информации ставит в соответствие некоторой </span><img src="http://content.snauka.ru/technology/11259_files/1(1).gif" alt="" width="12" height="18" /><span> - й программе обработки </span><img src="http://content.snauka.ru/technology/11259_files/1(2).gif" alt="" width="24" height="16" /><span> совокупность независимых и неравных кластеров </span><img src="http://content.snauka.ru/technology/11259_files/1(3).gif" alt="" width="25" height="21" /><span>, число которых равно числу классов эквивалентности </span><img src="http://content.snauka.ru/technology/11259_files/1(4).gif" alt="" width="13" height="16" /><span>, а кратность (</span><img src="http://content.snauka.ru/technology/11259_files/1(5).gif" alt="" width="25" height="21" /><span>) определяется порядком класса эквивалентности (</span><img src="http://content.snauka.ru/technology/11259_files/1(6).gif" alt="" width="16" height="21" /><span>): </span><img src="http://content.snauka.ru/technology/11259_files/1(7).gif" alt="" width="288" height="24" /><span>. (4)</span><br />
<span>В работе авторами показывается, что полученное разбиение (4) на кластеры отвечает свойствам рефлексивности, симметричности и транзитивности и, следовательно, является отношением эквивалентности. В результате однозначно определяется разбиение программы на классы эквивалентности кластеров, что является процедурой явного параллелизма. Кроме того, выражение (4) определяет качественные структурные связи между кластерами. Поэтому оно определяет и маршрут передачи данных либо внутри кластера либо между кластерами. Таким образом варианты решения задачи (4) представляются в виде продукционной модели экспертной системы.</span><br />
<strong><span>3. Продукционная модель экспертной системы наблюдения за операциями и формирования маршрута. </span></strong><span>В результате решения задачи (4) возможны следующие варианты маршрута передачи данных, которые составляют основу продукционной модели для дальнейшего анализа с учетом исходных данных.</span><br />
<span>Число классов эквивалентности равно </span><img src="http://content.snauka.ru/technology/11259_files/1(8).gif" alt="" width="13" height="16" /><span>, и порядок каждого </span><img src="http://content.snauka.ru/technology/11259_files/1(9).gif" alt="" width="9" height="17" /><span>-го класса равен </span><img src="http://content.snauka.ru/technology/11259_files/1(10).gif" alt="" width="28" height="21" /><span>. Тогда </span><img src="http://content.snauka.ru/technology/11259_files/1(11).gif" alt="" width="9" height="16" /><span>-му алгоритму обработки данных ставится в соответствие совокупность данных, определяемых согласно (4), и, как нетрудно видеть, этот случай является наиболее общим и предполагает отношения не только между элементами внутри кластера, как в векторной структуре, но и между элементами различных кластеров согласно Instruction Level Parallelism ILP.</span><br />
<span>Рассматриваемые ниже варианты обработки информации оказываются возможными в зависимости от построения конкретной </span><img src="http://content.snauka.ru/technology/11259_files/1(12).gif" alt="" width="12" height="18" /><span>-й структуры данных </span><img src="http://content.snauka.ru/technology/11259_files/1(13).gif" alt="" width="38" height="20" /><span>, а точнее от передачи данных между кластерами в виде маршрута M</span><sub><span>i</span></sub><span> передачи данных.</span><br />
<span>Пусть обмен информацией между представителями кластеров </span><img src="http://content.snauka.ru/technology/11259_files/2.gif" alt="" width="69" height="24" /><span>, осуществляется последовательно друг от друга. Тогда если кластеры внутри </span><img src="http://content.snauka.ru/technology/11259_files/2(1).gif" alt="" width="9" height="17" /><span>-го класса обмениваются последовательно, то имеем уже известный последовательный маршрут передачи данных.</span><br />
<span>Если для элементов внутри </span><img src="http://content.snauka.ru/technology/11259_files/2(2).gif" alt="" width="9" height="17" /><span>-го класса требуется информация одновременно, тогда получаем последовательно &#8211; параллельный обмен (ILP + DLP) или маршрут передачи данных.</span><br />
<span>Если при обработке информация требуется одновременно для всех кластеров, тогда для общего случая (Data Level Parallelism DLP) обработки информационных данных или параллельный маршрут M</span><sub><span>i||</span></sub><span>передачи данных.</span><br />
<span>В общем случае имеем</span><strong><span> матричный</span></strong><span> обмен информационных данных: каждый с каждым. В результате имеем </span><strong><span>матричный</span></strong><span> маршрут передачи данных.</span><br />
<strong><span>Прокладка «маршрута» </span></strong><span>предполагает соединение всех кластеров согласно получаемых маршрутов: последовательный, параллельный, последовательно — параллельный, параллельно &#8211; последовательный (DLP +ILP) и матричный.</span><br />
<strong><span>4. Алгоритм неявного параллелизма многокритериального нечеткого выбора с целью выполнения различных «интеллектуальных шагов»: </span></strong><br />
<span>На практике процесс проектирования интеллектуального компилятора является сложной многокритериальной задачей выбор маршрута из полученного многообразия. Эксперт или аналитик на основании обобщенной оценки каждой альтернативы выбирает наилучшую по совокупности противоречивых критериев: 1. Быстродействие (</span><img src="http://content.snauka.ru/technology/11259_files/2(3).gif" alt="" width="32" height="21" /><span>); 2. Объем микропрограммной памяти (</span><img src="http://content.snauka.ru/technology/11259_files/2(4).gif" alt="" width="37" height="20" /><span>); 3. Число микропроцессорных модулей (</span><img src="http://content.snauka.ru/technology/11259_files/2(5).gif" alt="" width="21" height="21" /><strong><span>);</span></strong><span> 4. Время простоя (T</span><sub><span>пр</span></sub><span>,). 5. Потребляемая энергия (Р); 6. Надежность (Q); 7. Адаптация (A); 8. Стоимость (С) и др. Для конкретизации выбора все вышеперечисленные критерии предлагается распределять в виде кортежа в порядке важности технического проектирования и в дальнейшем называть </span><strong><span>стратегией выбора</span></strong><span>.</span><br />
<span>Пусть требуется воспроизвести знание — правило 3: </span><strong><span>Если</span></strong><span> </span><img src="http://content.snauka.ru/technology/11259_files/2(6).gif" alt="" width="76" height="21" /><span> </span><strong><span>и</span></strong><span> обмен информацией между кластерами в классах осуществляется последовательно, </span><strong><span>то</span></strong><span> маршрут — </span><strong><span>последовательный. </span></strong><span>Данное знание—правило моделируется произведением нечетких множеств R</span><sub><span>I,I</span></sub><span> = F</span><sub><span>стрI * </span></sub><span>G</span><sub><span>парI </span></sub><span>или продукцией.</span><br />
<span>Предложенная авторами [5] методика многокритериального выбора имеет в своей основе нечеткие множества, элементами которых являются лингвистические переменные (ЛП) или термы </span><img src="http://content.snauka.ru/technology/11259_files/2(7).gif" alt="" width="33" height="17" /><span> с характеристическими функциями принадлежности </span><img src="http://content.snauka.ru/technology/11259_files/2(8).gif" alt="" width="36" height="21" /><span>, определенными на отрезке </span><img src="http://content.snauka.ru/technology/11259_files/2(9).gif" alt="" width="60" height="20" /><span>: </span><img src="http://content.snauka.ru/technology/11259_files/2(10).gif" alt="" width="78" height="21" /><span>. Эксперт оценивает маршрут и критерии с помощью понятий нечеткой логики вышеперечисленными переменными. </span><br />
<span>В предлагаемой методике используются два вида </span><strong><span>бинарных </span></strong><span>нечетких переменных: «оценка значения критерия» </span><img src="http://content.snauka.ru/technology/11259_files/2(11).gif" alt="" width="36" height="24" /><span> и «оценка эффективности маршрута или трафика» </span><img src="http://content.snauka.ru/technology/11259_files/2(12).gif" alt="" width="36" height="24" /><span> с использованием </span><strong><span>унарной</span></strong><span>лингвистической переменной &#8211; «оценка качества значения критерия» </span><img src="http://content.snauka.ru/technology/11259_files/3.gif" alt="" width="42" height="24" /><span> и «оценка качества эффективности маршрута» </span><img src="http://content.snauka.ru/technology/11259_files/3(1).gif" alt="" width="66" height="24" /><span>, соответственно.</span><br />
<span>Значения бинарных лингвистических переменных «оценка значения критерия» и «оценка эффективности маршрута» строятся методом нечеткого алгоритма высказывания правил вида: «если </span><em><span>А</span></em><span>, то </span><em><span>В</span></em><span>». Два и более правила нечетких высказываний объединяются связкой «иначе»: «если </span><em><span>А</span></em><span>, то </span><em><span>В</span></em><span>, иначе </span><em><span>С</span></em><span>»=</span><img src="http://content.snauka.ru/technology/11259_files/3(2).gif" alt="" width="105" height="20" /><span> или </span><em><span>V</span></em><span>( «если </span><em><span>А</span></em><span>, то </span><em><span>В</span></em><span>, иначе </span><em><span>С»</span></em><span>) = </span><img src="http://content.snauka.ru/technology/11259_files/3(3).gif" alt="" width="168" height="26" /><span>.</span><br />
<strong><span>Заключение. </span></strong><span>Предложена структура продукционной модели экспертной системы наблюдения за операциями и формирования маршрута на основе модели анализа явного параллелизма предлагаемой кластеризации нейрокомпьютерной системы. Описывается экспертная система интеллектуальной компиляции. В статье демонстрируется алгоритм неявного параллелизма многокритериального нечеткого выбора. Приводится описание алгоритма «оценки значения критерия» по различным техническим характеристикам согласно стратегии проектирования: быстродействие, объем микропрограммной памяти, число микропроцессорных модулей и др. Описывается алгоритм «оценки эффективности маршрута. </span></p>
]]></content:encoded>
			<wfw:commentRss>https://technology.snauka.ru/2016/12/11259/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
