Научная статья на тему 'Генетическое программирование с использованием визуального конструирования'

Генетическое программирование с использованием визуального конструирования Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
260
65
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГЕНЕТИЧЕСКОЕ ПРОГРАММИРОВАНИЕ / ГЕНЕТИЧЕСКИЕ АЛГОРИТМЫ / ЭВОЛЮЦИОННЫЕ ВЫЧИСЛЕНИЯ / КОНСТРУИРОВАНИЕ / GENETIC PROGRAMMING / GENETIC ALGORITHMS / EVOLUTIONARY COMPUTING / DESIGN

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Севинч Сулейман, Бал Гёзде, Булгун Эндер

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

VISUAL DESIGN USING GENETIC PROGRAMMING

This paper presents a methodology to generate new designs by using evolutionary algorithms, that is, genetic programming (GP). A design session starts with a number of initial design patterns. New appropriate representations emerge as crossover and mutation operations are applied to these initial patterns. Emerging designs are assessed and classified based on fitness values. Common LISP is used to do processing and to simulate evolutionary processes.

Текст научной работы на тему «Генетическое программирование с использованием визуального конструирования»

VISUAL DESIGN USING GENETIC PROGRAMMING

Suleyman Sevinq, Gozde Bal, Ender Bulgun

Department of Computer Engineering

Dokuz Eylul University

Izmir, Turkey

Suleyman.sevinc@deu.edu. tr,bgozde@hotmail.com,ender. bulgun@deu.edu. tr

Keywords: Genetic Programming, Genetic Algorithms, Evolutionary Computing, Design.

This paper presents a methodology to generate new designs by using evolutionary algorithms, that is, genetic programming (GP). A design session starts with a number of initial design patterns. New appropriate representations emerge as crossover and mutation operations are applied to these initial patterns. Emerging designs are assessed and classified based on fitness values. Common LISP is used to do processing and to simulate evolutionary processes.

I.INTRODUCTION

Designers used to generate new designs using traditional tools, such as pencil and marker. Introduction of computers has changed the process. The arrival of desktop publishing and graphic art software applications introduced a generation of designers to computer image manipulation and creation that had previously been manually executed. Computer graphic based design enabled designers to instantly see the effects of layout or typographic changes, and to simulate the effects of traditional media without requiring a lot of space [3].

Nowadays, computers are accepted as inevitable tools in the visual design. Many different tools and resources made available by use of computers trigger creativity and ease the creative process. Today, many designers use the computer while generating new design images. Designers can explore multiple ideas more quickly and efficiently than what was achieved by traditional methods such as hand rendering or paste up on paper.

It is common practice now that designers and engineers benefit from CAD (Computer-aided Design) tools in order to help design process. They move the designer through the creative process more efficiently. CAD tools are very good in translating a design idea into a visual form. But we feel the need to add more layers in order to emulate human creativity computationally.

In this paper, we exploit the principles of evolution to generate new design images

by mimicking nature. For this we use Genetic Programming (PG) and Genetic Algorithm (GA) approaches. [2, 5] Basic operations of GP and GA (crossover and mutation operations) are specifically developed for this project in order to get more accurate and better designs.

In the GA approach, a design is considered as two dimensional images. Every pixel on the image has localization (x-coordinate, y-coordinate) and colour information. Chromosomes include the "genetic" information about image are represented as bit strings containing of pixel information and each has a fitness value. In order to generate new design patterns we take advantages of Darwinian principal of reproduction and survival of the fittest. [1, 7] In the GP approach, we use Common LISP programming language [9] in order to evolve new design images from the existing ones. Genetic information about designs is kept within the instructions of the programs which generate specific design patterns. With the help of LISP, computer programs can be manipulated, altered, evaluated or even created as data without extensive parsing or manipulation of binary machine code. Therefore, we are able to perform crossover and other genetic operations not on design patterns themselves but on the programs which contain the genetic information for design patterns.

Users could get involved in every step of the design process. When each generation is created, the user can select the appropriate ones by overwriting the calculated fitness val-

Insert into new Population

Crossover & Mutation

ues (subjective choice). The quality or "fitness" of these solutions is then determined.

In some case, this can be done algorithmically; however, a human can judge subjectively.

