Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Перспективы развития вычислительной техники



Машины, не основанные на модели фон Неймана

Реализация подхода, разработанного в 40-х годах XX в. фон Нейманом, позволила сделать огромный шаг в развитии вычислительной техники. Вместе с тем всегда существовали и продолжают существовать вычис­лительные системы, предназначенные для решения одной-единственной задачи (например, в военном деле - определение траектории снаряда, выпущенного из конкретного орудия). Такие системы, очевидно, не тре­буют изменения программы расчетов, а следовательно, не нуждаются в разработке программы, ее загрузке и т.д.

Работа машины фон Неймана происходит по принципу «машины Тьюринга» - под жестким управлением программы. Вычислительная система, в которой выполнение примитивных операций инициируется наличием операндов, получила название «машина, управляемая потоком данных».

В классических машинах фон Неймана реализована концепция по­следовательного потока команд управления: операции (команды) вы­полняются последовательно, в соответствии с алгоритмом. В противопо­ложность этому, в машине, управляемой потоком данных, имеется поток значений, который направлен от операций, генерирующих эти значения, к операциям, «потребляющим» их в качестве операндов, причем опера­ция выполняется сразу, как только все ее операнды будут известны. По­скольку результат выполнения одной операции может быть операндом для многих других, а следовательно, может одновременно инициировать их выполнение, создаются условия для высокой степени параллелизма вычислений.

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

При использовании декларативного языка в программе в явном ви­де указывается, какими свойствами должен обладать результат, но не говорится, каким способом он будет получен; подходит любой способ получения результата, обладающего требуемыми свойствами. Поскольку в основу декларативных языков заложены статические, а не динамиче­ские понятия (то есть определяется «что», а не «как»), такие понятия, как упорядочение и поток команд управления, им чужды; в них нет и каких-либо операторов присваивания. В идеальном случае программана декларативном языке будет состоять только из неупорядоченной системы уравнений, характеризующей требуемый результат.

Система может не предусматривать последовательной передачи управления (то есть может работать без какого-либо «счетчика команд», указывающего текущую точку, которая достигнута при выполнении программы); в ней, кроме того, может не использоваться и концепция переменной (это значит, что она может обходиться без поименованных ячеек памяти для хранения какой-либо переменной, к которой можно обращаться или которую можно изменять).

Другим примером принципиально новой вычислительной архитекту­ры являются редукционная вычислительная машина. В ней вычисляются арифметические выражения путем последовательного сокращения всех составляющих их подвыражений до тех пор, пока не останутся просто значения данных. Расчеты осуществляются способом подстановки. Для каждого выражения, которое не является просто значением данного, специальное множество правил определяет, какая именно подстановка должна быть произведена при появлении этого выражения. Машина вы­полняет расчет путем выбора для каждого подвыражения в вычисляемом выражении соответствующего ему правила и выполнения подстановок, определяемых этим правилом. Все подвыражения могут анализироваться по правилам и сокращаться одновременно; таким образом и здесь откры­ваются большие возможности по обеспечению параллелизма расчетов (что и является основной целью при разработке редукционных машин). Для обоих приведенных примеров характерны параллелизм вычис­лений, отсутствие концепции переменной, наличие постоянных связей между именами и конкретными константами. Заметим, что эти вы­числительные архитектуры принципиально отличаются от модели фон Неймана; их не следует смешивать с многопроцессорными или много­машинными системами, в рамках которых решается задача эффективного использования совокупности взаимодействующих фон неймановских машин.

Предпосылки создания новых вычислительных систем

На протяжении нескольких последних десятилетий компьютерная технология развивалась по пути все большей миниатюризации деталей. Микропроцессоры последних поколений содержат огромное число тран­зисторов (10 млн и более), имеющих размеры в десятую долю микрона (10~7 м). Следующий шаг в этом направлении приведет к нанометрам

(10 9 м) и миллиардам транзисторов в одном чипе; это уже субатомный диапазон, где начинают сказываться законы квантовой механики. По этому поводу известный американский физик Ричард Фейнман отметил, что законы физики не будут препятствовать уменьшению размеров вы­числяющих устройств до тех пор, «пока биты не достигнут размеров атомов и квантовое поведение не станет доминирующим».

Другая проблема, указывающая на то, что современная технология создания компьютеров изживает себя, - это приближение к пределу быстродействия. Так, современные компьютерные носители способны вмещать миллионы записей, с которыми справляются существующие алгоритмы поиска. Следовательно, нужны компьютеры с более высо­кими скоростными характеристиками. Поэтому во всем мире начались интенсивные разработки по созданию вычислительных систем будущего. В настоящее время уже ведутся эксперименты по созданию квантового компьютера, биокомпьютера, нейрокомпьютера, оптического компьютера, вероятностного компьютера и др.

