|
|||||||||||||||||
Источник: Інформатика та комп’ютерні технології - 2008 / Матеріали IV науково-технічної конференції студентів, аспірантів та молодих учених – 25-27 листопада 2008, ДонНТУ, Донецьк – 2008 , с. 471-473.
ЭФФЕКТИВНОСТЬ РАЗЛИЧНЫХ СПОСОБОВ РЕАЛИЗАЦИИ КЛЕТОЧНЫХ АВТОМАТОВ В ГИПЕРКОДАХ
Василенко А.Ю.
Аноприенко А.Я.
Донецкий национальный технический университет
Концепция гиперлогики (логики третьего и более высокого порядков) была
предложена ввиду того, что с помощью классической бинарной логики не всегда
представляется возможным эффективно
описать, а значит и промоделировать, какой-либо сложный реальный объект или
процесс. Гиперлогика, в данном случае, позволяет решить проблему представления
вероятностной природы некоторых процессов, а также диапазонных или множественных
значений физических параметров объекта или процесса.
1.
Анализ существующих разработок
На кафедре ЭВМ факультета ВТИ изучение вопросов гиперлогики и гиперкодов (в том
числе тетракодов) ведется с 1997 года [1]..
Каждый разряд числа в тетракодах может быть представлен четырьмя значениями: 0,1
– классические значения разряда в булевой логике;
A
– равновероятное появление 1 или 0; М – появление одновременно 0 и 1.
На данный момент разработан ряд
компьютерных программ, реализующих наглядное представление чисел в тетракодах
[3]. Тетракоды используются для задания значений клеточных автоматов (клеточный
автомат игры «Жизнь») и представления новой логики законов-рецептов клеток в
автомате (законы-рецепты – это набор правил, по которым клетка вычисляет свое
новое состояние). С помощью тетракодов разработан также
алгоритм работы с картами Карно.
2.
Сравнение эффективности реализации представления гиперкодов на разных языках
программирования
Проблема дальнейшего развития концепции тетракодов заключается в том, что в
современных аппаратных и программных комплексах отсутствует поддержка данной
технологии, поэтому переход к ней происходит на уровне прикладной программы. Это
приведет к тому, что процесс моделирования сложных объектов будет ресурсоемким.
Идея минимизации затрат времени и аппаратных ресурсов приводит
к проблеме оптимизации программных
вычислений в этом базисе. Описанные выше программы визуализации тетракодов были
написаны на языке Action Script в рамках технологии Flash MX. Поддержка
технологии flash реализована для большинства операционных систем, поэтому таким
образом решалась проблема кроссплатформенности. Однако такая реализация
характеризуется относительно малым быстродействием даже при отображении числа с
помощью 6-разрядных координат. При увеличении же разрядности чисел построить
сложную моделирующую систему, ориентированную например на реализацию в
параллельной сетевой
cреде, с
использованием Flash MX не представляется возможным.
Поэтому предлагается развивать дальнейшую работу с использованием платформы
NET
Framework (языки
C++ или
C#), которая
предлагает более широкие функциональные возможности. Проведенные
тесты показали, что
одинаковые алгоритмы выполнялись на
Flash
в среднем в 2-3 раза медленнее, чем на
C++ (это
связано с тем, что
Flash
не специализируется на математических расчетах, а более пригодна для
дизайнерских приложений). Также при программировании в
NET
Framework
в будущем возможно распараллеливание программ, используя стандартные интерфейсы,
например,
MPI (для
NET
Framework –
реализации
MPI.NET
или
Pure
MPI).
Разницы между использованием С++ и
C# для
решения данной задачи практически нет, так как относительно
Framework – это
одинаковые языки. Разница лишь в том, что
C# более
подходит по своей структуре для программирования в
NET
Framework, поэтому
для дальнейшей разработки выбран этот язык.
В дальнейшем для увеличения быстродействия планируется применить более
эффективные алгоритмы работы с гиперкодами, разработать решения по
распараллеливанию расчетов (на примере игры «Жизнь» в тетракодах).
3.
Проблемы и перспективы развития гиперлогики
Проведя анализ существующих теоретических и практических разработок по теме
тетралогики и тетракоды, можно увидеть, что, с одной стороны, на данном этапе
существует не только теория, но и её практические реализации в известных
задачах, графическое отображение тетракодов. С другой же стороны, множество
вопросов применения данного базиса остается открытыми, что обуславливает
актуальность дальнейшего исследования в данной области.
Направления дальнейшего развития могут быть следующими:
1.
исследование возможности обратного преобразования заданного множества значений в
минимальный набор гиперкодов;
2.
разработка калькулятора для работы с гиперкодами. Данная задача может быть
разбита на задачи разработки логических операций, операций сравнения и
арифметических операций;
3.
разработка новых приложений, демонстрирующих свойства тетракодов;
4.
исследование вариантов распараллеливания при выполнении операций в гиперкодах.
Литература
[1]
Аноприенко А. Я.
Расширенный кодо-логический базис компьютерного моделирования // Научные труды
Донецкого национального технического университета. Выпуск 1. Серия “Информатика,
кибернетика и вычислительная техника” (ИКВТ - 97). – Донецк: ДонГТУ. – 1997. –
С. 59-64.
[2]
Аноприенко А. Я. Эволюция алгоритмического базиса вычислительного моделирования
и сложность реального мира // Научные труды Донецкого национального технического
университета. Выпуск 52. Серия “Проблемы моделирования и автоматизации
проектирования динамических систем” (ИКВТ - 2002). – Донецк: ДонНТУ. – 2002. –
С. 6-9.
[3]
Аноприенко А.Я. Коноплева А.П. Развитие идеи применения гиперкодов в теории
клеточных автоматов. // // Научные труды Донецкого национального технического
универститета Выпуск 9. Серия «Информатика, кибернетика и вычислительная
техника» Донецк: ДонНТУ.–2008 с. 115-118 |
|||||||||||||||||