Основы
Основы
алгоритмизации
алгоритмизации
  • Моделирование и формализация
  • Алгоритм и его свойства
  • Способы записи алгоритмов
  • Линейные алгоритмы (следование)
  • Ветвления в алгоритмах
  • Циклическая форма организации действий
  • Замкнутые и разомкнутые системы управления
  • Языки программирования
  • Вопросы и упражнения
  • Моделирование и формализация

         В своей деятельности - художественной, научной, практической - человек очень часто создаёт некоторый образ того объекта (процесса или явления), с которым ему всегда приходится или придётся иметь дело, - модель этого объекта. Создание этого образа преследует некую цель. Модель важна не сама по себе, а как инструмент, облегчающий познание или наглядное представление.
        Например, модель самолёта предназначается для исследования его полётных свойств; схема, чертёж или рисунок изделия используется для его изготовления; с помощью текста, описывающего какое-либо явление, передаются сведения об этом явлении другим людям.
        Замену реального объекта, явления или процесса его подходящей копией называют моделированием.
        Само слово “модель” вам, конечно, не в новинку. С моделями вы имели дело на уроках физики, химии, биологии, географии, ведь практически любое наглядное пособие является моделью какого-либо фрагмента окружающей действительности или нашего представления о ней: карта и глобус, муляжи и рисунки, схемы и таблицы, периодическая система элементов Д.И. Менделеева и др.
        Модели отражают самое существенное в изучаемых объектах, процессах и явлениях, исходя из поставленной цели моделирования. В этом главная особенность и главное назначение моделей.
        Например, из курса географии вы знаете, что силу подземных толчков принято измерять по десятибалльной шкале. По сути, мы имеем дело с простейшей моделью оценки силы этого природного явления. Действительно, отношение “сильнее”, действующее в реальном мире, здесь заменено на отношение “больше”, имеющее смысл в множестве натуральных чисел: слабейшему подземному толчку соответствует число 1, а сильнейшему - 10. Полученное упорядоченное множество из десяти чисел - это модель, дающая представление о силе подземных толчков.
        Рассмотренный пример позволяет сделать следующие выводы:
        Не имеет значения, какие объекты выбираются в качестве моделирующих. Важно лишь то, что с их помощью удаётся отразить наиболее существенные признаки изучаемого явления или процесса;
        Никакая модель не может заменить само явление. Но при решении конкретной задачи, когда нас интересует определённое свойство изучаемого явления или процесса, модель оказывается полезным, а подчас и единственным инструментом исследования.
         Таким образом, под моделью мы будем понимать совокупность объектов (понятий, свойств, признаков, знаков, геометрических элементов, материальных предметов) и отношений между ними (называемых моделирующими), которые выражают существенные с точки зрения цели моделирования стороны изучаемого объекта, явления или процесса. Короче, модель - это некоторое упрощённое подобие реального объекта, процесса или явления.
        Вид модели (математическая модель, макет, последовательность натуральных чисел, текст, таблица, схема, рисунок, система понятий и пр.) должен быть (если это возможно) определён заранее, до исследования явления. Исследование же должно дать конкретную модель данного вида.

    в начало

        Приведём примеры моделей.
        Пример 1. Пусть нам надо решить, как расположить мебель в комнате. Грамотно это можно сделать так: заготовить бумажки, воспроизводящие в масштабе размеры мебели, начертить план комнаты в том же масштабе и затем, передвигая макеты дивана, шкафа и прочих предметов, выявить их оптимальное расположение в данной комнате. Если мы найдём удовлетворяющее нас решение, то его можно “переносить” и на реальные объекты.
        Пример2. Всем более чем знакомо явление инфляции. Что это такое? Поясним на примере, моделирующем это явление. Предположим, у вас есть сто яблок, и вы хотите обменять их на нужные вам вещи. Носить всё время с собой яблоки неудобно, но можно изготовить сто бумажек, на каждой из которых написать слово “яблоко”. Вы можете спокойно договориться о нужном для вас обмене, предъявляя не настоящие яблоки, а эти бумажки. Но вдруг у вас, не дай Бог, появилась мысль изготовить не сто, а двести бумажек. Какое-то время вам удаётся скрывать, что на самом деле у вас только сто, а не двести яблок. Но не всё вечно в этой жизни, обман раскрылся, и все “держатели” ваших бумажек могут получить уже не по целому яблоку, а только по половине. Знакомая картина.
        Для моделей можно составить различные виды классификаций в зависимости от выбранного основания. Таким основанием служат один или несколько признаков, общих для некоторых групп моделей. Рассмотрим несколько наиболее распространенных видов классификации, определяемых следующими признаками:
        • областью использования;
        • учетом в модели временного фактора (динамики);
        • отраслью знаний;
        • способом представления моделей.
      Если рассматривать модели с позиции «для чего», «с какой целью» используются, то можно привести следующие примеры:
        * Учебные модели. Это могут быть наглядные пособия, различные тренажеры, обучающие программы.
        * Опытные модели — это уменьшенные или увеличенные копии объекта. Они используются для исследования объекта и прогнозирования его будущих характеристик. Например, модель корабля исследуется в бассейне для изучения устойчивости судна при качке, модель автомобиля «продувается» в аэродинамической трубе с целью исследования обтекаемости кузова, модель сооружения используется для привязки здания к конкретной местности.
        * Научно-технические модели создаются для исследования процессов и явлений. К таким моделям можно отнести и синхротрон — ускоритель электронов, и прибор для получения грозового электрического разряда, и стенд для проверки телевизоров.
        * Игровые модели — это военные, экономические, спортивные, деловые игры. Эти модели как бы репетируют поведение объекта в различных ситуациях, проигрывая их с учетом возможной реакции со стороны конкурента, союзника или противника. С помощью игровых моделей можно оказывать психологическую помощь больным, разрешать конфликтные ситуации.
        * Имитационные модели не просто отражают реальность с той или иной степенью точности, а имитируют ее. Эксперименты с моделью проводятся при разных исходных данных. По результатам исследования делаются выводы. Такой метод подбора правильного решения получил название метода проб и ошибок. Примером имитационного моделирования может служить экспериментальная деятельность в школах. Предположим, в обучение хотят ввести новый предмет «Основы вождения». Для эксперимента отбирается ряд школ. Где-то учат водить школьный грузовик, где-то — собранный учащимися легковой автомобиль, а в некоторых школах все сводится к изучению правил дорожного движения (моделирование с различными входными данными). Последующая проверка и анализ результатов по внедрению нового предмета во множестве школ помогает сделать вывод о целесообразности обучения этой дисциплине во всех школах страны.

    в начало

        Классификация по фактору времени делит модели на статические и динамические по тому, как отражается в них динамика происходящих процессов.
        • Статическая модель — это единовременный срез информации по данному объекту. Например, обследование учащихся в стоматологической поликлинике дает состояние их зубов на данный момент времени: соотношение молочных и постоянных, наличие пломб, дефектов и т. п.
        • Динамическая модель представляет картину изменения объекта во времени.
        В примере с поликлиникой медицинскую карту ученика, отражающую изменение состояния его зубов в течение многих лет, можно считать динамической моделью.
        Статические информационные модели можно назвать информационными системами. Динамическими моделями описываются информационные процессы. Информационный процесс даёт представление о том, как возникает и преобразуется информация. Информация поступает к человеку через его органы чувств и, следовательно, имеет пространственно-временные характеристики. Это значит, что информация видится нам либо как информационная система, либо как информационный процесс, либо как то и другое вместе.
        При строительстве дома рассчитывают прочность его фундамента, стен, балок и устойчивость их к постоянной нагрузке. Это статическая модель здания. Но надо также обеспечить противодействие ветрам, движению грунтовых вод, сейсмическим колебаниям и другим, изменяющимся во времени факторам. Эти вопросы можно решить с помощью динамических моделей. Как видно из примеров, один и тот же объект можно охарактеризовать и статической, и динамической моделью.
        Можно классифицировать модели и по тому, к какой отрасли знаний или деятельности человека они относятся (биологические, социологические, экономические, исторические и т. п.) и по множеству других факторов. Подробнее рассмотрим классификацию всего многообразия моделей по способу представления. В соответствии с ней модели делятся на две большие группы: материальные и абстрактные (нематериальные). Эти две группы как бы характеризуют то, «из чего сделаны модели». И материальная, и абстрактная модели содержат информацию об исходном объекте. Только в случае материальной модели эта информация имеет реальное воплощение — цвет, форму, пропорции и т. п. Ее можно получить с помощью органов чувств: зрения, осязания, обоняния, а также воспользовавшись измерительными приборами и инструментами. В нематериальной модели та же информация представляется в абстрактной форме (мысль, формула, чертеж, схема). Материальные модели иначе можно назвать предметными, физическими. Они всегда имеют реальное воплощение. Такие модели могут отражать: внешние свойства исходных объектов; внутреннее устройство исходных объектов; суть процессов и явлений, происходящих с объектами-оригиналами.
      Самыми простыми примерами материальных моделей являются детские игрушки. По ним ребенок узнает внешние свойства окружающих объектов. Разбирая некоторые игрушки в процессе игры (например, машинку), он получает первое представление об устройстве исходного объекта и даже о принципах его работы.
        Процессы, в которых участвует реальный объект, в материальной модели могут быть заменены процессами другой физической природы. Например, в той же детской машинке процесс движения обеспечивается не работой двигателя внутреннего сгорания, а закрученной пружиной или инерционным механизмом. Но при этом принцип преобразования вращательного движения колес в поступательное движение автомобиля соблюдается.
        Материальные модели могут не походить на свои прототипы. Например, робот, заменяющий людей на тяжелом и вредном производстве, совершенно не похож на человека. Это механическое устройство, манипулятор. Только в детских книжках и мультфильмах робота представляют как механического человека.
        Так как материальные модели помогают узнать свойства реальных объектов и понять «механизм» сложных явлений, они часто используются в процессе обучения. Материальными моделями являются скелет человека и чучело птицы в кабинете биологии, объемная модель Солнечной системы и макет многоступенчатой ракеты в кабинете астрономии, наклонная плоскость с шарами в кабинете физики и т. д.
        К материальным моделям относятся не только школьные пособия, но и различные физические и химические опыты. В опытах моделируются действия над объектами, например реакция (действие) между водородом и кислородом (веществами, объектами исследования). Эта реакция даже при малых количествах исходных веществ происходит с оглушительным хлопком. Модель является предупреждением о последствиях возникновения «гремучей смеси» из безобидных и широко распространенных в природе веществ. Создание и использование материальных моделей относится к экспериментальному методу познания окружающего мира.

    в начало

        Абстрактные модели нельзя потрогать, они не имеют вещественного воплощения. Основу таких моделей составляет информация, а такой тип моделирования реализует теоретический метод познания окружающей действительности.
        Основанием для дальнейшей классификации абстрактных моделей выберем возможность их реализации и исследования при помощи компьютера. По этому признаку выделяются следующие подклассы:
        • мысленные и вербальные;
        • информационные.
    Мысленные модели формируются в воображении человека в результате раздумий, умозаключений, иногда в виде некоторого образа. Примером мысленной модели является модель поведения при переходе через дорогу. Человек анализирует ситуацию на дороге, (какой сигнал подает светофор, как далеко находятся машины, с какой скоростью они движутся и т. п.) и вырабатывает модель поведения. Если ситуация смоделирована правильно, то переход будет безопасным, если нет, то может произойти дорожно-транспортное происшествие. Такие модели сопутствуют любой сознательной деятельности человека. Собираясь делать покупки, человек мысленно представляет, что и сколько можно купить на имеющуюся у него сумму. Строя планы на отпуск, он мысленно проигрывает различные варианты отдыха и возможные затраты. Ожидая транспорт на остановке, прикидывает, как быстрее добраться до нужного места. К моделям такого типа можно отнести и идею, возникшую у изобретателя, и музыкальную тему, промелькнувшую в мыслях у композитора, и рифму, родившуюся в голове у поэта.
        Мысленная модель может быть выражена в разговорной форме. В этом случае она часто называется вербальной (от лат. verbalis — устный). Вербальную модель человек использует для передачи своих мыслей другим.
         Материальная и абстрактная модели могут отражать один и тот же прототип и взаимно дополнять друг друга. Некоторые из вас видели в цирке эффектный номер с мотоциклистом, движущимся с большой скоростью по отвесной стене. В аттракционе «Сюрприз» в парке культуры и отдыха кабинки с людьми вращаются на большой скорости в вертикальной плоскости. Причина, почему удерживается мотоциклист, и не выпадают из кабинок люди, объясняется центробежными силами, действующими на каждый объект при вращении. Их можно изобразить на чертеже и описать формулами. Это абстрактные различные формы представления информации. Не каждому они понятны. Однако этот процесс можно продемонстрировать и на примере простейшего опыта.
    Возьмите ведро с водой и раскрутите его. Вода не выливается благодаря действию тех же сил. Этот опыт наглядно убеждает, что, действительно, возникают какие-то силы при вращении. На аттракционе вы имеете возможность почув¬ствовать их на себе. Так материальная модель помогает понять суть сложного физического процесса. Образы, возникающие у разных людей как реакция на одни и те же объекты и явления, могут сильно различаться. Поэтому образная мо¬дель очень индивидуальна и не отображает прототип с достаточной степенью достоверности. Невозможно получить впечатление от музыкального произведения, услышав не музыку, а рассказ о ней.
        Чтобы информацию можно было использовать для обработки на компьютере, необходимо выразить ее при помощи системы знаков. Кроме того, информацию необходимо представить в такой форме, которая бы отвечала поставленной цели исследования. Поэтому наряду с вербальными и мысленными моделями используются более строгие — информационные модели.

    в начало

        Информация, характеризующая объект или процесс, может иметь разную форму представления, выражаться различными средствами. Это многообразие можно условно разделить на образно-знаковые и знаковые модели.
    Ярким примером образно-знаковой модели является географическая карта. Цвет и форма материков, океанов, гор, изображенных на карте, сразу подключает образное мышление. По цвету на карте можно сразу оценить рельеф. Например, с голубым цветом у человека ассоциируется вода, с зеленым — цветущий луг, равнина. Карта изобилует условными обозначениями. Зная этот язык, человек может получить достоверную информацию об интересующем его объекте. Информационная модель в этом случае будет результатом осмысления сведений, полученных при помощи органов чувств и информации, закодированной в виде условных изображений.
        То же можно сказать о живописи. Неискушенный зритель воспримет картину душой, в виде образной модели. Но существуют некоторые художественные языки, соответствующие различным живописным жанрам и школам: сочетание цветов, характер мазка, способы передачи воздуха, объема и т. д. Человеку, знающему эти условности, легче разобраться в том, что имел в виду художник, особенно если произведение не относится к реализму. При этом общее восприятие картины (информационная модель) станет результатом осмысления информации, как в образной, так и в знаковой формах.        
        Еще один пример такой модели — фотография. Фотоаппарат позволяет получить изображение оригинала. Обычно фотография дает нам довольно точное представление о внешнем облике человека. Существуют некоторые признаки (высота лба, посадка глаз, форма подбородка), по которым специалисты могут определить характер человека, его склонность к тем или иным поступкам. Этот специальный язык формируется из сведений, накопленных в области физиогномики и собственного опыта. Знающие врачи, взглянув на фото незнакомого человека, увидят признаки некоторых заболеваний. Задавшись разными целями, по одной и той же фотографии можно получить различные информационные модели. Они будут результатом обработки образной информации, полученной при разглядывании фотографии, и информации, сложившейся на основе знания специального профессионального языка.

    в начало

        По форме представления образно-знаковых моделей среди них можно выделить следующие группы:
        • геометрические модели, отображающие внешний вид оригинала (рисунок, пиктограмма, чертеж, план, карта, объемное изображение);
        • структурные модели, отображающие строение объектов и связи их параметров (таблица, граф, схема, диаграмма);
        • словесные модели, зафиксированные (описанные) средствами естественного языка;
        • алгоритмические модели, описывающие последовательность действий (нумерованный список, пошаговое перечисление, блок-схема).
        Знаковые модели можно разделить на следующие группы:
        • математические модели, представленные математическими формулами, отображающими связь различных параметров объекта, системы или процесса. Трудно сформулировать строгие правила построения математической модели. Однако человечество накопило богатый опыт в этой сфере деятельности. Можно без преувеличения сказать, что всё школьное образование - это изучение тех или иных моделей, а также приёмов их использования. Так, например, в школьном курсе физики рассматривается много разнообразных уравнений, которые, по сути, представляют собой модели изучаемых явлений или процессов. Если вас просят решить физическую задачу, то вы начинаете, как правило, с поиска подходящего уравнения, т.е. с подбора модели, которая отвечает требованиям вашей задачи. Вы уже заранее предполагаете, что нужно искать модель в виде уравнения.
        Предположения, исходные данные, результаты и связи между ними называются математической моделью задачи.      
        Как в задачах по физике, математике, так и в задачах по информатике, решаемых на компьютере, исходные данные и результаты должны быть числами, а связи между ними - математическими соотношениями. Язык науки требует, чтобы изучаемое явление (система, процесс) было описано на точном уровне, не допускающем принципиальных разночтений. Математическая модель является наиболее точной разновидностью моделей.
        • специальные модели, представленные на специальных языках (ноты, химические формулы и т. п.);
        • алгоритмические модели, представляющие процесс в виде программы, записанной на специальном языке.
         Прежде чем построить модель объекта (явления или процесса), необходимо выделить составляющие его элементы и связи между ними, а затем отобразить полученную структуру в какую-либо заранее определённую форму - формализовать информацию.

    в начало

        Формализация - это процесс выделения и перевода внутренней структуры предмета, явления или процесса в определённую информационную структуру - форму.
        Моделирование любой системы невозможно без предварительной формализации. С развитием информатики моделирование, а именно составление математических и алгоритмических моделей, прочно вошло в технологическую цепочку решения задачи на ЭВМ.
        Обсудим технологию решения прикладной задачи на ЭВМ. Часто задача, которую требуется решить, сформулирована не на математическом языке. Например, задача может быть сформулирована в терминах физики, экономики, тригонометрии и др. Одно из условий верного решения задачи - правильная, чётко сформулированная постановка её. Чётко сформулировать задачу - это значит высказать те предположения, которые позволят в море информации об изучаемом явлении или объекте извлечь исходные данные, определить, что будет результатом, и какова связь между исходными данными и результатом. Произведя системный анализ этих связей и переведя полученную информационную структуру в определённую форму, мы осуществим замену реального объекта или явления математической моделью, заменив связи между исходными данными и результатом математическими соотношениями. Далеко не всегда эти формулы очевидны. Нередко их приходится выводить самому или отыскивать в специальной литературе. На этом заканчивается один из важных этапов решения задачи на ЭВМ.
        Следующий, не менее важный этап - это составление алгоритма. Понятие алгоритма мы рассмотрим в следующем параграфе.
        Рассмотренные нами первые три этапа - это работа без компьютера. Далее следуют собственно программирование на определенном языке в определенной системе программирования и организация компьютерного эксперимента.
        В компьютерный эксперимент входят отладка программы на компьютере и проведение её тестирования. Под отладкой программы понимается процесс испытания работы программы и исправления обнаруженных при этом ошибок. Обнаружить ошибки, связанные с нарушением правил записи программы на выбранном языке программирования (синтаксические и семантические ошибки), помогает используемая система программирования. Пользователь получает сообщение об ошибке, исправляет ее и снова повторяет попытку исполнить программу.
        Проверка правильности алгоритма на компьютере производится с помощью тестов. Тест - это конкретный вариант значений исходных данных, для которого известен ожидаемый результат. Прохождение теста - необходимое условие правильности программы. Правильность реализации программой запланированного сценария проверяется на тестах.
        Последний этап - это использование уже разработанной программы для получения искомых результатов. Программы, имеющие большое практическое или научное значение, используются длительное время. Иногда в процессе эксплуатации программы исправляются, дорабатываются. Итак, работа по решению прикладной задачи на компьютере проходит через следующие этапы: - постановка задачи; - математическая формализация; - построение алгоритма; - составление программы на языке программирования; - отладка и тестирование программы; -проведение расчетов и анализ полученных результатов.
        Эту последовательность называюттехнологической цепочкой решения задачи на ЭВМ.
        Рассмотрим пример приведения решения конкретной задачи к математической модели.
        Задача. Через иллюминатор затонувшего корабля требуется вытащить сундук с драгоценностями. Удастся ли нам это сделать, если даны некоторые предположения о формах сундука и окна иллюминатора и исходные данные решения задачи?
     Предположения:
    1.Иллюминатор имеет форму круга.
    2.Сундук имеет форму прямоугольного параллелепипеда.
     Исходные данные:
    D - диаметр иллюминатора;
    x - длина сундука;
    y - ширина сундука;
    z - высота сундука.
     Конечный результат: Сообщение: можно или нельзя вытащить.
      Системный анализ условия задачи выявил связи между размером иллюминатора и размерами сундука, учитывая их формы. Полученная в результате анализа информация отобразилась в формулах и соотношениях между ними, так возникла математическая модель.
        Математической моделью решения этой задачи являются следующие зависимости между исходными данными и результатом:

    в начало

    2007 © Copyright by L.Gazizova (E-mail: leniza@hotbox.ru), WebMasters N.Woit, R.Akzamutdinov, А.Aleeva

    Hosted by uCoz