Эволюционное программирование
Это система эволюции логических автоматов. Логические автоматы — это модели, описывающие средствами формальной логики возможные переходы исследуемой системы из каждого начального состояния.
Эволюционная программа реализует моделирование процесса естественной эволюции конечного автомата, причем в каждый момент времени сохраняется тот "организм", который наилучшим образом может справиться с данной задачей.
Родительский организм оценивается в зависимости от способности принимать требуемое решение на основе имеющихся данных. Этот организм подвергается мутации и производит на свет потомка, которому ставится та же задача. Автомат, который демонстрирует наилучшую способность, сохранятся и поставляет потомков в следующее поколение. Процесс завершается, когда получен достаточно хороший автомат или исчерпано время.
В эволюционном программировании используются следующие способы реализации оператора мутации:
q изменение заключительного состояния;
q изменение условия перехода из одного состояния в другое;
q добавление нового состояния;
q удаление состояния;
q изменение начального состояния.
Алгоритм эволюционного программирования выполняет следующие шаги:
1. Формируется постановка задачи, формируется словарь, множество входных и выходных состояний, условия переходов из состояния в состояние, функции ценности.
2. Случайным образом генерируется начальная популяция конечного автомата.
3. Выполняется тестирование автомата, путем решения поставленных задач на основе функций ценностей.
4. Отбрасываются неперспективные модели.
5. На основе случайного применения оператора мутации производится потомок.
6. Тестируется потомок.
7. Отбор наиболее перспективных потомков.
8. Проверка условия окончания процесса эволюции. Иначе шаг 5.
Транспьютеры
Транспьютер — это устройства, предназначенные для моделирования высокопараллельных самоорганизующихся систем. В частности, на транспьютерах можно моделировать нейронные системы.
Транспьютер чем-то напоминает микро-ЭВМ. Транспьютер — это интегральная микросхема сверхбольшой степени интеграции, содержащая в одном кристалле процессор, память и средства обмена данными (линки), т. е. у него есть все атрибуты обычной ЭВМ в миниатюре.
Основной отличительной особенностью транспьютера являются линки. Линки обеспечивают непосредственную связь транспьютеров друг с другом в транспьютерной сети.
Схема транспьютера представлена на рис. 1.57.
Рис. 1.57. Схема транспьютера
Транспьютер относят к процессорам с Risk–архитектурной (процессор с уменьшенным числом команд).
Отличительной особенностью транспьютера является то, что он снабжен встроенным планировщиком процессов, позволяющим обеспечивать многозадачный режим работы без дополнительного программного обеспечения. Процессор может выполнять любой процесс на одном из двух уровней приоритета: уровень 0 — для срочных процессов, уровень 1 — для других процессов. Если при исполнении процесса уровня 1 возникает процесс уровня 0, то первый прерывается до окончания процесса уровня 0.
Один из базовых версий транспьютера IMS T411 и IMS T800.
Транспьютер T9000 является единственным векторным процессором, что позволило резко повысить его быстродействие.
Транспьютеры имеют 4 высокоскоростных последовательных линка. Скорость передачи данных по линкам ~20 Мбит/сек.
Транспьютерные сети
Преимущества транспьютеров проявляются при их соединении в сеть (ради этого они и были созданы).
Для транспьютерной сетис распределенными ресурсами важным является выбор архитектуры сети и способа отображения программы на эту сеть. Это необходимо для конкретной реализации в пространстве и во времени указанной программы на выбранной архитектуре. Обе задачи являются далеко нетривиальными при построении транспьютерных сетей.
Транспьютеры обмениваются по линкам между собой данными. Программа у каждого транспьютера в принципе может быть одной и той же.
Примером практического применения транспьютерной сети является моделирование и предсказание погоды. Здесь каждый транспьютер может представлять собой погодные условия в узком пространственном регионе.
Простейшей транспьютерной сетью является линейная цепочка (рис. 1.58).
Рис. 1.58. Линейная цепочка транспьютеров
Вторая распространенная архитектура — это транспьютерная форма (рис. 1.59).
Рис. 1.59. Транспьютерная ферма
Многомагистральная топология транспьютеров представлена на рис. 1.60.
Рис. 1.60. Многомагистральная топология транспьютеров
Топология типа деревапредставлена на рис. 1.61.
Рис. 1.61. Топология типа дерева
Прямоугольная плоская сетка представлена на рис. 1.62.
Рис. 1.62. Прямоугольная плоская сетка
Эта топология, как видно, может использоваться для моделирования реальных пространственных самоорганизующихся структур в том числе и для предсказания погоды.
На основе транспьютеров можно создавать укрупненные транспьютерные элементы:
плоские (рис. 1.63)
Рис. 1.63. Плоский транспьютерный элемент
пространственные (рис. 1.64).
Рис. 1.64. Пространственный транспьютерный элемент
При построении транспьютерных сетей следует не забывать, что у каждого транспьютера имеется свой интерфейс обмена с внешним запоминающим устройством, т. е. с каждого транспьютера можно снимать необходимую информацию.
В настоящее время существуют транспьютерные сети с десятками тысяч транспьютеров.
Важно, что на транспьютерах можно моделировать нейронные сети.