Недопонимание роли эвристики в больших системах заставляет глубже задуматься о компьютере. Сам компьютер можно анализировать, можно понять в деталях, мы же его сами сконструировали к конце концов. Мы уже заявили, что компьютерная программа у принципе — алгоритм. Надо, следовательно, понять, где эвристика вступает в область компьютера. Необходимость в этом возникает. во-первых, как только компьютер начинает воспринимать поступающую в него информацию. Если мы знаем, что делать с входными данными, например подсчитать средние значения ряда цифр, чтобы получился результат на выходе, то здесь нет никаких затруднений. Это означает, что система нам понятна, а алгоритм сумма х/ n (который означает: сложи все цифры и раздели их на их число) решает задачу. Все очень просто, поскольку мы точно обозначили цель, систему и алгоритмы и тем самым сдерживаем рост разнообразия. Но когда дело идет о том, чтобы связать многоразмерный вход с многоразмерным выходом, то у нас появляются все оснонания прибегнуть к анастомотик ретикулум. Теперь компьютер должен быть запрограммирован так (т, е. должен быть обеспечен алгоритмом), чтобы был соответственно организован ретикулум, но это можно сделать, только зная конечную цель.

Здесь и возникает очень деликатная проблема: если цель нельзя представить во всех деталях, то нужно прибегнуть к эвристике, и тогда компьютер должен быть снабжен алгоритмом эвристической природы. Трудность тут принципиальная. Допустим, мы заявляли: "Компьютер должен обучаться на собственном опыте, как учатся люди". Обучаться чему? Мы не знаем ответа, мы просто считаем, что компьютер через некоторое время должен найти методом проб и ошибок такой курс действий, который даст лучший результат управления. Но мы должны сказать, какой результат лучше и какой хуже, а компьютер должен определить лучшую, чем уже известна, стратегию, лучшую систему управления. Конечно, он может это сделать, поскольку его алгоритм (то, что запрограммировано) эвристический, по определению. Немного измените решение, которое Вы ранее использовали, — подсказывает алгоритм, — и сравните результат с предыдущим. Если этот алгоритм обеспечивает большую прибыль или удешевляет производство, или чем-то иным устраивает нас, то принимайте его. Так и продолжайте, пока не достигнете такого положения, при котором любой вариант даст худший результат, чем раньше. Тогда придерживайтесь этой стратегии до тех пор, пока ситуация не изменится, после чего Вы сможете вновь искать лучшую стратегию, рассмотрев ее новые варианты.

В этом простом, бесхитростном примере, который и ребенку понятен, и заключается секрет этого, по существу биологического, процесса. Мы прорвались через барьер, который был создан консервативным мнением 2000 лет тому назад между живыми и механическими системами управления. В этом суть барьера между алгоритмическими и эвристическими моделями управления. Если воздержаться от мистически-сентиментального подхода к природе ("неправда ли, как она умна!"), то станет видно, что природа всего лишь использует свои алгоритмы, чтобы подчеркнуть эвристическое начало. Генетический материал является алгоритмическим: молекулы ДНК — хранители сложного определенного кода. Так потомство строится по заданным "чертежам". Но в этом коде записаны вариации и мутации, и поэтому потомки располагают рядом возможных чертежей. Тогда, говоря другим языком — языком экологии, выносится приговор относительно "преимуществ" данного потомка. Вариант, достойный сохранения, выживает, при этом вариации и мутации, которые определяют его преимущества, закрепляются, а мутации, обусловливающие недостатки, истребляются. Генетическая эвристика работает в направлении к неизвестной цели — созданию форм жизни, способных выживать в обстоятельствах, которые слишком сложны для анализа, используя приемы, для оптимизации которых еще не создан компьютер.

Существует несколько важных постулатов относительно эвристических методов управления. Их стоит тщательно рассмотреть и оценить. Поэтому с риском испортить их краткостью, я сформулировал 13 следующих постулатов для тщательного их усвоения.

1. Эвристика ведет нас к цели, которую мы не в состоянии ясно выразить и, возможно, узнать, сумев ее достигнуть. Алгоритм (типа "чтобы достичь высшей точки, попытайтесь сделать по одному шагу во всех направлениях и передвиньтесь к следующей более высокой точке") определяет эвристическое условие выработки правильной стратегии. А суть стратегии такова: "лучшее — подниматься из данного места, пока есть куда, затем переместиться выше". Но такой маршрут нельзя выработать заранее.

Перейти на страницу:

Поиск

Похожие книги