Читать «Вычислительное мышление: Метод решения сложных задач» онлайн - страница 35

Питер Макоуэн

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

Многие системы искусственного интеллекта основаны на идее использования Вместо того чтобы рисовать схемы, мы пишем правила в следующем виде:

какая-то ситуация действие, которое надо выполнить

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

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

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

Другие головоломки

Еще один простой «Улей»

На рис. 28 представлена новая головоломка. Посмотрите, можно ли использовать приведенные выше правила для ее решения. В процессе разгадывания вы найдете новые правила. Если ни одно из выведенных ранее правил не подойдет, возможно, стоит вернуться к исходным. Помните, что по второму правилу два одинаковых числа не могут находиться рядом. Ответ приведен в конце главы.