На главную Тексты книг БК Аудиокниги БК Полит-инфо Советские учебники За страницами учебника Фото-Питер Техническая книга Радиоспектакли Детская библиотека

Информатика и компьютерный интеллект. Тимофеев А. В. — 1991 г

Адиль Васильевич Тимофеев

Информатика
и компьютерный
интеллект

*** 1991 ***



DjVu


АДИЛЬ ВАСИЛЬЕВИЧ ТИМОФЕЕВ — профессор, доктор технических наук, автор 17 книг и 180 научных работ в области компьютерной информатики, робототехники и систем искусственного интеллекта. Родился в 1944 г., окончил в 1967 г. кафедру ЭВМ Московского высшего технического училища (ныне — МГТУ им. Н. Э. Баумана). В 1971 г. защитил кандидатскую диссертацию в Ленинградском университете, после чего работал там же старшим научным сотрудником лаборатории теоретической кибернетики математико-механического факультета. В 1982 г. защитил докторскую диссертацию и с 1984 г. работает профессором кафедры робототехнических и электромеханических систем Ленинградского института авиационного приборостроения. Создал научную школу в области адаптивных робототехнических и интеллектуальных систем.
      А. В. Тимофеев — председатель секции робототехнических систем Ленинградского областного совета научных и инженерных обществ, член бюро секции при Центральном правлении Всесоюзного НТО Приборопро-ма им. акад. С. И. Вавилова, член секции Научного совета по комплексной проблеме «Кибернетика» при Президиуме АН СССР, член Межвузовской секции по проблемам управления движением и навигации Научного совета АН СССР.


Содержание