[6] After filtering, genetic operations (crossover, mutation, and elitism) are applied on the population. Thus, by assessing generations, it allows to get more relevant and efficient design patterns satisfying user requirements. In addition using one of the techniques presented below, further designs may be selected for evaluation. Determination of how many times the process will work is left up to the user until appropriate and effective design patterns are reached.

In Genetic Programming approach, a program produces a potentially large number of possible solutions. To reduce the search space, fundamental operations of genetic programming (crossover and mutation) are applied iteratively. A termination criterion is also determined by the user. Therefore, a run is terminated when criteria are satisfied. As a result of evaluation new design patterns are created. (Figure 1)

II. CHROMOSOME REPRESENTATION

Two methods are used to represent the genetic information of design patterns: bit strings and program code.

1. Bit Strings

In this representation, genetic information for each design pattern is considered to be a bit string (chromosome). Each chromosome has localisation coordinates and colour information. A set of chromosomes form the initial population, as simulation of evolution progresses, a fitness value is evaluated for each surviving design pattern.

2. Program Code

Common LISP programming language is

Initial Design

Yes ----►

Evaluate Fitness of each Individual of Population

Select one or more images, fitness values are increased according to selected ones

Figure 1: Visual design with GA&GP

used in order to implement Genetic Programming, because of its capabilities for expressing and evaluating the compositions of functions and terminals. LISP is a flexible and beneficial language, due to its wide range of possible representations. [9]

Initial population is a random composition of functions, such as rotating by an angle, flipping or morphing. Tree representations are used to express LISP programs and to perform genetic operators.

III. CROSSOVER

In Genetic Algorithm approach, either one parent design image or two parent design images (mating) could be used to generate new generations of design patterns. The latter technique is named as multi-parent approach. By finding similarities between parents, overlapping, eliminating features and applying

evolutionary processes, new design patterns emerge. Fitness formulations of various forms, e.g. closed areas are assigned higher fitness values are used to select the most successful designs within each generation.

