Главная страница

Программа. Информатика ключевой предмет современной школы программирование


Скачать 0.53 Mb.
НазваниеИнформатика ключевой предмет современной школы программирование
АнкорПрограмма
Дата29.01.2023
Размер0.53 Mb.
Формат файлаdoc
Имя файлаchapter1.doc
ТипДокументы
#910086
страница5 из 5
1   2   3   4   5

1.5. Олимпиадная информатика


...Таланты создавать нельзя, но можно создавать культуру, то есть почву, на которой растут и процветают таланты. Чем больше, шире и демократичнее культура, тем чаще появление таланта и гения. Один ученый назвал живопись Ренессанса эпидемией гениальности.

Нейгауз Г.. Об искусстве фортепьянной игры. 1958г.

Олимпиады - это тот «срез» в образовании, который проверяет не только владение предметом, но и формирует тенденции развития этого предмета, определяет требования к школе через этот предмет со стороны общества, то есть то, что называют социальным запросом. Олимпиады по информатике (и школьные, и студенческие), как по содержанию, так и по методике проведения можно считать сформировавшимся явлениям.

Основное утверждение. Попытаемся разобраться, ответить на вопрос: кто может победить на олимпиаде по информатике? Напомним, что участник должен для победы за 4 - 5 часов найти алгоритмы решения нескольких, достаточно трудных задач, написать и отладить (проверить с помощью тестов) в общей сложности от 300 до 600 строк программного кода. Мыслимо ли это? Практика показывает, что да. Лет 25-30 тому назад считалось, что 5-10 строк кода в день - это хорошая производительность профессионального программиста. Критерий не однозначный, однако, даже при всем при этом, прогресс впечатляет. Начнем с самого простого условия - скорость набора текста. Она должна быть не менее 90-100 символов в минуту, причем набор должен быть «слепым». Далее - знание компьютера, системы программирования, предпочтительно Турбо Паскаля. На детальном анализе причин выбора именно этой системы программирования не будем останавливаться. Сошлемся лишь на тот факт, что большинство участников российских и международных олимпиад по информатике работают на Турбо Паскале. Оказывается, что просто знание, даже хорошее знание, даже отличное знание системы программирования, возможностей компьютера не решает проблемы. Школьник должен владеть на подсознательном уровне структурным стилем (парадигмой) мышления, плюс - классической алгоритмистикой - это залог успеха. Попытаемся раскрыть и обосновать данное утверждение.

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

Способ управления сложными системами был известен еще в древности: divide et impera (разделяй и властвуй).

Буч Г. Объектно-ориентированное программирование с примерами применения. М., 1992.

Структурная парадигма и алгоритмистика. О структурной парадигме мышления речь шла выше. Отметим только, что уровень владения этим стилем должен быть таков, что при возникновении идеи решения задачи, вся остальная работа выполняется практически в автоматическом режиме. Мы не задумываемся над построением предложений, фраз при общении на родном языке. Точно так же, не задумываясь, участник олимпиады выражает свои мысли в системе программирования, причем автоматически создается программный код без ошибок, а тут уже без владения структурной парадигмой мышления никак не обойтись.

Что касается алгоритмистики, то ограничимся перечислением основных разделов: арифметика целых чисел; комбинаторика (подсчет комбинаторных конфигураций, комбинаторика конечных множеств, перечислительные задачи комбинаторного анализа); поиск и сортировка; алгоритмы на графах (связность, кратчайшие пути, циклы, потоки в сетях и т.д.); перебор и методы его сокращения (динамическое программирование, метод ветвей и границ, метод «решета» и т.д.); геометрия (формулы геометрических преобразований на плоскости, скалярное и векторное произведения, уравнение прямой, нормальный вектор, нахождение прямой, проходящей через две точки, уравнения параллельной и перпендикулярной прямых, уравнение окружности по трем точкам, пересечение прямой и окружности, принадлежность точки многоугольнику, выпуклая оболочка и т. д.); элементы теории формальных грамматик и абстрактных автоматов (алгоритмы синтаксического разбора выражения и построения соответствующего дерева, формулы Бэкуса-Наура, понятие лексемы, машины Тьюринга). По каждой теме необходимо решить определенное количество (какое?) задач, довести их до уровня работающих программ. Но этого мало. Мы задумываемся над тем, чему равно 2 умножить на 2? Нет, вероятно, только в первом классе. Без участия нашего сознания правильный ответ откуда-то извлекается. А в нашем случае? Если, например, задача, независимо от ее содержательной «упаковки», сводится после ряда преобразований к алгоритму нахождения кратчайшего пути в графе, то все - она решена. Участник олимпиады (по-другому - профессионал в определенной части информатики), установив этот факт на сознательном уровне, всю остальную работу выполняет почти как автомат, она не должна требовать значительных усилий на сознательном уровне - можно переключаться на следующую задачу. Сколько раз ребенку требуется 2 умножить на 2, чтобы автоматически извлекать ответ? Столько же раз требуется использовать алгоритм Дейкстры для нахождения кратчайшего пути в графе при решении задач, чтобы ответ извлекался откуда-то с таким же количеством усилий, как и при умножении 2 на 2.

