Введение

Система переписывания и тип формальной грамматики

L-система, или система Линденмайера, — это система параллельного переписывания и тип формальной грамматики. L-система состоит из алфавита символов, используемых для создания строк, набора правил подстановки, расширяющих каждый символ в более длинную строку символов, начальной "аксиомы", с которой начинается построение, и механизма для преобразования сгенерированных строк в геометрические структуры. L-системы были введены и разработаны в 1968 году Аристидом Линденмайером, венгерским теоретическим биологом и ботаником из Университета Утрехта. Линденмайер использовал L-системы для описания поведения растительных клеток и моделирования процессов роста растений. L-системы также применялись для моделирования морфологии различных организмов и могут использоваться для генерации самоподобных фракталов.

Происхождение

Будучи биологом, Линденмайер работал с дрожжами и нитевидными грибами и изучал закономерности роста различных типов бактерий, таких как цианобактерия Anabaena catenula. Изначально L-системы были созданы для формального описания развития таких простых многоклеточных организмов и иллюстрации взаимосвязей между растительными клетками. Впоследствии эта система была расширена для описания высших растений и сложных разветвленных структур.

Вариации

Разработано несколько усовершенствований этой базовой техники L-систем, которые могут использоваться как по отдельности, так и в сочетании друг с другом. К ним относятся стохастические грамматики, контекстно-зависимые грамматики и параметрические грамматики.

Двунаправленные грамматики

Би-направленная модель чётко разделяет символическую систему переписывания и назначение формы. Например, процесс переписывания строк в Примере 2 (Фрактальное дерево) не зависит от того, каким образом графические операции сопоставляются символам. Иными словами, к заданной системе переписывания применимо бесконечное количество методов визуализации. Би-направленная модель состоит из 1) прямого процесса, который строит дерево вывода с использованием правил продукции, и 2) обратного процесса, который реализует это дерево, последовательно назначая формы (от листьев к корню). Каждый шаг обратного вывода требует существенных геометрико-топологических рассуждений. В рамках этой би-направленной структуры ограничения и цели проектирования кодируются в грамматическом преобразовании формы. В задачах архитектурного проектирования би-направленная грамматика обеспечивает согласованную внутреннюю связность и богатую пространственную иерархию.

Открытые проблемы

Существует множество нерешенных задач, связанных с изучением L-систем. Например:

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