Принципы построения квантового компьютера

В 1982 г. Ричард Фейнман в статье, вызвавшей большой интерес, впервые поставил вопрос о том, какие возможности при вычислениях открывают устройства, построенные на квантовых элементах.

Основной строительной единицей квантового компьютера является ку-бит- квантовый бит (qubit, quantum bit; термин предложен американским физиком Беном Шумахером). Подобно классическому биту информации кубит теоретически может быть реализован на любой двухуровневой системе, например в атоме, который может находиться в двух энергети­ческих состояниях - основном и возбужденном (соответствующих нулю и единице классического бита).

Природа предлагает огромное множество таких систем, но главное препятствие на этом пути - вероятностная природа законов квантовой механики. Если классический битимеет лишь два состояния, число со­стояний кубита значительно больше (он описывается волновой функцией, которая может принимать множество значений). Соответственно объем информации, записанной такими q-битами, во много раз превышает тот, который несут обычные биты.

Квантовый компьютер - это прежде всего огромная экономия: всего тысяча атомов вместо миллиардов транзисторов. Для квантовых компью­теров, как и для классических, были введены элементарные логические операции, при помощи которых может быть построена их логика.

Главной проблемой остается вопрос эффективного управления куби-тами, поскольку любое из возбужденных состояний атома неустойчиво. Через очень короткое время атом самопроизвольно переходит в одно из состояний с меньшей энергией, излучая квант света, и момент этого перехода принципиально невозможно предсказать. Одним из решений может стать воздействие внешнего электромагнитного поля, под влиянием которого происходят вынужденные квантовые переходы.

Сейчас уже никто не сомневается, что компьютер, считающий по за­конам квантовой механики, — необходимый этап в эволюции вычислитель­ных устройств. Но для его реализации необходимо надежно изолировать атомную систему от внешней среды, точно знать число частиц в ней, иметь возможность привести ее в точно известное начальное состояние и уметь менять его нужным образом.

Выполнение всех этих требований вполне реально с помощью уже существующих квантовых технологий. Есть даже проект квантового компьютера, использующего двухуровневую систему на атомах фосфора в кремнии.

Модель квантового компьютера из двух кубитов на основе сверхпро­водимости была построена в 1997 г. на молекуле хлороформа группой исследователей из IBM, Массачусетского технологического института и Калифорнийского университета в Беркли. Эту экспериментальную маши­ну можно рассматривать как важный шаг к принципиально новому классу машин, способных к сверхбыстрым вычислениям. Впрочем, у данной тех­нологии есть существенный недостаток: построение компьютера хотя бы из десятка таких кубитов потребует охлаждения молекул до температур, всего на тысячные доли градуса отличающихся от абсолютного нуля.

Биокомпьютеры

Одним из перспективных нетрадиционных направлений в развитии вычислительной техники считаются так называемые молекулярные ком­пьютерные системы, создаваемые на базе ДНК или других биологических объектов (биокомпьютеры). В основу этих изысканий положено свой­ство некоторых органических молекул обратимо переходить из одного устойчивого состояния в другое (они могут рассматриваться как 0 и 1 в логических операциях).

К числу потенциальных достоинств молекулярных компьютеров специалисты относят их более высокую производительность, дешевизну и малые размеры (по сравнению с компьютерами на базе кремниевых элементов). Так, вычислительное устройство из молекул ДНК должно иметь размер порядка нескольких сотых микрона. Скорее всего, однако, компьютеры, реализующие молекулярные технологии, будут гибридными крем ни и-молекулярным и.

Нейрокомпьютеры

Совершенно новый тип вычислительной техники был предложен исследователями, изучавшими кору головного мозга живых существ и деятельность составляющих ее клеток - нейронов. Еще в 1943 г. У Мак-калоу и У. Питтс сформулировали основные положения соответствующей теории и разработали математическую модель нейрона. Согласно этой те­ории, мозг представляет собой ансамбль нейронов, имеющих одинаковую структуру. Каждый нейрон реализует некоторую функцию, называемую пороговой, над входными значениями. Если значение функции превышает определенную величину (порог, характеризующий суммарную значи-

мость полученной нейроном информации), нервная клетка возбуждается и формирует выходной сигнал для передачи другим нейронам. Пройдя путь от рецепторов (слуховых, зрительных и др.) через нейронные структуры мозга до исполнительных органов, входная информация преобразуется в набор управляющих воздействий, адекватных ситуации.