Для того, чтобы изобретать, надо быть в двух лицах. Один образует сочетания, другой выбирает то, что соответствует его желанию и что он считает важным из того, что произвел первый. То, что называют «гением», является не столько заслугой того, кто комбинирует, сколько характеризует способность второго оценивать только что произведенную продукцию и использовать ее.

Поль Валери

И тут в мой разум грянул блеск с высот,

Неся свершенье всех его усилий.

Данте, Рай, Песнь XXXIII. М., 1961.

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

Анри Пуанкаре в докладе «Математическое творчество» (приведен в [2]) отмечает: «Я - подсознательное нисколько не является низшим по отношению к я - сознательному, оно не является чисто автоматическим, оно способно здраво судить, оно имеет чувство меры и чувствительность, оно умеет выбирать и догадываться ... оно преуспевает там, где сознание этого не может». То, что называют внутренним озарением, является результатом длительной неосознанной работы; роль ее несомненна и она плодотворна лишь в том случае, когда ей предшествует и за ней следует сознательная работа. Ж. Адамар [2] выделяет четыре стадии работы над проблемой: подготовка; инкубация; озарение; проверка (завершение). Первая и четвертая относятся к сознательной работе. Во время периода инкубации не заметно никакой сознательной работы ума, но в подсознании, как показал А. Пуанкаре, происходит «прокрутка» огромного количества различных комбинаций, сочетаний, соответствующих проблеме, сравнение их между собой. Творить - это значит не заниматься бесполезными сочетаниями, а исследовать только полезные, которые составляют лишь небольшое меньшинство. Когда и как осуществляется выбор? На стадии озарения и (по А. Пуанкаре) «среди бессознательных идей привилегированными, т. е. способными стать сознательными, становятся те, которые прямо или косвенно наиболее глубоко воздействуют на наши чувства». Действительно, как заметил Р. Фейнман, «истину можно узнать по ее красоте». Кто из специалистов по информатике не испытывал настоящее эстетическое чувство при виде хорошо сделанной программы?

В термине «модель» все же имеется какое-то весьма оригинальное семантическое зерно, заставляющее бесчисленных авторов все же пользоваться этим термином и выставлять на первый план, несмотря на его путаность и противоречивость.

Лосев А.Ф. Введение в общую теорию языковых моделей. М., 1968.

Модель интеллекта Предположим, что наше сознание и подсознание - две связанные между собой, но функционально различные системы обработки данных (вычислительные системы). Объем памяти и производительность подсознания как распределенной вычислительной системы с ассоциативными принципами работы на много порядков больше, чем аналогичные характеристики сознания. Основным условием сознательного состояния является способность обозревать свое внутреннее состояние посредством периодической передачи на вход имеющейся в памяти информации [21]. Ее не может быть много, поэтому производительность сознания как системы обработки информации и принятия решений небольшая. Потеря информации происходит по мере того, как она перестает активно использоваться. Повторение является эффективным способом удержания информации в оперативной памяти и важным условием ее перевода в долговременную память. Емкость долговременной памяти обеспечивает хранение всей информации, потенциально полезной для человека. В долговременной памяти подсознания содержатся глубоко усвоенные социальные нормы поведения, доведенные до автоматизма профессиональные и бытовые навыки и другие знания, выражающие личность и индивидуальность человека. Время хранения информации в долговременной памяти соответствует продолжительности жизни. Известно, что нейроны, в отличие от большинства других клеток организма, никогда не обновляются. Этим обеспечивается сохранение информации и вычислительной структуры мозга на протяжении длительного времени без искажений. Долговременная память имеет иерархическую организацию с различными временами выборки информации. В типичных случаях выборка информации осуществляется вне прямого контроля сознания в соответствии с целью и содержанием конкретной деятельности. В область же сознания пропускается лишь предварительно обработанная информация.

Процесс преобразования информации (по Ричарду Аткинсону - американскому психологу) в системе памяти выглядит следующим образом.





Процессы управления (основные):

  • повторение - скрытое (про себя) или открытое (вслух) неоднократное воспроизведение информации;

  • кодирование - подлежащая запоминанию информация вводится в виде условной, легко извлекаемой информации (мнемоническая - искусственно запомненная фраза, опорные сигналы В.Ф. Шаталова);

  • представление - вербальная (словесная) информация запоминается с помощью зрительного образа;

  • принятие решения, организующие схемы, методы решения задач, стратегия извлечения.