The genetic process of reproduction between two computer programs is used to create new offspring computer programs which are then selected in proportion to their evaluated fitness. [4] The parental [programs are typically of different sizes and shapes. The offspring programs are composed of sub expressions (sub trees, subprograms, subroutines, building blocks) inherited from their parents. These offspring programs are typically different sizes and shapes from their parents, but they preserve the essential features of their parents. [2, 5]

In Genetic Programming approach, one tree might be inserted randomly into the other, or sub trees might be exchanged. [9]

IV. MUTATION

Mutation consists of only one input design pattern. That is, it can be applied separately on offsprings one by one. By rotating by an angle, flipping or morphing (thicker lines, fatter areas, thinner, longer and shorter functions) are the features of this technique.

In addition, in the Genetic Programming approach a change might be made to a sub tree: changing a leaf node from a constant to a variable, inserting or deleting an internal operator node, or changing a node from one function to another. [2]

V. CONCLUSION

This research aims at improving general design activities by using Genetic Programming (GP) and Genetic Algorithms (GA). In a typical session a user starts with an initial population of design patterns. At each interaction, designs with lower fitness values are eliminated and the remaining designs are applied genetic operators of crossover and mutation to form the

next generation of design patterns. The user (the designer) of the process has manual control over each step. Design session ends when the user requirements are met.

The work on the development of new crossover and mutation operations specific for general design work has been continuing. We search and experiment with these newly defined operators. We intend to report our results in a future publication.

References:

1. A source of information about the field of genetic programming and the field of genetic and evolutionary computation. (n.d.) Retrieved February 09, 2011, from http://www. Gebetic-programming.org/

2. Goldberg, D.E. (1989). Genetic Algorithms in Search, Optimization and Machine Learning. Addison- Wesley Longman Publishing.

3. Graphic Design. (n.d.) Retrieved February 07, 2011, from Wikipedia: http:// en. Wikipedia. Org/ wiki/ Graphic design

4. Koppel, M. &Nickolay, B. (1998, May). Design of image exploring agent using genetic programming. Berlin, Germany.

5. Koza, J.R. (1998). Genetic Programming on the Programming Computers by Means of Natural Selection. Cambridge, Massachusetts, London, England: MIT Press.

6. Lewis, M. Evolutionary Visual Art and Design. In M. Lewis. USA: ACCAD.

7. Muni, D.P., Pal< N.R., & Das, J. (2006). Texture Generation for Fashion Design Using Genetic Programming. ICARCV. IEEE.

8. Visualization _ Computer Graphics. (n.d.) Retrieved February 05, 2011, from Wikipedia: http:// en/Wikipedia.org/wiki/Visuali-zation _ (computer _ graphics)

9. Winston, P.H., &Horn, B.K. (1981). LISP. Addison - Westley.

УДК 575.1/.2.08

ГЕНЕТИЧЕСКОЕ ПРОГРАММИРОВАНИЕ С ИСПОЛЬЗОВАНИЕМ ВИЗУАЛЬНОГО КОНСТРУИРОВАНИЯ

Севинч Сулейман, Бал Гёзде, Булгун Эндер

Кафедра компьютерной инженерии

Университет Докуз Эйлюль

Измир, Турция

Suleyman.sevinc@deu.edu. tr,bgozde@hotmail.com,ender. bulgun@deu.edu. и

Ключевые слова: генетическое программирование, генетические алгоритмы, эволюционные вычисления, конструирование.

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

I. ВВЕДЕНИЕ

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

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

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

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

В данной работе нами используются эволюционные принципы, чтобы имитировать природные конструкции, генерируя их изображения. Для этого нами использованы следующие подходы: генетическое программирование (ГП) и генетический алгоритм (ГА) [2, 5]. Основные операции ГП и ^ (кроссинговер и мутации) были специально разработаны для этого проекта, чтобы получить усовершенствованную, улучшенную конструкцию.

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

Рис. 1 - Внешнее конструирование с ГА и ГП

и выживания наиболее приспособленных особей [1, 7]. В подходах к ГП мы используем общий язык программирования САПР [9] для того, чтобы создать новую конструкцию изображения из уже существующих. Генетическая информация об образцах хранится в инструкции программ, которые воссоздают специфические шаблоны проектирования.

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

Пользователи могут участвовать в каждом шаге процесса проектирования. Когда каждое поколение будет воспроизведено,

пользователь может выбрать наилучшие варианты путем перезаписи рассчитанных приспособленческих потенциалов (субъективный выбор). Затем определяется качество этих решений. В некоторых случаях это может быть сделано алгоритмически, однако человек может судить и субъективно [6]. После отбора генетические операции (скрещивания, мутации и элитарности) применяются на следующем шаге. Таким образом, это позволяет получить более актуальные и эффективные конструкции моделей, удовлетворяющих требованиям пользователя. Кроме того, один из методов, представленных ниже, может быть выбран для оценки дальнейших шагов конструирования. Определить, сколько раз будет повторяться этот процесс, может сам пользователь - до тех пор, пока не будут достигнуты надлежащие и эффективные конструкции модели.

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

II. ПРЕДСТАВЛЕНИЕ ХРОМОСОМЫ

Для представления генетической информации шаблонов проектирования используются два метода: битовые строки и код программы.

1. Битовая строка

В этом представлении генетической информацией для каждого шаблона кон-

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

2. Код программы

Язык программирования САПР, благодаря широте его инструментария, используется для того, чтобы осуществить генетическое программирование. САПР располагает большим диапазоном возможностей [9].

Исходная популяция представляет собой случайный состав функций, таких как поворот под углом, зеркальное отражение или трансформация. Древо представления используется для отображения результатов выполнения САПР-программ и генетических операций.

III. КРОССИНГОВЕР

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

Процесс воспроизводства, реализующийся на основе двух генетических программ, используется для создания потомков с новыми генетическими программами, которые затем отбираются компьютерными программами в соответствии с оценкой их пригодности [4]. Генетические программы родительских форм, как правило, отличаются друг от друга. Генетические программы потомков включают генетические конструкции и составляющие, унаследованные от предков. Генетические программы потомства, как правило, отличаются от родитель-

ских, но при этом сохраняют их основные черты [2, 5].

При генетическом программировании одно древо может быть сформировано независимо от другого, а отдельные ветви могут быть общими [9].

IV. МУТАЦИЯ

Мутация представлена только одним шаблоном проектирования. Этот шаблон может многократно применяться к генетической программе каждого из потомков. Возможности этой технологии: поворот

угла, зеркальное отражение или трансформация (толще, тоньше, длиннее, короче).

Кроме того, при генетическом программировании изменения могут быть сделаны в подструктуре древа: изменение узла листа из постоянного в переменный; добавление или удаление внутренних операций узла, изменение функции узла [2].

V. ЗАКЛЮЧЕНИЕ

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

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

Библиографический список

1. A source of information about the field of genetic programming and the field of genetic and evolutionary computation. (n.d.) Retrieved

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

February 09, 2011, from http://www. Gebetic-programming.org/

2. Goldberg, D.E. (1989). Genetic Algorithms in Search, Optimization and Machine Learning. Addison- Wesley Longman Publishing.

3. Graphic Design. (n.d.) Retrieved February 07, 2011, from Wikipedia: http:// en. Wikipedia. Org/ wiki/ Graphic design

4. Koppel, M. &Nickolay, B. (1998, May). Design of image exploring agent using genetic programming. Berlin, Germany.

5. Koza, J.R. (1998). Genetic Programming on the Programming Computers by Means of

Natural Selection. Cambridge, Massachusetts, London, England: MIT Press.

6. Lewis, M. Evolutionary Visual Art and Design. In M. Lewis. USA: ACCAD.

7. Muni, D.P., Pal< N.R., & Das, J. (2006). Texture Generation for Fashion Design Using Genetic Programming. ICARCV. IEEE.

8. Visualization _ Computer Graphics. (n.d.) Retrieved February 05, 2011, from Wikipedia: http:// en/Wikipedia.org/wiki/Visuali-zation _ (computer _ graphics)

9. Winston, P.H., &Horn, B.K. (1981). LISP. Addison - Westley.

УДК 630:576.8:632

ВЛИЯНИЕ б-ЭНДОТОКСИНОВ BACILLUS THURINGIENSIS НА ИЗМЕНЕНИЕ АНТИИНТЕРФЕРОНОВОЙ АКТИВНОСТИ РЯДА УСЛОВНО ПАТОГЕННЫХ БАКТЕРИЙ

Климентова Елена Георгиевна, кандидат биологических наук, доцент ФГБОУ ВПО «Ульяновский государственный университет» г. Ульяновск, ул. Л. Толстого, 42; Тел. 8(8422)272464, kloushel@mаil.ru Васильев Дмитрий Аркадьевич, доктор биологических наук, профессор Феоктистова Наталья Александровна, кандидат биологических наук, доцент ФГБОУ ВПО «Ульяновская ГСХА им. П.А. Столыпина»

432017г. Ульяновск, бульвар Новый Венец, 1; Тел. 8(422)559547, feokna@yandex.ru

Ключевые слова: 5 - эндотоксины В. thuringiensis, штаммы Е. соИ, St aиreus, антиин-терфероновая активность, факторы персистенции бактерий.

Установлена высокая антиинтерфероновая активность штаммов Е. соНи St. аиге^, выделенных из толстого кишечника белых мышей в условиях экспериментального дисбактериоза, обусловленного длительным пероральным введением высоких доз 5 - эндотоксинов В. thuringiensis.

Бактерии Bacillus thuringiensis - грам-положительные аэробные спорообразующие бактерии, характерным признаком которых является способность продуцировать комплекс кристаллических белков (5-эндотоксинов). В. thuringiensis имеет близкое молекулярно-генетического родство с такими патогенами, как В. cereus, вызывающих пищевое отравление, и В. anthracts, возбудителя сибирской язвы [8]. Известно, что большинство подвидов В. thuringiensis обладают энтеротоксинами, вызывающими

отравление с диарейным синдромом, гемолизинами и другими факторами вирулентности [9]. Белковые токсины бактерий способны оказывать влияние на микроорганизмы: вызывать появление новых патогенных и условно-патогенных штаммов, изменять биологические свойства отдельных представителей микробиоты, обусловливать дисбиотические нарушения [^.Установлено, что высокие дозы 5-эндотоксинов В. thuringiensis subsp. kurstaki (от50 мг/кг веса), длительно вводимые per os лабораторным

i Надоели баннеры? Вы всегда можете отключить рекламу.