В основу архитектуры нейрокомпьютераи была положена сеть, по­строенная на нейроноподобных элементах (искусственных нейронах) и нейроноподобных связях. Фактически речь шла о создании искусственно­го интеллекта, что позволило бы, не затрачивая больших вычислительных ресурсов, решать задачи управления и эффективно обрабатывать сенсор­ную информацию по образцу нервной системы живых организмов. Эта система обладает рядом заманчивых для разработчиков вычислительной техники особенностей, существенно облегчающих решение сложных за­дач. Главные из них - параллелизм обработки информации, способность к обучению, способность к автоматической классификации, высокая на­дежность и ассоциативность.

Принципы, изложенные в работах Маккалоу и Питтса, были в 1958 г. воплощены Ф. Розенблаттом в оригинальном устройстве - персептроне «Марк-1», способном достаточно точно распознавать печатные буквы и обучаться на примерах. Персентрон заинтересовал военных (в распозна­вании нуждаются не только печатные тексты, но и ракеты противника), и следующее десятилетие ознаменовалось активными разработками в об­ласти нейронных сетей и их технических воплощений. Однако довольно быстро разработчики стали замечать, что применяемая ими нейросетевая парадигма (включающая виды входных данных, пороговые функции, структуры сети и алгоритмы обучения) имеет ряд существенных огра­ничений и не позволяет добиваться приемлемого качества при решении многих практических задач. В 1969 г. вышла книга М.Минского, дока­завшего, что ограничения персептрона принципиальны и непреодолимы, после чего нейронные сети были забыты почти на двадцать лет. И только с 90-х годов, прежде всего благодаря работам Хоцфилда и Хехт-Нильсена, эта концепция обрела новую жизнь.

Важнейшая особенность нейросетевого подхода к построению систем обработки информации - возможность задания определенного набора об­учающих правил, определяющих изменение параметров искусственной нейронной сети в ответ на входное воздействие; именно так реализуется принцип «самообучающейся» системы.

Информация, обработанная искусственным нейроном, может быть представлена в виде выходящего вектора, который может иметь любое конечное число ответвлений. Выходящие векторы становятся входными для других искусственных нейронов. Когда несколько нейронов связыва­ются, возникает нейронная сеть, отдельные элементы которой произвол дят параллельную обработку информации и параллельные вычисления. У всех элементов есть локальная память, и они могут заниматься локаль­ной обработкой информации.

Нейронная сеть, как правило, делится на отдельные подмножества, ко­торые называют слоями или плоскостями. Искусственные нейроны могут быть связаны с нейронами как своего слоя, так и других слоев. Другими словами, возникает многомерная матрица (многомерный массив).

Информация в сети распределена по множеству межнейронных связей. Исчезновение одной или нескольких связей не приводит к уничтожению всей информации в работающей системе, что делает возможным создание распределенной сети, в которой уничтожение целых слоев не означает краха сети в целом. Таким образом, развитие нейрокомпьютерной техно­логии позволяет создавать мощные вычислительные системы, решающие сложные задачи управления и обработки информации.

В настоящее время уже существует около 40 различных моделей ис­кусственных нейронных сетей, используемых как в исследовательских работах, так и на практике. Современная элементная база позволяет реализовать аппаратуру с быстродействием до 10 млрд связей, про­сматриваемых в секунду. Финансисты используют нейрокомпьютеры и нейроплаты для предсказания колебаний курсов валют, летчики - для распознавания наземных целей, банкиры - для оценки кредитных рисков. В тех случаях, когда задача не поддается формализации, а входные дан­ные неполны, зашумлены и противоречивы, применение традиционных компьютеров становится неэффективным. Здесь и оказывается полезной способность нейрокомпьютеров самообучаться на примерах и настраи­ваться на решение определенных классов задач. Сфера их применения быстро захватывает все новые области, а объем рынка нейросетевого оборудования удваивается каждые два года.

Процесс обучения сети новому классу задач состоит из нескольких стадий.

1.Формулируется постановка задачи (например, предсказание краткосрочных колебаний курсов ценных бумаг) и выделяется набор ключевых параметров, характеризующих предметную область. Обычно для этого привлекаются эксперты по соответствующей проблеме, которые перечисляют набор факторов и данных, учитываемых ими при принятии решения. Заметим, что эксперт не должен описывать зависимость между входными данными и даже оценивать их сравнительную важность.

