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