К читателю 3
Информационные модели и алгоритмы решения задач
Что такое информатика? 5 Задачи и модели компьютерной информатики 11
Детерминированные и адаптивные алгоритмы 17
Алгоритмы решения интеллектуальных и творческих задач 21
Представление данных и программирование компьютеров
Формы представления и кодирования данных 23
Способы записи и реализации алгоритмов 27
Языки программирования 31
Компьютер — исполнитель программ 34
«Анатомия» и «физиология» персональных компьютеров
Заглянем «под капот» персонального компьютера 36
Паспортные данные компьютера 39
Внешние устройства — лицо, руки и уши компьютера 44
Операционная система — дирижер операций 49
Пакеты прикладных программ Базы данных и программы управления 55
Операционные оболочки 56
Компьютерные «вирусы» и «болезни» 60
Индустрия компьютерной информатики
Компьютеростроение — новая отрасль промышленности 63
Генеалогическое дерево персональных компьютеров IBM PC 65
Компьютеры и информатика в сфере образования
Персональные компьютеры в школе 68
Учебные классы роботов и средств автоматизации 72
Подготовка специалистов в области автоматизации 75
Компьютерная информатика и проектирование
Диалог между конструктором и компьютером 76
Особенности диалогового проектирования 80
Базы знаний и данных проектирования 82
Интеллектуальные терминалы и машинная графика 85
Интеллект человека, компьютера и робота
Что делает мозг? 90
Мозг как компьютер 95
Мышление и компьютерный интеллект 98
Обработка знаний и экспертные системы 106
Элементы интеллекта роботов 115
На пути к интеллектуальным компьютерам 120
Вместо заключения 125


      К читателю
      Перед вами книга, в которой рассказывается о новом научном направлении — компьютерной информатике и системах искусственного интеллекта. Это молодое, быстро развивающееся направление открывает широчайшие возможности для автоматизации процессов обработки информации в различных сферах деятельности человека, включая и интеллектуальную.
      Главным инструментом автоматизации служат компьютеры вместе с соответствующим алгоритмическим и программным обеспечением. Подобно тому как изобретение двигателей и роботов открыло эру комплексной автоматизации физического труда, появление компьютеров и средств искусственного интеллекта сделало то же самое в отношении умственной деятельности человека. Поэтому современный этап научно-технического прогресса часто называют компьютерной революцией.
      Знакомство с информатикой и возможностями компьютерного интеллекта сегодня необходимо практически каждому человеку. Маршруты экскурсий в эту увлекательную область мы выбирали, исходя из истории информатики, внутренних связей ее разделов и развития в ней синтезирующего начала, связанного с интеллектуализацией компьютеров. При этом основное внимание уделялось обсуждению важнейших идей, методов и средств, обеспечивающих эффективное решение задач обработки информации и знаний с помощью компьютеров. Что же касается вопросов экономического, психологического и социального характера, с которыми неизбежно приходится сталкиваться по мере внедрения компьютеров, то из них освещены лишь те, которые наиболее тесно связаны с пониманием последствий информатизации общества.
      Мы стремились к тому, чтобы содержание книги было понятно и полезно учащимся старших классов школ и профессионально-технических училищ, руководствуясь при этом известным принципом — излагать материал настолько просто, насколько это возможно. Что касается уровня подготовки читателя, то к нему не предъявляются слишком большие требования. Для понимания существа вопросов, излагаемых в книге, решающее значение имеют внимание и интерес читателя к проблематике компьютерной информатики и искусственного интеллекта.
     
      Информационные модели и алгоритмы решения задач
      Что такое информатика? Ответ на этот вопрос можно найти в Большой советской энциклопедии. В ее десятом томе термин «информатика» определяется как «научная дисциплина, изучающая структуру и общие свойства научной информации, а также закономерности ее создания, преобразования, передачи и использования в различных сферах человеческой деятельности». Там же отмечается, что информатика тесно связана с вычислительной техникой. Приведенное определение является слишком общим. Поэтому оно нуждается в уточнении. Особенно это касается термина «компьютерная информатика», который вошел в наш лексикон лишь в последнее время.
      Появление мощных компьютеров и их широкое использование для обработки информации привело к необходимости изменить определение понятия «информатика». Сегодня компьютерная информатика рассматривается как новое научное направление, связанное с автоматизированной обработкой информации. Оно охватывает представление данных и знаний в памяти
      компьютера и их использование для автоматизации процессов программирования, проектирования, управления и многих других.
      Современные системы связи позволяют подключать компьютеры к сколь угодно удаленным электронным источникам информации. Примерами такой глобальной «безбумажной» связи могут служить космическая система связи через спутники и международная компьютерная сеть, соединяющая более 1000 научных центров в 20 странах мира.
      Интеграция компьютеров с новыми средствами связи значительно расширила возможности «безбумажной» информатики. Б результате возникла новая информационная технология решения задач. Она оказывает влияние практически на все сферы жизни общества. Важную роль при этом играют современные компьютеры. Если 2 — 3 десятилетия назад громоздкие ЭВМ размещались в специальных вычислительных центрах и обслуживались только операторами-профессионалами, то сейчас компьютеры превратились в компактный, но весьма мощный инструмент, обеспечивающий специалистам широкий доступ к автоматизированным банкам данных и знаний. Диапазон эффективного применения компьютеров для автоматизированной обработки информации возрастает с каждым днем.
      В 1984 г. были сформулированы и уточнены научные проблемы современной теории информационных систем. По определению академика А. А. Самарского, «информационная система, как, впрочем, и любая другая система, жизнеспособна только тогда, когда она основана на глубинном знании информационного процесса, воплощенном в триаде: модель — алгоритм — программа».
      Структура системы компьютерной информатики включает элементы этой триады и устанавливает их связь с исследуемым объектом (см. рис. на с. 7). Проблемы компьютерной информатики сводятся к разработке информационной модели объекта, алгоритма обработки информации и программы, реализующей этот алгоритм на языке компьютера.
      В 1989 г. разработан ряд концепций информатизации общества до 2005 г. Они направлены на ускоренное развитие средств компьютерной информатики и их внедрение в различные сферы деятельности человека. Важнейшими областями информатизации являются: комплексная автоматизация и роботизация производства; автоматизация научных исследований и проектирования; информатизация организационно-экономического управления; компьютеризация процессов обучения и подготовки кадров в школах, техникумах, профессионально-технических училищах и высших учебных заведениях; компьютеризация сферы услуг, здравоохранения и быта населения.
      Для успешного решения проблем информатизации предлагается создать мощный народнохозяйственный комплекс компьютерной информатики. В его задачи
      входят разработка, производство и эксплуатация компьютеров и новых информационных технологий. Бажная роль отводится созданию и внедрению систем искусственного интеллекта (интеллектуальные роботы, диалоговый интерфейс для свободного общения человека с компьютером на естественном языке и т. п.). В Москве, Ленинграде, Новосибирске и ряде других городов успешно функционируют кружки школьной информатики, компьютерные клубы и т. п. Они позволяют более глубоко и предметно изучить новый обязательный школьный курс «Основы информатики и вычислительной техники».
      В промышленно развитых странах компьютерная информатика включена во многие учебные программы на разных уровнях обучения: от школ до высших учебных заведений. Например, в США свыше 85% школ имеют компьютеры и в них преподаются основы информатики. На университетском уровне знание основ компьютерной информатики давно стало обязательным условием получения диплома или ученой степени.
      Мощным катализатором внедрения компьютерной информатики и ликвидации «компьютерной неграмотности» стали персональные компьютеры. Сначала казалось, что разработка таких компьютеров — это попытка перевести обычные электронные игры на более солидную основу, а именно на ЭВМ. Поэтому многие фирмы — производители компьютеров не придавали им серьезного значения. Однако вскоре выяснилось, что персональные компьютеры, ориентированные на людей, не имеющих специального образования в области информатики и навыков работы с компьютерами, раскупаются сотнями тысяч и спрос на них постоянно растет.
      Волна «персональной компьютеризации» захватила прежде всего страны Запада. Основными покупателями персональных компьютеров стали инженеры, ученые, экономисты, менеджеры, архитекторы и врачи. К 1987 г. только в США было произведено более 30 млн. персональных компьютеров. Их доступность вызвала колоссальный интерес к компьютерной информатике представителей множества профессий. По мере усложнения задач компьютеры совершенствовались и превратились в профессиональные компьютеры. Они предназначены для ускорения решения задач обработки информации в различных областях деятельности, требующих высокого профессионализма. Сегодня многие специалисты имеют на своих рабочих столах компьютеры, которые по своим возможностям не уступают большим ЭБМ 60 — 70-х гг.
      Интерес к современным компьютерам стимулируется тем, что они резко повышают производительность в процессе решения задач. Например, применение профессиональных компьютеров при автоматизации проектирования больших интегральных схем (БИС), на базе которых строятся компьютеры разных типов, позволило сократить сроки их разработки с нескольких лет до нескольких месяцев.
      Б нашей стране важность персональных компьютеров была осознана с большим опозданием. Для ликвидации сложившегося отставания в 1985 г. был создан Межотраслевой научно-технический комплекс (МНТК) «Персональные ЭБМ». Этот комплекс призван сконцентрировать имеющиеся в стране силы и средства и быстро развернуть массовое производство персональных ЭБМ на уровне мировых стандартов. Потребность в персональных компьютерах в нашей стране составляет десятки миллионов.
      Компьютерная информатика стала основой новой информационной технологии решения разнообразных задач обработки информации. На смену традиционным «бумажным» способам представления и обработки информации пришли новые, «безбумажные». В связи с
      этим в научной и популярной литературе стали часто употребляться новые термины: «безбумажная информатика» и «безбумажная технология решения задач».
      Может создаться впечатление, что «безбумажность» является главным признаком информатики. Но это впечатление ошибочно. Оно основывается на отождествлении новой информационной технологии с простым использованием компьютеров. Конечно, современные компьютеры с их большой памятью и колоссальным быстродействием позволяют решать многие задачи, связанные с обработкой информации. Однако качество решения в первую очередь определяется теми алгоритмами обработки информации, которые в них закладываются человеком.
      Поэтому разработка эффективных алгоритмов обработки информации является одной из важнейших теоретических проблем информатики. Компьютеры служат лишь инструментом, на базе которого реализуются эти алгоритмы. При этом носителем информации служит не бумага, а магнитная лента или гибкие диски. Что же касается качества решения задач интеллектуального характера, то оно в такой же степени зависит от технических средств хранения и обработки информации, как, скажем, качество художественного произведения зависит от качества бумаги.
      Сегодня компьютеры планируют, проектируют, управляют, вычисляют, консультируют и обучают. Это достигается в основном благодаря их большой памяти и быстродействию. Но память и быстродействие компьютеров все-таки ограниченны. В то же время существуют задачи обработки информации, сложность которых чрезвычайно высока. Если решать эти задачи методом перебора вариантов, делая ставку только на мощь современных компьютеров, то возникают непреодолимые трудности, например при разработке шахматных программ, основанных на полном переборе вариантов.
      Кроме того, имеются алгоритмически не разрешимые задачи. Отсюда следует, что, как бы ни был совершенен компьютер, существует предел сложности задач, которые могут быть на нем решены за приемлемое время.
      Б связи с этим огромное значение приобретает общая методология решения задач с помощью компьютера, позволяющая разрабатывать эффективные методы формализации задач и алгоритмы их решения. По существу, она является теоретической основой компьютерной информатики.
      Задачи и модели компьютерной информатики. Решение задач обработки информации сводится к поиску некоторого алгоритма, гарантирующего получение требуемого результата. Для автоматизации этого процесса нужно прежде всего формализовать условия задачи и разработать методы поиска решений. В результате получим формализованную информационную модель задачи и алгоритм поиска ее решения, которые можно программно реализовать на компьютере.
      В процессе решения задач обработки информации возникают трудности. Без их преодоления невозможно найти решение. Однако трудности бывают разные. В зависимости от их характера задачи обработки информации можно разделить на четыре класса.
      К I классу отнесем строго определенные и четко поставленные задачи. Если для них существует и известен разрешающий алгоритм, то будем называть эти задачи детерминированными (вычислительные задачи, связанные с решением линейных алгебраических или дифференциальных уравнений). Методы и алгоритмы решения таких задач хорошо разработаны и известны.
      Отличительная черта задач II класса — неопределенность, элементы которой могут встречаться как в условиях задач, так и в процессе их решения. Поэтому
      необходима адаптация алгоритмов к факторам неопределенности. Будем называть такие задачи недетерминированными или задачами с неполной информацией (задачи автоматического управления в условиях, когда ряд характеристик объекта управления и окружающей его среды заранее неизвестен).
      К III классу относятся задачи, формулируемые в символьной форме на каком-либо языке. Используемый при этом язык базируется на сложившейся системе понятий в рассматриваемой области. Решение таких задач требует формализованного представления понятий и обработки знаний. Будем называть эти задачи интеллектуальными (распознавание видеоинформации или речи, планирование поведения и принятие решений на понятийном уровне).
      Наконец, к IV классу можно отнести разнообразные задачи, связанные с имитацией и моделированием творческой деятельности человека. Условия и методы их решения, как правило, трудно формализуемы. Алгоритмы их решения носят эвристический характер. Задачи этого класса будем называть творческими или эвристическими (сочинение стихов или музыки, игра на музыкальных инструментах, игра в шахматы, рисование и т. п.).
      Описанная классификация задач обработки информации представлена на рис. на с. 14. Рассмотрим теперь особенности формализации условий задач в зависимости от того, к какому классу они относятся.
      Основным средством формализации задач, решаемых на компьютере, является информационная модель. Она представляет собой формализованное описание исходных данных и условий задачи. Модель должна быть адекватной решаемой задаче, нужно учитывать те свойства, условия, характеристики и закономерности, которые необходимы для решения данной задачи. Бели модель неадекватна, то соответствующее описание (и получаемое на его основе решение) не достоверно или не приемлемо.
      Адекватность информационной модели решаемой задачи играет ключевую роль в компьютерной информатике. Она позволяет, например, определить с требуемой точностью состояние моделируемого объекта и прогнозировать его поведение под действием различных факторов.
      Поэтому моделирование задач и объектов стало мощным методом научного познания задолго до появления компьютеров. Б механике и физике метод математического моделирования давно используется для описания физических задач и объектов и формализации физических законов (законы Ньютона, уравнения Лагранжа и Максвелла, принципы термодинамики и уравнения квантовой физики). Метод математического моделирования широко используется и в других естественных науках, а также в технике. Многие выдающиеся достижения научно-технического прогресса основываются на этом методе.
      Классический математический анализ позволил построить сравнительно простые модели детерминированных задач. Новая информационная технология решения задач с помощью компьютеров расширила класс моделей. Они стали своеобразными информационными имитаторами реальных процессов и объектов. Поэтому моделирование на базе компьютеров часто называют имитационным моделированием.
      С помощью компьютеров удается достаточно точно описать поведение многих объектов в реальных условиях, моделировать поведение объектов в ускоренном масштабе времени. Кроме того, появилась возможность варьировать в широких пределах исходные данные и условия недетерминированных задач. Это позволяет изучать свойства моделируемых объектов в существенно нестационарных и частично неопределенных условиях. Соответствующие информационные модели будем называть адаптивными. По мере решения задач и накопления информации модели уточняются и корректируются, адаптируясь к факторам неопределенности.
      Б последнее время принципы имитационного моделирования находят применение в интеллектуальных и творческих задачах. При этом используются методы искусственного интеллекта, позволяющие формализовать необходимые понятия и знания. Строятся интеллектуальные и творческие модели, информационной основой которых служат формализованные версии естественного языка, средства поиска логического вывода, а также разного рода эвристики.
      Таким образом, мы убедились, что классы задач определяют особенности моделей, необходимых для их решения. Классификация моделей представлена на рис. на с. 16. Она охватывает интеллектуальные, творческие, жесткие и адаптивные модели.
      Детерминированные и адаптивные алгоритмы. После того как задача поставлена и формализована, возникает необходимость в поиске эффективных алгоритмов ее решения. Поэтому необходима разработка алгоритмического обеспечения, которое представляет собой совокупность алгоритмов обработки информации, обеспечивающих решение определенного класса задач. Выбор алгоритма зависит от характера решаемой задачи.
      Рассмотрим особенности алгоритмов решения детерминированных и недетерминированных задач. Формализация детерминированных задач приводит к жестким моделям, а недетерминированных — к адаптивным.
      Главной особенностью жестких моделей является их полная определенность. Поэтому алгоритмы решения детерминированных задач носят жесткий характер. Они допускают непосредственную программную реализацию на компьютере. Будем называть такие алгоритмы жесткими. Уточним смысл понятия «алгоритм».
      Алгоритмом называется конечный набор правил, обеспечивающий решение любой задачи из некоторого заданного класса задач. Каждый алгоритм характеризуется тремя основными свойствами: детерминированностью, результативностью и массовостью.
      Детерминированность означает, что правила, образующие алгоритм, должны быть строго определенными, однозначными и непротиворечивыми. Этим обеспечивается его независимость от исполнителя, будь то человек или компьютер.
      Результативность — это свойство алгоритма обеспечивать решение задачи за конечное число шагов. В противном случае считается, что алгоритм неприменим для решения данной задачи. Результативный алгоритм характеризуется конечностью времени его выполнения. Это время равно числу шагов, приводящих к решению задачи.
      Массовость — это свойство алгоритма обеспечивать решение не одной конкретной задачи, а целого множества задач.
      Данная трактовка понятия «алгоритм» не претендует на математическую строгость. Однако она объясняет его содержательный смысл и интуитивно понятна каждому. Термин «алгоритм» роднит информатику и математику. Первоначально он зародился в математике. В эпоху средневековья алгоритмом называли правила выполнения арифметических действий над арабскими цифрами. Происхождение термина «алгоритм» связано с именем выдающегося математика древности Мухаммеда бен Мусы аль-Хорезми, который в IX в. предложил первые арифметические алгоритмы. В дальнейшем, по мере развития математики и информатики, это понятие многократно уточнялось и обобщалось.
      Общая схема определения термина «алгоритм» была предложена советским математиком академиком А. Н. Колмогоровым. Она позволила, в частности, доказать эквивалентность ранее данных определений. В рамках этой схемы возможны различные уточнения и конструктивные определения понятия «алгоритм» с учетом особенности решаемых классов задач.
      Одно из таких уточнений, играющих важную роль в компьютерной информатике, получило название машины Тьюринга. Схема такой машины, служащей для обработки информации, была предложена английским математиком А. Тьюрингом в конце 30-х гг. Она почти на 20 лет опередила фактическое появление компьютеров.
      Что же представляет собой машина Тьюринга и каков алгоритм ее работы? Состоит она из трех систем: запоминающей, управляющей и исполнительной. Запоминающая система — это своеобразный склад информации. Ее можно представить как бесконечную ленту, на которой записывается закодированная информация, составленная из символов некоторого фиксированного алфавита. Часть ленты отводится для записи и хранения таблицы команд. Управляющая система считывает эти команды в том порядке, который предписывает заданный алгоритм обработки информации. Исполнительная система реализует выполнение как отдельных команд, так и алгоритма в целом. Работа машины Тьюринга сводится к изменению ее состояний в зависимости от того, каково состояние машины и какая информация подана на ее вход.
      Один и тот же алгоритм может быть реализован различными способами. Каждому алгоритму можно поставить в соответствие его имитатор, который выполняет те же операции, что и данный алгоритм.
      Рассмотрим некоторый алгоритм, определяющий работу машины Тьюринга с некоторыми фиксированными алфавитом символов и таблицей команд. Б качестве „имитатора возьмем другую машину Тьюринга, таблица команд которой получена из таблицы команд
      первой машины посредством ее кодирования в символах алфавита первой. Тогда при одной и той же исходной информации результаты ее обработки через конечное число шагов совпадут между собой (с точностью до кодирования). При этом процесс кодирования алгоритма, определяющий последовательность команд первой машины Тьюринга, в символах языка второй машины (имитатора), по существу, представляет собой процесс программирования.
      Таким образом, мы убедились, что для каждого алгоритма существует реализующий его имитатор. Этот факт имеет важное значение в компьютерной информатике, поскольку из существования имитатора следует возможность моделирования на компьютере любого алгоритма обработки информации. Для этого достаточно запрограммировать алгоритм в определенной системе команд.
      Легко убедиться, что модели Тьюринга обладают признаками детерминированности, результативности и массовости. Это делает их вполне определенными и достаточно жесткими.
      Однако для решения задач с неполной информацией зачастую нужны более гибкие алгоритмы. Их можно получить путем расширения понятия «алгоритм» за счет отказа от требования детерминированности. В этом случае алгоритмам можно придать адаптивный характер. Они обеспечивают решение задач за конечное время в заданном классе неопределенности. Будем называть такие алгоритмы адаптивными. Они отличаются большой гибкостью, способностью автоматически приспосабливаться (адаптироваться) к изменяющимся или не полностью определенным условиям задачи. В отличие от жестких алгоритмов они не обладают признаком детерминированности.
      Алгоритмы решения интеллектуальных и творческих задач. Для этого необходимы модели и алгоритмы, представленные в терминах некоторого языка. Б качестве такого языка могут использоваться алгоритмические языки. Они позволяют представить в компьютере информационные модели и алгоритмы решения задач разных типов. В этом проявляется универсальность этих языков.
      Структура алгоритмических языков какова, что в них четко разграничены данные (то, над чем совершаются операции) и операторы (то, что определяет тип и последовательность операций). Каждый оператор преобразует множество входных данных во множество выходных. Его функции фиксируются в описании оператора. Одни операторы преобразуют информацию, другие указывают порядок выполнения операторов первого типа. Особенность этих операторов заключается в том, что на их выходе формируются промежуточные данные, подаваемые на вход других операторов. Операторы второго типа отличаются тем, что их выходами являются номера других операторов, которые подлежат исполнению. При этом номер оператора совпадает с его порядковым номером в записи на алгоритмическом языке. Выполнение операторов первого типа идет по порядку их номеров до тех пор, пока не встретится оператор второго типа. Последний может нарушить этот порядок. Например, он может передать управление оператору, номер которого совпадает с выходным номером. Такой переход называется условным. Функция оператора, инициирующего условный переход, заключается в проверке выполнения некоторого условия по входным данным. Если это условие выполнено, то данный оператор не влияет на порядок выполнения алгоритма. В противном случае реализуется условный переход. Модели и алгоритмы решения интеллектуальных задач на алгоритмическом языке будем называть интеллектуальными. Они всегда могут быть реализованы на компьютере. Для этого нужно предусмотреть средства, имитирующие соответствующие нетрадиционные операторы (экспертные процедуры, поиск логического вывода и т. п.).
      Однако творческие возможности компьютера весьма ограниченны. Для придания ему способности решать задачи творческого характера необходимы соответствующие модели и алгоритмы, называемые творческими.
      Творческие модели служат для моделирования на компьютере отдельных творческих процессов. Процедуры, лежащие в основе этих процессов, как правило, неизвестны. Поэтому обычно используются эвристические процедуры обработки информации, имитирующие творческую деятельность человека. Они могут, например, имитировать игру гроссмейстера в шахматы. В этом случае качество игры компьютера целиком определяется тем алгоритмом обработки информации и анализа ситуаций, который в него заложен. «Творческий потенциал» компьютера сильно зависит от интеллекта человека — разработчика алгоритма.
      Классификация алгоритмов и реализующих их программ предоставлена на рис. на с. 23.
      Среди элементов творческой деятельности, которые трудно поддаются моделированию на компьютере, можно выделить следующие: постановка и формализация творческих задач, генерация идей и гипотез в процессе решения, интуитивный синтез сюжетов и сценариев, формирование зрительных и музыкальных образов и т. п. Сложность имитации этих элементов творчества привела к тому, что некоторые оптимистические прогнозы специалистов в области компьютерной информатики не оправдались, например перевод художественных произведений, сочинение стихов и музыки на уровне мастеров этого дела.
      Трудности на этом пути связаны главным образом с примитивностью творческих моделей и алгоритмов, их неадекватностью творческим процессам. Тем не менее имеются и определенные достижения. К ним можно отнести компьютерный перевод технических и научных текстов, сочинение вариаций по заданной мелодии, синтез простейших сюжетов для сказок. Эти первые успехи впечатляют и обнадеживают.
     
      Представление данных и программирование компьютеров
      Формы представления и кодирования данных. Компьютеры имеют дело с информацией. Они реализуют различные алгоритмы обработки информации. Это позволяет автоматизировать процесс решения задач. Чтобы лучше понять, как это происходит, нужно прежде всего уточнить, что подразумевается под словом информация.
      Не вдаваясь в тонкости определения этого понятия, будем исходить из того, что информация — это сведения об условиях задачи и методах ее решения. Условия задачи будем называть данными, а методы решения — знаниями. Эти разновидности информации могут быть зафиксированы с помощью букв, знаков, цифр, картинок и т. п. или закодированы в мозге или, компьютере.
      Носитель информации — физическая среда, в которой она фиксируется. В роли носителя могут выступать бумага, фотопленка, клетки мозга, перфокарты, перфоленты, магнитные ленты и диски или ячейки памяти компьютера. Современная техника предлагает все новые и новые разновидности носителей информации. Для кодирования информации в них используются электрические, магнитные и оптические свойства материалов. Разрабатываются носители, в которых информация фиксируется на уровне отдельных молекул.
      Важным требованием, предъявляемым к любому носителю информации, является возможность считывания информации. Сведения, написанные в книгах, может читать человек. Информацию, закодированную на машинных носителях, может «читать» (точнее, декодировать) компьютер. При этом сведения, физически зафиксированные на любом носителе информации, представляют собой набор символов. В книгах — это буквы, цифры и другие знаки, на фотографии — набор точек разного цвета или степени яркости.
      Эти сведения об объектах реального мира и его закономерностях можно зафиксировать в виде последовательности символов.
      Компьютеры хорошо приспособлены именно для обработки символьных данных, их преобразования из одной формы в другую, выполнения арифметических и логических операций и т. п. Поэтому в наш лексикон, связанный с компьютерной информатикой, прочно вошли выражения типа «обработка слов», «база данных», «анализ предложений», «логический вывод» и т. п.
      Мы знаем, что для представления разнообр)азной информации нужно не так уж много символов. Например, в миллионах книг и статей на русском языке используется весьма ограниченный набор различных символов. Он включает 33 буквы алфавита, 10 цифр и несколько десятков знаков. Набор этих символов позволяет зафиксировать колоссальный объем информации. Более того, все то, что написано с использованием русского алфавита, можно перевести на любой другой язык без потери информации.
      Набор символов, используемых для представления и обработки информации в компьютере, минимален. Он включает всего два символа — 0 и 1. Тем не менее с их помощью можно зафиксировать любые данные и знания. Это легко понять, если вспомнить принцип кодирования и передачи информации с помощью азбуки Морзе. Телеграфист, используя только два символа этой азбуки — точки и тире, может передать практически любой текст. Этот принцип лежит в основе использования в компьютере бинарной логики, алфавит которой состоит всего из двух знаков.
      Для определения количества информации служит специальная единица, получившая название «бит». Этот термин происходит от сокращения английского термина binary digit — двоичная единица. Один бит кодируется в компьютере с помощью напряжения, принимающего значения 0 В и 5 В. Этим значениям напряжения соответствует два значения бинарного символа: 0 и 1.
      Обычно информация хранится в машинных кодах, которые имеют длину в один или несколько байтов. Одному байту соответствует 8 бит, слову — 16 бит, или 2 байта. Информационная емкость памяти компьютеров измеряется кило- и мегабайтами.
      Один килобайт (Кбайт) содержит 210 = Ю24 байт, а
      один мегабайт (Мбайт)=220 = 1048576 байт. Приставки «кило» и «мега» при определении единиц измерения обычно означают 1000 и 1 ООО ООО. Однако при определении Кбайт и Мбайт они лишь приблизительно соответствуют этому традиционному пониманию.
      Важное значение имеет экономность кодирования последовательностей символов в компьютере. Можно ли закодировать последовательность символов без потери информации так, чтобы ее код имел наименьшее количество бит?
      Ответ на этот вопрос дает теория оптимального кодирования и передачи информации по каналам связи, одним из основоположников которой является американский ученый К. Шеннон. В 1948 г. он разработал статистический подход к измерению количества информации, суть которого заключается в том, что обрабатываемая информация рассматривается как источник символов с заданными вероятностями их появления. Если, например, компьютер обрабатывает тексты, то в роли символов выступают буквы из алфавита используемого языка (русского, английского, французского и т. п.). Можно определить вероятности (частоты) появления этих букв и подсчитать энтропию (меру неопределенности), которую несет в себе обработка одного символа. По этим данным определяется оптимальный способ кодирования. Например, при оптимальном кодировании английского текста потребовалось бы 14 бит на слово или 2,5 бита на символ.
      Способы записи и реализации алгоритмов. Для решения любой задачи нужно прежде всего ее сформулировать. Для реализации любого алгоритма на компьютере необходимо его представить в какой-либо форме. И как для задачи важна ее формулировка, так и для алгоритма чрезвычайно важна форма его записи. Она должна быть по возможности наглядной, но главное — однозначно понятной исполнителю, будь то человек или компьютер.
      KOHEЦ ФPAГMEHTA КНИГИ

 

 

От нас: 500 радиоспектаклей (и учебники)
на SD‑карте 64(128)GB —
 ГДЕ?..

Baшa помощь проекту:
занести копеечку —
 КУДА?..

 

На главную Тексты книг БК Аудиокниги БК Полит-инфо Советские учебники За страницами учебника Фото-Питер Техническая книга Радиоспектакли Детская библиотека


Борис Карлов 2001—3001 гг.