2. Выбирается схема нейронной сети, лучше всего подходящая для решения данного класса задач. Как правило, современные нейроплаты и нейрокомпьютеры позволяют реализовать несколько базовых схем. Критериям ее выбора посвящена обширная литература; специалисты уже провели первичный анализ всех мыслимых классов задач - от идентификации подписи и контроля качества питьевой воды до предсказания социальных взрывов.

3. Подготавливается возможно более широкий набор обучающих примеров, организованных в виде векторов входных параметров, ассоциированных с уже известными выходными значениями. Например, для задачи предсказания курсов валют это значения всех курсов на данной бирже за определенное время плюс набор параметров, характеризующих общую биржевую и экономическую ситуацию, плюс данныео положении на других биржах на тот же момент. В качестве выходного эталона выбирается параметр, значение которого предполагается предсказывать

в будущем (например, курс доллар/евро). Входные векторы, используемые при обучении, могут быть неполны и частично противоречивы; главное, что при этом требуется, - максимальная представительность. Поэтому базы данных, необходимые для настройки нейроплат на конкретную прикладную область, зачастую стоят дороже самих плат.

4. Входные векторы по очереди предъявляются нейронной сети, а полученное выходное значение сравнивается с эталоном. Далее прослеживается путь от выходов сети до ее входного слоя, и все межнейронные соединения, способствовавшие принятию правильного решения, по ощряются — их относительные веса увеличиваются. Те же пути, которые привели к ошибкам в компонентах выходного вектора, наказываются уменьшением веса (как правило, в зависимости от величины ошибки).

5. Процесс повторяется до тех пор, пока суммарная ошибка в реакции сети во всех предъявленных примерах не станет меньше наперед заданной величины, либо пока сеть не придет в стационарное состояние. Рассмотренный алгоритмносит название «обратного прохождения» (back-propagation) и относится к числу классических; сейчас, как правило, используют гораздо более мощные и быстрые алгоритмы обучения.

6. Настроенную и обученную сеть можно использовать, предъявляя ей реальные ситуации. Сеть может не только подсказывать решения (выходной вектор будет сформирован в любом случае), но и оценивать степень их достоверности. По желанию пользователя настройку сети можно совершенствовать и в процессе ее практической эксплуатации.

В настоящее время известен уже целый ряд фирм (главным образом, в США и Японии), специализирующихся на нейросетевых продуктах. Наиболее массовым из них являются программные пакеты, моделиру­ющие нейронную сеть непосредственно на ПК, а также так называемые нейроплаты - акселераторы соответствующих расчетов для ПК и рабочих станций.

В России наибольший интерес вызвали разработки семейства Brain-Maker, распространяемые американской фирмой California Scientific Software. Отдельно поставляются специализированные базы данных для настройки сети на конкретные области (в основном из сферы банковской, биржевой, кредитной деятельности).

Важным преимуществом пакета BrainMaker является использование его совместно со специализированным аппаратным акселератором. Эта нейроплата, построенная на базе сигнальных процессоров TITMS 320C30, во много раз сокращает время решения нейросетевых задач по сравнению со стандартным ПК.

Контрольные вопросы и задания

1. Что входит в состав персонального компьютера?

2. Для чего предназначен корпус системного блока? Какие его разновидности наиболее распространены?

3. Какие функции выполняет системная плата и что на ней расположено?

4. Что представляет собой системная магистраль (шина)? Как определяется ее разрядность?

5. Перечислите основные стандарты на системную шину ПК. Чем они отличаются?

6. Какие параметры характеризуют процессор? Приведите основные характеристики современных процессоров.

7. Укажите основные технические характеристики ЗУ.

8. Какие уровни памяти существуют в ЭВМ? Назовите состав и назначение памяти каждого уровня.

9. Перечислите различные виды оперативной памяти ПК.

10. Укажите особенности используемых в настоящее время стандартов памяти ПК.

11. Опишите назначение, классификацию и особенности устройств ввода информации.

12. Опишите основные классы устройств вывода информации.

13. Чем различаются текстовый и графический режимы работы дисплея?

14. Какие технологии переноса изображения на бумажный носитель применяются в современных принтерах?

15. В чем состоит основное назначение ВЗУ? По каким признакам их классифицируют?

16. Приведите основные характеристики наиболее распространенных ВЗУ.

17. Опишите используемые в современной аппаратуре технологии записи данных на ВЗУ.

18. Что представляют собой машины, не использующие архитектуру фон Неймана? В чем состоит их отличие от обычного ПК?

19. Как работают нейрокомпьютеры? Опишите классический алгоритмнастройки самообучающейся нейронной сети.





Дата публикования: 2014-11-18; Прочитано: 2368 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.01 с)...