Из всей предъявленной (новой) информации человек выбирает «пробную информацию» и помещает ее в оперативную память. Затем из долговременной памяти извлекается и переносится в оперативную «поисковый набор информации, соответствующее подмножество информации, тесно связанное, по мнению человека, с «пробной информацией». Производится сопоставление «пробной информации» с «поисковым набором». Если искомый образ обнаружен, поиск прекращается. Если нет, то человек принимает решение либо о новом цикле поиска, либо о прекращении поиска ввиду бесперспективности.

Рассматриваемая модель интеллекта вполне согласуется с нейробиологическими данными о структуре и клеточных механизмах головного мозга. По данным [21], новая кора переднего мозга содержит 50 млрд. нейронов, организованных в 600 млн. вертикальных миниколонок, функционирующих параллельно. Очевидно, что производительность ассоциативного матричного процессора столь высокой размерности должна быть чудовищной.

Объяснение некоторых феноменов психической деятельности. Сознание реализуется в сравнительно небольших областях головного мозга, которые расширяются только при интенсивной рассудочной деятельности. В зонах, которые граничат с областями сознания, имеет место краевое сознание, а в остальных частях мозга идет производительная подсознательная работа.

Область сознания сокращается до минимума во время сна, и мозг освобождается для более производительной работы. Это может быть внутренняя работа, которая необходима в любой системе обработки информации, например упорядочивание массивов информации, доработка и перестройка моделей и др. Во сне могут решаться проблемы, которые были поставлены ранее в процессе взаимодействия сознания и подсознания. По данным нейрофизиологии, интенсивность работы мозга в целом постоянна днем и ночью. Но во время сна снижается до минимума обработка внешней сенсорной информации, управление моторикой и процедура осознания. Следовательно, во время сна интенсивность работы мозга как автономной вычислительной системы возрастает. «Утро вечера мудренее» - богатейший экспериментальный материал, накопленный в процессе разносторонней человеческой деятельности. Примеры появления идей, решения ключевых проблем во время отдыха, прогулок и т. д.

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

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

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

Декарт Р. Избранные произведения, М., 1950

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

Следует отметить, что описанная структура процесса решения задачи является лишь грубой схемой. В реальной деятельности взаимодействие между сознанием и подсознанием протекает непрерывно. Поэтому выделенные этапы работы мозга весьма условны. Так, например, в информатике известно [5,6], что правильно выбранные структуры данных - половина решения задачи, т. е. выделенные этапы: анализ, инкубация, озарение, проверка - неоднократно «прокручиваются» на первом этапе работы с задачей.

Литература

1. Абдеев Р.Ф. Философия информационной цивилизации. - М.: Владос, 1994.

2. Адамар Ж. Исследование психологии процесса изобретения в области математики. - М.: Сов. радио, 1970.

3. Болтянский В.Г. Информатика и преподавание математики// Математика в школе. 1989. № 4.-С.86-90

4. Вейценбаум Дж. Возможности вычислительных машин и человеческий разум. - М.: Радио и связь, 1982.

5. Вирт Н. Алгоритмы+Структуры данных=Программа. - М.:Мир, 1989

6. Вирт Н. Систематическое программирование: Введение. - М.: Мир, 1977.

7. Громов Г.Р. Очерки информационной технологии. - М.: ИнфоАрт, 1993.

8. Дейкстра Э. Дисциплина программирования. - М.: Мир, 1978.

9. Ильенков Э. В. Философия и культура. - М.: Полит. лит., 1991.

10. Йодан Э. Структурное проектирование и конструирование программ. - М.: Мир, 1979.

11. Майерс Г. Надежность программного обеспечения. - М.: Мир, 1980.

12. Махмутов М.И. Организация проблемного обучения в школе. - М., 1986.

13. О природе программирования// Вычислительные системы. №96. - Новосибирск, 1983. -. С.51-74

14.Пейперт С. Переворот в сознании: дети, компьютеры и плодотворные идеи. - М.: Педагогика, 1989.

15. Пойа Д. Математическое открытие. - М.: Наука, 1976.

16. Развитие определения «информатика» и «информационные технологии». - Препринт. АН СССР, Институт проблем информатизации; Под ред. И.А. Мизина. - М.: 1991.

17. Словарь иностранных слов. - М.: Русск. язык, 1990.

18. Смолян Г.Л. Человек и компьютер. - М.: Политиздат, 1981.

19. Федюшин Д. Парадигмы программирования// Информатика и образования. 1991. №4, 5.

20. Хоар Ч. Программирование как инженерная профессия// Микропроцессорные средства и системы. 1984, №4. - С. 53-60.

21. Эделмен Дж., Маунткаса В. Разумный мозг. - М., 1981.

22. Bohm C., Jacopini G. Flow Diagrams Turing Machines, and Languages with Only Two Formulation Rules, Communicatins of the ASM, May, 1966.




1   2   3   4   5


написать администратору сайта