Методическое пособие Профиль: «Автономные ...

511
Методическое пособие Профиль: «Автономные транспортные системы» общая трудоемкость – 54 часа или 64 часа (при наличии специального оборудования) образовательные технологии – предметно-ориентированные Разработчик: Белкин Василий Сергеевич, к.т.н., технический директор ООО «Академия Высоких Технологий», научный руководитель профиля «Автономные транспортные системы» Олимпиады КД НТИ

Transcript of Методическое пособие Профиль: «Автономные ...

Методическое пособие

Профиль: «Автономные транспортные системы» общая трудоемкость – 54 часа или 64 часа (при наличии специального оборудования) образовательные технологии – предметно-ориентированные

Разработчик: Белкин Василий Сергеевич, к.т.н., технический директор ООО «Академия Высоких Технологий», научный руководитель профиля «Автономные транспортные системы» Олимпиады КД НТИ

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

2

PAGE 11

Содержание

1. Пояснительная записка 3 1.1. Краткая характеристика предмета 3

1.2. Направленность образовательной программы 3 1.3. Новизна, актуальность и педагогическая целесообразность 3

1.4. Цель образовательной программы 5 1.5. Задачи образовательной программы 5

1.6. Отличительные особенности 6 1.7. Возраст детей, участвующих в реализации данной программы 6

1.8. Сроки реализации программы 7 1.9. Режим занятий 7

2. Учебно-тематический план дополнительной образовательной программы

«Технологии искусственного интеллекта в задачах беспилотного транспорта». 8

2.1. Задачи первого года обучения 8 2.3. Ожидаемые результаты первого года обучения 9

2.4. Задачи второго года обучения 10 2.6. Ожидаемые результаты второго года обучения 11

3. Содержание дополнительной образовательной программы «Технологии

искусственного интеллекта в задачах беспилотного транспорта» 13

3.1. Первый год обучения 13 3.2. Второй год обучения 14

4. Методическое обеспечение дополнительной образовательной программы

«Технологии искусственного интеллекта в задачах беспилотного транспорта» 16

4.1. Формы организации занятий и деятельности детей 16 4.2. Методы организации учебного процесса 16

4.3. Ожидаемые результаты и способы определения их результативности 16 4.4. Формы подведения итогов реализации ДОП 17

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

3

PAGE 11

1. Пояснительная записка

1.1. Краткая характеристика предмета

Технологии искусственного интеллекта: компьютерное зрение, методы машинного

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

практику и применяются повсеместно. При этом освоение и применение данных технологий

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

общеобразовательной школе на уровне 8 класса. Студенческие турниры по методам

машинного обучения проводятся повсеместно, а с 2017 года в России были запущены первые

школьные соревнования в рамках Олимпиады Кружкового движения Национальной

технологической инициативы. Также с 2018 года проводится множество всероссийских

турниров по программированию образовательных беспилотных автомобилей:

● Профиль «Автономные транспортные системы» Олимпиады КД НТИ;

● Компетенция «Future Engineers» в рамках World Robot Olympiad;

● Кубок России по технологиям искусственного интеллекта;

● АвтоНет 18+ в рамках PROfest;

● Дататон Московского технологического марафона;

● Росийско-израильский турнир Роботраффик и многие др.

В настоящее время тематика наземной беспилотной мобильной робототехники

проживает лавинообразный взлёт: число всероссийских и международных соревнований

увеличивается каждый год. При это участие в них помогает и учащимся: они получают

дополнительные баллы ЕГЭ, и учебным организациям: многие из данных турниров входят в

региональные и федеральные рейтинги учебных учреждений.

Работа с технологиями искусственного интеллекта и беспилотными транспортными

средствами позволяет образовательной организации проводить собственные мероприятия для

всех увлечённых молодых программистов региона и привлекать внимание средств массовой

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

Таким образом, внедрение курса «Технологии искусственного интеллекта в задачах

беспилотного транспорта» позволяет образовательной организации сформировать репутацию

лидера в области современных образовательных технологий и IT-решений.

1.2. Направленность образовательной программы

Направленность программы - научно-техническая. Программа направлена на

привлечение учащихся к электронике, конструированию и программированию мобильных

роботизированных устройств, а также к применению технологий искусственного интеллекта

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

1.3. Новизна, актуальность и педагогическая целесообразность

Второе десятилетие XXI века ознаменовалось переходом человечества в новую

технологическую эпоху. Последние годы одновременно с информатизацией общества

лавинообразно расширяется применение технологий автоматизированного детектирования

объектов, распознавания образов и принятия решений в качестве ключевых инструментов

взаимодействия человека с окружающим миром. Стремительно растущие коммуникационные

возможности устройств на базе технологий распознавания речи и гибридных систем принятия

решений, колоссальное расширение информационных систем и повсеместное внедрение

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

4

PAGE 11

высокоавтоматизированных мобильных робототехнических комплексов позволяют говорить

об изменении среды обитания человека. Беспилотные такси и автономные мобильные роботы-

уборщики и доставщики, «умный» дом и автоматизированный контроль производства, расчёт

производственных линий на заводах и создание лекарств. Для человечества началась эра

искусственного интеллекта, семейства технологий, несущих потенциал революционного

технологического прорыва и требующей адекватной реакции как в сфере науки, так и в сфере

образования.

В связи с активным внедрением технологий искусственного интеллекта в жизнь

общества постоянно увеличивается потребность в высококвалифицированных специалистах.

В ряде передовых отечественных вузов присутствуют специальности, связанные с анализом

данных, методами машинного обучения для анализа больших данных, инструментами

компьютерного зрения и обработки естественного языка, а также разработкой систем

принятия решений. Однако, в большинстве случаев не происходит предварительной

ориентации школьников на возможность продолжения учебы в данном направлении. Многие

абитуриенты стремятся попасть на специальности, связанные с информационными

технологиями, не предполагая о всех возможностях этой области. Между тем, игры с роботами

и беспилотниками, конструирование и изобретательство присущи подавляющему

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

необходимость в непрерывном образовании в сфере актуальной робототехники, основанной

на технологиях искусственного интеллекта. Заполнить пробел между детскими увлечениями

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

специальных образовательных робототехнических комплексов, таких как беспилотный

автомобиль «АЙКАР» на базе компьютерного зрения.

Беспилотные автомобили являются уникальной моделью. Она позволяет изучать

технологии искусственного интеллекта на практике и отлаживать программный код на

реальном оборудовании. Задачи образовательных беспилотных автомобилей полностью

соответствуют вызовам индустрии высокоавтоматизированных транспортных средств. В

рамках курса учащиеся работают с мобильным роботом на автомобильной колёсной базе и

пишут программы для детектирования, распознавания и реагирования на объекты городской

среды: дорожные знаки, светофоры, пешеходов и др.

Введение дополнительной образовательной программы «Технологии искусственного

интеллекта в задачах беспилотного транспорта» в школе неизбежно изменит картину

восприятия учащимися технических дисциплин, переводя их из разряда умозрительных в

разряд прикладных. Применение учащимися на практике теоретических знаний, полученных

на математике, физике и информатике, ведет к более глубокому пониманию основ, закрепляет

полученные навыки, формируя образование в его наилучшем смысле.

Вторым важным слагаемым качественного образования в рамках программы

«Технологии искусственного интеллекта в задачах беспилотного транспорта», безусловно,

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

роботами. На этом этапе учащиеся узнают основные принципы построения простейших

алгоритмов движения и ориентирования, а также учатся писать программы для их

автоматизации под управлением плат микроконтроллеров и одноплатных компьютеров. Далее

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

автомобилей на базе компьютерного зрения. Завершается же программа созданием

самостоятельных проектов с применением технологий искусственного интеллекта, уже не

связанных с мобильной робототехникой. Например, шахматный робот, анализатор состава

крови, подсказчик по поливу растений в оранжерее и другие.

Возможность своими руками прикоснуться к миру беспилотных автомобилей и

искусственного интеллекта является мощнейшим стимулом к познанию нового.

Самостоятельная созидательная деятельность поможет современному молодому человеку

преодолеть «инстинкт» потребителя и сформировать стремление к непрерывному развитию.

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

5

PAGE 11

Современные принципы решения актуальных задач человечества с помощью беспилотников

и внедрений искусственного интеллекта, усвоенные в школьном возрасте, ко времени

окончания вуза и начала работы по специальности отзовутся в принципиально новом подходе

к реальным задачам.

Таким образом, занятия по программе «Технологии искусственного интеллекта в

задачах беспилотного транспорта» позволяют готовить специалистов нового склада,

способных к совершению инновационного прорыва в современной науке и технике. А высокая

актуальность задач, интенсивность образовательного процесса и зрелищность соревнований

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

ориентированного в будущее.

1.4. Цель образовательной программы

● Создание условий для мотивации, подготовки и профессиональной ориентации

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

предприятиях по специальностям, связанным с компьютерным зрением, беспилотным

транспортом и технологиями искусственного интеллекта.

● Создание фундамента знаний по специальностям компьютерного зрения для облегчения

изучения профессиональных узкоспециализированных курсов по компьютерному зрению

и технологиями искусственного интеллекта.

● Подготовка к соревнованиям по программированию беспилотных транспортных средств и

автономных мобильных роботов, высокоуровневому программированию, компьютерному

зрению и технологиям искусственного интеллекта.

1.5. Задачи образовательной программы

Образовательные

● Использование современных разработок по беспилотному транспорту и компьютерному

зрению с глубоким обучением в области образования, организация на их основе активной

внеурочной деятельности учащихся.

● Ознакомление учащихся с комплексом технологий, применяемых при создании

высокоавтоматизированных мобильных робототехнических систем и гибридных систем

принятия решений.

● Реализация межпредметных связей с математикой, информатикой и физикой.

● Решение учащимися ряда задач по направлениям компьютерного зрения и методов

машинного обучения для анализа больших данных.

● Решение учащимися ряда задач программирования беспилотного автомобиля на базе

компьютерного зрения.

Развивающие

● Развитие у школьников инженерного мышления, навыков программирования и

эффективного построения самоуправляемых систем.

● Развитие внимательности, аккуратности и изобретательности.

● Развитие логического и алгоритмического мышления у учащихся.

● Развитие способности дробить задачу на этапы, выполнять и отлаживать каждый

последовательно.

● Развитие мышления, ориентированного на достижение конкретного результата творческой

деятельности и создание полноценных функционирующих продуктов.

● Организация и участие в играх, конкурсах и состязаниях наземных беспилотников для

закрепления изучаемого материала и мотивации к дальнейшему развитию.

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

6

PAGE 11

Воспитательные

● Повышение мотивации учащихся к самообразованию, созданию собственных

самоуправляемых автономных программных и робототехнических систем, основанных на

технологиях искусственного интеллекта.

● Формирование у учащихся стремления к получению конкретного законченного результата

и качественно функционирующего продукта.

● Формирование навыков проектного мышления и эффективной работы в команде,

основанной на принципах взаимоусиления участников.

1.6. Отличительные особенности

Данная образовательная программа имеет ряд отличий от уже существующих аналогов.

● Существующие аналоги предполагают ознакомление с предметом – знание возможностей,

без понимания сути процессов и структуры алгоритмов. Либо напротив, описывают суть

процессов, но математически сложны для восприятия школьника, так как используют

математический аппарат линейной алгебры, дифференциального и интегрального

исчисления. Базовые понятия компьютерного зрения, теории автоматического управления

и нейронных сетей адаптированы для уровня восприятия учащихся средней школы. Это

позволяет начать подготовку инженерных кадров уже с 7-го класса школы.

● Особенностью данной программы является нацеленность на конечный результат.

Учащийся не просто изучает алгоритм и принципы его работы, но и применяет полученные

знания для создания корректно функционирующего решения поставленной задачи в мире

автономных транспортных систем.

● Программа плотно связана с участием, а также организацией и проведением собственных

соревновательных мероприятий в научно-технической сфере для учащихся: турниры по

мобильной робототехнике, хакатоны по высокоуровневому программированию, конкурсы

проектов, конференции по прикладным аспектам искусственного интеллекта в

образовательной деятельности. Это позволяет принимать активное участие в конкурсах

различного уровня: от школьного и регионального до всероссийского и даже

международного, не выходя за рамки учебного процесса.

1.7. Возраст детей, участвующих в реализации данной программы

● 13-15 лет – основная группа

● 16-17 лет – старшая группа

Программа может быть скорректирована в зависимости от возраста учащихся.

Некоторые темы взаимосвязаны со школьным курсом и могут, с одной стороны, служить

пропедевтикой, а с другой, опираться на него. Например, одометрия связана с криволинейным

движением, которое изучается в 9-ом классе. Понятие электрического напряжения и силы тока

появляется на физике в 8-ом классе, но играет существенную роль в коммутации электронных

модулей беспилотного автомобиля.

Запуск кружка для учащихся старшей школы позволит тратить гораздо меньше

времени для разбора многих фундаментальных тем: электричество, механика, кинематика,

расчёт траектории движения. Работая со старшеклассниками, проявившими интерес к

беспилотному транспорту, компьютерному зрению с глубоким обучением и другим

технологиям искусственного интеллекта незадолго до окончания школы, рекомендуется

особенно бережно и тщательно относится к их времени: создавать индивидуальные планы и

при необходимости сокращать программу курса до одного учебного года.

1.8. Сроки реализации программы

Программа рассчитана на двухгодичный цикл обучения.

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

7

PAGE 11

В первый год учащиеся проходят курс по основам программирования

микроконтроллеров и одноплатных компьютеров, построения систем с обратной связью и

основам компьютерного зрения, детектирования объектов и распознавания образов.

Во второй год учащиеся применяют полученные знания для программирования

беспилотного автомобиля, ориентирующегося по данным с видеокамеры при помощи

технологии компьютерного зрения с глубоким обучением. Изучают новые алгоритмы

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

использования нейронных сетей, классификации изображений, детектированию на них

объектов и распознаванию образов. Решают новые и улучшают решения старых задачи

беспилотного автомобиля с помощью нейросетевых алгоритмов.

1.9. Режим занятий

Занятия проводятся 1 раз в неделю по 2 академических часа. Всего – 144 академических

часа: 72 – в первый и 72 – во второй год обучения.

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

8

PAGE 11

2. Учебно-тематический план дополнительной образовательной программы

«Технологии искусственного интеллекта в задачах беспилотного транспорта».

2.1. Задачи первого года обучения

Образовательные

● Ознакомление учащихся с комплексом базовых технологий, применяемых при создании

высокоавтоматизированных автономных мобильных робототехнических систем.

● Использование современных разработок по тематикам создания и программирования

автономных мобильных робототехнических систем на базе классического сенсорного

окружения из инфракрасных датчиков линии и ультразвуковых датчиков дистанции в

области образования и организация на их основе активной внеурочной деятельности

учащихся.

● Использование современных разработок по тематикам компьютерного зрения в

автономных мобильных робототехнических системах в области образования и

организация на их основе активной внеурочной деятельности учащихся.

● Реализация межпредметных связей с математикой, информатикой и физикой.

Развивающие

● Развитие у школьников инженерного мышления, навыков программирования и

эффективного построения самоуправляемых систем.

● Развитие внимательности, аккуратности и изобретательности.

● Развитие логического и алгоритмического мышления у учащихся.

● Развитие способности дробить задачу на этапы, выполнять и отлаживать каждый

последовательно.

● Развитие мышления, ориентированного на достижение конкретного результата творческой

деятельности и создание полноценных функционирующих продуктов.

● Организация и участие в играх, конкурсах и состязаниях наземных беспилотников для

закрепления изучаемого материала и мотивации к дальнейшему развитию.

Воспитательные

● Повышение мотивации учащихся к самообразованию, созданию собственных

самоуправляемых автономных программных и робототехнических систем, основанных на

технологиях искусственного интеллекта.

● Формирование у учащихся стремления к получению конкретного законченного результата

и качественно функционирующего продукта.

● Формирование навыков проектного мышления и эффективной работы в команде,

основанной на принципах взаимоусиления участников.

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

9

PAGE 11

№ Тема Количество часов Формы

контроля Теория Практика Всего

1 Техника безопасности. Вводное занятие: обзор курса. 1 1 2

2 Основы электроники и программирования

микроконтроллеров. 3 7 10

3

Программирование микроконтроллеров

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

2 6 8

4 Одноплатные компьютеры и основы разработки

программ для них. 2 6 8

5 Программирование взаимодействия одноплатного

компьютера и периферийных датчиков. 2 6 8

6 Основы компьютерного зрения. 2 6 8

7 Простые алгоритмы детектирования объектов и

распознавания образов. 2 10 12

8 Программирование движения автономного

мобильного робота на базе компьютерного зрения. 3 13 16

Всего: 17 55 72

2.2. Содержание программы первого года обучения

Тема Содержание Форма

занятий

Техника безопасности. Вводное

занятие: обзор курса. Знакомство с моделью беспилотного автомобиля на

базе компьютерного зрения, основными

компонентами модели и их назначением.

Лекция

Практика

Основы электроники и

программирования

микроконтроллеров.

Знакомство с микроконтроллерами, их

возможностями и применением. Интегрированные

среды разработки (IDE) для написания программ под

микроконтроллеры и загрузка программы этих на микроконтроллер.

Лекция

Структура программы, мигание светодиодом. Практика

ШИМ и его применение, плавное изменение яркости

свечения светодиода.

Практика

Сервоприводы – обзор, виды и устройство.

Управление сервоприводами. Допустимые значения

углов сервопривода для сборки модельных

беспилотных автомобилей.

Лекция

Коллекторный двигатель постоянного тока, его драйвер и управление ими. Управление режимами

работы двигателей при помощи электронной

регулировки скорости (ESC).

Лекция

Универсальный асинхронный приёмопередатчик

(UART) для обмена информацией между

микроконтроллером и внешними устройствами:

получение и передача данных.

Практика

Цифровой сигнал и его приём. Инфракрасный датчик линии, как источник цифрового сигнала.

Практика

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

10

PAGE 11

Условные конструкции и действия в зависимости от

показаний инфракрасного датчика линии.

Практика

Движение мобильного робота по непрерывной линии,

контрастной к поверхности полигона.

Практика

Ультразвуковой датчик дистанции – внутреннее

устройство и получение данных. Остановка мобильного робота перед препятствием на основе

показаний сонара.

Практика

Программирование

микроконтроллеров беспилотного

автомобиля для решения основных

задач движений.

Следование за подвижным объектом. Практика

Движение мобильного робота вдоль ровной

вертикальной поверхности

Практика

Методы точного расчёта расстояния до препятствия. Лекция

Патрулирования периметра при помощи мобильного

робота.

Практика

Энкодер, одометрия, контроль скорости, прерывания. Лекция

Реализация подсчёта числа вращения колёсной оси в

минуту (RPM) с помощью метода прерываний.

Контроль RPM с помощью пропорционально-

интегрально-дифференциального (ПИД) регулятора.

Практика

Применение ПИД-регулятора для решения задач

движения по линии и следования за подвижным

объектом.

Практика

Одноплатные компьютеры и

основы разработки программ для

них.

Чем одноплатный компьютер отличается от

микроконтроллера. Знакомство с Raspberry Pi.

Лекция

Подготовка образа операционной системы для одноплатного компьютера, её установка, настройка и

удалённое управление ей по сетевому протоколу SSH.

Практика

Установка языка программирования Python, среды

разработки и библиотек. Настройка среды разработки

и различные режимы работы интерпретатора.

Практика

Технология запуска и отладки программ на

одноплатном компьютере через удалённое

подключение. Управление двигателем и сервоприводом беспилотного автомобиля.

Практика

Программирование

взаимодействия одноплатного

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

датчиков.

Использование инфракрасного датчика линии вместе

с одноплатным компьютером, задача следования по

линии.

Практика

Использование ультразвукового датчика дистанции

вместе с одноплатным компьютером. Следование

мобильного робота за подвижным объектом и

движение вдоль ровной вертикальной поверхности

Практика

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

11

PAGE 11

Алгоритм движения мобильного робота по линии с

использованием более двух инфракрасных датчиков

линии.

Лекция

Реализация энкодера на одноплатном компьютере. Практика

Основы компьютерного зрения. Что такое компьютерное зрение и какие задачи оно

выполняет.

Лекция

Знакомство с Google Colab. Представление

изображения в памяти компьютера и базовые

операции с ним.

Практика

Знакомство с библиотекой OpenCV. Распознавание

цветов на примере разбора задачи распознавание

сигналов светофора беспилотным автомобилем.

Практика

Захват видеопотока с камеры. Функции рисования. Практика

Простые алгоритмы

детектирования объектов и

распознавания образов.

Методы детектирования объектов. Детектирование

объектов по цветам на примере разбора задачи

детектирования дорожных знаков.

Лекция

Методы распознавания образов. Распознавание путём

сравнения с эталоном на примере разбора задачи распознавания дорожных знаков.

Лекция

Детекторы на основе гистограммы направленных

градиентов и метода опорных векторов (HOG-SVM-

детекторы). Устройство и принципы их работы,

использование предобученных детекторов.

Практика

Создание, обучение и использование собственного

HOG-SVM-детектора.

Практика

Практическое применение HOG-SVM-детектора на

примере разбора задачи детектирования и

распознавания светофоров на маршруте следования

беспилотного автомобиля.

Практика

Программирование движения

автономного мобильного робота на

базе компьютерного зрения.

Детектирование дорожной разметки и движение

беспилотного автомобиля по своей полосе дорожного

полотна с соблюдением правил дорожного движения.

Лекция

Движение беспилотного автомобиля по дорожной

разметке с применением энкодера.

Практика

Остановка беспилотного автомобиля перед стоп-

линией.

Практика

Преодоление беспилотным автомобилем

перекрёстков при помощи time.sleep().

Практика

2.3. Планируемые результаты первого года обучения

Предметные результаты обучения:

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

12

PAGE 11

● Понимание базовых возможностей микроконтроллеров и их функций в окружающем

мире.

● Навыки программирования в Arduino IDE.

● Понимание систем с одной обратной связью.

● Использование простейших регуляторов для управления беспилотным автомобилем.

● Понимание принципов представления изображения в памяти компьютера и работы с

ним.

● Понимание операций бинаризации, поиска контуров, наложения светофильтров,

изменение резкости, контрастности, яркости, свёртки, попиксельного сравнения.

● Навык реализации алгоритмов детектирования по цветам, обучения и использования

SVM-детекторов.

● Навыки разработки и отладки программ для удалённого подключения к одноплатному

компьютеру и передачи управляющих сигналов беспилотному автомобилю по

беспроводному каналу связи.

● Умение реализовывать простейшие варианты локального позиционирования

автономного мобильного робота по данным с видеокамеры.

● Навыки написания программного кода.

Метапредметные результаты обучения:

● формировать универсальные учебные действия (познавательные, регулятивные,

коммуникационные), обобщенные способы информационной деятельности при

использовании информационных технологий, в том числе при программировании

микроконтроллеров для управления беспилотными автомобилями;

● развить познавательные интересы, интеллектуальные и творческие способности

путем освоения и использования методов программирования простейших регуляторов

для управления беспилотным автомобилем;

● приобрести опыт программирования разработки и отладки программ для передачи

управляющих сигналов беспилотному автомобилю по беспроводному каналу связи в

индивидуальной, групповой и коллективной учебно-познавательной деятельности.

Личностные результаты обучения:

● Изменения в развитии внимательности, аккуратности и особенностей мышления

инженера-программиста за счет самостоятельного решения задач по сборке и

программированию автономного мобильного робота под конкретную задачу.

● Развитие способности упорядочивать знания и формировать целостную картину мира,

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

● Личностное и предпрофессиональное самоопределение через познавательную

мотивацию к получению профессий, связанных с программированием

микроконтроллеров для управления беспилотными автомобилями;

● построение дальнейшей индивидуальной образовательной траектории через

получение представления о перспективах развития систем управления беспилотными

автомобилями;

● осознание стратегической важности для государства, общества и для своего будущего

развития систем управления беспилотными автомобилями.

Воспитательный результат занятий можно считать достигнутым, если учащиеся проявляют

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

алгоритмов, созданию творческих проектов. Участие в научных конференциях для

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

во многом демонстрируют и закрепляют его. Формирование у ученика представления о

будущем, как результате его сегодняшних действий.

Кроме того, важным результатом будет поддержание структурированности

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

13

PAGE 11

программного кода, регулярное содержание своего рабочего места и модели беспилотного

автомобиля в порядке, что само по себе не просто.

2.4. Задачи второго года обучения

Образовательные

● Ознакомление учащихся с комплексом базовых технологий, применяемых при создании

высокоавтоматизированных автономных мобильных робототехнических систем.

● Использование современных разработок по тематикам компьютерного зрения с глубоким

обучением в автономных мобильных робототехнических системах в области образования

и организация на их основе активной внеурочной деятельности учащихся.

● Реализация межпредметных связей с математикой, информатикой и физикой.

● Ознакомление учащихся с комплексом технологий искусственного интеллекта,

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

системы принятия решений.

● Решение учащимися классических задач на применение компьютерного зрения и методов

машинного обучения.

● Решение учащимися классических задач программирования беспилотного автомобиля на

базе компьютерного зрения.

Развивающие

● Развитие у школьников инженерного мышления, навыков программирования и

эффективного построения самоуправляемых систем.

● Развитие внимательности, аккуратности и изобретательности.

● Развитие логического и алгоритмического мышления у учащихся.

● Развитие способности дробить задачу на этапы, выполнять и отлаживать каждый

последовательно.

● Развитие мышления, ориентированного на достижение конкретного результата творческой

деятельности и создание полноценных функционирующих продуктов.

● Организация и участие в играх, конкурсах и состязаниях наземных беспилотников для

закрепления изучаемого материала и мотивации к дальнейшему развитию.

Воспитательные

● Повышение мотивации учащихся к самообразованию, созданию собственных

самоуправляемых автономных программных и робототехнических систем, основанных на

технологиях искусственного интеллекта.

● Формирование у учащихся стремления к получению конкретного законченного результата

и качественно функционирующего продукта.

● Формирование навыков проектного мышления и эффективной работы в команде,

основанной на принципах взаимоусиления участников.

№ Тема Количество часов Формы

контроля Теория Практика Всего

1 Повторение. Основные понятия и алгоритмы. 1 – 1

2 Программирование действий беспилотного автомобиля

на базе компьютерного зрения 1 8 9

3 Введение в нейронные сети и глубокое обучение 3 5 8

4 Классификаторы на основе свёрточных нейронных сетей 2 12 14

5 Использование готовых нейросетевых решений 1 7 8

6 Нейросетевые детекторы 2 10 12

7 Программирование действий беспилотного автомобиля с 2 18 20

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

14

PAGE 11

компьютерным зрением на основе решений нейронных

сетей

Всего: 12 60 72

2.5. Содержание программы второго года обучения

Тема Содержание Форма

занятий

Повторение. Основные понятия и

алгоритмы.

Краткое повторение программы прошлого учебного

года. Основные понятия и алгоритмы.

Лекция

Программирование действий

беспилотного автомобиля на базе

компьютерного зрения

Преодоление беспилотным автомобилем

перекрёстков без использования time.sleep().

Лекция

Практика

Движение беспилотного автомобиля по полигону городской среды. Глобальной позиционирование

автономного мобильного робота.

Лекция Практика

Движение беспилотного автомобиля по замкнутому

полигону с перекрёстком «восьмёрка».

Автоматическое преодоление перекрёстков с

корректным реагированием на сигналы светофора.

Практика

Введение в нейронные сети и

глубокое обучение

Обзор методов машинного обучения и их областей применимости.

Лекция

Нейронные сети и задачи, которые они выполняют.

Устройство нейронных сетей.

Лекция

Принципы обучения нейронной сети. Практика

Бинарный классификатор. Полносвязная нейронная

сеть.

Практика

Разбор задачи бинарной классификации. Практика

Классификаторы на основе

свёрточных нейронных сетей

Свёрточные нейронные сети. Создание

классификатора на основе свёрточной нейронной

сети.

Лекция

Практика

Использование предобученных свёрточных слоёв. Практика

Задача бинарной классификации. Практика

Небинарный свёрточный классификатор. Практика

Разбор задачи классификации рукописных символов. Лекция

Практика

Использование готовых нейросетевых решений

Установка на компьютер TensorFlow, открытой

программной библиотеки для машинного обучения. Знакомство с глубоким обучением и DNN-OpenCV.

Практика

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

15

PAGE 11

Обзор существующих нейронных сетей. Подбор

готовых нейронных сетей исходя из потребностей

решаемой задачи и их внедрение в проект.

Лекция

Практика

Распознавание чисел при помощи нейронных сетей. Практика

Нейросетевые детекторы

Соотношение классификации и детектирования.

Развитие нейросетевых алгоритмов детектирования.

Лекция

Обучение детектора на основе нейронной сети с

архитектурой YOLO.

Практика

Применение готовых нейронных сетей для

детектирования объектов на примере задачи

детектирования пешеходов на пути следования

беспилотного автомобиля.

Практика

Применение готовых нейронных сетей для

распознавания образов на примере проекта по

созданию системы управления беспилотным

автомобилем на основе жестов оператора.

Практика

Программирование действий

беспилотного автомобиля с

компьютерным зрением на основе

решений нейронных сетей

Детектирование и подсчёт дорожных знаков вдоль

маршрута следования беспилотного автомобиля.

Лекция

Практика

Детектирование, распознавание и реагирование на

дорожные знаки.

Практика

Детектирование пешеходов. Расчёт дистанции и

остановка перед пешеходами.

Практика

Детектирование светофоров на маршруте следования

беспилотного автомобиля при помощи нейронных

сетей. Распознавание сигналов светофоров и

преодоление перекрёстков на корректный сигнал

светофора.

Лекция

Практика

2.6. Планируемые результаты второго года обучения Предметные результаты обучения:

● Использование регуляторов для контроля движения беспилотника.

● Навыки отладки программ, в том числе запускаемых на удалённом устройстве.

● Понимание принципов устройства и функционирования нейронных сетей.

● Умение построить и обучить классификатор на основе нейронной сети.

● Навыки сбора, разметки и доработки датасетов для нейронных сетей.

● Знание различных алгоритмов детектирования.

● Понимание принципов детектирования.

● Умение применить готовый нейросетевой детектор.

● Умение обучить собственный нейросетевой детектор.

● Умение встраивать нейронные сети в программы управляющие движением

беспилотного автомобиля.

● Навыки написания программного кода.

Метапредметные результаты обучения:

● формировать универсальные учебные действия (познавательные, регулятивные,

коммуникационные), обобщенные способы информационной деятельности при

использовании информационных технологий, в том числе при построении и обучении

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

16

PAGE 11

нейронных сетей и встраивании их в программы управляющие движением

беспилотного автомобиля;

● развить познавательные интересы, интеллектуальные и творческие способности

путем освоения и использования принципов устройства и функционирования

нейронных сетей;

● приобрести опыт программирования программ для управления движением

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

познавательной деятельности.

Личностные результаты обучения:

● Развитие внимательности, аккуратности и мышления инженера-программиста

проявляется на опыте самостоятельного решения задач по программированию

беспилотного автомобиля на базе компьютерного зрения.

● Развитие способности упорядочивать знания и формировать целостную картину мира,

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

● Личностное и предпрофессиональное самоопределение через познавательную

мотивацию к получению профессий, связанных с использованием нейросетей для

программирования управления беспилотными автомобилями;

● построение дальнейшей индивидуальной образовательной траектории через

получение представления о перспективах развития нейронных сетей и встраивания их

в программы для управления беспилотными автомобилями;

● осознание стратегической важности для государства, общества и для своего будущего

развития нейронных сетей.

Воспитательный результат занятий можно считать достигнутым, если учащиеся проявляют

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

алгоритмов, созданию творческих проектов. Участие в научных конференциях для

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

во многом демонстрируют и закрепляют его. Формирование у учащегося представления о

будущем, как результате его сегодняшних действий.

Кроме того, важным результатом будет поддержание структурированности

программного кода, регулярное содержание своего рабочего места и модели беспилотного

автомобиля в порядке, что само по себе непросто.

4. Методическое обеспечение дополнительной образовательной программы

«Технологии искусственного интеллекта в задачах беспилотного транспорта»

4.1. Формы организации занятий и деятельности детей

Основная форма занятий

Обзорный материал, не подразумевающий освоение новых навыков, преподносится

учащимся в форме лекции с обсуждением. Остальные материалы преподносятся в формате

мастер-классов: преподаватель излагает теорию и демонстрирует её практическое

применение, а учащиеся повторяют за преподавателем на своих рабочих местах. Для

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

задания. Изучение каждой темы заканчивается решением практической задачи. Это может

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

написание программы для решения задачи на онлайн-платформе. Действия беспилотных

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

17

PAGE 11

автомобилей, направленные на выполнение поставленной задачи, записываются на видео. В

дальнейшем происходит разбор и всеобщее обсуждение программного кода и видео, на

котором виден результат отработки данного кода. При решении задачи на онлайн-платформе,

учащийся получает количественную оценку точности своего алгоритма. Это даёт возможность

вести сквозной рейтинг учащихся.

Дополнительная форма занятий

Для закрепления изученного материала, мотивации к дальнейшему обучению и

выявления наиболее увлечённых участников курса рекомендуется регулярное участие в

состязаниях беспилотных автомобилей и организация своих собственных. Учащимся

предоставляется возможность принять участие в турнирах различных уровней: от

внутришкольных до международных.

4.2. Методы организации учебного процесса

Словесные методы (беседа, анализ) являются необходимой составляющей учебного

процесса. Занятие начинается с постановки задачи. Учитель формулирует в общих словах, и

дальше уточняет задачу с учащимися в формате сократической беседы. В процессе занятия

непрерывно ведётся анализ получаемых результатов. На его основе принимаются решения об

использовании более эффективных методов, усовершенствованиях конструкций и

алгоритмов. Допускается и полное переформулирование исходной задачи на основе опыта,

полученного в ходе учебной деятельности. Очевидно, что наиболее эффективными для

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

демонстрирует процесс или явление, но также и помогает учащимся добиться

самостоятельного воспроизведения данных результатов. Использование такого гибкого

инструмента, как модель беспилотного автомобиля на базе микроконтроллера или

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

4.3. Контрольно-измерительные материалы

Результатом занятий по программе «Технологии искусственного интеллекта в задачах

беспилотного транспорта» будет ознакомление учащихся с ключевыми технологиями

искусственного интеллекта: компьютерным зрением, нейронными сетями и другими

методами машинного обучения.

Ключевое отличие данной программы от других программ по робототехнике с

компьютерным зрением в том, что учащиеся приобретают комплексную способность к

самостоятельному решению задач окружающего мира и созданию проектов на основе

актуальных технологий искусственного интеллекта.

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

мерой эффективности её работы или действие беспилотного автомобиля, выполняющего

поставленную задачу.

Проверка проводится как визуально как путём организации массовых заездов

беспилотников всех участников курса, так и путем изучения программ и внутреннего

устройства алгоритмов, созданных учащимися.

Результаты каждого занятия вносятся преподавателем в рейтинговую таблицу.

Основной способ итоговой проверки – учёт результатов обучения в течении всей

образовательной программы.

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

инженера-программиста наглядно проявляется в самостоятельном решении задач по

программированию беспилотного автомобиля на базе компьютерного зрения, а также в

Методическое пособие по направлению «Автономные транспортные системы». ООО «Академия

Высоких Технология», Москва, 2020

18

PAGE 11

создании проектов с применением технологий автоматизированного детектирования объектов

и распознавания образов.

Развитие способности упорядочивать знания и формировать целостную картину мира

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

проявляется в ходе проектной деятельности с применением технологий искусственного

интеллекта.

Способность решать алгоритмические задачи и создавать новые алгоритмы позволяют

научиться выстраивать сложные параллельные процессы и управлять ими. Наиболее ярко

данный результат проявляется в успешных выступлениях на всероссийских состязаниях

беспилотных автомобилей: профиль «Автономные транспортные системы» Олимпиады КД

НТИ, компетенция «Future Engineers» в рамках World Robot Olympiad и др.

Воспитательный результат занятий можно считать достигнутым, если учащиеся

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

алгоритмов, созданию творческих проектов. Участие в научных конференциях для

школьников, хакатонах, открытых состязаниях беспилотных автомобилей и просто свободное

творчество во многом демонстрируют и закрепляют формирование у ученика представления

о будущем, как результате его сегодняшних действий.

Важным результатом будет поддержание структурированности программного кода,

регулярное содержание своего рабочего места в чистоте, а модели беспилотного автомобиля

в порядке.

4.4. Формы подведения итогов реализации ДОП

● Прохождение курса сопровождается регулярным выполнением проверочных заданий. При

этом тематические состязания беспилотных автомобилей также являются эффективным

методом проверки усвоения информации.

● По окончании курса составляется общий рейтинг учащихся, основанный на

количественной оценке эффективности создаваемых участниками курса алгоритмов. Это

позволяет оценить уровень владения изучаемыми компетенциями.

● Полученные знания и навыки проверяются в ходе всероссийских и международных

хакатонов, турниров по инженерии и робототехнике, соревнований по высокоуровневому

программированию. Основные – это:

⮚ Профиль «Автономные транспортные системы» Олимпиады КД НТИ;

⮚ Компетенция «Future Engineers» в рамках World Robot Olympiad;

⮚ Кубок России по технологиям искусственного интеллекта;

⮚ АвтоНет 18+ в рамках PROfest;

⮚ Дататон Московского технологического марафона;

⮚ Росийско-израильский турнир Роботраффик

⮚ Балтийский научно-инженерный конкурс и многие др.

● Также настоятельно рекомендуется организация собственных открытых состязаний по

программированию беспилотных автомобилей на базе компьютерного зрения и конкурсов

проектов, основанных не технологиях искусственного интеллекта с привлечением

участников из других учебных заведений.

Методическое пособие

Профиль: «Водные робототехнические системы»

общая трудоемкость – 54 часа или 64 часа (при наличии специального оборудования)

образовательные технологии – предметно-ориентированные

Разработчик: ООО «Центр робототехники»

Пояснительная записка

Подводным роботам уже больше 60 лет. Но именно сейчас, с развитием систем

навигации, подводная робототехника готовит самые интересные вызовы и предоставляет

самые интересные возможности. Роботам приходится иметь дело с экстремальными

условиями эксплуатации, при этом они становятся всё меньше — и всё умнее.

При этом важное место в данном направлении занимают автономные необитаемые

подводные аппараты. Такие подводные аппараты оснащены источником энергии,

бортовой системой управления, движительно-рулевой системой и средствами для ввода

программы-задания и считывания результатов измерений. Индустрия АНПА охватывает

немногим более 30 лет. За это время необитаемые аппараты прошли путь от ненадежных

прототипов, разрабатываемых для исследовательских и военных целей, до необходимых

ежедневных инструментов, без которых развитие многих направлений подводной

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

применений АНПА широк: от выполнения обзорно-поисковых операций на больших

площадях вблизи морского дна до высокоточного инспектирования трубопроводов и

обследования водозаполненных тоннелей. Военные ведомства проводят исследования с

целью разработки АНПА для совершения длительных интеллектуальных подводных

миссий, связанных с проведением разведывательных операций и обеспечением

безопасности заданных объектов, выполнением противоминных операций. В настоящее

время накоплен обширный опыт по разработке и использованию АНПА, сформировалось

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

этим вопросам, а также многим другим в области подводной робототехники посвящен

данный курс.

Ученикам, в ходе работы на курсе предстоит программировать подводных роботов под

различные актуальные задачи.

Цель курса: познакомить учащихся с основными типами необитаемых подводных

аппаратов, с наиболее важными их системами, а также сформировать знания в областях

их использования в современных морских научных исследованиях и инженерно-

технических работах.

Задачи курса:

● познакомить учащихся с разнообразием автономных необитаемых подводных

аппаратов;

● сформировать у учащихся навыки по программированию микроконтроллеров;

● сформировать у учащихся навыки по программированию автономных

необитаемых подводных аппаратов (АНПА);

● познакомить учащихся с основами знаний по электронике и конструированию

● научить учащихся конструировать подводных роботов.

Возраст детей: 8-11 класс

Количество часов: 2 академических часа в неделю (1 занятие по 2 часа)

Сроки реализации программы без спец. оборудования: 54 часов (27 занятий), 6 месяцев

Сроки программы со специальным оборудованием: 64 часа (32 занятия) 8 месяцев

Начальные требования к знаниям, умениям и навыкам, учащихся:

Желательно, чтобы школьник обладал хотя бы одним из этих навыков:

− Проектирование электрических плат;

− Проектирование в конструкторских САПР;

− Навык работы с 3Д-принтером;

− Программирование микроконтроллеров;

− Знание основ теории автоматического управления;

− Знание и умения использовать OpenCV для программирования компьютерного

зрения;

− Навык работы с формообразующим инструментов;

− Навык пайки.

Курс состоит из 5 основных разделов и одного дополнительного:

● Раздел 1. Программирование микроконтроллеров

● Раздел 2. Программирование АНПА

● Раздел 3. Конструирование

● Раздел 4. Электроника

● Раздел 5. Комплексные задачи

● Дополнительный. Раздел 6. Задачи с дополнительным оборудованием

Планируемые результаты программы

Предметные результаты обучения:

● иметь представление о водных робототехнических системах и их возможностях в современном обществе;

● иметь представление о перспективах развития автономных необитаемых подводных аппаратов;

● использовать различные средства для поиска информации о возможностях, направлениях развития автономных необитаемых подводных аппаратов;

● уметь разрабатывать электрические схемы; ● иметь навыки программирования микроконтроллеров; ● иметь навыки распознавания объектов и программирования регуляторов; ● знать основы конструирования в САПР; ● иметь навыки разработки чертежей с использованием САПР; ● иметь навыки проектирования электронных устройств;

Метапредметные результаты обучения:

● формировать универсальные учебные действия (познавательные, регулятивные, коммуникационные), обобщенные способы информационной деятельности при использовании информационных технологий, в том числе при программировании микроконтроллеров и автономных необитаемых

подводных аппаратов; ● развить познавательные интересы, интеллектуальные и творческие

способности путем освоения и использования методов проектирования электронных устройств;

● приобрести опыт программирования автономных необитаемых подводных

аппаратов в индивидуальной, групповой и коллективной учебно-познавательной деятельности.

Личностные результаты обучения:

● личностное и предпрофессиональное самоопределение через познавательную мотивацию к получению профессий, связанных с проектированием автономных

необитаемых подводных аппаратов и через познавательный интерес к достижениям в области водных робототехнических систем;

● построение дальнейшей индивидуальной образовательной траектории через получение представления о перспективах развития водных робототехнических систем;

● осознание стратегической важности для государства, общества и для своего будущего развития водных робототехнических систем.

Содержание программы

Учебно-тематический план

№ Тема Количество

часов Лекции Практика Контроль

Раздел 1. Программирование микроконтроллеров

1 Проект электрической схемы управления коллекторным мотором и светодиодной лентой

4 1 3 Проект

2 Проект программирования микроконтроллера Arduino UNO, к которой подключен 7-сегментный дисплей, две тактовые кнопки и потенциометр

2 0,5 1,5 Проект

3 Проект программирования микроконтроллера Arduino UNO, к которому подключены клавиатура и символьный дисплей

2 0,5 1,5 Проект

Всего по разделу 8 2 6

Раздел 2. Программирование АНПА

5 Программирование

подводного робота.

Обручи и полоски.

4 1 3 Проект

6 Программирование

подводного робота. Запуск

торпеды.

4 1 3 Проект

7 Программирование

подводного робота.

Перемещение объекта

4 1 3 Проект

Всего по разделу 12 3 9

Раздел 3. Конструирование

8 Проектирование герметичного корпуса. Уплотнительное кольцо.

4 1 3 Проект

9 Проектирование

герметичного корпуса.

Резьбовое соединение.

4 1 3 Проект

10 Проектирование

герметичного корпуса.

4 1 3 Проект

Всего 12 3 9

Раздел 4. Электроника

11 Проект электрической схемы управления коллекторным мотором. Скорость мотора за пределами (-10000; 10000)

2 0,5 1,5 Проект

12 Проект электрической схемы управления коллекторным мотором. Скорость мотора в пределах (0; 10000)

2 0,5 1,5 Проект

13 Схема электрическая

структурная к задаче 12

2 0,5 1,5 Проект

14 Электронное пианино 2 0,5 1,5 Проект

15 Схема электрическая структурная к задаче 14

2 0,5 1,5 Проект

Всего 10 2,5 7,5

Раздел 5. Комплексные задачи

16 Хакатон. Разработка

подводного LED-

светильника

8 2 6 Проект

17 Сборка движителя 4 1 3 Проект

Всего 12 3 9

Раздел 6. Задачи со специальным оборудованием

18 Конструирование АНПА с использованием набора ElementaryROV

32 8 24 Соревнования

19 Конструирование АНПА с использованием набора MiddleROV

32 8 24 Соревнования

Всего 64 16 48

Содержание программы

Наименование, разделов,

тем

Содержание Виды учебных

занятий,

учебных работ

Раздел 1 Программирование микроконтроллеров (8 ч)

Проект электрической схемы управления коллекторным мотором и светодиодной лентой

Создать проект электрической схемы управления коллекторным мотором и светодиодной лентой NeoPixel Ring 12. Также необходимо запрограммировать Arduino UNO, чтобы выполнялось заданные требования.

Лекция

Задача 1-2

(тип 2)

Проект программирования микроконтроллера Arduino UNO, к которой подключен 7-сегментный дисплей, две тактовые кнопки и

В схеме имеется микроконтроллер

Arduino UNO, к которому подключен 7-

сегментный дисплей через микросхему

CD4511, а также подключены две

Лекция

Задача 3 (тип

2)

потенциометр тактовые кнопки и потенциометр.

Необходимо запрограммировать Arduino

UNO, чтобы выполнялись заданные

требования.

Проект программирования микроконтроллера Arduino UNO, к которому подключены клавиатура и символьный дисплей

В схеме имеется микроконтроллер

Arduino UNO, к которому подключены

клавиатура 4×4 и символьный дисплей

16×2. Необходимо запрограммировать

Arduino UNO, чтобы выполнялись

заданные требования.

Лекция

Задача 4 (тип

2)

Раздел 2. Программирование АНПА (12 часов)

Программирование

подводного робота. Обручи

и полоски.

В симуляторе MUR IDE выполнить задачу: Пройти сквозь обруч 1. Пройти сквозь обруч 2. Сбросить маркер в корзину. Всплыть в обруче, который расположен над корзиной.

Лекция

Задача 5 (тип

2)

Программирование

подводного робота. Запуск

торпеды.

● В виртуальной среде MUR IDE необходимо последовательно запустить по одной торпеде в каждую из двух мишеней, цвет которых не совпадает с цветом указателя на старте, после этого, робот должен проплыть через мишень того же цвета, что и указатель. Затем проследовать по направляющей полоске голубого цвета. Над круглой голубой платформой расположен обруч, в пределах которого нужно всплыть на поверхность.

Лекция

Задача 6 (тип

2)

Программирование

подводного робота.

Перемещение объекта

В виртуальной среде MUR IDE

необходимо определить форму

навигационной метки для определение

дальнейшего маршрута. Затем нужно

пройти по направлению одного из трёх

указателей к платформе с кубом.

Данный куб нужно подобрать и положить

в синюю корзину после чего пройти к

платформе по направлению указателя,

цвет которого совпадает с полоской.

Над данной платформой располагается

обруч, в пределах которого нужно

всплыть.

Лекция

Задача 7 (тип

2)

Раздел 3 Конструирование (12 часов)

Проектирование

герметичного корпуса.

Уплотнительное кольцо.

Необходимо спроектировать

герметичный корпус, который состоит из

колбы с глухим дном и крышки. Для

герметизации необходимо использовать

уплотнительное кольцо сечением 2,5

мм. Толщина стенок и дна колбы должна

быть от 3 до 5 мм.

Лекция

Задача 8 (тип

1 или тип 2)

Проектирование

герметичного корпуса.

Резьбовое соединение.

Необходимо спроектировать

герметичный корпус, который состоит из

колбы с глухим дном и крышки. При

этом крышка и колба должны

соединяться с применением резьбового

соединения.

Лекция

Задача 9 (тип

1 или тип 2)

Проектирование

герметичного корпуса.

Система крепления.

Необходимо спроектировать герметичный корпус, который состоит из колбы с глухим дном и крышки. Он будет использоваться под водой. Дополнительные баллы можно получить за спроектированную систему крепления крышки к корпусу (система крепления: отверстия, крепёжные элементы, дополнительные детали). При проектировании система должна считаться с законами физики и механики.

Лекция

Задача 10 (тип

1 или тип 2)

Раздел 4. Электроника (10 часов)

Проект электрической схемы управления коллекторным мотором. Скорость мотора за пределами (-10000; 10000)

Создать проект электрической схемы управления коллекторным мотором. Управление скоростью вращения мотора должно осуществляться при помощи потенциометра, а изменение направления вращения - ползунковым переключателем. Скорость мотора должна выходить за пределы (-10000; 10000)

Лекция

Задача 11 (тип

2)

Проект электрической схемы управления коллекторным мотором. Скорость мотора в пределах (0; 10000)

Создать проект электрической схемы управления коллекторным мотором. Управление скоростью вращения мотора должно быть реализовано при помощи потенциометра без изменения направления вращения мотора. Диапазон скорости мотора не должен выходить за пределы (0; 10000)

Лекция

Задача 12 (тип

2)

Схема электрическая

структурная к задаче 12

Необходимо разработать Схему электрическую структурную для задачи 12.

Лекция

Задача 13 (тип

1)

Электронное пианино Необходимо, используя online-сервис Tinkercad создать проект электрического пианино на основе заданных требований.

Лекция

Задача 14 (тип

2)

Схема электрическая

структурная к задаче 14

Необходимо разработать Схему электрическую структурную для задачи 14.

Лекция

Задача 15 (тип

1)

Раздел 5. Комплексные задачи (12 часов)

Хакатон. Разработка

подводного LED-

светильника

В рамках хакатона участникам необходимо разработать, управляемый с ПК подводный LED-светильник. Готовое устройство должно подключаться к ПК по USB и источнику питания 12V.

Лекция

Задача 16 (тип

3)

Сборка движителя В рамках данной задачи учащимся необходимо собрать из комплектующих движитель OpenThruster 150.

Лекция

Задача 17 (тип

3)

Раздел 6. Задачи со специальным оборудованием (32 часа)

Конструирование АНПА с использованием набора ElementaryROV

Занятие 1. Введение. Техника безопасности и общие правила. Обзор набора ElementaryROV. Электромонтаж проводов посредством пайки. Задания для практики

Лекция

Практика

Занятие 2. Электромонтаж. Рассмотрение инструментов (повторение). Техника безопасности (повторение). Электромонтаж проводов посредством пайки (повторение) Рассмотрение других видов соединений Выполнение практических заданий

Лекция

Практика

Занятие 3. Сборка пульта управления. Рассмотрение пульта управления. Сборка пульта управления

Лекция

Практика

Занятие 4. Работа с пультом и движителями. Подключение пульта управления к ПК и загрузка прошивки на микроконтроллер Подключение электроники и проверка ее работоспособности. Определение направления работы движителя «методом салфетки»

Лекция

Практика

Занятие 5. Сборка рамы. Обзор деталей и инструментов. Сборка рамы. Установка блоков плавучести

Лекция

Практика

Занятие 6-7. Изготовление макетов Изготовление макетов: Маркер, «Морская звезда», Y-образный штырь, Гнездо для штыря, Крюк с сеткой, Колония губок, Пластиковый мусор

Лекция

Практика

Занятие 8-9. Полезная нагрузка. Знакомство с Гидравлическим и Электромеханическим захватами Поиск общих черт между созданными макетами для проектирование наиболее универсального инструмента.

Лекция

Практика

Занятие 10. Балластировка аппарата Балластировка необходима для достижения аппаратом в воде нейтральной плавучести (робот не всплывает и не тонет в толще воды) или небольшой положительной (робот медленно всплывает).

Лекция

Практика

Занятие 11.Отладка робота в бассейне. Прошивка и изменение кода. Настройка управления с пульта (стиков, кнопок). Настройка горизонтальных моторов.

Лекция

Практика

Занятие 12. Брифинг и работа над презентацией.

Лекция

Практика

Занятие 13-14. Тренировка Подготовка включает в себя тренировку демонстрации аппарата и подготовка к презентации перед судьями.

Лекция

Практика

Занятие 15. Соревнования Соревнования состоят из трех частей: Изготовление командного листа; Презентация перед жюри; Выполнение подводных заданий в бассейне.

Практика

Занятие 16. Рефлексия Обмен впечатлениями, обсуждение и анализ проделанной работы, оценивание своих достижений

Практика

Конструирование АНПА с использованием набора MiddleROV

Занятие 1. Введение

Виды подводных аппаратов и их

применение. Обзор набора MiddleROV

(комплектация, вариант сборки и

электрическая схема). Оборудование,

инструменты и расходные материалы

необходимые для пайки. Техника

безопасности. Виды соединения

проводов

Лекция

Практика

Занятие 2. Изготовление кабель-троса Обзор набора для изготовления кабель-

троса. Изготовление кабеля

Пайка разъёма. Герметизация

пенетратора

Лекция

Практика

Занятие 3. Проверка контроллера,

шилда и связи

Обучение работе с мультиметром.

Проверка контроллера, шилда и

проверка связи. Дополнительное

задание.

Лекция

Практика

Занятие 4. Поочерёдная проверка полезной нагрузки Виды моторов. Разбор переменных в

прошивке и настройка пинов. Проверка

движителей. Проверка захвата.

Проверка камеры.

Лекция

Практика

Занятие 5. Пайка блока электроники и прошивка пульта. Изучение принципов работы моторов. Пайка движителей и захвата. Прошивка пульта и блока электроники.

Лекция

Практика

Занятие 6. Сборка блока электроники. Понятие герметизации. Сборка блока электроники.

Лекция

Практика

Занятие 7-8. Проектирование конструкции. Установка CAD. Создание эскиза рамы. Разработка полезной нагрузки. Разработка модели использования.

Лекция

Практика

Занятие 9. Проектирование конструкции. Проектируем\изготавливаем полезную нагрузку. Тестируем полезную нагрузку Завершаем проектирование рамы. Создаём раскрой листового материала.

Лекция

Практика

Занятие 10.Изготовление полезной нагрузки. Изготовление макетов: Маркер, «Морская звезда», Y-образный штырь, Гнездо для штыря, Крюк с сеткой

Лекция

Практика

Занятие 11. Сборка аппарата Обзор деталей и инструментов. Сборка рамы. Установка блоков плавучести

Лекция

Практика

Занятие 12. Отладка на воздухе.

Перед погружением в воду убедиться в

том, что все системы правильно

работают и герметичны, и исправить,

если это не так.

Лекция

Практика

Занятие 13. Балластировка аппарата и кабеля. Закрепить полезную нагрузку на аппарате. Отбалластировать аппарат. Отбалластировать кабель. Испытать полезную нагрузку на аппарате

Лекция

Практика

Занятие 14-15. Тренировки в бассейне. Инструктаж по технике безопасности. Определение пилота. Распределение ролей. Заплывы. План тренировки.

Лекция

Практика

Занятие 16. Соревнования Практика

Образовательные результаты

Раздел 1. Программирование микроконтроллеров

При решении задач данного раздела у учащихся формируются:

1. Знания и навыки по разработке электрических схем

2. Навыки программирования Ардуино Раздел 2. Программирование АНПА

При решении задач данного раздела у учащихся формируются:

● Навыки программирования регуляторов

● Навыки распознавания объектов

Раздел 3. Конструирование

При решении задач данного раздела у учащихся формируются:

● Знания и навыки конструирования в САПР

● Навыки разработки чертежей

Раздел 4. Электроника

При решении задач данного раздела у учащихся формируются навыки:

● Разработки электрических схем

Раздел 5. Комплексные задачи

Для решения задач данного раздела учащиеся должны обладать

следующими навыками (на команду):

● Уметь программировать в Arduino IDE;

● Уметь паять;

● Знать, как работают некоторые электрические компоненты

(транзистор, LED-лента).

При решении задач данного раздела у учащихся развиваются следующие

навыки:

● Умение программировать в Arduino IDE;

● Умение проектирования электронных устройств;

● Знание и умения по работе с эпоксидной смолой.

Раздел 6. Задачи со специальным оборудованием

При решении задач данного раздела у учащихся формируются знания:

● Виды подводных аппаратов и их применение;

● Обзор набора MiddleROV (комплектация, вариант сборки и

электрическая схема);

● Оборудование, инструменты и расходные материалы необходимые

для пайки;

● Техника безопасности;

● Виды соединения проводов;

● Что такое кабель-трос, из чего состоит и для чего нужен.

● Как и зачем проверяются электронные устройства;

● Чем отличается переменный и постоянный ток;

● Реализация управления аппаратом.

● Виды моторов, принцип их работы и их различия.

● Почему «движитель», а не «двигатель»;

● Различия движителей: правый винт, левый винт;

● Организация управления MiddleROV.

● Виды герметизации;

● Виды герметизации уплотнительным кольцом;

● Разновидности корпусов и виды фиксации уплотнений.

● Почему САПР — это синоним слова «инженер»;

● Конструкции ТНПА и принципы их конструирования;

● Изучение стандартной конструкции MiddleROV.

● Производство деталей из листовых материалов;

● Как добавить полезную нагрузку в MiddleROV;

● Какие макеты используют в подводной робототехнике.

● Принципы балластировки аппарата.

● Роли при заплыве.

При решении задач данного раздела у учащихся формируются умения:

● Изоляция соединений

● Лужение провода

● Соединение проводов пайкой

● Пайка разъёмов;

● Изоляция разъёмов;

● Герметизация пенетратора.

● Навыки работы с мультиметром;

● Проверка целостности проводников;

● Работа с Arduino IDE;

● Загрузка прошивки;

● Проверка контроллера, шилда и связи.

● Проверка систем аппарата на работоспособность

● Наладка систем ТНПА.

● Сборка герметичного соединения и корпуса;

● Работа с инструментами анализа Fusion360;

● Компоновка систем ТНПА, создание эскиза рамы.

● Навыки работы с CAD Autodesk Fusion 360;

● Создание эскиза и тела в Fusion 360;

● Экспорт моделей для работы в других программах;

● Создание раскроя;

● Навыки работы со сварочным аппаратом для полипропиленовых труб;

● Распайка и подключение внешних устройств к Middle ROV Shield.

● Навыки отладки аппарата;

● Навыки устранения неисправностей.

● Навыки балластировки аппарата;

● Навыки обращения с полезной нагрузкой.

● Планирование действий на тренировке;

● Навыки работы в команде по подготовке к заплыву.

Контрольно-измерительные материалы

Раздел 1. Программирование микроконтроллеров

Требования к задаче 1

Запрограммировать Arduino UNO, чтобы выполнялось следующее требование:

● Когда на фоторезистор подается свет (доступно после нажатия на кнопку "Начать моделирование"), двигатель вращается в любую сторону с любой скоростью, все светодиоды в ленте светятся с любой интенсивностью и любым цветом.

● При выключении света, двигатель перестает вращаться, а светодиоды перестают светиться.

Требование к задаче 2:

Запрограммировать Arduino UNO, чтобы выполнялись следующие требования:

● Когда потенциометр выставлен по центру - двигатель не вращается, лента не светится.

● При вращении потенциометра по часовой стрелки - двигатель вращается по часовой стрелки, светодиоды ленты загораются и гаснут по часовой стрелки.

● При вращении потенциометра против часовой стрелки - двигатель вращается против часовой стрелки, светодиоды ленты загораются и гаснут против часовой стрелки.

● При максимальном отклонении от центра потенциометра 1 "оборот" ленты должен составлять 1 секунду, обороты двигателя ~+\-16000rpm.

● При минимальном отклонении от центра потенциометра 1 "оборот" ленты должен составлять 10 секунд.

● Угол поворота потенциометра пропорционально влияет на скорость и направление вращения двигателя и светодиодов ленты.

Требования к задаче 3

Необходимо запрограммировать Arduino UNO, чтобы выполнялись следующие требования:

● Устройство должно представлять собой таймер обратного отсчёта. Значение счётчика должно отображаться на дисплее.

● С помощью потенциометра пользователь должен иметь возможность установить на дисплее число от 0 до 9 включительно.

● С помощью кнопки «Сброс» (пин 3), отображаемое число сбрасывается к значению, которое установлено через потенциометр.

● С помощью кнопки «Старт/Пауза» (пин 2) должна предоставляться возможность запускать таймер и ставить его на паузу.

● После того, как значение таймера достигает нуля, должен загораться встроенный светодиод на Arduino UNO. В иных случаях светодиод должен быть выключен.

Требования к задаче 4

Необходимо запрограммировать Arduino UNO, чтобы выполнялись следующие требования:

● Устройство должно представлять собой калькулятор, с помощью которого можно производить простые вычисления (складывать, вычитать, делить и умножать числа).

● Функции кнопок: ○ цифры - числовой ввод ○ A - сложение (+) ○ B - вычитание (-) ○ C - деление (÷) ○ D - умножение (×) ○ * - сброс ○ # - равно (=)

● На дисплее должно отображаться первое число (над которым производится математическая операция); символ, обозначающий математическую операцию; второе число, участвующее в математической операции.

● После выполнения операции (при нажатии на кнопку «равно»), результат является «первым числом», над которым пользователь будет производить математическую операцию (до нажатия кнопки сброса).

● При нажатии на кнопку «сброс», очищаются оба числа и вид математической операции.

Раздел 2. Программирование АНПА

Оценка задачи 5 (тип 2)

В зависимости от выполнения задач в симуляторе MUR IDE, начисляются следующие баллы:

● 10 баллов. Робот прошел сквозь обруч 1. На обруч 1 направлена полоска 1.

● 10 баллов. Робот прошел сквозь обруч 2. На обруч 2 направлена полоска 2.

● 20 баллов. Робот сбросил маркер в корзину. На корзину направлена полоска 2.

● 10 баллов. Робот всплыл в обруче, который расположен над корзиной.

Оценка задачи 6 (тип 2)

В зависимости от выполненных за 5 минут задач в симуляторе MUR IDE, начисляются следующие баллы:

● 10 баллов. Робот определил цвет указателя, над которым стартовал. ● 20 баллов. Робот последовательно запустил по одной торпеде в

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

● 20 баллов. Робот проплыл через мишень того же цвета, что и указатель.

● 10 баллов. Робот проследовал по направляющей полоске голубого цвета.

● 20 баллов. Над голубой платформой расположен обруч, в пределах которого робот всплыл на поверхность.

Оценка задачи 7

В зависимости от выполненных за 5 минут задач в симуляторе MUR IDE, начисляются следующие баллы:

● 10 баллов. Робот определил форму навигационной метки (треугольник, квадрат или круг).

● 20 баллов. Робот прошел по направлению одного из трёх указателей в зависимости от формы розового объекта.

● 20 баллов. Робот правильно определил направление к платформе с кубом, подобрал его и положил в синюю корзину, путь к которой указывала полоска.

● 10 баллов. Робот прошел к платформе по направлению одного из двух указателей, цвет которого совпадает с полоской.

● 10 баллов. Робот всплыл в пределах обруча, который располагается над платформой.

Раздел 3. Конструирование

Оценка задания 8 (тип 1 или тип2)

Критерии оценки расчетов - от 0 до 40 баллов:

● Диаметр уплотнительного кольца – 10 баллов; ● Ширина канавки в крышке - 10 баллов; ● Глубина канавки в крышке - 10 баллов; ● Внутренний диаметр колбы в месте герметизации - 10 баллов.

Оценка чертежа колбы - от 0 до 15 баллов:

● Должен содержать разрез детали. ● Должен быть сохранен в формате pdf. ● Может быть выполнен в любой программе. ● Должны быть проставлены все размеры, необходимые для

изготовления детали.

Оценка чертежа крышки - от 0 до 15 баллов

● Должен содержать разрез детали. ● Должен быть сохранен в формате pdf. ● Может быть выполнен в любой программе. ● Должны быть проставлены все размеры, необходимые для

изготовления детали.

Оценка задания 9 (тип 1 или тип 2)

Критерии оценки расчетов - от 0 до 40 баллов:

● Диаметр уплотнительного кольца - 10 баллов; ● Ширина канавки в крышке - 10 баллов; ● Диаметр для посадки кольца в крышке - 10 баллов; ● Внутренний диаметр колбы в месте герметизации - 10 баллов.

Оценка чертежа колбы - от 0 до 15 баллов:

● Должен содержать разрез детали. ● Должен быть сохранен в формате .pdf. ● Может быть выполнен в любой программе. ● Должны быть проставлены все размеры, необходимые для

изготовления детали, а также шероховатости поверхности и допуски.

Оценка чертежа крышки - от 0 до 15 баллов:

● Должен содержать разрез детали. ● Должен быть сохранен в формате .pdf. ● Может быть выполнен в любой программе. ● Должны быть проставлены все размеры, необходимые для

изготовления детали, а также шероховатости поверхности и допуски.

Оценка задания 10 (тип 1 или тип 2)

Критерии оценки расчетов - от 0 до 15 баллов:

● Диаметр уплотнительного кольца - 5 баллов ● Ширину канавки под кольцо - 5 баллов ● Глубину канавки под кольцо - 5 баллов

Оценка чертежа колбы от 0 до 15 баллов:

● Должен содержать разрез детали; ● Должен быть сохранен в формате .pdf; ● Может быть выполнен в любой программе; ● Должны быть проставлены все размеры, необходимые для

изготовления детали, а также шероховатости поверхности и допуски.

Оценка чертежа крышки от 0 до 15 баллов:

● Должен содержать разрез детали; ● Должен быть сохранен в формате .pdf; ● Может быть выполнен в любой программе; ● Должны быть проставлены все размеры, необходимые для

изготовления детали, а также шероховатости поверхности и допуски.

Раздел 4. Электроника

Оценка задания 11 (тип 2)

Необходимо, используя online-сервис Tinkercad создать проект электрической схемы управления коллекторным мотором. Основные требования:

● Можно использовать только следующие компоненты: ○ Двигатель постоянного тока ○ Потенциометр ○ Ползунковый переключатель ○ Аналоговые компоненты: резисторы, конденсаторы,

индуктивности, диоды, транзисторы ○ Элементы питания ○ Логические микросхемы находящиеся в разделе "Логика" ○ Макетные платы ○ Таймер

● Управление скоростью вращения мотора должно осуществляться при помощи потенциометра, а изменение направления вращения - ползунковым переключателем.

● Диапазон скорости мотора должен выходить за пределы (-10000; 10000).

● Скорость вращения должна меняться с помощью широтно-импульсной модуляции.

● Изменение направления вращения должно осуществляться при помощи H-моста, собранного на транзисторах.

● Не разрешается использование микроконтроллеров, датчиков, контроллеров управления моторами, электрических приводов с Н-мостами, а также генераторов сигналов и регулируемых источников питания.

● Изменение скорости вращения должно происходить плавно.

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

Баллы за задачу начисляются следующим образом.

● 100 баллов - схема работает правильно в соответствие с требованиями. Не используются избыточные компоненты.

● 90 баллов - схема работает правильно в соответствие с требованиями. Используются избыточные компоненты.

● 80 баллов - схема работает правильно в соответствие с требованиями. Не используются избыточные компоненты. Но скорость меняется только в пределах (-10000; 10000).

● 50 баллов - схема работает частично. Либо только меняется направление вращения, либо - скорость.

● 30 баллов - схема работает частично. Скорость меняется в пределах (-10000; 10000). Направление вращения не меняется.

● 0 баллов - схема не работает даже частично.

Оценка задания 12 (тип 2)

Необходимо, используя online-сервис Tinkercad создать проект электрической схемы управления коллекторным мотором. Основные требования:

● Можно использовать только следующие компоненты: ○ Двигатель постоянного тока ○ Потенциометр ○ Аналоговые компоненты: резисторы, конденсаторы,

индуктивности, диоды, транзисторы ○ Элементы питания ○ Логические микросхемы находящиеся в разделе "Логика" ○ Макетные платы ○ Таймер

● Необходимо реализовать управление скоростью вращения мотора при помощи потенциометра без изменения направления вращения мотора.

● Диапазон скорости мотора не должен выходить за пределы (0; 10000).

● Скорость вращения должна меняться с помощью широтно-импульсной модуляции.

● Управление вращением должно осуществляться при помощи транзистора.

● Не разрешается использование микроконтроллеров, датчиков, контроллеров управления моторами, электрических приводов с Н-мостами, а также генераторов сигналов и регулируемых источников питания.

● Изменение скорости вращения должно происходить плавно.

Схемы, в которых будут использоваться неразрешенные компоненты, не будут проверяться. Уники при этом за задачу получают 0 баллов.

Баллы за задачу начисляются следующим образом.

● 100 баллов - схема работает правильно в соответствие с требованиями. Не используются избыточные компоненты.

● 90 баллов - схема работает правильно в соответствие с требованиями. Используются избыточные компоненты.

● 80 баллов - схема работает правильно в соответствие с требованиями. Не используются избыточные компоненты. Но скорость выходит за пределы (0; 10000).

● 50 баллов - схема работает частично. Либо только меняется направление вращения, либо - скорость.

● 30 баллов - схема работает частично. Скорость выходит за пределы (0; 10000). Направление вращения не меняется.

● 0 баллов - схема не работает даже частично.

Оценка задания 13 (тип 1)

Критерии оценки:

● Наличие рамки для заглавного листа в соответствии с ГОСТ 2.104-2006

● Рамка заполнена в соответствии с ГОСТ 2.104-2006 ● Схема выполнена в САПР ● Линии связи должны состоять из горизонтальных и вертикальных

отрезков и не имеют изломов и взаимных пересечений ● Все линии имеют подписи и все текстовые данные, относящиеся к

линиям, ориентируют параллельно горизонтальным участкам соответствующих линий

● Все надписи выполнены шрифтом ГОСТ тип Б ● Схема выполнена на одном листе А4 ● Схема занимает более 30% площади листа ● Все блоки схемы имеют названия, отражающие функциональное

обозначение компонентов и их количество не избыточно ● Схема не имеет избыточных соединений между блоками

Оценка задания 14 (тип 2)

Необходимо, используя online-сервис Tinkercad, создать проект электрического пианино. Основные требования:

● Можно использовать только следующие компоненты: ○ Динамик или пищалка ○ Потенциометр ○ Аналоговые компоненты: резисторы, конденсаторы,

индуктивности, диоды, транзисторы ○ Кнопки ○ Элементы питания ○ Логические микросхемы находящиеся в разделе "Логика" ○ Макетные платы ○ Таймер.

● Необходимо сделать примитивное пианино способное генерировать от 5 до 12 нот, управляемых тактовыми кнопками

● Частотный диапазон нот должен соответствовать первой октаве фортепиано.

● При нажатии на соответствующей кнопки, как и в нормальном пианино должен издаваться звук правильной частоты (допускается округление до целых значений Гц).

● Не разрешается использование микроконтроллеров, датчиков, контроллеров управления моторами, электрических приводов с Н-мостами, а также генераторов сигналов и регулируемых источников питания.

● Когда кнопки не нажаты посторонних звуков быть не должно.

Пианино, в котором будут использоваться неразрешенные компоненты, не будут проверяться. Уники при этом за задачу получают 0 баллов.

Баллы за задачу начисляются следующим образом.

● 100 баллов - пианино работает правильно в соответствие с требованиями. Не используются избыточные компоненты.

● 90 баллов - пианино работает правильно в соответствие с требованиями. Используются избыточные компоненты.

● 80 баллов - пианино работает правильно в соответствие с требованиями. Не используются избыточные компоненты. Но частотный диапазон нот не всегда соответствует первой октаве фортепиано.

● 50 баллов - пианино работает частично. ● 0 баллов - пианино не работает даже частично.

Оценка задания 15 (тип 1)

Критерии оценки:

● Наличие рамки для заглавного листа в соответствии с ГОСТ 2.104-2006

● Рамка заполнена в соответствии с ГОСТ 2.104-2006 ● Схема выполнена в САПР ● Линии связи должны состоять из горизонтальных и вертикальных

отрезков и не имеют изломов и взаимных пересечений ● Все линии имеют подписи и все текстовые данные, относящиеся к

линиям, ориентируют параллельно горизонтальным участкам соответствующих линий

● Все надписи выполнены шрифтом ГОСТ тип Б ● Схема выполнена на одном листе А4 ● Схема занимает более 30% площади листа ● Все блоки схемы имеют названия, отражающие функциональное

обозначение компонентов и их количество не избыточно ● Схема не имеет избыточных соединений между блоками

Раздел 5. Комплексные задачи

Оценка задачи 16 (тип 3)

Результат оценивается по 3 критериям:

● Качество пайки и изготовления электроники (0, 1 или 2 балла) ● Качество заливки и внешний вид готового устройства (0, 1, или 2

балла) ● Качество написания программного кода. Функционал устройства (0, 1,

2 балла)

Оценка задачи 17 (тип 3)

Раздел 6. Задачи с дополнительным оборудованием.

Оценка задача 18 (тип 4).

Результат оценивается в формате соревнования, которые состоят из трех частей:

● Изготовление командного листа – 20 баллов; ● Презентация перед жюри – 50 баллов; ● Выполнение подводных заданий в бассейне – 200 баллов.

Материально-технические требования для реализации программы

Раздел 1. Программирование микроконтроллеров

● ПК с установленным браузером Chrome

● бесплатный онлайн симулятор Tinkercad: https://www.tinkercad.com/

Раздел 2. Программирование АНПА

● ПК

● бесплатный симулятор MUR IDE:

https://murproject.com/documents/17/murIDE.exe

Раздел 3. Конструирование

Желательно:

● ПК

● Установленный конструкторский САПР (например, Inventor:

https://www.autodesk.ru/products/inventor/overview)

Раздел 4. Электроника

● ПК с установленным браузером Chrome

● Бесплатный онлайн симулятор Tinkercad: https://www.tinkercad.com/

● бесплатный онлайн редактор схем, например www.lucidchart.com

Раздел 5. Комплексные задачи

Задача 16

Для выполнения данного задания каждой команде участников необходимо

предоставить:

● Arduino NANO – 1 шт.;

● LED RGB лента 12В – 1 шт. (3 элемента);

● Полевые транзисторы N-канальные (IRF540N, STP9NK60Z и их

аналоги) – 3 шт.;

● Провода (желательно 3-4 цвета) – по 50 см;

● Макетная плата 30х80 мм – 1 шт.;

● USB-miniUSB кабель – 1 шт.;

● Паяльное оборудование, припой, флюс, пинцет – 1 комплект;

● Кусачки, стриппер, ножовка по металлу, напильники, изолента,

термоусадочная трубка – 1 комплект;

● Шприц 50 мл (или другая подходящая емкость для заливки) – 1 шт.;

● Эпоксидная смола – 50 мл.;

● Емкость для смешивания эпоксидной смолы (стаканчик пластиковый)

– 1 шт.

● Защитные очки, перчатки, респиратор – 1 комплект;

● Ноутбук с установленным Arduino IDE – 1 шт.;

● Источник питания 9-12В – 1 шт.

Задача 17:

Для сборки подводного движителя OpenThruster 150 потребуется:

● Мотор (57х27.6 мм, 9800 об/мин, 12В 0.16А);

● воск (7 грамм);

● два провода (AWG 16/18, длина подбирается по необходимости);

● изолента;

● напечатанные детали корпуса: насадка, винт, крышка и корпус (PLA,

заполнение 30%). Модели приведены по ссылке

(https://github.com/murproject/OpenThruster150).

● Также понадобятся нож/ножницы, паяльник, припой, цианакрилатный

(супер) клей, наждачная бумага или надфиль.

Раздел 6. Задачи со специальным оборудованием

● Для выполнения задачи 18 необходим набор ElementaryROV

https://robocenter.net/goods/kit/elementaryrov/

● Для выполнения задачи 19 необходим набор MiddleROV

https://robocenter.net/goods/kit/middlerov/

ЛИТЕРАТУРА:

Программирование микроконтроллеров

Задача 1 (тип 2)

Задача выполняется в симуляторе Tinkercad

Дано

● Arduino UNO

● Батарея 9 В

● Двигатель постоянного тока

● NeoPixel Ring 12

● Макетная мини-плата

● Фоторезистор

● Резистор

● Электрический привод с H-мостом

Необходимо, используя online-сервис Tinkercad (во избежание проблем с

моделированием, рекомендуем пользоваться Google Chrome) создать проект

электрической схемы управления коллекторным мотором и светодиодной лентой NeoPixel

Ring 12. Также необходимо запрограммировать Arduino UNO, чтобы выполнялось

следующее требование:

● Когда на фоторезистор подается свет (доступно после нажатия на кнопку "Начать

моделирование"), двигатель вращается в любую сторону с любой скоростью, все

светодиоды в ленте светятся с любой интенсивностью и любым цветом.

● При выключении света, двигатель перестает вращаться, а светодиоды перестают

светиться.

Решение задачи 1 (тип 2)

Строится схема в Thinkercad

Ссылка на проект в Thinkercad: https://www.tinkercad.com/things/3bRcg8ZG3G9-copy-of-

lightdiod/editel?tenant=circuits?sharecode=kfp3agpUeXEtUMr70CHnrjp22qSbiVJhIIsySjAkjR

4=

Программный код для Arduino

//Подключение библиотеки для ленты

#include <Adafruit_NeoPixel.h>

#define PIN 2 // input pin Neopixel is attached to

#define NUMPIXELS 12 // number of neopixels in strip

// Создание объекта для управления лентой

Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB +

NEO_KHZ800);

void setup()

{

//инициализация ленты, пинов для шима мотора (9, 10)

pixels.begin();

pinMode(10, OUTPUT);

pinMode(9, OUTPUT);

// АЦП для фоторезистора

pinMode(A0, INPUT);

}

void loop()

{

//считывание АЦП и преобразование в [0, 255]

// цифры 28 и 974 подбираются (верхнее и нижнее значение, получаемые с АЦП)

// в зависимости от установленного резистора

int speed = map(analogRead(A0), 28, 974, 0, 255);

for (int i = 0; i < 12; ++i){

//устанавливаем все диоды в цвет пропорционально полученного значения с АЦП

pixels.setPixelColor(i, pixels.Color(speed, speed, speed));

}

// рендер диодов

pixels.show();

// устанавливаем тягу на мотор

analogWrite(9, speed);

}

Задача 2 (тип 2)

Задача выполняется в симуляторе Tinkercad

Дано

● Arduino UNO

● Батарея 9 В

● Двигатель постоянного тока

● NeoPixel Ring 12

● Макетная мини-плата

● Потенциометр

● Электрический привод с H-мостом

Необходимо, используя online-сервис Tinkercad (во избежание проблем с

моделированием, рекомендуем пользоваться Google Chrome) создать проект

электрической схемы управления коллекторным мотором и светодиодной лентой NeoPixel

Ring 12. Также необходимо запрограммировать Arduino UNO, чтобы выполнялись

следующие требования:

● Когда потенциометр выставлен по центру - двигатель не вращается, лента не

светится.

● При вращении потенциометра по часовой стрелки - двигатель вращается по

часовой стрелки, светодиоды ленты загораются и гаснут по часовой стрелки.

● При вращении потенциометра против часовой стрелки - двигатель вращается

против часовой стрелки, светодиоды ленты загораются и гаснут против часовой стрелки.

● При максимальном отклонении от центра потенциометра 1 "оборот" ленты должен

составлять 1 секунду, обороты двигателя ~+\-16000rpm.

● При минимальном отклонении от центра потенциометра 1 "оборот" ленты должен

составлять 10 секунд.

● Угол поворота потенциометра пропорционально влияет на скорость и направление

вращения двигателя и светодиодов ленты.

Решение задачи 2 (тип 2)

Строится схема в Thinkercad

Ссылка на проект в Thinkercad: https://www.tinkercad.com/things/ccQbVbDWyWg-copy-of-

copy-of-copy-of-funky-

kup/editel?tenant=circuits?sharecode=uT6nQvo1TEH2T9ns1QQnSF_Ygmqw390IrOsaUISYw6

A= Программный код для Arduino // подключение библиотеки для ленты #include <Adafruit_NeoPixel.h> #define PIN 2 // input pin Neopixel is attached to #define NUMPIXELS 12 // number of neopixels in strip // создание объекта ленты Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

int redColor = 200; int greenColor = 0; int blueColor = 0; int speed = 0; void setup() { // Initialize the NeoPixel library. pixels.begin(); //инициализация моторов и АЦП pinMode(10, OUTPUT); pinMode(9, OUTPUT); pinMode(A1, INPUT); } int i = 0; void loop() { // получение данных с АЦП и расчет скорости и направления мотора // цифра 675 подбирается для установленного резистора (верхнее значение АЦП) speed = (analogRead(A1) / 675.f) * 255.0f - 127; speed *= -2; speed = constrain(speed, -255, 255); // если потенциометр находится в середине, то диоды не двигаются if (speed != 0) { // установка тяги мотора в нужном направлении if (speed > 0) { analogWrite(10, 0); analogWrite(9, speed); } else { analogWrite(10, -speed); analogWrite(9, 0); } // выбор направления движения ленты if(speed > 0){ i++; } else { if (i == 0) i = 12; i--; } // проверка выхода за границы количества диодов ленты i %= 12; for(int j = 0; j < 12; j++) { // очищаем все диоды pixels.setPixelColor(j, pixels.Color(0, 0, 0)); } // устанавливаем текущий диод в выбранный цвет pixels.setPixelColor(i, pixels.Color(redColor, greenColor, blueColor));

// рендер ленты pixels.show(); // задержка обратно-пропорциональная скорости delay((11000.0f - 10000.0f * (abs(speed) / 255.0f)) / 12.0f); } }

Задача 3 (тип 2)

Дано:

● Arduino UNO

● 7-сегментный дисплей

● Микросхема CD4511

● Две тактовые кнопки

● Потенциометр

Используя online-сервис Tinkercad (во избежание проблем с моделированием,

рекомендуем пользоваться Google Chrome) необходимо скопировать проект по

ссылке: https://www.tinkercad.com/things/3TYLXIYlBnm

В данной схеме имеется микроконтроллер Arduino UNO, к которому подключен 7-

сегментный дисплей через микросхему CD4511, а также подключены две тактовые кнопки

и потенциометр. Редактирование электронной схемы не допускается.

Необходимо запрограммировать Arduino UNO, чтобы выполнялись следующие

требования:

● Устройство должно представлять собой таймер обратного отсчёта. Значение счётчика

должно отображаться на дисплее.

● С помощью потенциометра пользователь должен иметь возможность установить на

дисплее число от 0 до 9 включительно.

● С помощью кнопки «Сброс» (пин 3), отображаемое число сбрасывается к значению,

которое установлено через потенциометр.

● С помощью кнопки «Старт/Пауза» (пин 2) должна предоставляться возможность

запускать таймер и ставить его на паузу.

● После того, как значение таймера достигает нуля, должен загораться встроенный

светодиод на Arduino UNO. В иных случаях светодиод должен быть выключен.

Решение задачи 3 (тип 2)

Решение доступно по ссылке https://yadi.sk/d/KrZAbhWM9nDhAw.

В данной схеме имеется микроконтроллер Arduino UNO, к которому подключен 7-

сегментный дисплей через микросхему CD4511, а также подключены две тактовые кнопки

и потенциометр. Редактирование электронной схемы не допускается.

Устройство представляет собой таймер обратного отсчёта.

Ссылка на схему TinkerCad: https://www.tinkercad.com/things/jvSEil0gZCt

Программный код для Arduino:

/* Таймер. * * Количество секунд для отсчёта задаётся потенциометром. * * Кнопка "старт\стоп" запускает или останавливает таймер * в зависимости от его текущего состояния. * * Кнопка "сброс" останавливает и сбрасывает таймер * и переводит его в режим настройки потенциометром. * * При достижении нуля таймер останавливает и * загорается светодиод. */ // порты для потенциометра, кнопок и светодиода #define POTENTIOMETER A0 #define BUTTON_START 2 #define BUTTON_RESET 3 #define LED 13 // порты для микросхемы CD4511, которая // управляет 7-сегментным индикатором const int digit_pins[4] = {4, 5, 6, 7};

// режимы работы таймера: // SETTING - настройка, установка секунд отсчёта // RUNNING - отсчёт времени // PAUSE - пауза enum modes {SETTING = 0, RUNNING, PAUSE}; // переменная текущего режима int mode = SETTING; // счётчик секунд uint8_t counter = 0; // обработка нажатия кнопки старт\стоп void button_start_clicked() { // если сейчас режим настройки или пауза… if (mode == SETTING || mode == PAUSE) { // то запускаем таймер mode = RUNNING; } else if (mode == RUNNING) { // если же он запущен, то ставим паузу mode = PAUSE; } } // обработка нажатия кнопки сброса void button_reset_clicked() { // перевод таймера в режим настройки mode = SETTING; // сброс счётчика counter = 0; } // функция для чтения значений с потенциометра int read_potentiometer() { // считывание необработанного значения с АЦП int potentiometer_value = analogRead(POTENTIOMETER); // перевод значения из шкалы 0…1023 в диапазон 0…9 return map(potentiometer_value, 0, 1023, 0, 9); } // обработка одного тика таймера void timer_tick() { // если счётчик больше нуля, то делаем отсчёт if (counter > 0) { // уменьшение счётчика на единицу counter--; // ожидание в 1 секунду delay(1000); } else if (counter == 0) { // если достигли нуля // то включается свтодиод digitalWrite(LED, HIGH); } } // функция установки времени отсчёта void setting_time() { // приравнивение счётчика значению с потенциометра counter = read_potentiometer(); // небольшая задержка delay(100); } // функция, которая один раз запускается на старте void setup() { // инициализация портов кнопок на вход pinMode(BUTTON_START, INPUT_PULLUP); pinMode(BUTTON_RESET, INPUT_PULLUP); // инициализация порта светодиода на выход pinMode(LED, OUTPUT); // привязка прерываний портов кнопок к обработчикам // (это позволит обрабатывать нажатия кнопок асинхронно // и независимо от основного цикла). благодаря этому, // ожидаемый сигнал не будет пропущен. attachInterrupt(digitalPinToInterrupt(BUTTON_START), button_start_clicked, FALLING); attachInterrupt(digitalPinToInterrupt(BUTTON_RESET), button_reset_clicked, FALLING);

// инициализация портов индикатора for (int i = 0; i < 4; i++) { pinMode(digit_pins[i], OUTPUT); } } // основной цикл программы void loop() { // если режим установки времени отсчёта, // то вызываем соответствующую функцию-обработчик if (mode == SETTING) setting_time(); // если таймер запущен, то нужно вызвать // функцию обработки тика таймера if (mode == RUNNING) timer_tick(); // в случае паузы просто делаем небольшую задержку if (mode == PAUSE) delay(100); // вывод текущего значения счётчика на индикатор for (int i = 0; i < 4; i++) { // индикатор управляется микросхемой CD4511. // он преобразует двоичный код в соответствующий // для цифры код 7-сегментного индикатора. // чтобы вывести цифру, нужно подать на входы // микросхемы двоичный код числа. // для этого воспользуемся функцией bitRead, // которая позвоялет считать один бит числа // в определенной позиции. digitalWrite(digit_pins[i], bitRead(counter, i)); } // если счётчик не равен нулю, то выключаем светодиод. if (counter != 0) digitalWrite(LED, LOW);

Задача 4 (тип 2)

Дано:

● Arduino UNO

● Клавиатура 4×4

● Символьный дисплей 16×2

Используя online-сервис Tinkercad (во избежание проблем с моделированием,

рекомендуем пользоваться Google Chrome) необходимо скопировать проект по

ссылке: https://www.tinkercad.com/things/0DRRITK63Dt

В данной схеме имеется микроконтроллер Arduino UNO, к которму подключены

клавиатура 4×4 и символьный дисплей 16×2.

Необходимо запрограммировать Arduino UNO, чтобы выполнялись следующие

требования:

● Устройство должно представлять собой калькулятор, с помощью которого можно

производить простые вычисления (складывать, вычитать, делить и умножать числа).

● Функции кнопок:

● цифры - числовой ввод

● A - сложение (+)

● B - вычитание (-)

● C - деление (÷)

● D - умножение (×)

● * - сброс

● # - равно (=)

● На дисплее должно отображаться первое число (над которым производится

математическая операция); символ, обозначающий математическую операцию; второе

число, участвующее в математической операции.

● После выполнения операции (при нажатии на кнопку «равно»), результат является

«первым числом», над которым пользователь будет производить математическую

операцию (до нажатия кнопки сброса).

● При нажатии на кнопку «сброс», очищаются оба числа и вид математической операции.

Решение задачи 4 (тип 2)

Решение доступно по ссылке https://yadi.sk/d/KrZAbhWM9nDhAw.

В данной схеме имеется микроконтроллер Arduino UNO, к которому подключены

клавиатура 4×4 и символьный дисплей 16×2.

Устройство представляет собой калькулятор.

Ссылка на схему TinkerCad: https://www.tinkercad.com/things/8fSsNwQKS1C

Программный код для Arduino:

/* Калькулятор. * * Пользователь вводит первое число выражения * в верхней строке, после чего нажимает на * кнопку математической операции. * * После этого пользователь вводит второе число. * * Далее пользователь может нажать на кнопку "=" * для вывода результата, или же снова нажать на * кнпоку математической операции, чтобы * продолжить вычисления над результатом. * * Также есть кнопка для сброса. */ // подключение библиотеки для дисплея #include <LiquidCrystal.h> // подключение библиотеки для клавиатуры #include <Keypad.h> // создание объекта для управления дисплеем

LiquidCrystal lcd(5, 4, 3, 2, 1, 0); // кол-во строк и столбцов кнопок клавиатуры const byte ROWS = 4; const byte COLS = 4; // установка соответствия между кнопками // клавиатуры с символами на них char hexaKeys[ROWS][COLS] = { {'1', '2', '3', '+'}, {'4', '5', '6', '-'}, {'7', '8', '9', '/'}, {'*', '0', '=', 'x'} }; // задание портов для клавиатуры byte rowPins[ROWS] = {A0, A1, A2, A3}; byte colPins[COLS] = {9, 8, 7, 6}; // создание объекта клавиатуры Keypad customKeypad = Keypad(makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS); // доступные операции над числами // (сложение, вычитание, деление, умножение) enum operations {PLUS = 0, MINUS, DIVIDE, MULTIPLY}; // режимы работы (ожидание первого числа, // ожидание второго числа, вывод результата) enum modes {WAIT_FIRST = 0, WAIT_SECOND, RESULT}; int mode = WAIT_FIRST; // текущий режим int operation = 0; // текущая операция float num1 = 0; // первое число float num2 = 0; // второе число float result = 0; // результат int num_digit_count = 0;// счётчик цифр char current_key; // текущая нажатая кнопка // функция очистки калькулятора void clear_calculator() { // обнуление первого и второго числа num1 = 0; num2 = 0; // устанвока режима на ожидание первого числа mode = WAIT_FIRST; // обнуление счётчика цифр num_digit_count = 0; // очистка дисплея lcd.clear(); lcd.setCursor(0, 0); }; // перевод ASCII-символа в цифру // (см. таблицу ASCII-кодов) int ascii_to_int(int num) { // если символ попадает в диапазон цифр if (num >= 48 && num <= 57) { // то возвращаем цифру, соответствующую символу return num - 48; } else { // иначе возвращаем -1 (не цифра) return -1; } } // заполнение чисел пользователем void fill_num(float &target_num) { // если клавиша не нажата, или число слишком большое if (!current_key || num_digit_count >= 14){ // то выходим из функции return; } // получаем цифру из введенного символа int num = ascii_to_int(current_key); // если было введено число

if (num != -1) { num_digit_count++; // прибавляем счётчик цифр lcd.print(num); // выводим на дисплей цифру target_num *= 10; // сдвигаем десятичный разряд target_num += num; // добавляем цифру } } // функция для вывода результата void show_result() { // очистка дисплея lcd.clear(); result = 0; // если было ожилание первого числа (второго ещё нет), // то результатом будет просто первое число // (т.е. операций не было произведено) if (mode == WAIT_FIRST) { result = num1; } else { // иначе будет производить вычисления // сложение if (operation == PLUS) { result = num1 + num2; } // вычитание if (operation == MINUS) { result = num1 - num2; } // умножение if (operation == MULTIPLY) { result = num1 * num2; } // деление if (operation == DIVIDE) { result = num1 / num2; } } mode = RESULT; // устанавливаем новый режим num1 = result; // первым числом становится результат num_digit_count = 0; // обнуляем счётчик цифр // перевод курсора в начало верхней строки lcd.setCursor(0, 0); lcd.print('='); // вывод символа равенства // перевод курсора в начало нижней строки, // где будет отображён результат lcd.setCursor(0, 1); // проверки на ошибки if (isnan(result)) { // если не число (not a number) lcd.print("error: nan"); return; } if (isinf(result)) { // если бесконечность (infinity) lcd.print("error: inf"); return; } // проверка на переполнение if (result > 4294967040.0 || result <-4294967040.0 ) { lcd.print("error: overflow"); return; } // вывод результата lcd.print(result, DEC); } // установка математической операции void set_operation(int new_operation) {

operation = new_operation; // если первое число не было введено, // то отобразим на его месте 0 if (num1 == 0) { lcd.setCursor(0, 0); lcd.print(0); } // если было введено второе число, // то нужно произвести вычисления // (это нужно, если подряд идёт // несколько математических операций, // например 12×34+56 можно будет посчитать // не нажимая кнопку "равно") if (mode == WAIT_SECOND) { // расчёт и вывод результата show_result(); // снова устанавливаем ожидание второго числа // (первым числом стал результат) mode = WAIT_SECOND; // очистка дисплея lcd.clear(); lcd.setCursor(0, 0); lcd.print(num1, DEC); // обнуление второго числа num2 = 0; // установка курсора в начало нижней строки, // куда будет вводиться второе число lcd.setCursor(0, 1); // выход из функции return; } // для вывода знака текущей операции, // перемещаем курсор в конец верхней строки lcd.setCursor(15, 0); // вывод знака математической операции lcd.print(current_key); // установка режима ожидания второго числа mode = WAIT_SECOND; // обнуление счётчика цифр num_digit_count = 0; // установка курсора в начало нижней строки lcd.setCursor(0, 1); } // функция, которая выполнится один раз в начале void setup() { // инициализация дисплея lcd.begin(16, 2); // включение отображения курсора lcd.cursor(); // обнуление калькулятора clear_calculator(); } // основной цикл программы void loop() { // получение текущей нажатой клавиши current_key = customKeypad.getKey(); // если сейчас отображается результат // и при этом была нажата клавиша… if (mode == RESULT && current_key) { // очистка дисплея lcd.clear(); // если была нажата клавиша математической операции, // то нужно произвести эту операцию над результатом // (первым числом является результат) if (current_key == '+' || current_key == '-' || current_key == 'x' || current_key == '/' ) { // очистка дисплея lcd.clear();

// устанвока курсора в начало первой строки lcd.setCursor(0, 0); // вывод первого числа (сейчас это результат // от предыдущего расчёта) lcd.print(num1, DEC); // обнуляем второе число num2 = 0; } else if (ascii_to_int(current_key) != -1) { // если при показе результата было нажато число, // то нужно обнулить калькулятор // (т.е. начался ввод новых чисел) clear_calculator(); } // установка режима ожидания первого числа mode = WAIT_FIRST; } // если была нажата клавиша if (current_key) { // проверка нажатой клавиши // на соответствие действию (сброс, равно) // или математической операции if (current_key == '*') { clear_calculator(); return; } if (current_key == '+') { set_operation(PLUS); return; } if (current_key == '-') { set_operation(MINUS); return; } if (current_key == 'x') { set_operation(MULTIPLY); return; } if (current_key == '/') { set_operation(DIVIDE); return; } if (current_key == '=') { show_result(); return; } } // если ожидается первое число, // то заполняем именно его - num1 if (mode == WAIT_FIRST) fill_num(num1); // если же ожидается второе число, // то соответственно заполняем num2 if (mode == WAIT_SECOND) fill_num(num2); }

Программирование АНПА

Задача 5 (тип 2)

Необходимо выполнить следующие задачи в симуляторе MUR IDE:

● 10 баллов. Пройти сквозь обруч 1. На обруч 1 направлена полоска 1.

● 10 баллов. Пройти сквозь обруч 2. На обруч 2 направлена полоска 2.

● 20 баллов. Сбросить маркер в корзину. На корзину направлена полоска 2.

● 10 баллов. Всплыть в обруче, который расположен над корзиной.

Для отладки можете использовать эти сцены https://yadi.sk/d/xoVRegBkeki93A.

Для проверки решений мы будем использовать сцену, где может изменяться:

● Направление полоски 2. От -45 до 45 градусов.

● Расстояние от полоски 1 до полоски 2.

● Расстояние от полоски 2 до корзины.

Остальное (глубина бассейна, размеры и цвет объектов, глубина расположения обручей)

меняться не будет.

При старте робот направлен на первую полоску.

Как выполнять задания в MUR IDE

Для выполнения отборочного задания вам необходимо:

1. Скачать и установить MUR IDE: https://murproject.com/documents/17/murIDE.exe

2. После установки на рабочем столе и должен появиться ярлык MUR IDE.

Запустите MUR IDE.

3. Для начала работы в симуляторе, вам необходимо перевести режим работы IDE

в Local. Для этого, нажмите на кнопку с иконкой ракеты и надписью Remote в левом

верхнем углу. Цвет кнопки станет синим и надпись изменится на Local.

4. Далее, вам необходимо запустить симулятор нажатием кнопки с изображением жука в

правом верхнем углу. Откроется окно симулятора с черным экраном.

5. Скачать сцены для отбора можно здесь https://yadi.sk/d/xoVRegBkeki93A. Можно

разместить их в любом удобном каталоге.

6. В запущенном симуляторе переходим в меню Scene -> Open. В появившемся

диалоговом окне выбираем одну из скачанных сцен.

7. Все готово! Вы можете начать программировать виртуальный аппарат в MiddleAUV на

языке программирования Python.

8. Здесь можно посмотреть видеоуроки по MUR IDE.

Решение задачи 5 (тип 2)

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

- Стабилизация аппарата по курсу.

- Стабилизация аппарата по глубине.

- Поворот аппарата на по линии.

- Поиск линии.

- Стабилизация над корзиной.

- Сброс маркера

- Всплытие

Для начала реализуем ПД регулятор для нашего аппарата, который мы будем

использовать в нескольких местах: стабилизация курса, глубины и выравнивание над

объектами. Класс нашего регулятора будет выглядеть следующим образом: class PDRegulator(object): _p_gain = 0.0 _d_gain = 0.0 _prev_error = 0.0 _timestamp = 0 def __init__(self): pass def set_p_gain(self, value): self._p_gain = value def set_d_gain(self, value): self._d_gain = value def process(self, error): timestamp = int(round(time.time() * 1000)) if timestamp == self._timestamp: return 0 output = self._p_gain * error + self._d_gain / (timestamp - self._timestamp) * (error - self._prev_error) self._timestamp = timestamp self._prev_error = error return output

Далее реализуем регулятор стабилизации по курсу и глубине: def keep_yaw(yaw_to_set, speed): def clamp_angle(angle): if angle > 180.0: return angle - 360.0 if angle < -180.0: return angle + 360 return angle try: error = mur.get_yaw() - yaw_to_set error = clamp_angle(error) output = keep_yaw.yaw_regulator.process(error) mur.set_motor_power(0, clamp(-output + speed, -100, 100)) mur.set_motor_power(1, clamp(output + speed, -100, 100)) except AttributeError: keep_yaw.yaw_regulator = PDRegulator() keep_yaw.yaw_regulator.set_p_gain(0.8)

keep_yaw.yaw_regulator.set_d_gain(0.6) def keep_depth(depth_to_set): try: error = mur.get_depth() - depth_to_set output = keep_depth.depth_regulator.process(error) output = clamp(output, -100, 100) mur.set_motor_power(2, output) mur.set_motor_power(3, output) except AttributeError: keep_depth.depth_regulator = PDRegulator() keep_depth.depth_regulator.set_p_gain(45) keep_depth.depth_regulator.set_d_gain(5)

Далее создадим утилитарный класс для хранения информации о текущей глубине,

скорости курсе и т.д: class AUVContext(object): _yaw = 0.0 _depth = 0.0 _speed = 0.0 _side_speed = 0.0 _timestamp = 0 _missions = [] _min_area = math.inf _min_yaw = 0.0 def __init__(self): pass def set_min_circle(self, yaw, area): if area < self._min_area: self._min_area = area self._min_yaw = yaw def get_min_circle_yaw(self): return self._min_yaw def get_yaw(self): return self._yaw def get_depth(self): return self._depth def get_speed(self): return self._speed def get_side_speed(self): return self._side_speed def set_yaw(self, value): self._yaw = value def set_depth(self, value): self._depth = value def set_speed(self, value): self._speed = value

def set_side_speed(self, value): self._side_speed = value def push_mission(self, mission): self._missions.append(mission) def pop_mission(self): if len(self._missions) != 0: return self._missions.pop(0) return {} def get_missions_length(self): return len(self._missions) def process(self): timestamp = int(round(time.time() * 1000)) if timestamp - self._timestamp > 16: keep_yaw(self._yaw, self._speed) keep_depth(self._depth) mur.set_motor_power(4, self._side_speed) self._timestamp = timestamp else: time.sleep(0.05)

Далее реализуем код поиска линии и установки угла. def find_and_set_line_angle(): image = mur.get_image_bottom() hsv_image = cv.cvtColor(image, cv.COLOR_BGR2HSV) mask = cv.inRange(hsv_image, (15, 50, 50), (25, 255, 255)) cv.imshow('', mask) contours, _ = cv.findContours(mask, cv.RETR_EXTERNAL, cv.CHAIN_APPROX_SIMPLE) cv.waitKey(1) if contours: for contour in contours: angle = find_rectangle_contour_angle(contour) context.set_yaw(context.get_yaw() + angle) return True context.set_speed(20) context.set_yaw(0) return False

Теперь реализуем функции для работы с корзиной. def find_yellow_bin(image): hsv_image = cv.cvtColor(image, cv.COLOR_BGR2HSV) mask = cv.inRange(hsv_image, (25, 50, 50), (30, 255, 255)) contours, _ = cv.findContours(mask, cv.RETR_EXTERNAL, cv.CHAIN_APPROX_NONE) if contours: for contour in contours: area = cv.contourArea(contour) if abs(area) < 3000: continue print(area) ((_, _), (w, h), _) = cv.minAreaRect(contour) aspect_ratio = max(w, h) / min(w, h) if 0.8 <= aspect_ratio <= 1.2: continue

moments = cv.moments(contour) try: x = int(moments['m10'] / moments['m00']) y = int(moments['m01'] / moments['m00']) cv.circle(image, (x, y), 2, (255, 0, 255), 2) cv.imshow("", image) cv.waitKey(1) return True, x, y, find_rectangle_contour_angle(contour) except ZeroDivisionError: return False, 0, 0, 0 return False, 0, 0, 0 def find_rectangle_contour_angle(contour): rectangle = cv.minAreaRect(contour) box = cv.boxPoints(rectangle) box = np.int0(box) edge_first = np.int0((box[1][0] - box[0][0], box[1][1] - box[0][1])) edge_second = np.int0((box[2][0] - box[1][0], box[2][1] - box[1][1])) edge = edge_first if cv.norm(edge_second) > cv.norm(edge_first): edge = edge_second angle = -((180.0 / math.pi * math.acos(edge[0] / (cv.norm((1, 0)) * cv.norm(edge)))) - 90) return angle def move_to_yellow_bin(): context.set_speed(20) found, x, y, angle = find_yellow_bin(mur.get_image_bottom()) if found: context.set_speed(0) if stab_on_yellow_rectangle(x, y): context.set_yaw(angle + context.get_yaw()) return True return False

Добавим функции всплытия и сброса. def surface(): mur.set_motor_power(2, 50) mur.set_motor_power(3, 50) time.sleep(5) return True def drop(): mur.drop() time.sleep(5) return True

Собрав все вмести мы сможем успешно выполнить задание.

Задача 6 (тип 2)

1. Задача выполняется в симуляторе и среде программирования MUR IDE. Сцены

называются: NTI-Task-1_1, NTI-Task-1_2 и NTI-Task-1_3. И доступны по ссылке.

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

автономном режиме выполнить под водой ряд задач и всплыть в заданной области.

Время на выполнение задачи — 5 минут.

3. Как только робот всплыл или закончилось время, задача считается законченной,

фиксируется количество заработанных баллов.

4. Задание:

● Необходимо определить цвет указателя, над которым стартует робот. ● Далее нужно последовательно запустить по одной торпеде в каждую из двух мишеней, цвет

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

поверхность.

5. Описание макетов:

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

платформа, обруч.

● Указатель может быть окрашен в один из трёх цветов — синий, зелёный и оранжевый. Указатель располагается под стартовой позицией робота и указывание направление на стенд с мишенями.

Цвет указателя говорит о том, через мишень какого цвета необходимо проплыть.

● Стенд с мишенями — представляет собой стенд, состоящий из трёх мишеней разных форм

(квадрат, круг и треугольник) и цветов (синий, зелёный и оранжевый). Формы и цвета мишеней

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

Мишень, через которую необходимо пройти, будет либо квадратом, либо кругом (не

треугольником).

● Полоска (голубого цвета) — указывает направление к платформе. По данной полоске необходимо

будет скорректировать направление к платформе.

● Платформа (голубого цвета) — служит для определения расположения обруча.

● Обруч — расположен на поверхности воды и находится над голубой платформой. Аппарат должен

всплыть внутри обруча.

Решение задачи 6 (тип 2)

Решение (NTI-Simulator-Task1.py) доступно по ссылке

https://yadi.sk/d/KrZAbhWM9nDhAw.

Для успешного выполнения задания аппарату в виртуальной среде MUR IDE

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

цвет которых не совпадает с цветом указателя на старте, после этого, робот должен

проплыть через мишень того же цвета, что и указатель. Затем проследовать по

направляющей полоске голубого цвета. Над круглой голубой платформой расположен

обруч, в пределах которого нужно всплыть на поверхность.

Приступим к написанию программы. Для начала необходимо импортировать

требуемые библиотеки и инициализировать API симулятора.

import pymurapi as api import cv2 as cv import time import numpy as np import math mur = api.mur_init()

Согласно заданию, подберём диапазоны возможных цветов, которые встречаются в

задании.

# предопределенные диапазоны цветов (HSV) colors = { 'green': ((45, 50, 50), (75, 255, 255)), 'blue': ((130, 50, 50), (140, 255, 255)), 'orange': ((10, 50, 50), (30, 255, 255)) }

Также напишем функции, которые пригодятся для дальнейших расчётов.

# функция для ограничения значения диапазоном def clamp(value, min_value, max_value): if value < min_value: return min_value if value > max_value: return max_value return value # функция для вычисления угла между точками def angle_between(p1, p2): xDiff = p2[0] - p1[0] yDiff = p2[1] - p1[1] return math.degrees(math.atan2(yDiff, xDiff) - (np.pi / 2)) # функция для вычисления расстояния от начала координат def length_from_center(x, y): return math.sqrt(x ** 2 + y ** 2)

Далее разработаем PD-регулятор, который будет использоваться для стабилизации курса,

глубины и выравнивания над объектами.

# PD-регулятор class PDRegulator(object): _p_gain = 0.0 _d_gain = 0.0 _prev_error = 0.0 _timestamp = 0 def __init__(self): pass def set_p_gain(self, value): self._p_gain = value def set_d_gain(self, value): self._d_gain = value

def process(self, error): timestamp = int(round(time.time() * 1000)) if timestamp == self._timestamp: return 0 output = self._p_gain * error + self._d_gain / (timestamp - self._timestamp) * (error - self._prev_error) self._timestamp = timestamp self._prev_error = error return output

С использованием PD-регулятора, опишем функции для регулирования курса и глубины

робота.

# функция для установки курса робота def keep_yaw(yaw_to_set, speed): def clamp_angle(angle): if angle > 180.0: return angle - 360.0 if angle < -180.0: return angle + 360 return angle try: error = mur.get_yaw() - yaw_to_set error = clamp_angle(error) output = keep_yaw.yaw_regulator.process(error) mur.set_motor_power(0, clamp(-output + speed, -100, 100)) mur.set_motor_power(1, clamp(output + speed, -100, 100)) except AttributeError: # создание PD-регулятора, если он отсутствует keep_yaw.yaw_regulator = PDRegulator() keep_yaw.yaw_regulator.set_p_gain(0.8) keep_yaw.yaw_regulator.set_d_gain(0.6) # функция для установки глубины погружения def keep_depth(depth_to_set): try: error = mur.get_depth() - depth_to_set output = keep_depth.depth_regulator.process(error) output = clamp(output, -100, 100) mur.set_motor_power(2, output) mur.set_motor_power(3, output) except AttributeError: keep_depth.depth_regulator = PDRegulator() keep_depth.depth_regulator.set_p_gain(45) keep_depth.depth_regulator.set_d_gain(5)

Напишем класс для хранения состояния робота и хода выполнения миссии.

# класс для хранения текущего состояния class AUVContext(object): _yaw = 0.0 _depth = 0.0 _speed = 0.0 _side_speed = 0.0 _timestamp = 0 _missions = [] _min_area = math.inf _min_yaw = 0.0 _stabilization_counter = 0 time def __init__(self): pass def set_min_circle(self, yaw, area): if area < self._min_area: self._min_area = area self._min_yaw = yaw def get_min_circle_yaw(self): return self._min_yaw def get_yaw(self): return self._yaw def get_depth(self): return self._depth

def get_speed(self): return self._speed def get_side_speed(self): return self._side_speed def set_yaw(self, value): self._yaw = value def set_depth(self, value): self._depth = value def set_speed(self, value): self._speed = value def set_side_speed(self, value): self._side_speed = value def get_stabilization_counter(self): return self._stabilization_counter def reset_stabilization_counter(self): self._stabilization_counter = 0 def add_stabilization_counter(self): self._stabilization_counter += 1 def check_stabilization(self, timeout = 3): if self._stabilization_counter > timeout: return True else: self.add_stabilization_counter() return False def push_mission(self, mission): self._missions.append(mission) def push_mission_list(self, missions): for mission in missions: self.push_mission(mission) def pop_mission(self): if len(self._missions) != 0: return self._missions.pop(0) return {} def get_missions_length(self): return len(self._missions) def process(self): timestamp = int(round(time.time() * 1000)) if timestamp - self._timestamp > 16: keep_yaw(self._yaw, self._speed) keep_depth(self._depth) mur.set_motor_power(4, self._side_speed) self._timestamp = timestamp else: time.sleep(0.05) # объект, где будет хранится текущее состояние context = AUVContext()

Напишем ещё несколько полезных функций, которые позволяют выполнять различные

действия, как развороты, выстрел и т.д.

# разворот на 90 градусов def translate_to_90(): yaw = mur.get_yaw() + 90 if yaw < -180: yaw += 360 if yaw > 180: yaw -= 360 context.set_yaw(yaw) return True # разворот на 180 градусов def translate_to_180(): yaw = mur.get_yaw() + 180 if yaw < -180:

yaw += 360 if yaw > 180: yaw -= 360 context.set_yaw(yaw) return True # произвести выстрел def shoot(): if (context.get_speed() != 0): context.set_speed(0) return False else: mur.shoot() time.sleep(0.5) return True # стабилизировать курс и глубину def stabilize(): yaw = mur.get_yaw() depth = mur.get_depth() if abs(yaw - context.get_yaw()) < 1 and abs(depth - context.get_depth()) < 0.3: if context.check_stabilization(): return True else: context.reset_stabilization_counter() return False

В дальнейшем часто будет возникать задача по распознаванию контуров цветных

объектов, для этого напишем соответствующую функцию.

# поиск на изображении контура по цвету def find_contours(image, color_low, color_high, approx = cv.CHAIN_APPROX_SIMPLE): hsv_image = cv.cvtColor(image, cv.COLOR_BGR2HSV) mask = cv.inRange(hsv_image, color_low, color_high) contours, _ = cv.findContours(mask, cv.RETR_EXTERNAL, approx) return contours

Далее идут функции, активно использующие машинное зрение. Это такие действия, как

расчёты координат и углов объектов, определение цветов объектов, позиционирование и

стабилизация над объектами. Для стабилизации также используется ранее написанный

PD-регулятор.

# расчёт угла прямоугольника # для определение отклонения от полоски, # чтобы затем скорректировать курс def find_rectangle_contour_angle(contour): rectangle = cv.minAreaRect(contour) box = cv.boxPoints(rectangle) box = np.int0(box) edge_first = np.int0((box[1][0] - box[0][0], box[1][1] - box[0][1])) edge_second = np.int0((box[2][0] - box[1][0], box[2][1] - box[1][1])) edge = edge_first if cv.norm(edge_second) > cv.norm(edge_first): edge = edge_second angle = -((180.0 / math.pi * math.acos(edge[0] / (cv.norm((1, 0)) * cv.norm(edge)))) - 90) return angle # стабилизироваться над желтым прямоугольником def stabilize_on_yellow_rectangle(x, y): y_center = y - (240 / 2) x_center = x - (320 / 2) try: # определеяем и проверяем отклонение length = length_from_center(x_center, y_center) if length < 4.5: if context.check_stabilization(): return True else: context.reset_stabilization_counter() output_forward = stabilize_on_yellow_rectangle.forward_regulator.process(y_center) output_side = stabilize_on_yellow_rectangle.side_regulator.process(x_center) output_forward = clamp(int(output_forward), -50, 50) output_side = clamp(int(output_side), -50, 50)

context.set_speed(-output_forward) context.set_side_speed(-output_side) except AttributeError: stabilize_on_yellow_rectangle.forward_regulator = PDRegulator() stabilize_on_yellow_rectangle.forward_regulator.set_p_gain(0.5) stabilize_on_yellow_rectangle.forward_regulator.set_d_gain(0.1) stabilize_on_yellow_rectangle.side_regulator = PDRegulator() stabilize_on_yellow_rectangle.side_regulator.set_p_gain(0.5) stabilize_on_yellow_rectangle.side_regulator.set_d_gain(0.1) return False # определение цвета стрелки def detect_arrow_color(): image = mur.get_image_bottom() hsv_image = cv.cvtColor(image, cv.COLOR_BGR2HSV) # для определения цвета, выделим контуры для # каждого из возможных цветов, а затем # подсчитаем площадь каждого контура. # цвет стрелки - это контура с наибольшей площадью. areas = {} for color in colors: mask = cv.inRange(hsv_image, colors[color][0], colors[color][1]) contours, _ = cv.findContours(mask, cv.RETR_EXTERNAL, cv.CHAIN_APPROX_NONE) biggest_area = 0 if contours: for contour in contours: area = cv.contourArea(contour) if area > biggest_area: biggest_area = area areas[color] = biggest_area color = sorted(areas, key=areas.get, reverse=True)[0] if (areas[color] > 5): # устанавливаем цвет мишени, через которую нужно пройти context.target_color = color # а также создаем список мишеней, в которые нужно выстрелить context.shooting_colors = list(set(colors.keys()) - {color}) return True else: return False # определение угла, куда направлена стрелка def detect_arrow_angle(image, contour): (arrow_center_x, arrow_center_y), radius = cv.minEnclosingCircle(contour) moments = cv.moments(contour) try: arrow_direction_x = int(moments['m10'] / moments['m00']) arrow_direction_y = int(moments['m01'] / moments['m00']) arrow_angle = (angle_between((arrow_direction_x, arrow_direction_y), (arrow_center_x, arrow_center_y))) context.set_yaw(mur.get_yaw() + arrow_angle) target_x = arrow_center_x - (320 / 2) target_y = arrow_center_y - (240 / 2) length = math.sqrt(target_x ** 2 + target_y ** 2) return arrow_angle, target_x, target_y, length except: return False, False, False, False # стабилизироваться над стрелкой (с учётом направления стрелки) def stabilize_on_arrow(): image = mur.get_image_bottom() contours = find_contours(image, colors[context.target_color][0], colors[context.target_color][1], cv.CHAIN_APPROX_SIMPLE) if contours: for contour in contours:

(arrow_angle, target_x, target_y, length) = detect_arrow_angle(image, contour) if arrow_angle != False: try: output_forward = stabilize_on_arrow.forward_regulator.process(target_y) output_side = stabilize_on_arrow.side_regulator.process(target_x) output_forward = clamp(int(output_forward), -50, 50) output_side = clamp(int(output_side), -50, 50) context.set_speed(-output_forward) context.set_side_speed(-output_side) if abs(arrow_angle) < 2 and length < 5: if context.check_stabilization(): return True else: context.reset_stabilization_counter() except AttributeError: stabilize_on_arrow.forward_regulator = PDRegulator() stabilize_on_arrow.forward_regulator.set_p_gain(0.5) stabilize_on_arrow.forward_regulator.set_d_gain(0.1) stabilize_on_arrow.side_regulator = PDRegulator() stabilize_on_arrow.side_regulator.set_p_gain(0.5) stabilize_on_arrow.side_regulator.set_d_gain(0.1) return False # прицелиться к мишени определенного цвета. # для выстрела и прохождения через мишень # будет отличаться требуемая глубина, # поэтому присутствует дополнительная # корректировка по оси Y def aim_target(color, y_correction = 0): image = mur.get_image_front() contours = find_contours(image, colors[color][0], colors[color][1]) if contours: for contour in contours: area = cv.contourArea(contour) if area < 100: continue ((x, y), (w, h), _) = cv.minAreaRect(contour) x_center = x - (320 / 2) y_center = (y - (240 / 2)) - y_correction # у нас нет возможности точно измерить расстояние, # но можно получить примерное значение из площади контура. # чем ближе к мишени - тем больше её контур и наоборотю area = w * h target_distance = 50000 try: output_forward = aim_target.forward_regulator.process(target_distance - area) output_yaw = aim_target.yaw_regulator.process(x_center) output_side = aim_target.side_regulator.process(x_center) output_depth = aim_target.depth_regulator.process(y_center) output_forward = clamp(int(output_forward), -20, 20) output_side = clamp(int(output_side), -50, 50) output_depth = clamp(output_depth, -1, 1) context.set_speed(output_forward) context.set_yaw(context.get_yaw() + output_yaw) context.set_side_speed(-output_side) context.set_depth(mur.get_depth() + output_depth) length = length_from_center(x_center, y_center) # нужно проверить как расстояние до мишени, # так и центрирование (расстояние до центра изображения) if length < 6 and abs(target_distance - area) < 5000: if context.check_stabilization(timeout=5): context.set_depth(mur.get_depth()) context.set_speed(0)

return True else: context.reset_stabilization_counter() except AttributeError: aim_target.yaw_regulator = PDRegulator() aim_target.yaw_regulator.set_p_gain(0.002) aim_target.yaw_regulator.set_d_gain(0.002) aim_target.forward_regulator = PDRegulator() aim_target.forward_regulator.set_p_gain(0.2) aim_target.forward_regulator.set_d_gain(0.1) aim_target.side_regulator = PDRegulator() aim_target.side_regulator.set_p_gain(0.5) aim_target.side_regulator.set_d_gain(0.1) aim_target.depth_regulator = PDRegulator() aim_target.depth_regulator.set_p_gain(0.01) aim_target.depth_regulator.set_d_gain(0.01) return False # обнаружение голубой полоски def find_cyan_line(image): contours = find_contours(image, (80, 50, 50), (100, 255, 255)) if contours: for contour in contours: area = cv.contourArea(contour) if abs(area) < 100: continue ((_, _), (w, h), _) = cv.minAreaRect(contour) aspect_ratio = max(w, h) / min(w, h) moments = cv.moments(contour) try: x = int(moments['m10'] / moments['m00']) y = int(moments['m01'] / moments['m00']) return True, x, y, find_rectangle_contour_angle(contour) except ZeroDivisionError: return False, 0, 0, 0 return False, 0, 0, 0 # стабилизироваться по координатам, а также по углу # иными словами, расположиться над объектом с заданным направлением def stabilize_x_y_angle(x, y, angle): y_center = y - (240 / 2) x_center = x - (320 / 2) try: length = math.sqrt(x_center ** 2 + y_center ** 2) if length < 4.5: if context.check_stabilization(): return True else: context.reset_stabilization_counter() output_forward = stabilize_x_y_angle.forward_regulator.process(y_center) output_side = stabilize_x_y_angle.side_regulator.process(x_center) output_forward = clamp(int(output_forward), -50, 50) output_side = clamp(int(output_side), -50, 50) context.set_speed(-output_forward) context.set_side_speed(-output_side) context.set_yaw(mur.get_yaw() + angle) except AttributeError: stabilize_x_y_angle.forward_regulator = PDRegulator() stabilize_x_y_angle.forward_regulator.set_p_gain(0.5) stabilize_x_y_angle.forward_regulator.set_d_gain(0.1) stabilize_x_y_angle.side_regulator = PDRegulator() stabilize_x_y_angle.side_regulator.set_p_gain(0.5) stabilize_x_y_angle.side_regulator.set_d_gain(0.1) return False # стабилизироваться над голубой полоской def stabilize_over_cyan_line(): found, x, y, angle = find_cyan_line(mur.get_image_bottom())

if found: print(x, y, angle) if stabilize_x_y_angle(x, y, angle): return True else: return False # обнаружение голубого круга def find_cyan_circle(image): contours = find_contours(image, (80, 50, 50), (100, 255, 255)) if contours: for contour in contours: area = cv.contourArea(contour) if abs(area) < 400: continue ((_, _), (w, h), _) = cv.minAreaRect(contour) (_, _), radius = cv.minEnclosingCircle(contour) rectangle_area = w * h circle_area = radius ** 2 * math.pi aspect_ratio = w / h if 0.85 <= aspect_ratio <= 1.15: if rectangle_area > circle_area: moments = cv.moments(contour) try: x = int(moments['m10'] / moments['m00']) y = int(moments['m01'] / moments['m00']) return True, x, y, area except ZeroDivisionError: return False, 0, 0, 0 return False, 0, 0, 0 # стабилизироваться над голубым кругом def stabilize_over_cyan_circle(): found, x, y, angle = find_cyan_circle(mur.get_image_bottom()) if found: if stabilize_x_y_angle(x, y, 0): return True else: return False # прицелиться для выстрела в мишень def aim_shooting_target(): # цвет целевой мишени возьмём из списка shooting_colors # для выстрела нужно расположиться чуть выше центра мишени if (aim_target(context.shooting_colors[-1], 25)): context.shooting_colors.pop() # удаляем отработанную мишень из списка return True else: return False # прицелиться для прохода через мишень def aim_through_target(): if (aim_target(context.target_color)): return True else: return False

Опишем такие действия, как движение вперёд и назад, остановка движения, ожидание и

всплытие.

# двигаться вперёд def go_forward(): if (context.get_speed() != 30): context.set_speed(30) return False else: return True # двигаться назад def go_back(): context.set_depth(2.0) if (context.get_speed() != -30): context.set_speed(-30) return False else:

return True # ожидание 5 секунд def wait(): time.sleep(5) return True # ожидание 10 секунд def wait_long(): time.sleep(10) return True # остановить движение def stop(): if (context.get_speed() != 0): context.set_speed(0) return False else: return True # всплыть на поверхность def surface(): context.set_depth(0) mur.set_motor_power(2, 50) mur.set_motor_power(3, 50) time.sleep(5) return True

Далее расположен тот код, который выполняется непосредственно при запуске скрипта.

Здесь будут описан алгоритм выполнения миссий, который состоит из ранее написанных

функций. Миссия была разбита на подзадачи.

# основной код, выполняемый при запуске скрипта if __name__ == "__main__": context.set_depth(2.0) context.set_yaw(0.0) # разделим большое задание на мелкие задачи # выстрел через мишень: shoot_target = ( aim_shooting_target, # сначала прицелиться для выстрела shoot, # затем выстрелить go_back, # начать движение назад wait, # ожидание 5 секунд stop, # после этого остановиться ) # пройти через мишень: go_through_target = ( aim_through_target, # прицелиться для прохода go_forward, # начать движение вперёд wait_long, # ожидание 10 секунд stop, # остановить движение stabilize, # стабилизироваться (подождать, пока остановимся) ) # основной алгоритм миссии # для добавления списка действий (подзадач), # используется распаковка значений списка (звёздочка) missions = ( detect_arrow_color, # определяем цвет стрелки stabilize_on_arrow, # стабилизируемся над стрелкой *shoot_target, # выстрелить в первую мишень из списка *shoot_target, # выстрел во вторую мишень из списка *go_through_target, # пройти через последнюю мишень stabilize_over_cyan_line, # стабилизироваться над голубой полоской go_forward, # движение вперед stabilize_over_cyan_circle,# стабилизироваться над голубым кругом stabilize, # окончательно стабилизируемся surface, # всплытие ) # задаем список действий миссий context.push_mission_list(missions) print("start") # в цикле проходим каждое действие для выполнения миссии,

# а также выводим в консоль отладочную информацию while (True): mission = context.pop_mission() print('starting', mission.__name__, '\t\ttime:', context.time) while not mission(): context.process() context.time += 1 if context.get_missions_length() == 0: break print("done!") context.set_speed(0) context.set_depth(2.5) time.sleep(3)

Задача 7 (тип 2)

1.1 Задача выполняется в симуляторе и среде программирования MUR IDE. Сцены

называются: NTI-Task-2_1, NTI-Task-2_2 и NTI-Task-2_3. И доступны по ссылке.

1.2 Необходимо запрограммировать подводного робота, который должен в симуляторе в

автономном режиме выполнить под водой ряд задач и всплыть в заданной области.

Время на выполнение задачи — 5 минут.

1.3 Как только робот всплыл или закончилось время, задача считается законченной, фиксируется

количество заработанных баллов.

1.4 Задание:

● Робот должен определить форму навигационной метки (розовый объекта на старте) (треугольник,

квадрат или круг). ● Затем нужно пройти по направлению одного из трёх указателей в зависимости от

формы розового объекта

(треугольник — зеленый указатель, квадрат — оранжевый указатель, круг — голубой

указатель). ● Каждый указатель показывает направление к платформе с кубом. Данный куб нужно подобрать и

положить в синюю корзину, путь к которой указывает полоска. ● Далее необходимо пройти к платформе по направлению одного из

двух указателей, цвет которого совпадает с полоской. ● Над данной платформой располагается обруч, в пределах которого нужно всплыть.

1.5 Описание макетов:

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

полоска, корзина, обруч.

● навигационная метка — располагается на стартовой позиции, и может быть одной из трёх форм:

треугольник, квадрат и круг. В зависимости от формы, необходимо выбрать один из трёх

указателей (треугольник — зеленый указатель, квадрат — оранжевый указатель, круг — голубой

указатель).

● Указатель — может быть различных цветов. Первые три указателя на стартовой позиции

показывают направления к платформам с кубами. Цвет нужного указателя соответствует форме розового объекта. Также имеются два указателя после синей корзины, и они показывают

направления к платформам, над одной из которых находится обруч. Необходимо пройти по

направлению того указателя, цвет которого совпадает с полоской.

● Платформа — всегда оранжевого цвета. Первая встречающаяся платформа имеет куб, который

необходимо подобрать.

● Полоска — указывает направление к синей корзине. В зависимости от цвета полоски необходимо

будет выбрать указатель, по которому необходимо следовать. Может быть розового, голубого или

красного цвета.

● Корзина — ёмкость, в которой должен оказаться куб. Всегда синего цвета.

● Обруч — расположен на поверхности воды и находится над одной из платформ.

Решение задачи 7 (тип 2)

Решение (NTI-Simulator-Task2.py) доступно по ссылке

https://yadi.sk/d/KrZAbhWM9nDhAw.

Для успешного выполнения задания аппарату в виртуальной среде MUR IDE

необходимо определить форму навигационной метки для определение дальнейшего

маршрута. Затем нужно пройти по направлению одного из трёх указателей к платформе с

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

платформе по направлению указателя, цвет которого совпадает с полоской. Над данной

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

Для начала импортируем библиотеки и зададим некоторые исходные данные из

задания, как цвета объектов, соответствия форм и цветов объектов для определения

маршрута и т.д.

import pymurapi as api import cv2 as cv import time import numpy as np import math mur = api.mur_init() # предопределеные диапазоны цветов (HSV) colors = { 'green': ((45, 50, 50), (75, 255, 255)), 'blue': ((130, 50, 50), (140, 255, 255)), 'cyan': ((80, 50, 50), (100, 255, 255)), 'orange': ((15, 50, 50), (30, 255, 255)), 'red': ((0, 50, 50), (15, 255, 255)), 'magenta': ((140, 50, 50), (160, 255, 255)), } # соответствие формы объекта к цвету (согласно заданию) tag_shape_to_color = { 'triangle': 'green', 'square': 'orange', 'circle': 'cyan', } # возможные варианты цветов полоски line_colors = ['magenta', 'cyan', 'red']

Аналогично предыдущему заданию напишем несколько функций для расчётов, PD-

регулятор, а также функции для задания курса и глубины погружения робота.

# функция для ограничения значения диапазоном def clamp(value, min_value, max_value): if value < min_value: return min_value if value > max_value: return max_value return value # функция для расчёта угла между точками def angle_between(p1, p2): xDiff = p2[0] - p1[0] yDiff = p2[1] - p1[1] return math.degrees(math.atan2(yDiff, xDiff) - (np.pi / 2)) # функция для рассчёта расстояния от центра до точки def length_from_center(x, y): return math.sqrt(x ** 2 + y ** 2) # PD-регулятор class PDRegulator(object): _p_gain = 0.0 _d_gain = 0.0

_prev_error = 0.0 _timestamp = 0 def __init__(self): pass def set_p_gain(self, value): self._p_gain = value def set_d_gain(self, value): self._d_gain = value def process(self, error): timestamp = int(round(time.time() * 1000)) if timestamp == self._timestamp: return 0 output = self._p_gain * error + self._d_gain / (timestamp - self._timestamp) * (error - self._prev_error) self._timestamp = timestamp self._prev_error = error return output # функция для установки курса робота def keep_yaw(yaw_to_set, speed): def clamp_angle(angle): if angle > 180.0: return angle - 360.0 if angle < -180.0: return angle + 360 return angle try: error = mur.get_yaw() - yaw_to_set error = clamp_angle(error) output = keep_yaw.yaw_regulator.process(error) mur.set_motor_power(0, clamp(-output + speed, -100, 100)) mur.set_motor_power(1, clamp(output + speed, -100, 100)) except AttributeError: keep_yaw.yaw_regulator = PDRegulator() keep_yaw.yaw_regulator.set_p_gain(0.8) keep_yaw.yaw_regulator.set_d_gain(0.6) # функция для установки глубины погружения def keep_depth(depth_to_set): try: error = mur.get_depth() - depth_to_set output = keep_depth.depth_regulator.process(error) output = clamp(output, -100, 100) mur.set_motor_power(2, output) mur.set_motor_power(3, output) except AttributeError: keep_depth.depth_regulator = PDRegulator() keep_depth.depth_regulator.set_p_gain(45) keep_depth.depth_regulator.set_d_gain(5)

Также как и в предыдущем задании, здесь будет использоваться класс для хранения

состояния робота и хода выполнения миссии.

# класс для хранения текущего состояния class AUVContext(object): _yaw = 0.0 _depth = 0.0 _speed = 0.0 _side_speed = 0.0 _timestamp = 0 _missions = [] _min_area = math.inf _min_yaw = 0.0 _stabilization_counter = 0 time = 0 def __init__(self): pass def set_min_circle(self, yaw, area): if area < self._min_area: self._min_area = area self._min_yaw = yaw

def get_min_circle_yaw(self): return self._min_yaw def get_yaw(self): return self._yaw def get_depth(self): return self._depth def get_speed(self): return self._speed def get_side_speed(self): return self._side_speed def set_yaw(self, value): self._yaw = value def set_depth(self, value): self._depth = value def set_speed(self, value): self._speed = value def set_side_speed(self, value): self._side_speed = value def get_stabilization_counter(self): return self._stabilization_counter def reset_stabilization_counter(self): self._stabilization_counter = 0 def add_stabilization_counter(self): self._stabilization_counter += 1 def check_stabilization(self, timeout = 3): if self._stabilization_counter > timeout: return True else: self.add_stabilization_counter() return False def push_mission(self, mission): self._missions.append(mission) def push_mission_list(self, missions): for mission in missions: self.push_mission(mission) def pop_mission(self): if len(self._missions) != 0: return self._missions.pop(0) return {} def get_missions_length(self): return len(self._missions) def process(self): timestamp = int(round(time.time() * 1000)) if timestamp - self._timestamp > 16: keep_yaw(self._yaw, self._speed) keep_depth(self._depth) mur.set_motor_power(4, self._side_speed) self._timestamp = timestamp else: time.sleep(0.05) context = AUVContext()

Также напишем функции для выполнения таких действий, как развороты, выстрел,

движения и т.д.

# разворот на 90 градусов def translate_to_90(): yaw = mur.get_yaw() + 90 if yaw < -180: yaw += 360 if yaw > 180: yaw -= 360

context.set_yaw(yaw) return True # разворот на 180 градусов def translate_to_180(): yaw = mur.get_yaw() + 180 if yaw < -180: yaw += 360 if yaw > 180: yaw -= 360 context.set_yaw(yaw) return True # произвести выстрел def shoot(): if (context.get_speed() != 0): context.set_speed(0) return False else: mur.shoot() time.sleep(0.5) return True # движение вперёд def go_forward(): if (context.get_speed() != 15): context.set_speed(15) return False else: return True # движение назад def go_back(): if (context.get_speed() != -2.5): context.set_speed(-2.5) return False else: return True # ожидание 5 секунд def wait(): time.sleep(5) return True # ожидание 3 секунды def wait_short(): time.sleep(3) return True # ожидание 12 секунд def wait_long(): time.sleep(12) return True # прекратить движение def stop(): if (context.get_speed() != 0): context.set_speed(0) return False else: return True # вспылтие на поверхность def surface(): mur.set_motor_power(2, 50) mur.set_motor_power(3, 50) time.sleep(5) return True # стабилизировать курс и глубину def stabilize(): yaw = mur.get_yaw() depth = mur.get_depth() if abs(yaw - context.get_yaw()) < 1 and abs(depth - context.get_depth()) < 0.3: if context.check_stabilization(timeout=5): return True else: context.reset_stabilization_counter() return False

Для выполнения этого задания также пригодится функция для определения контуров по

цвету.

# поиск контура по цвету def find_contours(image, color, approx = cv.CHAIN_APPROX_SIMPLE): hsv_image = cv.cvtColor(image, cv.COLOR_BGR2HSV) mask = cv.inRange(hsv_image, color[0], color[1]) contours, _ = cv.findContours(mask, cv.RETR_CCOMP, approx) return contours

Далее идут функции, активно использующие машинное зрение. Например, это

определение цветов обхектов, их углов, позиционирование и стабилизация над объектами

и т.д.

# расчёт угла прямоугольника # для определение отклонения от полоски, # чтобы затем скорректировать курс def find_rectangle_contour_angle(contour): rectangle = cv.minAreaRect(contour) box = cv.boxPoints(rectangle) box = np.int0(box) edge_first = np.int0((box[1][0] - box[0][0], box[1][1] - box[0][1])) edge_second = np.int0((box[2][0] - box[1][0], box[2][1] - box[1][1])) edge = edge_first if cv.norm(edge_second) > cv.norm(edge_first): edge = edge_second angle = -((180.0 / math.pi * math.acos(edge[0] / (cv.norm((1, 0)) * cv.norm(edge)))) - 90) return angle # определение цвета из списка возможных. # рассчитывается площадь контура для каждого из цветов, # а затем выбирается цвет по наибольшему контуру def detect_color(available_colors): image = mur.get_image_bottom() hsv_image = cv.cvtColor(image, cv.COLOR_BGR2HSV) areas = {} for color in available_colors: mask = cv.inRange(hsv_image, colors[color][0], colors[color][1]) contours, _ = cv.findContours(mask, cv.RETR_EXTERNAL, cv.CHAIN_APPROX_NONE) biggest_area = 0 if contours: for contour in contours: area = cv.contourArea(contour) if area > biggest_area: biggest_area = area areas[color] = biggest_area color = sorted(areas, key=areas.get, reverse=True)[0] if (areas[color] > 5): return color else: return False # определение направления стрелки def detect_arrow_angle(image, contour): (arrow_center_x, arrow_center_y), radius = cv.minEnclosingCircle(contour) moments = cv.moments(contour) try: arrow_direction_x = int(moments['m10'] / moments['m00']) arrow_direction_y = int(moments['m01'] / moments['m00']) arrow_angle = (angle_between((arrow_direction_x, arrow_direction_y), (arrow_center_x, arrow_center_y))) context.set_yaw(mur.get_yaw() + arrow_angle) target_x = arrow_center_x - (320 / 2) target_y = arrow_center_y - (240 / 2) length = math.sqrt(target_x ** 2 + target_y ** 2)

return arrow_angle, target_x, target_y, length except: return False, False, False, False # стабилизироваться над стрелкой (с учетом направления стрелки) def stabilize_on_arrow(color): image = mur.get_image_bottom() contours = find_contours(image, color, cv.CHAIN_APPROX_SIMPLE) if contours: for contour in contours: (arrow_angle, target_x, target_y, length) = detect_arrow_angle(image, contour) if arrow_angle != False: try: output_forward = stabilize_on_arrow.forward_regulator.process(target_y) output_side = stabilize_on_arrow.side_regulator.process(target_x) output_forward = clamp(int(output_forward), -50, 50) output_side = clamp(int(output_side), -50, 50) context.set_speed(-output_forward) context.set_side_speed(-output_side) if abs(arrow_angle) < 2 and length < 7: if context.check_stabilization(timeout=2): return True else: context.reset_stabilization_counter() except AttributeError: stabilize_on_arrow.forward_regulator = PDRegulator() stabilize_on_arrow.forward_regulator.set_p_gain(0.5) stabilize_on_arrow.forward_regulator.set_d_gain(0.1) stabilize_on_arrow.side_regulator = PDRegulator() stabilize_on_arrow.side_regulator.set_p_gain(0.5) stabilize_on_arrow.side_regulator.set_d_gain(0.1) return False # стабилизироваться по координатам, а также по углу def stabilize_x_y_angle(x, y, angle): y_center = y - (240 / 2) x_center = x - (320 / 2) try: length = math.sqrt(x_center ** 2 + y_center ** 2) if length < 2.0: if context.check_stabilization(timeout=10): return True else: context.reset_stabilization_counter() output_forward = stabilize_x_y_angle.forward_regulator.process(y_center) output_side = stabilize_x_y_angle.side_regulator.process(x_center) output_forward = clamp(int(output_forward), -10, 10) output_side = clamp(int(output_side), -10, 10) context.set_speed(-output_forward) context.set_side_speed(-output_side) context.set_yaw(mur.get_yaw() + angle) except AttributeError: stabilize_x_y_angle.forward_regulator = PDRegulator() stabilize_x_y_angle.forward_regulator.set_p_gain(0.5) stabilize_x_y_angle.forward_regulator.set_d_gain(0.1) stabilize_x_y_angle.side_regulator = PDRegulator() stabilize_x_y_angle.side_regulator.set_p_gain(0.5) stabilize_x_y_angle.side_regulator.set_d_gain(0.1) return False # обнаружение полоски определенного цвета def find_line(image, color): contours = find_contours(image, color) if contours: for contour in contours: area = cv.contourArea(contour)

if abs(area) < 300: continue ((_, _), (w, h), _) = cv.minAreaRect(contour) aspect_ratio = max(w, h) / min(w, h) moments = cv.moments(contour) try: x = int(moments['m10'] / moments['m00']) y = int(moments['m01'] / moments['m00']) return True, x, y, find_rectangle_contour_angle(contour) except ZeroDivisionError: return False, 0, 0, 0 return False, 0, 0, 0 # обнаружение объекта определенного цвета def find_colored_object(image, color): contours = find_contours(image, color) if contours: for contour in contours: area = cv.contourArea(contour) if abs(area) < 50: continue ((_, _), (w, h), _) = cv.minAreaRect(contour) moments = cv.moments(contour) try: x = int(moments['m10'] / moments['m00']) y = int(moments['m01'] / moments['m00']) return True, x, y, area except ZeroDivisionError: return False, 0, 0, 0 return False, 0, 0, 0 # стабилизироваться над полоской def stabilize_over_line(color): found, x, y, angle = find_line(mur.get_image_bottom(), color) if found: if stabilize_x_y_angle(x, y, angle): return True else: return False # стабилизироваться над кубом def stabilize_over_box(): if (context.get_depth() != 3.1): context.set_depth(3.1) return False found, x, y, area = find_line(mur.get_image_bottom(), colors['green']) if found: if stabilize_x_y_angle(x, y + 7, 0): return True else: return False # обнаружение круга def find_circle(image, color): contours = find_contours(image, color) if contours: for contour in contours: area = cv.contourArea(contour) if abs(area) < 400: continue ((_, _), (w, h), _) = cv.minAreaRect(contour) (_, _), radius = cv.minEnclosingCircle(contour) rectangle_area = w * h circle_area = radius ** 2 * math.pi aspect_ratio = w / h if 0.85 <= aspect_ratio <= 1.15: if rectangle_area > circle_area: moments = cv.moments(contour) try: x = int(moments['m10'] / moments['m00'])

y = int(moments['m01'] / moments['m00']) return True, x, y, area except ZeroDivisionError: return False, 0, 0, 0 return False, 0, 0, 0 # стабилизироваться над кругом def stabilize_over_circle(color): found, x, y, angle = find_circle(mur.get_image_bottom(), color) if found: if stabilize_x_y_angle(x, y, 0): return True else: return False

Для определения формы объекта используется подсчёт площади вписанных фигур,

которые сравниваются с площадью самой фигуры. По наименьшей разнице площадей

можно определить, на какую из геометрических фигур объект наиболее похож.

# определение формы объекта определенного цвета def detect_shape(image, color): contours = find_contours(image, color) if contours: for contour in contours: tag_area = cv.contourArea(contour) if (tag_area < 100): continue # после того, как найден контур подходящего цвета, # нужно подсчитать площади вписанных в него # треугольника, квадрата и круга. # форма объекта определяется по наибольшему # совпадению площади вписанной фигуры. (circle_x, circle_y), circle_radius = cv.minEnclosingCircle(contour) circle_area = circle_radius ** 2 * math.pi rectangle = cv.minAreaRect(contour) box = cv.boxPoints(rectangle) box = np.int0(box) rectangle_area = cv.contourArea(box) triangle = cv.minEnclosingTriangle(contour)[1] triangle = np.int0(triangle) triangle_area = cv.contourArea(triangle) areas = { 'circle': circle_radius ** 2 * math.pi, 'square': cv.contourArea(box), 'triangle': cv.contourArea(triangle), } tag_shapes = list(areas.keys()) shapes_areas = np.array(list(areas.values())) difference = abs(shapes_areas - tag_area) arg = np.argmin(difference) tag_shape = tag_shapes[arg] return tag_shape return False # распознать навигационную метку def detect_tag_shape(): image = mur.get_image_bottom() tag_shape = detect_shape(image, colors['magenta']) if tag_shape != False: context.tag_shape = tag_shape # в соответствии с условиями задания, # определяем цвет стрелки, по которой # нужно следовать context.first_arrow_color = colors[tag_shape_to_color[tag_shape]] print(tag_shape, '- follow', tag_shape_to_color[tag_shape], 'arrow') return True else: return False

# стабилизироваться на первой стрелкой, по которой # нужно следовать (используя ранее определенный цвет) def stabilize_on_first_arrow(): return stabilize_on_arrow(context.first_arrow_color) # обнаружение оранжевого круга def find_orange_circle(): image = mur.get_image_bottom() found, x, y, area = find_circle(image, colors['orange']) if found: return True else: return False # стабилизироваться над оранжевым кругом def stabilize_over_orange_circle(): return stabilize_over_circle(colors['orange']) # установить подходящую глубину # для захвата куба манипулятором def set_grabbing_depth(): mur.open_grabber() if (context.get_depth() != 3.62): context.set_depth(3.62) return False else: return True # схватить куб def grab_box(): mur.close_grabber() return True # отпустить куб def ungrab_box(): mur.open_grabber() return True # определить цвет полоски def detect_line_color(): color = detect_color(line_colors) if color: context.line_color = color return True else: return False # установить обычную глубину (после захвата куба) def set_default_depth(): if (context.get_depth() != 3.0): context.set_depth(3.0) return False else: return True # обнаружение синей корзины (круглой формы) def find_blue_bin(): image = mur.get_image_bottom() found, x, y, area = find_circle(image, colors['blue']) if found: return True else: return False # стабилизироваться над синей корзиной def stabilize_over_blue_bin(): return stabilize_over_circle(colors['blue']) # стабилизироваться над второй полоской (ранее определенный цвет) def stabilize_over_target_line(): context.set_depth(2.5) return stabilize_over_line(colors[context.line_color]) # стабилизироваться над второй стрелкой def stabilize_on_second_arrow(): return stabilize_on_arrow(colors[context.line_color])

Далее идёт код, который выполняется при запуске скрипта. Здесь описан алгоритм

выполнения миссии, которая разбита на подзадачи.

# основной код, выполняемый при запуске скрипта if __name__ == "__main__": context.set_depth(1.8) context.set_yaw(0.0) # определим подзадачи нашей миссии # для того, чтобы добраться до платформы с кубом, нужно: go_to_box_platform = ( detect_tag_shape, # определить маршрут по навигационной метке stabilize_on_first_arrow, # стабилизироваться над первой стрелкой go_forward, # двигаться вперёд ) # поиск и захват куба find_and_grab_box = ( find_orange_circle, # обнаружить оранжевый круг (мы все еще движемся) stabilize_over_orange_circle,# стабилизироваться над этим кругом stabilize_over_box, # найдя круг, можно найти и стабилизироваться над кубом stabilize, # окончательно стабилизируем своё положение перед захватом set_grabbing_depth, # погружаемся ближе к кубу wait_short, # ожидание 3 секунды stabilize, # стабилизируем положение wait_short, # grab_box, # захват куба манипулятором wait_short, # set_default_depth, # принимаем нормальную глубину go_forward, # двигаемся вперед stabilize, # стабилизируем курс и глубину wait_short, # stop, # останавливаем движение после 3 секунд ) # найти корзину и бросить куб find_bin_and_throw_box = ( detect_line_color, # определяем цвет полоски (для определения маршрута) stabilize_over_target_line, # стабилизируемся над нужной полоской (определенного цвета) go_forward, # двигаемся вперёд find_blue_bin, # находим синуюю корзину stabilize_over_blue_bin, # стабилизируемся над корзиной ungrab_box, # отпускаем куб, чтобы он упал в корзину ) # добраться до последней платформы (над которой обруч) go_to_final_platform = ( go_forward, # двигаемся вперёд wait_short, # ожидание 3 секунды stop, # остановка движения stabilize, # стабилизируем положение stabilize_on_second_arrow, # стабилизируемся над второй стрелкой (цвет был ранее определен) go_forward, # двигаемся вперед find_orange_circle, # находим оранжевый круг stabilize_over_orange_circle,# стабилизируемся над этим кругом stabilize, # окончательно стабилизируем курс ) missions = ( *go_to_box_platform, # сначала нужно добраться до платформы с кубом *find_and_grab_box, # затем найти и схватить куб *find_bin_and_throw_box, # найти корзину и отпустить куб *go_to_final_platform, # добраться до последнй платформы surface, # и в конце всплыть ) # задаем список действий миссий context.push_mission_list(missions) print("start") # в цикле проходим каждое действие для выполнения миссии, # а также выводим в консоль отладочную информацию while (True): mission = context.pop_mission()

print('starting', mission.__name__, '\ttime:', context.time) while not mission(): context.process() context.time += 1 if context.get_missions_length() == 0: break print("done!") context.set_speed(0) context.set_depth(2.5)

time.sleep(3)

Конструирование

Задача 8 (тип 1 или тип 2)

Дано:

● Алюминиевый пруток длиной 200 мм, диаметром 100 мм.

● Алюминиевый пруток длиной 40 мм, диаметром 100 мм

● Резиновое уплотнительное кольцо сечением 2,5 мм и произвольного диаметра (вам

необходимо самостоятельно подобрать)

Необходимо спроектировать герметичный корпус, который состоит из колбы с

глухим дном и крышки. Пример приведен на картинке ниже. Для герметизации

необходимо использовать уплотнительное кольцо сечением 2,5 мм. Толщина стенок и дна

колбы должна быть от 3 до 5 мм.

Участникам необходимо правильно рассчитать:

● Диаметр уплотнительного кольца - 10 баллов.

● Ширину канавки в крышке - 10 баллов.

● Глубину канавки в крышке - 10 баллов.

● Внутренний диаметр колбы в месте герметизации - 10 баллов.

Для расчетов необходимо воспользоваться ГОСТ 9833-

73 "Кольца резиновые уплотнительные круглого сечения для гидравлических и

пневматических устройств". Особое внимание при изучении ГОСТа уделите

приложению.

Сделайте чертеж колбы - от 0 до 15 баллов

● Должен содержать разрез детали.

● Должен быть сохранен в формате pdf.

● Может быть выполнен в любой программе.

● Должны быть проставлены все размеры, необходимые для изготовления детали.

Сделайте чертеж крышки - от 0 до 15 баллов

● Должен содержать разрез детали.

● Должен быть сохранен в формате pdf.

● Может быть выполнен в любой программе.

● Должны быть проставлены все размеры, необходимые для изготовления детали.

Сделайте 3Д-модель крышки и колбы - от 0 до 30 баллов

● Должна быть выполнена в любой программе. Рекомендуем использовать Autodesk

Inventor.

● Должна быть сохранена в формате step.

Решением данной задачи будет являться 3 файла:

● pdf-файл с чертежом колбы;

● pdf-файл с чертежом крышки;

● step-файл с моделью колбы и крышки.

В ответе необходимо указать результаты расчетов из пункта 1.3 Пример:

Диаметр уплотнительного кольца = 1

Ширина канавки в крышке = 2

Глубина канавки в крышке = 3

Внутренний диаметр колбы в месте герметизации = 4

Решение задачи 8 (тип 1 или тип 2)

1. Подбираем необходимый диаметр уплотнительного кольца:

● Исходя из ограничений по толщине стенки и размеров заготовок из

дано: 100 – 3*2 = 94мм – максимальный внутренний диаметр колбы

(вторая цифра в типоразмере кольца, далее 𝐷, должна быть ≤ 94), он

же является внутренним диаметром колбы в месте герметизации.

● Открываем ГОСТ 9833-73 "Кольца резиновые уплотнительные

круглого сечения для гидравлических и пневматических устройств"

листаю до «Кольца уплотнительные сечением 2,5»

● На стр. 7(6) определяю, что любой типоразмер кольца, меньший 090-

95-25* подходит для проектирования корпуса, но исходя из логики

«чем больше корпус, тем больше в него можно положить чего-либо

для защиты этого чего-то от контакта с водой», выбираю для

дальнейшего проектирования кольцо 088-092-25 с диаметром 86,5

мм. Диаметр уплотнительного кольца = 86,5 мм + 10 баллов.

*Это кольцо тоже можно использовать, т.к. по ГОСТу толщина стенки в месте

посадки крышки может быть меньше 3 мм, но не меньше 1,5мм.

2. На стр. 29 (28) ГОСТ 9833-73 "Кольца резиновые уплотнительные круглого

сечения для гидравлических и пневматических устройств" нахожу таблицу с

расчётами для кольца сечением 2,5 мм и вижу 2 чертежа:

Смотрим на рендеры (картинки) с образцом корпуса на странице

индивидуального задания для конструкторов на Stepik’е и понимаем, что

нас интересует только левая картинка, т.к. установка кольца происходит в

крышке (чертёж слева), а не на распор в корпусе (чертёж справа).

3. По таблице ниже находим 𝐷, 𝑑3, 𝑏 напротив 088-092-25 в столбце

«Неподвижное соединение»:

𝐷 = 92 мм, 𝑑3 = 88,3 мм, 𝑏 = 3,6 мм. + 20 баллов.

𝐷 − диаметр колбы в месте герметизации;

𝑏 − ширина канавки в крышке;

𝐷−𝑑3

2= 1,85 мм − глубина канавки в крышке.

Расчёт окончен:

Диаметр уплотнительного кольца 88,5 мм– 10 баллов;

Ширину канавки в крышке 3,6 мм - 10 баллов;

Глубину канавки в крышке 1,85 мм - 10 баллов;

Внутренний диаметр колбы в месте герметизации 92 мм - 10 баллов.

Чертёж.

Рассчитанные по ГОСТу величины являются гарантом герметичности корпуса, при

построении чертежей эти размеры нужно обязательно использовать.

Построение и оформление чертежа выполняется по ГОСТ 2.304-68

Пример:

3д модель.

3д модели частей герметичного корпуса строятся отдельно в любой CAD-

программе, согласно чертежам, а затем объединяются в сборку.

Задача 9 (тип 1 или тип 2)

1.1. Дано:

● Алюминиевый пруток длиной 60 мм, диаметром 60 мм.

● Алюминиевый пруток длиной 40 мм, диаметром 60 мм

● Резиновое уплотнительное кольцо сечением 2,5 мм и произвольного диаметра (вам

необходимо самостоятельно подобрать)

Прутки считать проточенными и подогнанными в размер.

1.2. Необходимо спроектировать герметичный корпус, который состоит из колбы с глухим

дном и крышки. Пример приведен на картинке ниже (модель корпуса без резьбового

соединения с канавкой под радиальное уплотнение). При этом крышка и колба должны

соединяться с применением резьбового соединения. При проектировании предусмотрите

возможность разбора корпуса (выкручивания крышки) без применения инструмента

(руками).

Для герметизации необходимо использовать уплотнительное кольцо сечением 2,5 мм.

Толщина стенок и дна колбы должна быть минимум 2 мм.

В корпус должен помещаться и извлекаться куб со стороной 33 мм, обязательно оставьте

зазор до внутренних стенок колбы.

1.3. Участникам необходимо правильно рассчитать:

● Диаметр уплотнительного кольца

● Ширину канавки в крышке

● Диаметр для посадки кольца в крышке

● Внутренний диаметр колбы в месте герметизации

Для расчетов необходимо воспользоваться ГОСТ 9833-

73 "Кольца резиновые уплотнительные круглого сечения для гидравлических и

пневматических устройств". Особое внимание при изучении ГОСТа уделите приложению,

а также (с.55).

1.4. Сделайте чертеж колбы

● Должен содержать разрез детали.

● Должен быть сохранен в формате .pdf.

● Может быть выполнен в любой программе.

● Должны быть проставлены все размеры, необходимые для изготовления детали, а также

шероховатости поверхности и допуски.

1.5. Сделайте чертеж крышки

● Должен содержать разрез детали.

● Должен быть сохранен в формате .pdf.

● Может быть выполнен в любой программе.

● Должны быть проставлены все размеры, необходимые для изготовления детали, а также

шероховатости поверхности и допуски.

Исчерпывающие требования к чертежам указаны в ГОСТ 2.052-2006 Тщательно изучите

пункт «Нормативные ссылки», при переходе по гиперссылкам вы найдёте ответы на все

вопросы по оформлению чертежей.

ГОСТ 2.311-68 «ИЗОБРАЖЕНИЕ РЕЗЬБЫ»

Для основной надписи используйте форму 2а, её нужно также заполнить в соответствии с

ГОСТами.

Предельные отклонения и допуски указывайте только там, где это необходимо.

Строгое соответствие всем пунктам ГОСТа 2.052-2006 и ГОСТам, на которые он

ссылается, не нужно, достаточно соблюдение тех, которые от вас требуются (Должны

быть проставлены все размеры, необходимые для изготовления детали, а также

шероховатости поверхности и допуски.)

ГОСТ 24705-2004 «Основные нормы взаимозаменяемости РЕЗЬБА

МЕТРИЧЕСКАЯ Основные размеры»

ГОСТ 11708-82 «РЕЗЬБА Термины и определения»

ГОСТ 10549-80 «ВЫХОД РЕЗЬБЫ Сбеги, недорезы, проточки и фаски»

1.6 Сделайте 3Д-модель сборки крышки и колбы

● Должна быть выполнена в любой программе. Рекомендуем использовать Autodesk

Inventor.

● Должна быть сохранена в формате .step.

● Должна быть выполнена проточка в колбе для внутренней резьбы.

● В деталях должны быть предусмотрены все необходимые фаски и скругления острых

граней для безопасного использования.

1.7. Решением данной задачи будет являться 3 файла:

● pdf-файл с чертежом колбы;

● pdf-файл с чертежом крышки;

● step-файл с моделью сборки колба + крышка.

В ответе необходимо указать результаты расчетов из пункта 1.3 в мм. Пример:

Диаметр уплотнительного кольца = 1.

Ширину канавки в крышке = 2.

Диаметр для посадки кольца в крышке = 3.

Внутренний диаметр колбы в месте герметизации = 4.

Решение задачи 9 (тип 1 или тип 2)

1. Подбираем необходимый диаметр уплотнительного кольца:

● Исходя из ограничений по толщине стенки, размеров заготовок и в корпус

должен помещаться и извлекаться куб со стороной 33 мм из дано: 60 – 2*2 =

56 мм – максимальный внутренний диаметр колбы, 𝑑 = 𝑎√2 =33* 1,4 = 46,2

мм – минимальный внутренний диаметр колбы (формула описанной

окружности около квадрата), вторая цифра в типоразмере кольца, далее 𝐷,

должна быть 47 – 56 мм.

● Открываем ГОСТ 9833-73 "Кольца резиновые уплотнительные круглого

сечения для гидравлических и пневматических устройств" листаю до

«Кольца уплотнительные сечением 2,5»

● На стр. 6 определяю, что любой типоразмер кольца, от 043-047-25 до 052-

056-25 подходит для проектирования корпуса, но исходя из логики «чем

больше корпус, тем больше в него можно положить чего-либо для защиты

этого чего-то от контакта с водой», выбираю для дальнейшего

проектирования кольцо 052-056-25 с диаметром 51 мм. Диаметр

уплотнительного кольца = 51 мм + 10 баллов.

2. На стр. 29 (28) ГОСТ 9833-73 "Кольца резиновые уплотнительные круглого

сечения для гидравлических и пневматических устройств" нахожу таблицу с

расчётами для кольца сечением 2,5 мм и вижу 2 чертежа:

Смотрим на изображение с образцом корпуса на странице индивидуального

задания для конструкторов на Stepik’е и понимаем, что нас интересует только левая

картинка, т.к. установка кольца происходит в крышке (чертёж слева), а не на

распор в корпусе (чертёж справа).

3. По таблице ниже находим 𝐷, 𝑑3, 𝑏 напротив 052-056-25 в столбце «Неподвижное

соединение»:

𝐷 = 56 мм, 𝑑3 = 52,3 мм, 𝑏 = 3,6 мм. + 30 баллов.

𝐷 − внутренний диаметр колбы в месте герметизации;

𝑏 − ширина канавки в крышке;

𝑑3 −диаметр для посадки кольца в крышке

Расчёт окончен:

Диаметр уплотнительного кольца 51 мм - 10 баллов;

Ширину канавки в крышке 3,6 мм - 10 баллов;

Диаметр для посадки кольца в крышке 52.3 мм - 10 баллов;

Внутренний диаметр колбы в месте герметизации 56 мм - 10 баллов.

Чертёж.

Рассчитанные по ГОСТу величины являются гарантом герметичности корпуса, при

построении чертежей эти размеры нужно обязательно использовать.

Построение и оформление чертежа выполняется по ГОСТ 2.052-2006

Пример:

3Д-модель сборки крышки и колбы

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

согласно чертежам, а затем объединяются в сборку.

Задача 10 (тип 1 или тип 2)

1.1. Дано:

● Алюминиевый пруток длиной 180 мм, диаметром 100 мм.

● Алюминиевый пруток длиной 50 мм, диаметром 180 мм.

● Резиновое уплотнительное кольцо сечением 2,5 мм произвольного диаметра (вам

необходимо самостоятельно подобрать)

Прутки считать проточенными и подогнанными в размер.

1.2. Вам предстоит спроектировать герметичный корпус, который состоит из колбы с

глухим дном и крышки. Он будет использоваться под водой. Дополнительные баллы

можно получить за спроектированную систему крепления крышки к корпусу (система

крепления: отверстия, крепёжные элементы, дополнительные детали. Что-то может быть

частью колбы или крышки (детали - не идеальные тела вращения, допускаются вырезы,

пазы, ушки и т.д. Главное - не нарушить герметичность.), это необходимо для фиксации

герметизации, чтобы при ситуации, когда давление внутри корпуса больше давления

окружающей среды, крышку не выдавило и не нарушилась герметизация. Несмотря на то,

что система крепления не ограничена в использовании материалов (прутки только для

колбы и крышки) и технологий изготовления (не задумывайтесь над тем, как это

изготовить), не стоит делать её громоздкой. Также при проектировании система должна

считаться с законами физики и механики, не запрещается перенимать принципы работы

готовых решений.

Пример герметичного корпуса с системой крепления приведен на картинке ниже, однако

такая система крепления (стягивающий хомут) будет оцениваться в 0 баллов.

Для герметизации необходимо использовать уплотнительное кольцо сечением 2,5 мм.

Минимально допустимая толщина стенок и дна колбы — 3 мм. Минимальное расстояние

между двумя параллельными поверхностями, которые испытывают нагрузки, 1,5 мм.

В корпус должен помещаться и извлекаться один из кубов: куб со стороной 45 мм или 63

мм, минимальный зазор между кубом и стенками составляет 1 ± 0,2 мм.

1.3. Участникам необходимо правильно рассчитать в мм:

● Диаметр уплотнительного кольца

● Ширину канавки под кольцо

● Глубину канавки под кольцо

Для расчетов необходимо воспользоваться ГОСТ 9833-73 "Кольца

резиновые уплотнительные круглого сечения для гидравлических и пневматических

устройств". Особое внимание при изучении ГОСТа уделите приложению.

1.4. Сделайте чертеж колбы

● Должен содержать разрез детали;

● Должен быть сохранен в формате .pdf;

● Может быть выполнен в любой программе;

● Должны быть проставлены все размеры, необходимые для изготовления детали, а также

шероховатости поверхности и допуски.

1.5. Сделайте чертеж крышки

● Должен содержать разрез детали;

● Должен быть сохранен в формате .pdf;

● Может быть выполнен в любой программе;

● Должны быть проставлены все размеры, необходимые для изготовления детали, а также

шероховатости поверхности и допуски.

Исчерпывающие требования к чертежам указаны в ГОСТ 2.052-2006 Тщательно изучите

пункт «Нормативные ссылки», при переходе по гиперссылкам вы найдёте ответы на все

вопросы по оформлению чертежей.

ГОСТ 2.311-68 «ИЗОБРАЖЕНИЕ РЕЗЬБЫ»

Для основной надписи используйте форму 2а, её нужно также заполнить в соответствии с

ГОСТами.

Предельные отклонения и допуски указывайте только там, где это необходимо.

Строгое соответствие всем пунктам ГОСТа 2.052-2006 и ГОСТам, на которые он

ссылается, не нужно, достаточно соблюдение тех, которые от вас требуются (Должны

быть проставлены все размеры, необходимые для изготовления детали, а также

шероховатости поверхности и допуски.)

1.6 Сделайте 3Д-модель сборки корпуса: колба, крышка, крепление крышки к корпусу,

крепёж (винты, гайки) и пр.

● Сборка должна быть выполнена в любой CAD программе. Рекомендуем

использовать AutodeskInventor;

● Сборка должна быть сохранена в формате .step;

● Сборка должна содержать все элементы корпуса и системы крепления (винты гайки,

шпильки обязательны, если они предусмотрены в системе);

● указана резьба, где это необходимо;

● Все детали должны быть сопряжены, а система крепления должна выполнять свои

функции (не нужно разносить компоненты, для наглядности;

● В деталях должны быть предусмотрены все необходимые фаски и скругления острых

граней для безопасного использования.

Пример сборки корпуса с радиальным уплотнением без системы крепления, разрез.

1.7. Решением данной задачи будет являться 3 файла:

● pdf-файл с чертежом колбы;

● pdf-файл с чертежом крышки;

● .step файл (один файл) с моделью сборки корпуса: колба, крышка, крепление крышки к

корпусу, крепёж (винты, гайки) и т.д.

В ответе необходимо указать обозначение типоразмера кольца, размер куба и результаты

расчетов из пункта 1.3 в мм.

Пример:

Кольцо ***-***-25, куб 63мм

Диаметр уплотнительного кольца = 1

Ширина канавки под кольцо = 2

Глубина канавки под кольцо = 3

Решение задачи 10 (тип 1 или тип 2)

1.Подбираем необходимый диаметр уплотнительного кольца:

● Исходя из ограничений по толщине стенки, размеров заготовок и в корпус

должен помещаться и извлекаться куб со стороной 45 мм или 63 мм из дано:

100 мм – максимальный внешний диаметр колбы, 𝑑 = 𝑎√2 =45* 1,4 = 63

мм – минимальный внутренний диаметр колбы (формула описанной

окружности около квадрата), вторая цифра в типоразмере кольца, далее 𝐷,

должна быть 64 – 108 мм .

● Открываем ГОСТ 9833-73 "Кольца резиновые уплотнительные круглого

сечения для гидравлических и пневматических устройств" листаю до

«Кольца уплотнительные сечением 2,5»

● На стр. 6 определяю, что любой типоразмер кольца, от 060-064-25 до 102-

108-25 подходит для проектирования корпуса, но исходя из логики «чем

больше корпус, тем больше в него можно положить чего-либо для защиты

этого чего-то от контакта с водой», выбираю для дальнейшего

проектирования кольцо 098-102-25 с диаметром 96 мм. Диаметр

уплотнительного кольца = 96 мм + 5 баллов.

2. На стр. 29 (28) ГОСТ 9833-73 "Кольца резиновые уплотнительные круглого

сечения для гидравлических и пневматических устройств" нахожу таблицу с

расчётами для кольца сечением 2,5 мм и вижу 2 чертежа:

Смотрим на изображение с образцом корпуса на странице индивидуального

задания для конструкторов на Stepik’е и понимаем, что нас интересует только левая

картинка, т.к. установка кольца происходит в крышке (чертёж слева), а не на

распор в корпусе (чертёж справа).

3. По таблице ниже находим 𝐷, 𝑑3, 𝑏 напротив 098-102-25 в столбце «Неподвижное

соединение»:

𝑏 = 3,6 мм + 5 баллов;

𝑏 − ширина канавки в крышке;

𝐷−𝑑3

2= 1,85 мм − глубина канавки в крышке + 5 баллов.

Расчёт окончен:

Диаметр уплотнительного кольца 96 мм– 5 баллов;

Ширину канавки в крышке 3,6 мм - 5 баллов;

Глубина канавки в крышке 1,85 мм - 5 баллов.

Чертёж.

Рассчитанные по ГОСТу величины являются гарантом герметичности корпуса, при

построении чертежей эти размеры нужно обязательно использовать.

Построение и оформление чертежа выполняется по ГОСТ 2.052-2006

Пример:

3Д-модель сборки крышки и колбы

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

согласно чертежам, а затем объединяются в сборку.

Электроника

Задача 11 (тип 2)

Дано (элементы в Thinkercad)

● Двигатель постоянного тока

● Потенциометр

● Ползунковый переключатель

● Аналоговые компоненты: резисторы, конденсаторы, индуктивности, диоды,

транзисторы

● Элементы питания

● Логические микросхемы находящиеся в разделе "Логика"

● Макетные платы

● Таймер

Необходимо, используя online-сервис Tinkercad (во избежание проблем с

моделированием, рекомендуем пользоваться Google Chrome) создать проект

электрической схемы управления коллекторным мотором. Основные требования:

● Можно использовать только те компоненты, которые приведены в пункте 1.1.

● Управление скоростью вращения мотора должно осуществляться при помощи

потенциометра, а изменение направления вращения - ползунковым переключателем.

● Диапазон скорости мотора должен выходить за пределы (-10000; 10000).

● Скорость вращения должна меняться с помощью широтно-импульсной модуляции.

● Изменение направления вращения должно осуществляться при помощи H-моста,

собранного на транзисторах.

● Не разрешается использование микроконтроллеров, датчиков, контроллеров

управления моторами, электрических приводов с Н-мостами, а также генераторов

сигналов и регулируемых источников питания.

● Изменение скорости вращения должно происходить плавно.

Схемы, в которых будут использоваться неразрешенные компоненты, проверяться

не будут. Участник получает за него 0 баллов.

Баллы за задачу начисляются следующим образом.

● 100 баллов - схема работает правильно в соответствие с требованиями. Не

используются избыточные компоненты.

● 90 баллов - схема работает правильно в соответствие с требованиями.

Используются избыточные компоненты.

● 80 баллов - схема работает правильно в соответствие с требованиями. Не

используются избыточные компоненты. Но скорость меняется только в пределах (-10000;

10000).

● 50 баллов - схема работает частично. Либо только меняется направление вращения,

либо - скорость.

● 30 баллов - схема работает частично. Скорость меняется в пределах (-10000;

10000). Направление вращения не меняется.

● 0 баллов - схема не работает даже частично.

Решение задачи 11 (тип 2)

Данная схема является примером выполнения задачи на 100 баллов. Здесь

представлены все элементы, которые можно использовать, без снижения баллов за их

избыточное количество. Схема условно поделена на две части. H-мост на полевых

транзисторах, а также генератор ШИМ с логическим управлением направления вращения

мотора.

Задание можно выполнить на максимальное количество баллов используя меньшее

количество элементов. В частности, микросхему 74hc00 использовать не обязательно, так

как задачу можно выполнить и без нее. Представленные номиналы обвязки микросхемы

NE555 так же не являются эталонными и могут отличаться, главное удовлетворять

диапазону значений, указанному в задании.

Элемент питания 3В добавлен схему для работы микросхемы 74hc00 и не является

обязательным.

Задача 12 (тип 2)

1.1. Дано (элементы в Thinkercad)

● Двигатель постоянного тока

● Потенциометр

● Аналоговые компоненты: резисторы, конденсаторы, индуктивности, диоды, транзисторы

● Элементы питания

● Логические микросхемы находящиеся в разделе "Логика"

● Макетные платы

● Таймер

1.2. Необходимо, используя online-сервис Tinkercad (во избежание проблем с

моделированием, рекомендуем пользоваться Google Chrome) создать проект

электрической схемы управления коллекторным мотором. Основные требования:

● Можно использовать только те компоненты, которые приведены в пункте 1.1.

● Необходимо реализовать управление скоростью вращения мотора при помощи

потенциометра без изменения направления вращения мотора.

● Диапазон скорости мотора не должен выходить за пределы (0; 10000).

● Скорость вращения должна меняться с помощью широтно-импульсной модуляции.

● Управление вращением должно осуществляться при помощи транзистора.

● Не разрешается использование микроконтроллеров, датчиков, контроллеров управления

моторами, электрических приводов с Н-мостами, а также генераторов сигналов и

регулируемых источников питания.

● Изменение скорости вращения должно происходить плавно.

1.3. Схемы, в которых будут использоваться неразрешенные компоненты, проверяться не

будут.

Решение задачи 12 (тип 2)

Данная схема является примером выполнения задачи. Здесь представлены все элементы,

которые можно использовать, без снижения баллов за их избыточное количество. Схема

состоит из таймера (микросхема таймера NE555), а также полевого транзистора для

управления нагрузкой (мотором). Для изменения скорости вращения мотора мы

используем потенциометр и тем самым изменяем скважность сигнала, подаваемую на

затвор полевого транзистора.

Ссылка на пример решенного задания: https://www.tinkercad.com/things/dK9AIVIrVtk-

copy-of-pwmne555pinosa/editel?sharecode=6m4GdeLgPJ-

ZTXaqcdv9XgtJIUgM0NBQV52OSbTF-GA

Задача 13 (тип 1)

Предлагаем участникам научиться разрабатывать Схему электрическую

структурную. Данная схема разрабатывается в соответствии с ГОСТ 2.702-2011. Однако в

целях обучения мы немного упростили требования к ней. И свели их к следующим

критериям:

Критерии оценки:

− Наличие рамки для заглавного листа в соответствии с ГОСТ 2.104-2006

− Рамка заполнена в соответствии с ГОСТ 2.104-2006

− Схема выполнена в САПР

− Линии связи должны состоять из горизонтальных и вертикальных отрезков и не

имеют изломов и взаимных пересечений

− Все линии имеют подписи и все текстовые данные, относящиеся к линиям,

ориентируют параллельно горизонтальным участкам соответствующих линий

− Все надписи выполнены шрифтом ГОСТ тип Б

− Схема выполнена на одном листе А4

− Схема занимает более 30% площади листа

− Все блоки схемы имеют названия, отражающие функциональное обозначение

компонентов и их количество не избыточно

− Схема не имеет избыточных соединений между блоками

Необходимо разработать Схему электрическую структурную для задачи 12.

Решение задачи 13 (тип 1)

Задача 14 (тип 2)

1.1. Дано (элементы в Thinkercad)

● Динамик или пищалка

● Потенциометр

● Аналоговые компоненты: резисторы, конденсаторы, индуктивности, диоды, транзисторы

● Кнопки

● Элементы питания

● Логические микросхемы находящиеся в разделе "Логика"

● Макетные платы

● Таймер

1.2. Необходимо, используя online-сервис Tinkercad (во избежание проблем с

моделированием, рекомендуем пользоваться Google Chrome) создать проект

электрического пианино. Основные требования:

● Можно использовать только те компоненты, которые приведены в пункте 2.1.

● Необходимо сделать примитивное пианино способное генерировать от 5 до 12 нот,

управляемых тактовыми кнопками

● Частотный диапазон нот должен соответствовать первой октаве фортепиано.

● При нажатии на соответствующей кнопки, как и в нормальном пианино должен

издаваться звук правильной частоты (допускается округление до целых значений Гц).

● Не разрешается использование микроконтроллеров, датчиков, контроллеров управления

моторами, электрических приводов с Н-мостами, а также генераторов сигналов и

регулируемых источников питания.

● Когда кнопки не нажаты посторонних звуков быть не должно.

Решение задачи 14 (тип 2)

Данная схема является примером выполнения задачи. Здесь представлены все

элементы, которые можно использовать, без снижения баллов за их избыточное

количество. Схема состоит из таймера (микросхема таймера NE555), а также набора

сопротивлений с кнопками для генерации определенной частоты.

Ссылка на пример решенного задания: https://www.tinkercad.com/things/4VE9SWioZjZ-

pianino-nti/editel?sharecode=gsfBZBmRAjAWPFqikb3mG7nRFFhLUlCRB-HYOw1CUyI

Задача 15 (тип 1)

Предлагаем участникам научиться разрабатывать Схему электрическую

структурную. Данная схема разрабатывается в соответствии с ГОСТ 2.702-2011. Однако в

целях обучения мы немного упростили требования к ней. И свели их к следующим

критериям:

Критерии оценки:

− Наличие рамки для заглавного листа в соответствии с ГОСТ 2.104-2006

− Рамка заполнена в соответствии с ГОСТ 2.104-2006

− Схема выполнена в САПР

− Линии связи должны состоять из горизонтальных и вертикальных отрезков и не

имеют изломов и взаимных пересечений

− Все линии имеют подписи и все текстовые данные, относящиеся к линиям,

ориентируют параллельно горизонтальным участкам соответствующих линий

− Все надписи выполнены шрифтом ГОСТ тип Б

− Схема выполнена на одном листе А4

− Схема занимает более 30% площади листа

− Все блоки схемы имеют названия, отражающие функциональное обозначение

компонентов и их количество не избыточно

− Схема не имеет избыточных соединений между блоками

Необходимо разработать Схему электрическую структурную для задачи 14.

Решение задачи 15 (тип 1)

Комплексные задачи

Задача 16 (тип 3)

Требования к участникам на входе (участники должны знать, уметь):

Члены команды должны знать и уметь (не обязательно, чтобы каждый знал всё):

- Уметь программировать в Arduino IDE;

- Уметь паять;

- Знать, как работают некоторые электрические компоненты (транзистор, LED-

лента).

Занятие направлено на развитие следующих навыков и знаний у участников:

- Умение программировать в Arduino IDE;

- Умение проектирования электронных устройств;

- Знание и умения по работе с эпоксидной смолой.

Описание задания (Что делают участники)

В рамках хакатона участникам предстоит разработать, управляемый с ПК подводный

LED-светильник.

Готовое устройство должно подключаться к ПК по USB и источнику питания 12V. По

средствам стандартного монитора порта из Arduino IDE на плату передается сообщение

вида: R,G,B,Off,On. Где R, G, B – компоненты цветового пространства RGB

(соответственно) - целые числа в диапазоне от 0 до 255, Off – время в миллисекундах

которое светодиодная лента не горит, On – время в миллисекундах которое светодиодная

лента горит заданным цветом. Лента загорается и тухнет через заданные промежутки

времени.

Пример готового устройства – управляемый с ПК подводный LED-светильник

Список необходимого оборудования

Для выполнения данного задания каждой команде участников необходимо

предоставить:

- Arduino NANO – 1 шт.;

- LED RGB лента 12В – 1 шт. (3 элемента);

- Полевые транзисторы N-канальные (IRF540N, STP9NK60Z и их аналоги) – 3 шт.;

- Провода (желательно 3-4 цвета) – по 50 см;

- Макетная плата 30х80 мм – 1 шт.;

- USB-miniUSB кабель – 1 шт.;

- Паяльное оборудование, припой, флюс, пинцет – 1 комплект;

- Кусачки, стриппер, ножовка по металлу, напильники, изолента, термоусадочная

трубка – 1 комплект;

- Шприц 50 мл (или другая подходящая емкость для заливки) – 1 шт.;

- Эпоксидная смола – 50 мл.;

- Емкость для смешивания эпоксидной смолы (стаканчик пластиковый) – 1 шт.

- Защитные очки, перчатки, респиратор – 1 комплект;

- Ноутбук с установленным Arduino IDE – 1 шт.;

- Источник питания 9-12В – 1 шт.

Список используемых расходных материалов на 1 команду (3-4 ученика):

- Arduino NANO – 1 шт.;

- LED RGB лента 12В – 1 шт. (3 элемента);

- Полевые транзисторы N-канальные (IRF540N, STP9NK60Z и их аналоги) – 3 шт.;

- Провода (желательно 3-4 цвета) – по 50 см;

- Макетная плата 30х80 мм – 1 шт.;

- USB-miniUSB кабель – 1 шт.;

- Шприц 50 мл (или другая подходящая емкость для заливки) – 1 шт.;

- Эпоксидная смола – 50 мл.;

- Емкость для смешивания эпоксидной смолы (стаканчик пластиковый) – 1 шт.

- Источник питания 9-12В – 1 шт.

Знания, необходимые педагогу для проведения мероприятия:

- Умение программировать в Arduino IDE;

- Умение проектирования электронных устройств;

- Знание и умения по работе с эпоксидной смолой.

Результат оценивается по 3 критериям:

- Качество пайки и изготовления электроники (0, 1 или 2 балла)

- Качество заливки и внешний вид готового устройства (0, 1, или 2 балла)

- Качество написания программного кода. Функционал устройства (0, 1, 2 балла)

Рис.1. Электронные компоненты, необходимые для выполнения задачи.

Рис. 2. Инструменты и средства защиты

Методические материалы к задаче 16

Рис. 3. Электрическая схема подводного LED-светильника

Ход работы

Шаг 1. Подготовка основных электронных компонентов

Шаг 2. Пайка основных элементов на макетную плату (с двух сторон)

Шаг 3. Пайка проводов и LED-ленты

Шаг 4. Подготовка компонентов к заливке эпоксидной смолой

Шаг 5. Заливка элементов эпоксидной смолой

Шаг 6. Извлечение из формы и обработка

Примечание: всю работу необходимо вести, используя средства индивидуальной

защиты (респираторы, защитные очки, перчатки). Пайку, заливку и механическую

обработку заготовки производить строго в хорошо вентилируемом помещении.

Описание конечного результата

Рис. 4. Пример готового устройства – управляемый с ПК подводный LED-светильник.

Готовое устройство должно подключаться к ПК по USB и источнику питания 12V. По

средствам стандартного монитора порта из Arduino IDE на плату передается сообщение

вида: R,G,B,Off,On. Где R, G, B – компоненты цветового пространства RGB

(соответственно) - целые числа в диапазоне от 0 до 255, Off – время в миллисекундах

которое светодиодная лента не горит, On – время в миллисекундах которое светодиодная

лента горит заданным цветом. Лента загорается и тухнет через заданные промежутки

времени.

Рис. 5. Пример команды, передаваемый на Arduino NANO.

Пример решения

В качестве примера программного обеспечения для Arduino NANO может быть

использован следующий код.

constexpr int redPin = 3;

constexpr int greenPin = 5;

constexpr int bluePin = 6;

int red = 0;

int green = 0;

int blue = 255;

int sleepTime = 0;

int lightTime = 0;

void doLED() {

analogWrite(redPin, red);

analogWrite(greenPin, green);

analogWrite(bluePin, blue);

delay(lightTime);

analogWrite(redPin, 0x00);

analogWrite(greenPin, 0x00);

analogWrite(bluePin, 0x00);

delay(sleepTime);

}

void setup() {

pinMode(redPin, OUTPUT);

pinMode(greenPin, OUTPUT);

pinMode(bluePin, OUTPUT);

Serial.begin(9600);

}

void loop() {

while (Serial.available() > 0) {

red = Serial.parseInt();

green = Serial.parseInt();

blue = Serial.parseInt();

sleepTime = Serial.parseInt();

lightTime = Serial.parseInt();

if (Serial.read() == '\n') {

red = constrain(red, 0, 255);

green = constrain(green, 0, 255);

blue = constrain(blue, 0, 255);

}

}

doLED();

}

Какие комплектующие и где их можно купить:

- RGB LED-лента: https://www.chipdip.ru/product0/8600178613

- Транзистор IRF540N: https://www.chipdip.ru/product/irf540n

- Транзистор STP9NK60Z:

https://www.chipdip.ru/product0/8565447021?from=suggest_product

- Макетная плата: https://www.chipdip.ru/product0/8747169030

- Arduino Nano (на базеATmega328) https://www.chipdip.ru/product/arduino-nano

- USB-miniUSB кабель : https://www.chipdip.ru/product/pl1308

Задача 17 (тип 3)

В рамках данной задачи учащимся необходимо собрать из комплектующих движитель

OpenThruster 150. Для сборки движителя потребуются детали и комплектующие,

приведённые ниже.

Для сборки подводного движителя OpenThruster 150 потребуется:

− Мотор (57х27.6 мм, 9800 об/мин, 12В 0.16А);

− воск (7 грамм);

− два провода (AWG 16/18, длина подбирается по необходимости);

− изолента;

− напечатанные детали корпуса: насадка, винт, крышка и корпус (PLA, заполнение

30%). Модели приведены по ссылке ссылка для скачивания. Также понадобятся нож/ножницы, паяльник, припой, цианакрилатный (супер) клей,

наждачная бумага или надфиль.

Комплектующие и материалы для сборки движителя

Методические материалы к задаче 17

Изоляция мотора

Перед началом работы по изоляции, необходимо обезжирить поверхность мотора,

например, спиртом или обезжиривателем.

Маленькими отрезками изоленты нужно закрыть отверстия верхнего торца мотора.

Каждый из отрезков должен полностью (не частично) закрывать одно\два отверстия.

Кусочки следует клеить внахлёст (Шаг 1). Вторым слоем нужно перекрыть стыки изоленты

первого слоя, а также покрыть как можно больше корпуса (Шаг 2).

Шаг 1 Шаг 2

Затем нужно натянуть торчащую изоленту. Делать это нужно аккуратно, чтобы не

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

(Шаг 3). Затем обрезаем лишнее так, как показано в шаге 4.

Шаг 3 Шаг 4

Далее наносим изоленту на боковую поверхность мотора (Шаг 5), после четверти

оборота начинаем натягивать изоленту так, чтобы она покрывала торец мотора. Кусок,

который был не натянут нужно отрезать (Шаг 6). Продолжаем натягивать изоленту ещё 2

оборота (Шаг 7).

Шаг 5 Шаг 6 Шаг 7

Для удобства при оклеивании нижнего торца моторчика контакты мотора можно

отогнуть. Правила такие же, как для верхнего торца, однако в месте контактов изоленту

нужно подрезать (Шаги 8-13).

Шаг 8 Шаг 9 Шаг 10

Шаг 11 Шаг 12 Шаг 13

В завершении нужно подрезать изоленту возле контактов, чтобы она не задиралась, и

приклеить её (Шаг 15). Последними несколькими оборотами изоленты закрепляем

предыдущие намотки, а также не оклеенную боковую поверхность мотора.

Шаг 14 Шаг 15 Шаг 16

Покрытие воском

Разминаем воск (нагреваем его руками), чтобы он стал мягким (Шаг 17). Формируем

толстый «блинчик» и нанизываем его на мотор (Шаг 18). Максимально сильно вдавливаем

его в верхний торец и начинаем растягивать по стенкам моторчика (Шаг 19). Слой должен

быть тонким, но без пробоев (если они, вдруг появятся, тщательно замажьте их кусочком

воска).

Шаг 17 Шаг 18 Шаг 19

Затем припаиваем провода и залепляем воском, предварительно размяв его, нижний

торец мотора (Шаги 20-22).

Шаг 20 Шаг 21 Шаг 22

Вставляем мотор в корпус. Он должен заходить плотно (Шаг 23). Если мотор

застревает, то нужно его вытащить и размять воск в месте, где он мешает входу мотора в

корпус, сделав толщину воска меньше. Оставшееся пространство сверху нужно заполнить

воском (Шаг 24).

Шаг 23 Шаг 24

Сборка движителя

Далее укладываем в канал провода и надеваем крышку (Шаги 25-26). Приклеиваем

винт на цианакрилатный (супер) клей (Шаг 27). Рекомендуем перед приклеиванием

отшлифовать винт наждачной бумагой или надфилем, чтобы лопасти стали гладкими.

Шаг 25 Шаг 26 Шаг 27

Запрессовываем гайки в насадку (Шаги 28-29).

Шаг 28 Шаг 29

Вставляем корпус в насадку до щелчка (Шаг 30). Двигатель готов.

Шаг 30

Задачи со специальным оборудованием

Задача 18 (тип 4)

Для выполнения задачи 18 необходим набор ElementaryROV

https://robocenter.net/goods/kit/elementaryrov/

Ссылка на методические материалы 16 занятий с планами занятий и презентациями.

Задача 19 (тип 4)

Для выполнения задачи 19 необходим набор MiddleROV

https://robocenter.net/goods/kit/middlerov/

Ссылка на методические материалы 16 занятий с планами занятий и презентациями.

Методическое пособие Профиль: «Геномное редактирование»

общая трудоемкость – 186 часов (при наличии специального оборудования) образовательные технологии – предметно-ориентированные

Разработчик программы: Каххарова З.И

ОБЩАЯ ХАРАКТЕРИСТИКА ОБРАЗОВАТЕЛЬНОЙ

ПРОГРАММЫ

На сегодняшний день существенным фактором, препятствующим развитию

инновационных отраслей в области биомедицины, биотехнологии, нанотехнологии

является острый недостаток специалистов, способных квалифицированно подходить к

организации проектной работы в промышленности и научно-исследовательской

деятельности.

Представленный курс предназначен для подготовки школьников, которые смогут

поступать в высшие учебные заведения на специальность «Биология», «Химия»,

«Биотехнология», «Химическая биотехнология» и другие и затем продуктивно работать в

качестве научных сотрудников в научных и диагностических лабораториях, а также

инженеров на биотехнологическом производстве.

Тематика курса позволяет получить теоретические знания, выходящие за рамки

школьной программы, освоить современные методы, получить навык проектной

деятельности, в том числе, работы в команде, и поэтому является чрезвычайно актуальной.

Основной задачей данного курса является формирование у обучающихся

естественно-научного мировоззрения, освоение в теории и на практике актуальных методов

молекулярной биологии, биотехнологии. Это обеспечит потенциал к проектной

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

собственных проектов и стартапов.

Теоретическая и практическая основа курса построена исходя из современных

представлений об организации научных, диагностических и прикладных работ в различных

отраслях, для которых важно сочетание технологичной организации труда, освоения

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

полезен для подготовки школьников к участию в Олимпиаде НТИ по профилю «Геномное

редактирование».

Другой важной задачей курса является формирование у обучающихся

фундаментальных знаний, которые подкрепляются практическими навыками, что

обеспечивает прочное освоение материала. Для этого изложение теоретических основ

опирается на результаты, полученные на практических занятиях. В свою очередь, тематика

практических занятий, основана на теоретическом курсе. Также курс направлен на

формирование навыков проектной деятельности, освоению методик, применяемых в

настоящее время на практике, на развитие способности самостоятельного поиска

информации в научной литературе, работе с базами данных статей и патентов по тематике

курса, основам биоинформатики.

Знания и навыки, полученные при изучении данного курса, помогут учащимся в

дальнейшем обучении в высшей школе или организациях среднего профессионального

образования. Знакомство с современными методами молекулярной биологии,

биотехнологии, биомедицины увеличит мотивацию абитуриентов к поступлению на

соответствующие отделения вузов. Задачи, поставленные в данном курсе, могут быть

успешно решены ввиду оптимальной формы проведения курса, который организован в виде

лекций, практических и самостоятельных занятий.

Цель программы

Создание условий для мотивации, подготовки и профессиональной ориентации

школьников для возможного продолжения учебы в ВУЗах и последующей работы в области

биотехнологии.

Задачи программы Образовательные

- формирование понимания взаимосвязи и взаимозависимости естественных наук;

-формирование понимания влияния естественных наук на окружающую среду,

экономическую, технологическую, социальную и этическую сферы деятельности человека;

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

деятельности;

- формирование навыков безопасной работы во время проектно-исследовательской и

экспериментальной деятельности, при использовании лабораторного оборудования;

- овладение методами самостоятельной постановки биологических экспериментов,

описания, анализа и оценки достоверности полученного результата;

- знание основ методов молекулярной биологии и биохимии;

- подготовка к участию в Олимпиадах НТИ.

Воспитательные

- повышение мотивации учащихся к исследовательской деятельности;

-формирование у учащихся стремления к получению качественного законченного

результата;

-умение работать в команде, распределять обязанности и делегировать задачи.

Развивающие

- формирование умений анализировать, оценивать, проверять на достоверность и обобщать

научную информацию;

- формирование навыков проектного мышления;

- формирование мотивации к саморазвитию.

Категория обучающихся: учащиеся 8–11-х классов, успешно осваивающие школьные курсы биологии и

химии. Программа может быть скорректирована в зависимости от возраста учащихся.

Некоторые темы взаимосвязаны со школьным курсом и могут с одной стороны служить

пропедевтикой, с другой стороны опираться на него.

Сроки реализации программы Программа рассчитана на 1- 2 года обучения, может быть изменена в соответствии

с материально-техническим обеспечением организации (кружка), в котором планируется ее

реализация.

Режим занятий

Занятия проводятся 2 раза в неделю по 2 академических часа (186 часов).

Формы проведения занятий Реализация программы предполагает групповую, подгрупповую, индивидуальную и

самостоятельную работу. МТО смотри в приложении 2.

Планируемые результаты освоения программы Личностные результаты.

Готовность и способность к обучению и познанию, сформированность устойчивых

познавательных интересов.

Сформированность целостного мировоззрения, соответствующего современному

уровню развития науки и общественной практики.

Сформированность ответственного отношения к учению

Метапредметные результаты.

Готовность и способность к усвоению межпредметных понятий «система», «факт»,

«закономерность», «среда», «анализ», «синтез» «функция», «материал», «процесс», и др.

через:

- приобретение навыков работы с информацией – сформированность навыка

систематизировать, сопоставлять, анализировать, обобщать и интерпретировать

информацию, содержащуюся в готовых информационных объектах; выделять главную и

избыточную информацию, выполнять смысловое свертывание выделенных фактов,

мыслей; представлять информацию в виде плана, наглядно символической форме и др.

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

способствующей воспитанию самостоятельности, инициативности, ответственности,

повышению мотивации и эффективности учебной деятельности; умение выбирать

адекватные задаче средства, принимать решения, в том числе в ситуациях

неопределенности; возможность развить способности к разработке нескольких вариантов

решений, к поиску нестандартных решений, анализу результатов поиска и выбору наиболее

приемлемого решения.

Формирование универсальных учебных действий (УУД):

- регулятивные УУД – умение самостоятельно определять цели обучения, ставить и

формулировать новые задачи в учёбе и познавательной деятельности; определять

совместно с педагогом критерии оценки планируемых результатов; выдвигать версии

преодоления препятствий, формулировать гипотезы, прогнозировать конечный результат;

ставить цель и формулировать задачи деятельности с учетом выявленных затруднений и

существующих возможностей, обосновывая выбранные подходы и средства; умение

самостоятельно планировать пути достижения целей, в том числе альтернативные,

осознанно выбирать наиболее эффективные способы решения учебных и познавательных

задач; выбирать из предложенных вариантов и самостоятельно искать средства/ресурсы для

решения задачи/достижения цели; составлять план решения проблемы (описывать

жизненный цикл выполнения проекта, алгоритм проведения исследования); определять

потенциальные затруднения при решении учебной и познавательной задачи и находить

средства для их устранения; описывать свой опыт, оформляя его для передачи другим

людям в виде алгоритма решения практических задач; корректировать свои действия в

соответствии с изменяющейся ситуацией. обосновывать достижимость цели выбранным

способом.

- познавательные УУД – умение определять понятия, создавать обобщения,

устанавливать аналогии, классифицировать, самостоятельно выбирать основания и

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

логическое рассуждение, умозаключение (индуктивное, дедуктивное, по аналогии) и

делать выводы; выделять общий признак или отличие двух или нескольких предметов или

явлений и объяснять их сходство и отличия; объединять предметы и явления в группы по

определенным признакам, сравнивать, классифицировать и обобщать факты и явления;

различать/выделять явление из общего ряда других явлений; выделять причинно-

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

наблюдаемых явлений; строить рассуждение от общих закономерностей к частным

явлениям и от частных явлений к общим закономерностям; самостоятельно указывать на

информацию, нуждающуюся в проверке, предлагать и применять способ проверки

достоверности информации; объяснять явления, процессы, связи и отношения, выявляемые

в ходе познавательной и исследовательской деятельности; выявлять и называть причины

события, явления, самостоятельно осуществляя причинно-следственный анализ; делать

вывод на основе критического анализа разных точек зрения, подтверждать вывод

собственной аргументацией или самостоятельно полученными данными; умение создавать,

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

познавательных задач – обозначать символом и знаком предмет и/или явление; определять

логические связи между предметами и/или явлениями, обозначать данные логические связи

с помощью знаков в схеме; создавать абстрактный или реальный образ предмета и/или

явления; строить модель/схему на основе условий задачи и/или способа ее решения;

создавать вербальные, вещественные и информационные модели с выделением

существенных характеристик объекта для определения способа решения задачи в

соответствии с ситуацией; развитие мотивации к овладению культурой активного

использования словарей, справочников, открытых источников информации и электронных

поисковых систем; соотносить полученные результаты поиска с задачами и целями своей

деятельности.

- коммуникативные УУД – умение организовывать учебное сотрудничество с

педагогом и совместную деятельность с педагогом и сверстниками; работать

индивидуально и в группе: находить общее решение; формулировать, аргументировать и

отстаивать свое мнение; формирование и развитие компетентности в области

использования информационно-коммуникационных технологий (далее – ИКТ) –

целенаправленно искать и использовать информационные ресурсы, необходимые для

решения учебных и практических задач с помощью средств ИКТ; оперировать данными

при решении задачи; выбирать адекватные задаче инструменты и использовать

компьютерные технологии для решения учебных задач; использовать информацию с

учетом этических и правовых норм; соблюдать информационную гигиену и правила

информационной безопасности.

Предметные результаты

Сформированность собственной позиции по отношению к биологической

информации, получаемой из разных источников, сформированность системы знаний об

общих биологических закономерностях, законах, теориях

Сформированность умений исследовать и анализировать биологические объекты и

системы, объяснять закономерности биологических процессов и явлений, прогнозировать

последствия значимых биологических исследований.

Сформированность умений объяснять результаты биологических экспериментов,

решать биологические и биоинформатические задачи.

Сформированность убежденности в необходимости соблюдения этических норм и

экологических требований при проведении биологических исследований

СОДЕРЖАНИЕ ПРОГРАММЫ

Курс разделен на теоретическую и практическую части. Теоретическая часть

включает в себя 6 разделов, каждый раздел включает в себя 2 модуля.

Модуль 1 содержит в себе необходимые теоретические темы для освоения данной

программы, а также задачи, для решения которых не требуется специальное ПО и

лабораторное оборудование. Освоив данный модуль, вы получите необходимые базовые

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

задачи, с которыми исследователи сталкиваются в работе. С данными навыками вы сможете

принимать участие в профиле “Геномное редактирование” олимпиады кружкового

движения НТИ и решить примерно 60% задач отборочных этапов. Так же эти знания

помогут принимать участие в различных олимпиадах от городского до всероссийского

уровня.

Модуль 2 содержит в себе задачи, относящиеся к теории из модуля 1, требующие

специального ПО. Освоив данный модуль, вы научитесь работать с биоинформатическими

программами, сможете решать практические задачи при помощи этих программ. С

данными навыками сможете принимать участие в профиле “Геномное редактирование”

олимпиады кружкового движения НТИ и решить примерно 40% задач отборочных этапов.

Также вы сможете принимать участие в чемпионате Worldskills и решить 30%

поставленных задач, биоинформатических хакатонах и летних школах по биоинформатике.

Практический часть (Раздел 7) содержит практические работы, относящиеся к темам

теоретических разделов. Освоив данный раздел, вы приобретете навыки работы в

лаборатории, научитесь решать настоящие научные задачи. С данными навыками вы

сможете участвовать в финале НТО (олимпиады кружкового движения НТИ) в профиле

“Геномное редактирование”, принимать участие в чемпионате Worldskills и решить 70%

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

биоинженерной биологии.

УЧЕБНО-ТЕМАТИЧЕСКИЙ ПЛАН

№ п\п Наименование разделов, модулей, тем Кол-во часов

Теория Практика Форма контроля

РАЗДЕЛ 1 Модуль 1 (24 часа)

1.1.1 Урок НТИ. Знакомство с Олимпиадой

НТИ. Проектные смены в области

инженерной биологии

2

1.1.2 Что такое инженерная биология? История

инженерной биологии, биотехнологии

2

1.1.3 Сравнение методов селекции, генетики,

генетической инженерии

3 1 Решение

задачи

1.1.4 Строение и функции нуклеиновых кислот.

ДНК

1 3 Решение

задач

1.1.5 Способы выделения ДНК,

электрофоретический анализ ДНК

4

1.1.6 Строение и функции нуклеиновых кислот.

РНК

1 3 Решение

задач

1.1.7 История открытия структуры ДНК,

методы исследования нуклеиновых кислот

4

Модуль 2 (2 часа)

1.2.1 Решение Биоинформатических задач по

теме «Секвенирование по Сэнгеру»

2 Решение

задач

РАЗДЕЛ 2

Модуль 1 (14 часов)

2.1.1 Генетическая инженерия 6

2.1.2 Клонирование ДНК, эндонуклеазы

рестрикции, плазмидная ДНК

1 3 Решение

задач

2.1.3 Генетически модифицированные

организмы, трансформация бактерий

2 2 Решение

задач

Модуль 2 (12 часов)

2.2.1 Решение Биоинформатических задач по

теме «Рестрикционный анализ плазмид»

12 Решение

задач

РАЗДЕЛ 3

Модуль 1 (28 часов)

3.1.1 Основные молекулярно-генетические процессы. Репликация ДНК

4 2 Решение задач

3.1.2 Основные молекулярно-генетические

процессы. Транскрипция

3 1 Решение

задач

3.1.3 Основные молекулярно-генетические

процессы. Трансляция

4

3.1.4 Генетический код и его свойства 1 1 Решение задач

3.1.5 Структура генома: хромосомы, упаковка

ДНК, регуляторные элементы

4

3.1.6 Структура гена: промоторы, терминаторы, сплайсинг; кодирующие и некодирующие

участки генома

4

3.1.7 История полимеразной цепной реакции,

классификация ПЦР, использование ПЦР в молекулярной биологии, диагностике

1 3 Решение

задач

Модуль 2 (4 часа)

3.2.1 Решение биоинформатических задач по темам «Полимеразная цепная реакция» и

«Открытые рамки считывания»

4 Решение задач

РАЗДЕЛ 4

Модуль 1 (28 часов)

4.1.1 Строение и функции белков 6

4.1.2 Классификация белков, ферментов 4

4.1.3. Основы биокатализа, ферментативной кинетики

4

4.1.4 Антитела. Строение, функции 6

4.1.5 Генетические основы разнообразия

антител

4

4.1.6 Ферменты в организме человека. Использование ферментов в

биотехнологии, медицине. Качественные

реакции

4

Модуль 2 (2 часа)

4.2.1 Решение Биоинформатических задач

(см. Приложение 1)

2

РАЗДЕЛ 5

Модуль 1 (14 часов)

5.1.1 Использование ферментов в

биотехнологии, медицине.

5.1.2 Хроматография – история метода и принципы разделения веществ

6

5.1.3 Хроматография в биотехнологии 4

5.1.4 Выделение и анализ рекомбинантных

белков. Зеленый флуоресцентный белок.

Электрофорез белков

4

Модуль 2 (2 часа)

5.2.1 Решение Биоинформатических задач

(см. Приложение 1)

2

РАЗДЕЛ 6

Модуль 1 (6 часов)

6.1.1 Редактирование генома CRISPR\Cas9, РНК-интерференция

6

Проверочная

работа и

творческое задание

(6 часов)

Модуль 2 (2 часа)

6.2.1 Решение биоинформатических задач по

теме «Мутагенез»

(см. Приложение 1)

2

РАЗДЕЛ 7 (42 часа)

7.1 Определение ГМО в продуктах питания (см. Приложение 2)

6

7.2 Состав злаков в хлебной продукции

(см. Приложение 2)

6

7.3 Определение гена метаболизма кофеина (см. Приложение 2)

6

7.4 Определение пола человека

(см. Приложение 2)

6

7.5 Равновесие в популяции (см. Приложение 2)

6

7.6 Определение резус-фактора

(см. Приложение 2)

6

7.7 Тонкослойная хроматография, определение активности ферментов.

(см. Приложение 2)

6

ИТОГО 114 66 6

Содержание курса

Тема Содержание Формат

занятий

Раздел 1. Модуль 1 (24 часа)

Урок НТО. Знакомство

с НТО. Проектные смены в области

инженерной биологии

Лекция

Что такое инженерная биология? История

инженерной биологии,

биотехнологии

Лекция

Сравнение методов

селекции, генетики,

генетической инженерии

Лекция

Задача 1. Дан текст, в котором сравниваются

методы селекции и генной инженерии.

Необходимо выбрать корректные по смыслу

варианты. В некоторых местах возможно

несколько правильных вариантов, выберите

любой из них.

Практика

Строение и функции

нуклеиновых кислот.

ДНК

Лекция

Задача 2. В процессе выделения ДНК

исследователь получил несколько пробирок,

содержащих по 1 мл раствора ДНК. Сколько

пробирок можно одновременно

центрифугировать без применения

противовеса в центрифуге с ротором на 12

пробирок?

Практика

Задача 3. Необходимо определить примерную

длину каждого из трех заданных фрагментов

ДНК. Соотнести фрагменты и их длину в п. н.

Практика

Задача 4. Вычислите концентрацию ЭДТА в

100 мл 1Х раствора ТАЕ. Ответ приведите в

мМ, округлите до первого знака после запятой.

Практика

Задача 5. Для анализа фрагментов ДНК,

получаемых методом полимеразной цепной

реакции (ПЦР) и/или эндонуклеазами

рестрикции, используют электрофорез в

агарозном геле. Выберите правильные

утверждения.

Практика

Способы выделения

ДНК,

электрофоретический анализ ДНК

Лекция

Лекция

Строение и функции

нуклеиновых кислот. РНК

Задача 6. В лаборатории была определена

последовательность нуклеотидов гена 3’-

TGTACATTTT-5’.

Напишите последовательность нуклеотидов

мРНК (в направлении 3’-...-5’), которая будет

синтезирована на данной матрице ДНК.

Практика

Задача 7. В лаборатории была определена

последовательность нуклеотидов матричной

цепи гена 5’-CATCCTCGGC-3’.

Напишите последовательность нуклеотидов

мРНК (в направлении 3’-...-5’), которая будет

синтезирована на данной матрице ДНК.

Практика

Задача 8. В лаборатории была определена

последовательность нуклеотидов гена 3’-

TGTACATTTT-5’.

Напишите последовательность нуклеотидов

мРНК (в направлении 3’-...-5’), которая будет

синтезирована на данной матрице ДНК.

Практика

Задача 9. Дан текст. Правильно укажите

пропущенные в тексте слова.

Практика

Задача 10. Нуклеиновые кислоты отличаются

по электрофоретической подвижности.

Определите подвижность различных видов

нуклеиновых кислот в геле, начиная с

наименее (сверху) и заканчивая наиболее

подвижной (снизу).

Практика

История открытия

структуры ДНК, методы исследования

нуклеиновых кислот

Лекция

Задача 11. Лаборант приготовил реакционную

смесь из стоковых (исходных) растворы

компонентов.

Определите конечную концентрацию

компонентов в реакционной смеси, если

известно, что к реакционной смеси добавили 5

мкл 10-кратного раствора смеси

дезоксинуклеозидтрифосфатов с

флуоресцентно мечеными

дезоксинуклеозидтрифосфатами.

Практика

Задача 12. "Прочитать" результаты гель-

электрофореза и определить

Практика

последовательность нуклеотидов в

анализируемом образце ДНК

Задача 13. Для анализа последовательности

нуклеиновых кислот по методу Сэнгера в

настоящее время используют автоматические

генетические анализаторы.

Выберите правильные суждения

Практика

Раздел 1. Модуль 2 (2 часа)

Решение

Биоинформатических задач по теме

«Секвенирование по

Сэнгеру»

Задача 1. Определите последовательность

нуклеотидов и с помощью сервиса Blast

определите, какому гену она принадлежит.

Практика

Задача 2. Используя программу для анализа

результатов секвенирования, определите ген

человека, последовательность которого была

амплифицирована при помощи ПЦР и далее в

реакции Сэнгера

Ссылка для скачивания файла с

секвенограммой -

https://yadi.sk/d/5L7HCaMMyD_YbQ

Практика

Задача 3. Используя программу для анализа

результатов секвенирования, определите ген

человека, последовательность которого была

амплифицирована при помощи ПЦР и далее в

реакции Сэнгера

Ссылка для скачивания файла с

секвенограммой -

https://yadi.sk/d/9kOZjICHS2zVKw

Практика

Задача 4. Используя программу для анализа

результатов секвенирования, определите ген

человека, последовательность которого была

амплифицирована при помощи ПЦР и далее в

реакции Сэнгера.

Ссылка для скачивания файла с

секвенограммой с Яндекс-диска

https://yadi.sk/d/9kOZjICHS2zVKw

Практика

Задача 5. Используя программу UGENE

проведите сборку контига двух продуктов

секвенирования. Ответ представьте в виде

числа, соответствующего длине контига.

Практика

Ссылка для скачивания файла с

секвенограммой

https://yadi.sk/d/zZ0gnpHP3uos7g

Задача 6. В результате реакции Сэнгера

получена следующая последовательность

нуклеотидов, содержащая фрагмент

5'-

TTTGGAGTTTGAGGTATACCTAGAGTACCT

CCA-3'

Используя инструмент BLAST, определите,

какому гену человека соответствует данная

последовательность.

Практика

Раздел 2. Модуль 1 (14 часов)

Генетическая

инженерия Лекция

Клонирование ДНК,

эндонуклеазы

рестрикции, плазмидная ДНК

Лекция

Задача 1. В тексте описывается работа с

последовательностями ДНК. Выберите

наиболее корректные варианты пропущенных

фраз в тексте.

Практика

Задача 2. Ферменты метаболизма ДНК

используют в генетической инженерии для

получения двуцепочечных молекул ДНК из

одноцепочечных, а также для синтеза ДНК на

матрице РНК. Выберите наиболее корректные

варианты пропущенных фраз в тексте.

Практика

Задача 3. В результате разрезания плазмиды

pBR322 (длина 4361 п.н.) рестриктазой AccBSII

образовались два фрагмента длиной 2560 п.н. и

1801 п.н.

Определите массу фрагмента длиной 1801 п.н.,

если известно, что масса исходной плазмиды

составляла 1000 нг.

Практика

Задача 4. Плазмида pBluescript содержит 2961

пар оснований. Эндонуклеаза рестрикции

узнает сайт HaeIII распознает сайт GGCC.

Предположим, что нуклеотиды в плазмиде

распределены случайно, количество А=Т=Ц=Г.

Сколько сайтов рестрикции в данной плазмиде

могла бы иметь данная рестриктаза?

Введите число предполагаемых сайтов

рестрикции.

Практика

Задача 5. Плазмида содержит 4000 пар

оснований. Эндонуклеаза рестрикции узнает

сайт HaeIII распознает сайт GGCC.

Предположим, что нуклеотиды в плазмиде

распределены случайно, количество А=Т=Ц=Г.

Сколько сайтов рестрикции в данной плазмиде

могла бы иметь данная рестриктаза?

Введите число предполагаемых сайтов

рестрикции.

Практика

Задача 6. Плазмида содержит 3000 пар

оснований. Эндонуклеаза рестрикции узнает

сайт HaeIII распознает сайт GGCC.

Предположим, что нуклеотиды в плазмиде

распределены случайно, количество А=Т=Ц=Г.

Сколько сайтов рестрикции в данной плазмиде

теоретически имеет данная рестриктаза?

Практика

Генетически модифицированные

организмы,

трансформация бактерий

Лекция

Задача 7. Исследователь пытался

экспрессировать ген в бактериальной клетке.

Для этого кДНК гена была клонирована в

плазмиду. Клетки бактерий были

трансформированы полученной плазмидой.

Вечером исследователь понял, что забыл

добавить на чашку Петри, куда были помещены

трансформированные бактерии, антибиотик.

Что увидит исследователь в чашке Петри на

следующий день?

Практика

Задача 8. После трансформации компетентных

клеток в таком случае используют среду,

содержащую соединение X-gal.

Трансформированные клетки, содержащие

плазмиду со вставкой и без вставки,

отличаются по цвету. Выберите правильные

суждения.

Практика

Задача 9. После трансформации компетентных

клеток в таком случае используют среду,

содержащую соединение X-gal.

Трансформированные клетки, содержащие

плазмиду со вставкой и без вставки,

отличаются по цвету. Выберите правильные

суждения.

Практика

Раздел 2. Модуль 2 (12 часов)

Решение Биоинформатических

задач по теме

Задача 1. Используя программу UGENE, файлы

с картами соответствующих плазмид,

Практика

«Рестрикционный

анализ плазмид» необходимо "вырезать" ген ДНК-лигазы из

плазмиды pCA24N-ligase и "встроить" его в

pBluescript [1, 4]. Определите теоретическую

длину плазмиды pBluescript после встройки

гена ДНК-лигазы.

Ссылка для скачивания последовательности в

fasta

http://www2.kumc.edu/soalab/LabLinks/vectors/p

bluescr.htm .

Plasmid #87741 - pCA24N-ligase

http://www.addgene.org/87741/

последовательность в виде gb-файла

(https://media.addgene.org/data/plasmids/87/8774

1/87741-attachment_Z4nGnCtL59S_.gb).

Задача 2. В результате разрезания плазмиды

pBluescript (длина 2961 п.н.) рестриктазой SspI

образовались два фрагмента. Определите

массу более длинного фрагмента плазмиды

pBluescirpt, образовавшегося после рестрикции

SspI, если известно, что масса исходной

плазмиды составляла 2018 нг.

Ссылка для скачивания файла pBluescript II SK

(+) для работы в программе SnapGene Viewer

https://www.snapgene.com/resources/plasmid_file

s/basic_cloning_vectors/pBluescript_II_SK(+)/

Практика

Задача 3. В результате разрезания плазмиды

pBR322 рестриктазами HindII и BstBAI

образовалось несколько фрагментов.

Определите массу самого длинного фрагмента

плазмиды pBR322, образовавшегося после

гидролиза рестриктазами HindII и BstBAI, если

известно, что масса исходной плазмиды

составляла 2019 нг.

Ссылка для скачивания файла pBR322 для

работы в программе SnapGene Viewer

http://www.snapgene.com/resources/plasmid_files

/basic_cloning_ vectors/pBR322/

Практика

Задача 4. В результате разрезания плазмиды

pBluescript (длина 2961 п.н.) рестриктазой AcoI

получено несколько фрагментов. Определите

массу самого длинного фрагмента плазмиды

pBluescirpt, образовавшегося после рестрикции

Практика

AcoI, если известно, что масса исходной

плазмиды составляла 2020 нг.

Ссылка для скачивания последовательности в

fasta

http://www2.kumc.edu/soalab/LabLinks/vectors/p

bluescr.htm .

Задача 5. Ссылка для скачивания файла

pBluescript II SK (+) для работы в программе

SnapGene Viewer

https://www.snapgene.com/resources/plasmid_file

s/basic_cloning_vectors/pBluescript_II_SK(+)/

Вариант 1

Используя программу SnapGene Viewer, карту

плазмиды pBluescript, соотнесите

эндонуклеазы рестрикции (PvuII, BstBAI, RsaI,

EcoICRI, SspI) и фрагменты, которые будут

получены при их действии на данную

плазмиду.

Практика

Вариант 2

Используя программу SnapGene Viewer, карту

плазмиды pBluescript, соотнесите длины

фрагментов плазмидной ДНК, которые будут

получены при действии рестриктаз Acc16I,

BstBAI, HindII, PvuII, SspI и ZrmI с пробирками,

которые содержат реакционные смеси с

разными рестриктазами.

Вариант 3

Задача. Используя программу UGENE, карту

плазмиды pBluescript, сопоставьте число

фрагментов ДНК, которые образуются при

гидролизе плазмидной ДНК pBluescript

различными эндонуклезами рестрикции.

Вариант 4

Задача. Используя программу UGENE, карту

плазмиды pBluescript, сопоставьте число

фрагментов ДНК, которые образуются при

гидролизе плазмидной ДНК pBluescript

различными эндонуклезами рестрикции.

Вариант 5

Используя программу UGENE, карту плазмиды

pUC19 (последовательность нуклеотидов

можно найти по ссылке, сохранить в блокноте

в текстовом формате с расширением *.fasta),

сопоставьте число фрагментов ДНК которые

образуются при гидролизе плазмидной ДНК

pUC19 различными эндонуклезами

рестрикции.

Задача 6. Информация о плазмиде pBR322

https://www.neb.com/tools-and-

resources/interactive-tools/dna-sequences-and-

maps-tool

Вариант 1

Используя программу UGENE, карту плазмиды

pBR322, определите число фрагментов ДНК,

которые образуются при гидролизе плазмидной

ДНК эндонуклезой рестрикции GlaI. Ответом

является число.

Практика

Вариант 2

Используя программу UGENE, карту

плазмиды pBR322, определите число

фрагментов ДНК длиннее 100 пар

нуклеотидов, которое получится при

гидролизе плазмидной ДНК эндонуклезой

рестрикции HaeIII.

Задача 7. Используя программу SnapGene

Viewer, карту плазмиды pBR322

(http://www.snapgene.com/resources/plasmid_file

s/basic_cloning_ vectors/pBR322/), соотнесите

эндонуклеазы рестрикции (EcoRI, NruI и PstI)

и фрагменты, которые будут получены при их

действии на данную плазмиду.

Практика

Раздел 3. Модуль 1 (28 часов)

Основные

молекулярно-

генетические процессы. Репликация ДНК

Лекция

Задача 1. Сопоставьте правильные суждения о

принципах репликации ДНК, особенностях

ДНК-полимеразы и процессе синтеза ДНК.

Практика

Задача 2. Выберите правильные суждения о

репликации ДНК в клетках человека.

Практика

Задача 3. В каком направлении происходит

синтез ДНК, катализируемый ДНК-

полимеразой и обратной транскриптазой?

Практика

Выберите все подходящие ответы из списка

Задача 4. Исследователь пытался получить

комплементарную ДНК, кодирующую целевой

белок. Он выделил и размножил образец

мРНК. В конце эксперимента студент получил

молекулы, содержащие только

рибонуклеотиды. Выберите правильные

тезисы

Практика

Основные молекулярно-

генетические процессы.

Транскрипция

Лекция

Задача 5. База данных NCBI содержит

несколько последовательностей,

соответствующих гену ACE2 человека

(https://www.ncbi.nlm.nih.gov/gene/59272).

Используя последовательности NM_021804.3 и

NP_068576.1, найдите информацию о мРНК и

белковом продукте гена ACE2.

Практика

Основные

молекулярно-

генетические процессы. Трансляция

Лекция

Генетический код и его

свойства Лекция

Задача 6. Представлена последовательность

оснований матричной цепи ДНК: 5’-

TACGCCTTCGCCTTCGCC-3’.

Закодированный полипептид состоит из 6

аминокислотных остатков. При гидролизе

этого пептида, получается смесь трех

аминокислот, которая содержит: аминокислота

M (1 часть), аминокислота K (2 части),

аминокислота A (3 части).

Запишите последовательность аминокислот в

пептиде

Практика

Задача 7. Представлена последовательность

оснований матричной цепи ДНК: 5’-

TGGGCTGTTGAAGTTGAAGTT-3’.

Закодированный полипептид состоит из 7

аминокислотных остатков. При гидролизе

этого пептида, получается смесь 4

аминокислот, которая содержит: аминокислота

Q (3 части), аминокислота L (2 части),

Практика

аминокислота R (1 часть), аминокислота T (1

часть).

Запишите последовательность аминокислот в

пептиде

Задача 8. Выберите корректные тезисы,

показывающие функциональное отношение

кодонов и аминокислот.

Практика

Структура генома: хромосомы, упаковка

ДНК, регуляторные

элементы

Лекция

Структура гена:

промоторы,

терминаторы, сплайсинг;

кодирующие и

некодирующие участки генома

Лекция

История полимеразной

цепной реакции, классификация ПЦР,

использование ПЦР в

молекулярной

биологии, диагностике

Лекция

Задача 9. Определите, сколько (примерно)

копий ДНК будет получено к концу 25го цикла

ПЦР, если в качестве матрицы использовали

256 молекул ДНК, а длина продукта ПЦР

составляет 330 пар нуклеотидов.

Практика

Задача 10. Сколько шестикратного (6x)

буферного раствора для нанесения пробы на

гель необходимо добавить в 25 мкл

реакционной смеси для достижения в

реакционной смеси однократной (1x)

концентрации буферного раствора? Ответ

введите виде натурального целого числа без

"мкл".

Практика

Задача 11. Заполните пропуски в тексте. Практика

Задача 12. Определите, какой объем стоковых

растворов и воды следует добавить в

реакционную смесь, если известно, что

конечный объем реакционной смеси 50 мкл.

Необходимо сопоставить концентрацию

компонента в реакционной смеси и объем

Практика

данного компонента в мкл, который следует

добавить в реакционную смесь для

достижения заданной концентрации.

Задача 13. Определите, какой объем стоковых

растворов и воды следует добавить в

реакционную смесь, если известно, что

конечный объем реакционной смеси 25 мкл.

Сопоставьте компоненты реакционной смеси и

их финальные концентрации и объем данного

компонента, который следует добавить в

реакционную смесь для достижения заданной

концентрации

Практика

Задача 14. Лаборант-исследователь подготовил

реакционную смесь для полимеразной цепной

реакции (ПЦР), добавил в пробирку следующие

компоненты: Двухкратный буфер для ПЦР (с

Mg2+), ДНК-матрица, Прямой праймер.

Определите, какие компоненты нужно

добавить в реакционную смесь

Практика

Задача 15. Лаборант-исследователь готовит

реакционную смесь для полимеразной цепной

реакции (ПЦР). Он уже добавил в пробирку

следующие компоненты: Taq-полимераза

(ДНК-зависимая ДНК-полимераза), Буферный

раствор, содержащий Mg 2+, Прямой и

обратный праймеры, Дистиллированная вода.

Определите, какие компоненты нужно

добавить в реакционную смесь

Практика

Задача 16. Выберите корректные суждения о

полимеразной цепной реакцииДНК на матрице

мРНК играет важную роль в биотехнологии,

для экспрессии определенных генов, в

частности, в бактериальных клетках.

Практика

Задача 17. Выберите верные суждения об

использовании метода ПЦР в реальном

времени с обратной транскрипцией для

диагностики SARS-CoV-2.

Практика

Задача 18. Выберите верные суждения об

использовании метода ПЦР в реальном

времени с обратной транскрипцией для

диагностики.

Практика

Задача 19. При решении предыдущих задач

оказалось, что при использовании одной и той

же пары праймеров, продукт ПЦР при

использовании в качестве матрицы геномной

ДНК значительно длиннее, чем когда в

качестве матрицы используют зрелую мРНК.

Чем можно объяснить наблюдаемый

результат?

Практика

Задача 20. Дан текст, посвященный методу

ПЦР.

Выберите варианты ответа, максимально

соответствующие по смыслу.

Практика

Задача 21. В лаборатории имеется 0,2 М и 2 М

растворы NaCl, необходимо приготовить 800

мл 1 М раствора NaCl, используя имеющиеся

растворы.

Практика

Задача 22. Вычислите объем плазмиды,

фрагмента ДНК, буферного раствора и воды,

если известно, что в реакционную смесь

следует добавить 100 нг плазмидной ДНК.

Практика

Раздел 3. Модуль 2 (4 часа)

Решение

биоинформатических

задач по темам «Полимеразная цепная

реакция» и «Открытые

рамки считывания»

Практика

ПРИЛОЖЕНИЕ 1

Содержание:

Раздел 1 Модуль 1

1. Сравнение методов селекции, генетики, генетической инженерии (180 минут).

2. Способы выделения ДНК, электрофоретический анализ ДНК (180 минут).

3. Строение и функции нуклеиновых кислот. РНК (180 минут).

4. История открытия структуры ДНК, методы исследования нуклеиновых кислот (180

минут).

Модуль 2 Решение биоинформатических задач по теме «Секвенирование по Сэнгеру».

Раздел 2 Модуль 1

1. Клонирование ДНК, эндонуклеазы рестрикции, плазмидная ДНК (180 минут).

2. Генетически модифицированные организмы, трансформация бактерий (180 минут).

Модуль 2 Решение биоинформатических задач по теме «Рестрикционный анализ плазмид».

Раздел 3

Модуль 1

1. Основные молекулярно-генетические процессы. Репликация ДНК (180 минут).

2. Генетический код и его свойства (180 минут).

3. История полимеразной цепной реакции, классификация ПЦР, использование ПЦР в

молекулярной биологии, диагностике (180 минут).

Модуль 2 Решение биоинформатических задач по темам «Полимеразная цепная реакция» и

«Открытые рамки считывания».

Раздел 4

Модуль 2

Раздел 6 Модуль 1

1. Редактирование генома CRISPR\Cas9, РНК-интерференция (180 минут).

2. Проверочная работа и творческое задание (300 минут)

Модуль 2 Решение биоинформатических задач по теме «Мутагенез».

Контрольно-измерительные материалы Контроль знаний учащихся производится за счет проверки правильности решения задач

№ п.п. Условие задачи Ответ

Раздел 1. Модуль 1

1 Дан текст, в котором сравниваются методы селекции и

генной инженерии. Необходимо выбрать корректные

по смыслу варианты. В некоторых местах возможно

несколько правильных вариантов, выберите любой из

них.

гибридизации,

скрещивании;

гомозиготность,

единообразие;

самоопыление;

инбридинг; вида;

организмами разных

видов; ферментов-

рестриктаз;

флуоресцентные

аквариумные рыбки.

2 В процессе выделения ДНК исследователь получил

несколько пробирок, содержащих по 1 мл раствора

ДНК. Сколько пробирок можно одновременно

центрифугировать без применения противовеса в

центрифуге с ротором на 12 пробирок?

1, 2, 3, 4, 6

3 Необходимо определить примерную длину каждого из

трех заданных фрагментов ДНК. Соотнести фрагменты

и их длину в п. н.

1 - б, 2 - в, 3 - а.

4 Вычислите концентрацию ЭДТА в 100 мл 1Х раствора

ТАЕ. Ответ приведите в мМ, округлите до первого

знака после запятой.

0,9

5 Для анализа фрагментов ДНК, получаемых методом

полимеразной цепной реакции (ПЦР) и/или

эндонуклеазами рестрикции, используют электрофорез

в агарозном геле. Выберите правильные утверждения.

1, 2, 3, 5, 7

6 В лаборатории была определена последовательность

нуклеотидов гена 3’-TGTACATTTT-5’.

AAAAUGUACA

Напишите последовательность нуклеотидов мРНК (в

направлении 3’-...-5’), которая будет синтезирована на

данной матрице ДНК.

7 В лаборатории была определена последовательность

нуклеотидов матричной цепи гена 5’-CATCCTCGGC-

3’.

Напишите последовательность нуклеотидов мРНК (в

направлении 3’-...-5’), которая будет синтезирована на

данной матрице ДНК.

GUAGGAGCCG

8 В лаборатории была определена последовательность

нуклеотидов гена 3’-TGTACATTTT-5’.

Напишите последовательность нуклеотидов мРНК (в

направлении 3’-...-5’), которая будет синтезирована на

данной матрице ДНК.

AAAAUGUACA

9 Дан текст. Правильно укажите пропущенные в тексте

слова.

1 - моносахарид /

пентозу; 2 - рибоза;

3 - аденином и

тимином; 4 - аденин

и урацил; 5 -

щелочной среде; 6 -

не содержит 2’-

гидроксильной

группы.

10 Нуклеиновые кислоты отличаются по

электрофоретической подвижности.

Определите подвижность различных видов

нуклеиновых кислот в геле, начиная с наименее

(сверху) и заканчивая наиболее подвижной (снизу).

1, 6, 3, 4, 2, 5.

11 Лаборант приготовил реакционную смесь из стоковых

(исходных) растворы компонентов.

Определите конечную концентрацию компонентов в

реакционной смеси, если известно, что к реакционной

смеси добавили 5 мкл 10-кратного раствора смеси

дезоксинуклеозидтрифосфатов с флуоресцентно

мечеными дезоксинуклеозидтрифосфатами.

1 - а, 2 - в, 3 - б, 4 -

д, 5 - г.

12 "Прочитать" результаты гель-электрофореза и

определить последовательность нуклеотидов в

анализируемом образце ДНК

AGCTTGTCAAGCC

TACGA

13 Для анализа последовательности нуклеиновых кислот

по методу Сэнгера в настоящее время используют

автоматические генетические анализаторы.

Выберите правильные суждения

5, 6, 8, 9, 10

Раздел 1. Модуль 2

1 Определите последовательность нуклеотидов и с

помощью сервиса Blast определите, какому гену она

принадлежит.

IRF7

2 Используя программу для анализа результатов

секвенирования, определите ген человека,

последовательность которого была амплифицирована

при помощи ПЦР и далее в реакции Сэнгера.

Ссылка для скачивания файла с секвенограммой -

https://yadi.sk/d/5L7HCaMMyD_YbQ

CYP21A

3 Используя программу для анализа результатов

секвенирования, определите ген человека,

последовательность которого была амплифицирована

при помощи ПЦР и далее в реакции Сэнгера. Ответ

представьте в виде трехбуквенного идентификатора

соответствующего гена, используйте латинские буквы.

Ссылка для скачивания файла с секвенограммой -

https:// yadi.sk/d/9kOZjICHS2zVKw

Sry

4 Используя программу для анализа результатов

секвенирования, определите ген человека,

последовательность которого была амплифицирована

при помощи ПЦР и далее в реакции Сэнгера.

Ссылка для скачивания файла с секвенограммой с

Яндекс-диска https:// yadi.sk/d/9kOZjICHS2zVKw

FMR1

5 Используя программу UGENE проведите сборку

контига двух продуктов секвенирования. Ответ

представьте в виде числа, соответствующего длине

контига.

Ссылка для скачивания файла с секвенограммой

https://yadi.sk/d/zZ0gnpHP3uos7g

303

6 Используя программу UGENE проведите сборку

контига двух продуктов секвенирования. Ответ

представьте в виде числа, соответствующего длине

контига.

Ссылка для скачивания файла с секвенограммой

https://yadi.sk/d/zZ0gnpHP3uos7g

IL6

В результате реакции Сэнгера получена следующая

последовательность нуклеотидов, содержащая

фрагмент

5'-TTTGGAGTTTGAGGTATACCTAGAGTACCTCCA-

3'

Используя инструмент BLAST, определите, какому

гену человека соответствует данная

последовательность.

Раздел 2. Модуль 1

1 В тексте описывается работа с последовательностями

ДНК. Выберите наиболее корректные варианты

пропущенных фраз в тексте

1 - клонирования; 2

- специфически; 3 -

двуцепочечной; 4 -

липкими; 5 -

тупыми; 6 - ДНК-

лигазу.

2 Ферменты метаболизма ДНК используют в

генетической инженерии для получения

двуцепочечных молекул ДНК из одноцепочечных, а

также для синтеза ДНК на матрице РНК. Выберите

наиболее корректные варианты пропущенных фраз в

тексте.

фрагмент Кленова;

Thermus aquaticus;

магния; 3’;

матричной;

ревертазой,

обратной

транскриптазой;

праймера,

завтравки; кДНК.

3 В результате разрезания плазмиды pBR322 (длина 4361

п.н.) рестриктазой AccBSII образовались два фрагмента

длиной 2560 п.н. и 1801 п.н.

Определите массу фрагмента длиной 1801 п.н., если

известно, что масса исходной плазмиды составляла

1000 нг.

413

4 Плазмида pBluescript содержит 2961 пар оснований.

Эндонуклеаза рестрикции узнает сайт HaeIII распознает

сайт GGCC. Предположим, что нуклеотиды в плазмиде

распределены случайно, количество А=Т=Ц=Г.

Сколько сайтов рестрикции в данной плазмиде могла

бы иметь данная рестриктаза? Отличается ли число

теоретических сайтов от реально существующих в

плазмиде? Почему?

Введите число предполагаемых сайтов рестрикции.

11

5 Плазмида содержит 4000 пар оснований. Эндонуклеаза

рестрикции узнает сайт HaeIII распознает сайт GGCC.

Предположим, что нуклеотиды в плазмиде

распределены случайно, количество А=Т=Ц=Г.

15

Сколько сайтов рестрикции в данной плазмиде могла

бы иметь данная рестриктаза?

Введите число предполагаемых сайтов рестрикции.

6 Плазмида содержит 3000 пар оснований. Эндонуклеаза

рестрикции узнает сайт HaeIII распознает сайт GGCC.

Предположим, что нуклеотиды в плазмиде

распределены случайно, количество А=Т=Ц=Г.

Сколько сайтов рестрикции в данной плазмиде

теоретически имеет данная рестриктаза?

12

7 Исследователь пытался экспрессировать ген в

бактериальной клетке. Для этого кДНК гена была

клонирована в плазмиду. Клетки бактерий были

трансформированы полученной плазмидой. Вечером

исследователь понял, что забыл добавить на чашку

Петри, куда были помещены трансформированные

бактерии, антибиотик.

Что увидит исследователь в чашке Петри на следующий

день?

3

8 После трансформации компетентных клеток в таком

случае используют среду, содержащую соединение X-

gal. Трансформированные клетки, содержащие

плазмиду со вставкой и без вставки, отличаются по

цвету. Выберите правильные суждения.

2, 4, 6, 8, 9

Раздел 2. Модуль 2

1 Используя программу UGENE, файлы с картами

соответствующих плазмид, необходимо "вырезать" ген

ДНК-лигазы из плазмиды pCA24N-ligase и "встроить"

его в pBluescript [1, 4]. Определите теоретическую

длину плазмиды pBluescript после встройки гена ДНК-

лигазы.

Ссылка для скачивания последовательности в *.fasta

http://www2.kumc.edu/soalab/LabLinks/vectors/pbluescr.h

tm

Plasmid #87741 - pCA24N-ligase

http://www.addgene.org/87741/ последовательность в

виде gb-файла

(https://media.addgene.org/data/plasmids/87/7741/87741-

attachment_Z4nGnCtL59S_.gb).

4430

2 В результате разрезания плазмиды pBluescript (длина

2961 п.н.) рестриктазой SspI образовались два

фрагмента. Определите массу более длинного

фрагмента плазмиды pBluescirpt, образовавшегося

1929

после рестрикции SspI, если известно, что масса

исходной плазмиды составляла 2018 нг.

Ссылка для скачивания файла pBluescript II SK (+) для

работы в программе SnapGene Viewer

https://www.snapgene.com/resources/plasmid_files/basic_

cloning_vectors/pBluescript_II_SK(+)/

3 В результате разрезания плазмиды pBR322

рестриктазами HindII и BstBAI образовалось несколько

фрагментов. Определите массу самого длинного

фрагмента плазмиды pBR322, образовавшегося после

гидролиза рестриктазами HindII и BstBAI, если

известно, что масса исходной плазмиды составляла

2019 нг.

Ссылка для скачивания файла pBR322 для работы в

программе SnapGene Viewer

http://www.snapgene.com/resources/plasmid_files/basic_cl

oning_ vectors/pBR322/

778

4 В результате разрезания плазмиды pBluescript (длина

2961 п.н.) рестриктазой AcoI получено несколько

фрагментов. Определите массу самого длинного

фрагмента плазмиды pBluescirpt, образовавшегося

после рестрикции AcoI, если известно, что масса

исходной плазмиды состав- ляла 2020 нг.

Ссылка для скачивания последовательности в fasta

http://www2.kumc.edu/soalab/LabLinks/vectors/pbluescr.h

tm

982

5 Ссылка для скачивания файла pBluescript II SK (+) для

работы в программе SnapGene Viewer

https://www.snapgene.com/resources/plasmid_files/basic_

cloning_vectors/pBluescript_II_SK(+)/

Вариант 1

Используя программу SnapGene Viewer, карту

плазмиды pBluescript, соотнесите эндонуклеазы

рестрикции (PvuII, BstBAI, RsaI, EcoICRI, SspI) и

фрагменты, которые будут получены при их действии

на данную плазмиду.

1 - б, 2 - д, 3 - г, 4 -

а, 5 - в

Вариант 2

Используя программу SnapGene Viewer, карту

плазмиды pBluescript, соотнесите длины фрагментов

плазмидной ДНК, которые будут получены при

действии рестриктаз Acc16I, BstBAI, HindII, PvuII, SspI

1 - в, 2 - д, 3 - г, 4 -

б, 5 - а, 6 - е

и ZrmI с пробирками, которые содержат реакционные

смеси с разными рестриктазами.

Вариант 3

Задача. Используя программу UGENE, карту плазмиды

pBluescript, сопоставьте число фрагментов ДНК,

которые образуются при гидролизе плазмидной ДНК

pBluescript различными эндонуклезами рестрикции.

1 - д, 2 - в, 3 - а, 4 -

г, 5 - б

Вариант 4

Задача. Используя программу UGENE, карту плазмиды

pBluescript, сопоставьте число фрагментов ДНК,

которые образуются при гидролизе плазмидной ДНК

pBluescript различными эндонуклезами рестрикции.

1 - е, 2 - д, 3 - б, 4 -

г, 5 - а, 6 - в

Вариант 5

Используя программу UGENE, карту плазмиды pUC19

(последовательность нуклеотидов можно найти по

ссылке, сохранить в блокноте в текстовом формате с

расширением *.fasta), сопоставьте число фрагментов

ДНК которые образуются при гидролизе плазмидной

ДНК pUC19 различными эндонуклезами рестрикции.

1 - е, 2 - в, 3 - а, 4 -

б, 5 - д, 6 - г

6 Информация о плазмиде pBR322

https://www.neb.com/tools-and-resources/ interactive-

tools/dna-sequences-and-maps-tool

Вариант 1

Используя программу UGENE, карту плазмиды

pBR322, определите число фрагментов ДНК, которые

образуются при гидролизе плазмидной ДНК

эндонуклезой рестрикции GlaI. Ответом является

число.

31

Вариант 2

Используя программу UGENE, карту плазмиды

pBR322, определите число фрагментов ДНК длиннее

100 пар нуклеотидов, которое получится при

гидролизе плазмидной ДНК эндонуклезой рестрикции

HaeIII.

13

7 Используя программу SnapGene Viewer, карту

плазмиды pBR322

(http://www.snapgene.com/resources/plasmid_files/basic_

cloning_ vectors/pBR322/), соотнесите эндонуклеазы

рестрикции (EcoRI, NruI и PstI) и фрагменты, которые

будут получены при их действии на данную плазмиду.

1 - б, 2 - а, 3 - ж, 4 -

д, 5 - г, 6 - в, 7 - е

Раздел 3. Модуль 1.

1 Сопоставьте правильные суждения о принципах

репликации ДНК, особенностях ДНК-полимеразы и

процессе синтеза ДНК.

1 - ж, 2 - в, 3 - д, 4 -

е, 5 - а, 6 - б, 7 - г.

2 Выберите правильные суждения о репликации ДНК в

клетках человека.

3, 6, 8

3 В каком направлении происходит синтез ДНК,

катализируемый ДНК-полимеразой и обратной

транскриптазой?

Выберите все подходящие ответы из списка

1, 2

4 Исследователь пытался получить комплементарную

ДНК, кодирующую целевой белок. Он выделил и

размножил образец мРНК. В конце эксперимента

студент получил молекулы, содержащие только

рибонуклеотиды. Выберите правильные тезисы

4

5 База данных NCBI содержит несколько

последовательностей, соответствующих гену ACE2

человека (https://www.ncbi.nlm.nih.gov/gene/59272).

Используя последовательности NM_021804.3 и

NP_068576.1, найдите информацию о мРНК и белковом

продукте гена ACE2.

Ген ACE2 содержит

21 экзон(ов). В

мРНК гена ACE2

человека седьмой

кодон ATG является

стартовым. Ген

ACE2 находится в

коротком плече

половой (Х)

хромосомы

6 Представлена последовательность оснований

матричной цепи ДНК: 5’-TACGCCTTCGCCTTCGCC-

3’.

Закодированный полипептид состоит из 6

аминокислотных остатков. При гидролизе этого

пептида, получается смесь трех аминокислот, которая

содержит: аминокислота M (1 часть), аминокислота K

(2 части), аминокислота A (3 части).

Запишите последовательность аминокислот в пептиде

MAKAKA

7 Представлена последовательность оснований

матричной цепи ДНК: 5’-

TGGGCTGTTGAAGTTGAAGTT-3’.

Закодированный полипептид состоит из 7

аминокислотных остатков. При гидролизе этого

пептида, получается смесь 4 аминокислот, которая

содержит: аминокислота Q (3 части), аминокислота L (2

TRQLQLQ

части), аминокислота R (1 часть), аминокислота T (1

часть).

Запишите последовательность аминокислот в пептиде

8 Выберите корректные тезисы, показывающие

функциональное отношение кодонов и аминокислот.

1, 2

9 Определите, сколько (примерно) копий ДНК будет

получено к концу 25го цикла ПЦР, если в качестве

матрицы использовали 256 молекул ДНК, а длина

продукта ПЦР составляет 330 пар нуклеотидов.

7

10 Сколько шестикратного (6x) буферного раствора для

нанесения пробы на гель необходимо добавить в 25 мкл

реакционной смеси для достижения в реакционной

смеси однократной (1x) концентрации буферного

раствора? Ответ введите виде натурального целого

числа без "мкл".

5

11 Заполните пропуски в тексте. 1 - 20, 2 - 1.8, 3 - 15

12 Определите, какой объем стоковых растворов и воды

следует добавить в реакционную смесь, если известно,

что конечный объем реакционной смеси 50 мкл.

Необходимо сопоставить концентрацию компонента в

реакционной смеси и объем данного компонента в мкл,

который следует добавить в реакционную смесь для

достижения заданной концентрации.

1 - б, 2 - г, 3 - з, 4 -

ж, 5 - и, 6 - е, 7 - к, 8

- в, 9 - а, 10 - д

13 Определите, какой объем стоковых растворов и воды

следует добавить в реакционную смесь, если известно,

что конечный объем реакционной смеси 25 мкл.

Сопоставьте компоненты реакционной смеси и их

финальные концентрации и объем данного компонента,

который следует добавить в реакционную смесь для

достижения заданной концентрации

1 - л, 2 - ж, 3 - д, 4 -

г, 5 - в, 6 - и, 7 - з, 8 -

е, 9 - б, 10 - а

14 Лаборант-исследователь подготовил реакционную

смесь для полимеразной цепной реакции (ПЦР),

добавил в пробирку следующие компоненты:

Двухкратный буфер для ПЦР (с Mg2+), ДНК-матрица,

Прямой праймер. Определите, какие компоненты

нужно добавить в реакционную смесь

1, 4, 5, 6, 8.

15 Лаборант-исследователь готовит реакционную смесь

для полимеразной цепной реакции (ПЦР). Он уже

добавил в пробирку следующие компоненты: Taq-

полимераза (ДНК-зависимая ДНК-полимераза),

1, 2.

Буферный раствор, содержащий Mg 2+, Прямой и

обратный праймеры, Дистиллированная вода.

Определите, какие компоненты нужно добавить в

реакционную смесь

16 Выберите корректные суждения о полимеразной

цепной реакцииДНК на матрице мРНК играет важную

роль в биотехнологии, для экспрессии определенных

генов, в частности, в бактериальных клетках.

1, 4, 6, 8, 9.

17 Выберите верные суждения об использовании метода

ПЦР в реальном времени с обратной транскрипцией для

диагностики SARS-CoV-2.

1, 2, 4, 5, 10

18 Выберите верные суждения об использовании метода

ПЦР в реальном времени с обратной транскрипцией для

диагностики.

2, 3

19 При решении предыдущих задач оказалось, что при

использовании одной и той же пары праймеров,

продукт ПЦР при использовании в качестве матрицы

геномной ДНК значительно длиннее, чем когда в

качестве матрицы используют зрелую мРНК.

Чем можно объяснить наблюдаемый результат?

6

20 Дан текст, посвященный методу ПЦР.

Выберите варианты ответа, максимально

соответствующие по смыслу.

гена; праймеры,

олигонуклеотиды;

20; нуклеотидов;

длину; ионы магния;

дезоксинуклеозидтр

ифосфаты;

амплификатор; 30-

40; денатурации,

плавления; отжига

праймеров;

элонгации.

21 В лаборатории имеется 0,2 М и 2 М растворы NaCl,

необходимо приготовить 800 мл 1 М раствора NaCl,

используя имеющиеся растворы.

440, 360

22 Вычислите объем плазмиды, фрагмента ДНК,

буферного раствора и воды, если известно, что в

реакционную смесь следует добавить 100 нг

плазмидной ДНК.

4, 3, 10

Учебно-методические материалы

1. Подробнее о методе:

https://en.wikipedia.org/wiki/Gel_electrophoresis_of_nucleic_acids

2. Статья о маркерах молекулярной массы https://en.wikipedia.org/wiki/Molecular-

weight_size_marker

3. Cтатья "Электрофорез ДНК" в Википедии

4. Статья "Трис-ацетатный буфер" в Википедии

5. Статья "Электрофорез ДНК" в Википедии

6. 25 лекций по молекулярной биологии (НГУ, Дымшиц) https://e-

lib.nsu.ru/reader/bookView.html?params=UmVzb3VyY2UtMzQ5OQ/cGFnZTAwMQ

7. Статья о секвенировании по Сэнгеру в википедии

https://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%

A1%D1%8D%D0%BD%D0%B3%D0%B5%D1%80%D0%B0

8. Видеоуроки о секвенировании по Сэнгеру на Степике

https://stepik.org/lesson/13696/step/7?unit=3835

9. Статья о методе Сэнгера на сайте "Биомолекула"

https://biomolecula.ru/articles/metody-v-kartinkakh-sekvenirovanie-nukleinovykh-kislot

10. Биомолекула: 12 методов в картинках https://biomolecula.ru/articles/metody-v-

kartinkakh-sekvenirovanie-nukleinovykh-kislot

11. Видеолекция на степике о методе Сэнгера

https://stepik.org/lesson/13696/step/7?unit=3835

12. Инструкция по сборке контига http://ugene.net/practical-tasks-of-molecular-biology/

раздел "Assembling the virus" (в последней версии UGENE следует выбрать в меню

Tools - Sanger data analysis - Reads de novo assembly).

13. https://ru.wikipedia.org/wiki/Контиг.

14. Статья "Метод Сэнгера" в Википедии

15. Лекция о севенировании ДНК по Сэнгеру (к. б. н., н. с. ИХБФМ СО РАН, Артем

Тикунов) — https://youtu.be/hBicxm20n2g

16. Анализ последовательностей ДНК, полученных методом Сэнгера в UGENE (Ольга

Голосова) — https://youtu.be/1MLPqFIVPFM

17. Генетическая инженерия https://biomolecula.ru/articles/12-metodov-v-kartinkakh-

gennaia-inzheneriia-chast-i-istoricheskaia

18. "Синтетическая биология" Статья в журнале "Наука из первых рук"

https://scfh.ru/papers/sinteticheskaya-biologiya/

19. CRISPR https://ru.wikipedia.org/wiki/CRISPR

20. Инструкция по рестрикционному анализу

https://ugene.net/wiki/display/UUOUM31/Restriction+Analysis

21. Информация о плазмиде https://en.wikipedia.org/wiki/Blue%E2%80%93white_screen

22. Клонирование в программе UGENE

https://ugene.net/wiki/display/UUOUM15/Molecular+Cloning+in+silico

23. Статья о рестриктазах в Википедии

https://ru.wikipedia.org/wiki/%D0%AD%D0%BD%D0%B4%D0%BE%D0%BD%D1%

83%D0%BA%D0%BB%D0%B5%D0%B0%D0%B7%D1%8B_%D1%80%D0%B5%D

1%81%D1%82%D1%80%D0%B8%D0%BA%D1%86%D0%B8%D0%B8

24. Методы генетической инженерии https://biomolecula.ru/articles/12-metodov-v-

kartinkakh-gennaia-inzhe neriia-chast-ii-instrumenty-i-tekhniki

25. Статья на Биомолекуле - https://biomolecula.ru/articles/covid-19-chto-my-znaem-i-

chego-ne-znaem

26. Статья в Википедии - Нетранслируемые области

27. Статья в википедии о концентрации смеси

https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BD%D1%86%D0%B5%D0%B

D%D1%82%D1%80%D0%B0%D1%86%D0%B8%D1%8F_%D1%81%D0%BC%D0%

B5%D1%81%D0%B8

28. Рекомендации по постановке ПЦР http://evrogen.ru/kit-user-manuals/Evrogen-PCR-

recommendation.pdf

29. 12 методов в картинках: полимеразная цепная реакция

https://biomolecula.ru/articles/metody-v-kartinkakh-polimeraznaia-tsepnaia-reaktsiia

30. Стратегия подбора праймеров http://www.rfbr.ru/rffi/ru/books/o_1781847

31. ПЦР https://cyberpedia.su/2x6e17.html

32. Инструкция ВОЗ по детекции коронавирусной ДНК методом ОТ-ПЦР-РВ -

https://www.who.int/docs/default-source/coronaviruse/real-time-rt-pcr-assays-for-the-

detection-of-sars-cov-2-institut-pasteur-paris.pdf

33. Статья в Википедии - Полимеразная цепная реакция в реальном времени

34. Информация на сайте МАгАтЭ - https://www.iaea.org/bulletin/infectious-diseases/how-

is-the-covid-19-virus-detected-using-real-time-rt-pcr

Материально-техническое оснащение

● Персональный компьютер

● Программное обеспечение: ○ Программа UGENE (ссылка для скачивания http://ugene.net/download.html).

○ Бесплатная программа

Chromashttp://www.technelysium.com.au/Chromas265Setup.exe

○ SnapGene Viewer http://www.snapgene.com/products/snapgene_viewer/

● Дополнительные инструменты:

○ https://blast.ncbi.nlm.nih.gov/Blast.cgi,выбратьNucleotideBLAST, ввести

полученную последовательность нуклеотидов в желтое поле, нажать кнопку

Blast.

○ https://blast.ncbi.nlm.nih.gov/Blast.cgi выбрать инструмент NucleotideBLAST

Используемое оборудование ● штатив для микропробирок;

● пипетка автоматическая;

● амплификатор (например, БИС);

● термостат для микропробирок твердотельный;

● микроцентрифуга;

● вортекс;

● УФ-трансиллюминатор.

● Электрофорезная горизонтальная камера

Необходимые реактивы:

● Набор “Определение ГМО в продуктах питания” https://pharma-

se.ru/equipments/oborudovanie-i-materialy-dlya-obrazovatelnykh-

uchrezhdeniy/sovremennye-laboratornye-raboty-po-biologii/nabor-mbs-detyam-

opredelenie-gmo-v-produktakh-pitaniya-lineyka-ptsr/

● Набор “Состав злаков в хлебной продукци” https://pharma-

se.ru/equipments/oborudovanie-i-materialy-dlya-obrazovatelnykh-

uchrezhdeniy/sovremennye-laboratornye-raboty-po-biologii/nabor-mbs-detyam-sostav-

zlakov-v-khlebnoy-produktsii-lineyka-ptsr/

● Набор “Определение гена метаболизма кофеина” https://pharma-

se.ru/equipments/oborudovanie-i-materialy-dlya-obrazovatelnykh-

uchrezhdeniy/sovremennye-laboratornye-raboty-po-biologii/nabor-mbs-detyam-

opredelenie-gena-metabolizma-kofeina-lineyka-ptsr/

● Набор “Определение пола человека” https://pharma-se.ru/equipments/oborudovanie-i-

materialy-dlya-obrazovatelnykh-uchrezhdeniy/sovremennye-laboratornye-raboty-po-

biologii/nabor-mbs-detyam-opredelenie-pola-cheloveka-lineyka-ptsr/

● Набор “Равновесие в популяции” https://pharma-se.ru/equipments/oborudovanie-i-

materialy-dlya-obrazovatelnykh-uchrezhdeniy/sovremennye-laboratornye-raboty-po-

biologii/nabor-mbs-detyam-ravnovesie-v-populyatsii-lineyka-ptsr/

● Набор “Определение резус-фактора” https://pharma-se.ru/equipments/oborudovanie-i-

materialy-dlya-obrazovatelnykh-uchrezhdeniy/sovremennye-laboratornye-raboty-po-

biologii/nabor-mbs-detyam-opredelenie-rezus-faktora-lineyka-ptsr/

● Набор “Тонкослойная хроматография, определение активности ферментов”

https://pharma-se.ru/equipments/oborudovanie-i-materialy-dlya-obrazovatelnykh-

uchrezhdeniy/sovremennye-laboratornye-raboty-po-biologii/nabor-tskh-mbs-detyam-

aktivnost-fermentov-lineyka-khromatografiya/

Приложение 1

Раздел 1

Модуль 1

1. Сравнение методов селекции, генетики, генетической инженерии.

Задача 1

Данный текст сравнивает методы селекции и генной инженерии. Выберите корректные по

смыслу варианты. В некоторых местах возможно несколько правильных вариантов,

выберите любой из них.

Метод селекции основан на (гибридизации / получении / разнообразии / скрещивании /

элиминировании) особей с интересными для исследователя признаками и дальнейшем

(изучении / размножении / отборе / элиминировании) полученных потомков. На следующем

этапе обычно требуется повысить (гетерозиготность / гомозиготность / единообразие /

продуктивность / разнообразие) полученных форм. Для этого у растений широко

используют (вегетативное размножение / обработку колхицином / отбор наиболее

приспособленных форм / самоопыление / эффект гетерозиса), а у животных (аутбридинг /

возвратное скрещивание / инбридинг / отбор наиболее приспособленных форм /

партеногенез). Таким образом, селекция позволяет оперировать исключительно

генофондом (вида / одной популяции / организма / особи / человека). В отличие от селекции,

методы генетической инженерии позволяют переносить гены между (ДНК разных видов /

митохондриями и ядром / организмами разных видов / разными клетками / ядром и

цитоплазмой). Считается, что генетическая инженерия появилась благодаря открытию в

1971 году (генетического кода / строения генома эукариот / структуры ДНК / ферментов-

рестриктаз / универсальности генетического кода). При помощи генетической инженерии

были созданы генно-модифицированные (породы пчел / сорта арбузов без косточек /

устойчивые к сорнякам сорта сои / флуоресцентные аквариумные рыбки / штаммы

сибирской язвы).

Пояснения к ответу: в некоторых случаях возможно несколько правильных ответов.

Ответ: гибридизации, скрещивании; гомозиготность, единообразие; самоопыление;

инбридинг; вида; организмами разных видов; ферментов-рестриктаз; флуоресцентные

аквариумные рыбки.

2. Способы выделения ДНК, электрофоретический анализ ДНК.

Задача 1

В процессе выделения ДНК исследователь получил несколько пробирок, содержащих по 1

мл раствора ДНК. Сколько пробирок можно одновременно центрифугировать без

применения противовеса в центрифуге с ротором на 12 пробирок?

1. 7.

2. 8.

3. 9.

4. 10.

5. 11.

6. 12.

Решение

В роторе на 12 мест невозможно уравновесить только 1 и 11 пробирок.

Ответ: 1, 2, 3, 4, 6.

Задача 2

Для визуализации ДНК-фрагментов а также их разделения в зависимости от длины

использует гель-электрофорез [1].

Для определения длины полученных ДНК фрагментов используются коммерческие

растворы ДНК, которые содержат фрагменты ДНК молекул строго определенных длин.

Такие растворы называется «маркерами длин ДНК-фрагментов» («DNA ladder», «линейка»,

«маркеры ДНК») [2].

На иллюстрации приведена фотография геля, на который был нанесен маркер ДНК (слева)

и образец ДНК (справа), и расшифровка длин ДНК фрагментов маркера.

Необходимо определить примерную длину каждого из трех фрагментов ДНК. Соотнесите

фрагменты и их длину в п. н.

1. Фрагмент С

2. Фрагмент B

3. Фрагмент A

a. 3000-4000 п.н.

б. 750-1000 п.н.

в. 1500-2000 п.н.

Рекомендуемая литература

1. Подробнееометодеhttps://en.wikipedia.org/wiki/Gel_electrophoresis_ of_nucleic_acids

2. Статья о маркерах молекулярной массы https://en.wikipedia.org/wiki/ Molecular-

weight_size_marker

Пояснения к ответу: следует соотнести длины полученных фрагментов ДНК и длины

фрагментов ДНК маркера.

Ответ: 1 - б, 2 - в, 3 - а.

Задача 3

Для анализа фрагментов ДНК, получаемых методом полимеразной цепной реакции (ПЦР)

и/или эндонуклеазами рестрикции, используют электрофорез в агарозном геле [1]. В

качестве электролита для агарозного электрофореза используют 1Х Трис-ацетатный

буфер (ТАЕ) [2].

Известно, что для приготовления 50Х ТАЕ необходимо взять следующие компоненты:

● Трис (основание) — 24,22 г

● ЭДТА (динатриевая соль) — 1,862 г

● Уксусная кислота (ледяная) — 8,96 мл

● H2O (деионизированная) — до 100 мл

Например, для приготовления 100 мл 1% агарозного геля необходимо приготовить

навеску 1 г сухого порошка агарозы, прилить в колбу с агарозой 100 мл 1Х ТАЕ, довести

до кипения в микроволновой печи два раза, залить гель в форму.

Вычислите концентрацию ЭДТА в 100 мл 1Х раствора ТАЕ. Ответ приведите в мМ,

округлите до первого знака после запятой.

Рекомендованные ссылки

● Cтатья "Электрофорез ДНК" в Википедии

● Статья "Трис-ацетатный буфер" в Википедии

Решение: определить молярную концентрацию 50Х буфера и разделить на 50

Ответ: 0.9

Задача 4

Для анализа фрагментов ДНК, получаемых методом полимеразной цепной реакции (ПЦР)

и/или эндонуклеазами рестрикции, используют электрофорез в агарозном геле [1].

Рекомендованные ссылки

● Статья "Электрофорез ДНК" в википедии

Выберите правильные утверждения

1. Для электрофореза плазмидной ДНК обычно используют 0,8-1,5% агарозный гель

2. Для визуализации ДНК после агарозного геля используют интеркалирующий

краситель бромистый этидий

3. Во время электрофореза более короткие молекулы ДНК двигаются в агарозном геле

быстрее

4. Под действием электрического поля отрицательно заряженные молекулы ДНК

двигаются от положительного электрода к отрицательному

5. Для определения молекулярной массы (длины) фрагмента ДНК используют

маркеры, содержащие фрагменты известной длины

6. Агарозный гель готовят на водопроводной воде

7. Для визуализации ДНК используют источник ультрафиолетового излучения

8. Электрофорез ДНК проводят в водном растворе гидроксида натрия

Ответ: 1, 2, 3, 5, 7

3. Строение и функции нуклеиновых кислот. РНК.

Задача 1

В лаборатории была определена последовательность нуклеотидов гена 3’-TGTACATTTT-

5’.

Напишите последовательность нуклеотидов мРНК (в направлении 3’-...-5’), которая будет

синтезирована на данной матрице ДНК. Введите только символы нуклеотидов в латинской

раскладке.

Рекомендуемые ссылки

1. 25 лекций по молекулярной биологии (НГУ, Дымшиц) https://e-lib.nsu.ru/

reader/bookView.html?params=UmVzb3VyY2UtMzQ5OQ/cGFnZTAwMQ.

Решение: необходимо построить последовательность нуклеотидов мРНК в направлении 3 ′

→ 5′ по смысловой цепи ДНК. По принципу комплементарности нуклеотиду А в ДНК

соответствует U в РНК, нуклеотидам Т, G, C в ДНК соответствуют нуклеотиды A, C, G в

РНК. Таким образом, правильная последовательность РНК 3’- AAAAUGUACA-5’.

Ответ: AAAAUGUACA.

Задача 2

В лаборатории была определена последовательность нуклеотидов матричной цепи гена 5’-

CATCCTCGGC-3’.

Напишите последовательность нуклеотидов мРНК (в направлении 3’-...-5’), которая будет

синтезирована на данной матрице ДНК. Введите только символы нуклеотидов в латинской

раскладке.

Решение: необходимо построить последовательность нуклеотидов мРНК в

направлении 3′ → 5′ по смысловои цепи ДНК. По принципу комплементарности

нуклеотиду А в ДНК соответствует U в РНК, нуклеотидам Т, G, C в ДНК

соответствуют нуклеотиды A, C, G в РНК. Таким образом, правильная

последовательность РНК 3’- GUAGGAGCCG-5’

Ответ: GUAGGAGCCG.

Задача 3

В лаборатории была определена последовательность нуклеотидов гена 3’-TGTACATTTT-

5’.

Напишите последовательность нуклеотидов мРНК (в направлении 3’-...-5’), которая будет

синтезирована на данной матрице ДНК. Введите только символы нуклеотидов в латинской

раскладке.

Рекомендуемые ссылки

1. 25 лекций по молекулярной биологии (НГУ, Дымшиц) https://e-lib.nsu.ru/

reader/bookView.html?params=UmVzb3VyY2UtMzQ5OQ/cGFnZTAwMQ.

Решение: необходимо построить последовательность нуклеотидов мРНК в

направлении 3′ → 5′ по смысловои цепи ДНК. По принципу комплементарности

нуклеотиду А в ДНК соответствует U в РНК, нуклеотидам Т, G, C в ДНК

соответствуют нуклеотиды A, C, G в РНК. Таким образом, правильная

последовательность РНК 3’- AAAAUGUACA-5’

Ответ: AAAAUGUACA.

Задача 4

Нуклеиновые кислоты ДНК и РНК представляют собой биополимеры, состоящие из

нуклеотидов. Нуклеотиды состоят из сахаро-фосфатного остова и азотистых оснований.

Сахаро-фосфатный остов ДНК содержит (моносахарид / пентозу / гликозид / аминокислоту

/ фруктозу) дезоксирибозу, в сахаро-фосфатный остов РНК входит (рибонуклеотид / рибоза

/ арабиноза / глицин / гликозид). Азотистые основания, входящие в состав ДНК,

представлены гуанином и цитозином, а также (аденином и тимином / тимином и урацилом

/ тимином и инозином / аденином и урацилом) в состав РНК входят (аденин и тимин / тимин

и урацил / тимин и 4 инозин / аденин и урацил). Различия в строение сахаров, входящих в

состав ДНК и РНК, обуславливает их физико-химические свойства. Например, молекула

РНК неустойчива в (магнитном поле / кислой среде / щелочной среде / нейтральной среде /

3 М растворе NaCl) вследствие гидролиза, в то время как ДНК в данных условиях

стабильна, так как (не ионизуется / удерживается водородными связями / не содержит 2’-

гидроксильной группы / является нерегулярным биополимером /).

Ответ: 1 - моносахарид / пентозу; 2 - рибоза; 3 - аденином и тимином; 4 - аденин и

урацил; 5 - щелочной среде; 6 - не содержит 2’-гидроксильной группы.

Задача 5

Нуклеиновые кислоты отличаются по электрофоретической подвижности.

Определите подвижность различных видов нуклеиновых кислот в геле, начиная с

наименее (сверху) и заканчивая наиболее подвижной (снизу).

1. 5.8S рибосомная РНК

2. 18S рибосомная РНК

3. транспортная РНК

4. геномная ДНК

5. 28S рибосомная РНК

6. 5S рибосомная РНК

Пояснения к ответу: необходимо упорядочить приведенные формы нуклеиновых кислот

по их длине.

Ответ: 1, 6, 3, 4, 2, 5.

4. История открытия структуры ДНК, методы исследования нуклеиновых

кислот.

Задача 1

Для постановки секвенирующей реакции Сэнгера с флуоресцентно мечеными

дидезоксинуклеозидтрифосфатами часто используют продукт, наработанный в ПЦР и один

из праймеров - прямой или обратный. Перед началом эксперимента необходимо

приготовить рабочий раствор. Лаборант приготовил реакционную смесь из стоковых

(исходных) растворы компонентов.

Концентрации стоковых растворов

• прямой праймер, 6 мкМ

• хлорид магния, 0,1 М

• Трис рН 8.5, 1М

• хлорид калия, 1 М

• матрица ДНК, 50 пМ

Определите конечную концентрацию компонентов в реакционной смеси, если известно,

что к реакционной смеси добавили 5 мкл 10-кратного раствора смеси

дезоксинуклеозидтрифосфатов с флуоресцентно мечеными

дезоксинуклеозидтрифосфатами.

Сопоставьте компоненты реакционной смеси, добавленный объем (слева) и их финальные

концентрации (справа).

1. прямой праймер, 6 мкМ

2. хлорид магния, 0,1 М

3. Трис рН 8.5, 1 М 4. хлорид калия, 1 М

4. матрица ДНК, 50 пМ

а. 0.15 мкМ

б. 2 мМ

в. 1 пМ

г. 40 мМ

д. 50 мМ

Пояснения к ответу: следует вычислить финальную концентрацию каждого компонента

исходя из стоковой концентрации и добавленного объема. Соотнести компонент и

конечную концентрацию.

Ответ: 1 - а, 2 - в, 3 - б, 4 - д, 5 - г.

Задача 2

Севенирование позволяет «побуквенно» прочитать нуклеотидную последовательность

ДНК. Наиболее распространенный метод секвенирования, который используется в

рутинной лабораторной практике, был изобретен Фредериком Сэнгером [1, 2, 3]. Данный

метод также называется методом терминирующих оснований.

Ключевым моментом является использование дидезоксинуклеозидтрифосфатов (ddNTPs),

которые не имеют 3’-ОН группы для образования связи со следующей фосфатной группой.

Поэтому в результате включения подобного дигидроксинуклеотида синтез

комплементарной цепи ДНК терминируется. При проведении анализа для каждого образца

ДНК готовится 4 реакционных смеси, которые содержат смесь четырех dNTP, ДНК-

полимеразу и один из терминирующих ddNTP. Результаты реакции визуализируют с

помощью гель-электрофореза и по набору полос восстанавливают исходную

последовательность.

Задача: "Прочитать" результаты гель-электрофореза и определить последовательность

нуклеотидов в анализируемом образце ДНК.

Ответ привести в виде последовательности нуклеотидов, в направлении от 5’- к 3’-концу,

латинскими буквами, без обозначений 3’-, 5’-, пробелов, например: TATTCTA

Рекомендуемая литература

1. Статья о секвенировании по Сэнгеру в википедии

https://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%

A1%D1%8D%D0%BD%D0%B3%D0%B5%D1%80%D0%B0

2. Видеоуроки о секвенировании по Сэнгеру на Степике

https://stepik.org/lesson/13696/step/7?unit=3835

3. Статья о методе Сэнгера на сайте "Биомолекула"

https://biomolecula.ru/articles/metody-v-kartinkakh-sekvenirovanie-nukleinovykh-kislot

Пояснения к ответу: Следует прочитать последовательность, начиная с нижней части геля

(на рисунке).

Ответ: AGCTTGTCAAGCCTACGA.

Задача 3

Для анализа последовательности нуклеиновых кислот по методу Сэнгера в настоящее

время используют автоматические генетические анализаторы.

Выберите правильные суждения, выберите все подходящие ответы из списка:

1. Для проведения одной секвенирующей реакции в современной версии метода

Сэнгера используют четыре пробирки с разными терминаторами

2. Метод Сэнгера с использованием автоматического анализатора позволяет в одной

секвенирующей реакции получить последовательность до 10 тысяч пар нуклеотидов

3. Для терминации (обрыва цепи) в методе Сэнгера используют

дезоксинуклеозидтрифосфаты

4. Концентрация терминирующих ddNTP в реакционной смеси сопоставима с

концентрацией dNTP

5. Секвенирующую реакцию обычно проводят в ПЦР-амплификаторе

6. В современной версии метода Сэнгера используют не радиоактивно, а

флуоресцентно меченые субстраты

7. Реакционная смесь содержит ДНК-зависимую РНК-полимеразу

8. Продукты секвенирующей реакции разделяют в генетическом анализаторе методом

капиллярного электрофореза

9. Для проведения секвенирующей реакции можно использовать очищенный от

примесей ПЦР-продукт и один из праймеров (секвенирующий)

10. Cеквенирующую реакцию c разными флуоресцентными ddNTP можно проводить в

одной пробирке

Ответ: 5, 6, 8, 9, 10

Модуль 2

Задача 1

Современный вариант исполнения метода Сэнгера [1, 2] предполагает использование

автоматических капиллярных ДНК-анализаторов, которые определяют наличие

флуоресцентно-меченых мономеров-терминаторов в составе продуктов реакции. Затем с

помощью программного обеспечения прибора устанавливают соответствия между длиной

продуктов и положением конкретного нуклеотида. В итоге получается «секвенограмма»,

аналогичной той, что представлена на рисунке:

Разные цвета обозначают положения различных нуклеотидов (четыре цвета – четыре

нуклеотида):

1. Зеленая линия – положения A 2. Красная линия – положения Т 3. Черная линия –

положения G 4. Синяя линия – положения С

Определите последовательность и с помощью сервиса Blast [3] определите, какому гену

она принадлежит. Ответ должен содержать краткое обозначение гена в виде трех

латинских букв и одной цифры без пробела, без дефиса или других знаков препинания

(формат XYZ9)

Рекомендуемая литература

1. Биомолекула: 12 методов в картинках https://biomolecula.ru/articles/metody-v-kartinkakh-

sekvenirovanie-nukleinovykh-kislot

2. Видеолекция на степике о методе Сэнгера https://stepik.org/lesson/13696/step/7?unit=3835

3. https://blast.ncbi.nlm.nih.gov/Blast.cgi,выбратьNucleotideBLAST, ввести полученную

последовательность нуклеотидов в желтое поле, нажать кнопку Blast.

Пояснения к ответу: следует соотнести цвета «пиков» секвенограммы с положениями

терминирующих дезоксинуклеозидтрифосфатов, определить ген при помощи сервиса

Blast.

Ответ: IRF7.

Задача 2

Результаты секвенирования ДНК по методу Сэнгера (с использованием флуоресцентно

меченых ддНТФ) могут быть представлены в виде "секвенограммы" - результата

разделения фрагментов ДНК капиллярным электрофорезом. Для анализа этих файлов

можно использовать универсальные программы, например UGENE [1].

Используя программу для анализа результатов секвенирования, определите ген человека,

последовательность которого была амплифицирована при помощи ПЦР и далее в реакции

Сэнгера [2]. Ответ представьте в виде латинских символов и цифр, соответствующих

краткому обозначению гена, всего шесть первых символов в обозначении гена (букв и

цифр).

Рекомендуемые ссылки

1. Программа UGENE (ссылка для скачивания http://ugene.net/download.html).

2. Ссылка для скачивания файла с секвенограммой -

https://yadi.sk/d/5L7HCaMMyD_YbQ .

Решение: открыть UGENE, открыть файл *.ab1, используя сервис “Blast” определить

гомологичный ген человека.

Ответ: CYP21A.

Задача 3

Результаты секвенирования ДНК по методу Сэнгера (с использованием флуоресцентно

меченых ддНТФ) могут быть представлены в виде "секвенограммы результата разделения

фрагментов ДНК капиллярным электрофорезом. Для анализа этих файлов можно

использовать бесплатные программы, рекомендованные производителем оборудования [1],

а также универсальные программы, например SnapGene Viewer [2].

Используя программу для анализа результатов секвенирования, определите ген человека,

последовательность которого была амплифицирована при помощи ПЦР и далее в реакции

Сэнгера. Ответ представьте в виде трехбуквенного идентификатора соответствующего

гена, используйте латинские буквы.

Рекомендуемая литература

1. Бесплатная программа Chromas

http://www.technelysium.com.au/Chromas265Setup.exe

2. SnapGene Viewer http://www.snapgene.com/products/snapgene_viewer/

3. Ссылка для скачивания файла с секвенограммой с Яндекс-диска

https://yadi.sk/d/9kOZjICHS2zVKw

Пояснения к ответу: необходимо определить последовательность нуклеотидов в

секвенограмме. При помощи сервиса Blast определить соответствующий ген.

Ответ: Sry.

Задача 4

Результаты секвенирования ДНК по методу Сэнгера (с использованием флуоресцентно

меченых ддНТФ) могут быть представлены в виде "секвенограммы результата разделения

фрагментов ДНК капиллярным электрофорезом. Для анализа этих файлов можно

использовать бесплатные программы, рекомендованные производителем оборудования [1],

а также универсальные программы, например SnapGene Viewer [2].

Используя программу для анализа результатов секвенирования, определите ген человека,

последовательность которого была амплифицирована при помощи ПЦР и далее в реакции

Сэнгера. Ответ представьте в виде четырех символов, соответствующих краткому

обозначению гена, используйте латинские буквы (при необходимости, цифры).

Рекомендуемая литература

1. Бесплатная программа Chromas

http://www.technelysium.com.au/Chromas265Setup.exe

2. SnapGene Viewer http://www.snapgene.com/products/snapgene_viewer/

3. Ссылка для скачивания файла с секвенограммой с Яндекс-диска

https://yadi.sk/d/9kOZjICHS2zVKw

Пояснения к ответу: необходимо определить последовательность нуклеотидов ДНК из

секвенограммы и далее определить идентификатор гена, используя базу данных NCBI.

Ответ: FMR1.

Задача 5

Результаты секвенирования ДНК по методу Сэнгера с использованием флуоресцентно

меченых ддНТФ представляют собой хроматограммы разделения фрагментов ДНК

капиллярным электрофорезом. Файлы с "секвенограммами" могут иметь разное

расширение, *.ab1. Пример секвенограммы приведен на рисунке. Для визуализации такого

файла можно использовать бесплатные программы, рекомендованные производителем

оборудования [2] или универсальные программы, например, UGENE [1].

Как правило, секвенирующую реакцию проводят с ПЦР-продуктом с прямого и обратного

праймера. В таком случае, получают фрагменты ДНК, частично комплементарные друг

другу. Такие перекрывающиеся фрагменты ДНК можно наложить друг на друга и получить

консенсусную последовательность - контиг [3]. В случае нескольких фрагментов ДНК эту

операцию можно произвести и вручную, но для сборки генома или длинной

последовательности ДНК обычно используют специализированное ПО.

Используя программу UGENE проведите сборку контига двух продуктов секвенирования.

Ответ представьте в виде числа, соответствующего длине контига.

Рекомендуемые ссылки

1. Программа UGENE (ссылка для скачивания); инструкция по сборке контига

http://ugene.net/practical-tasks-of-molecular-biology/ раздел "Assembling the virus" (в

последней версии UGENE следует выбрать в меню Tools - Sanger data analysis -

Reads de novo assembly).

2. Ссылка для скачивания файла с секвенограммой (также в папке находится

дистрибутив программы для просмотра секвенограмм) с Яндекс-диска

https://yadi.sk/d/zZ0gnpHP3uos7g

3. https://ru.wikipedia.org/wiki/Контиг

Решение: открыть UGENE, запустить инструмент «Сборка контигов с помощью САР3»,

добавить файлы *.ab1, собрать контиг. Длина перекрывающихся фрагментов секве-

нограмм составляет 303 нуклеотида.

Ответ: 303.

Задача 6

Секвенирование позволяет «побуквенно» прочитать нуклеотидную последовательность

ДНК. Наиболее распространенный метод секвенирования, который используется в

рутинной лабораторной практике, был изобретен Фредериком Сэнгером [1, 2]. Данный

метод также называется методом терминирующих оснований.

Ключевым моментом является использование дидезоксинуклеозидтрифосфатов (ddNTPs),

которые не имеют 3’-ОН группы для образования связи со следующей фосфатной группой.

Поэтому в результате включения подобного дигидроксинуклеотида синтез

комплементарной цепи ДНК терминируется.

В результате реакции Сэнгера получена следующая последовательность нуклеотидов,

содержащая фрагмент

5'-TTTGGAGTTTGAGGTATACCTAGAGTACCTCCA-3'

Используя инструмент BLAST [3], определите, какому гену человека соответствует данная

последовательность.

Рекомендуемая литература

● Статья "Метод Сэнгера" в Википедии

● Биомолекула: 12 методов в картинках - https://biomolecula.ru/articles/metody-v-

kartinkakh-sekvenirovanie-nukleinovykh-kislot

● https://blast.ncbi.nlm.nih.gov/Blast.cgi выбрать инструмент NucleotideBLAST

● Лекция о севенировании ДНК по Сэнгеру (к. б. н., н. с. ИХБФМ СО РАН, Артем

Тикунов) — https://youtu.be/hBicxm20n2g

● Анализ последовательностей ДНК, полученных методом Сэнгера в UGENE (Ольга

Голосова) — https://youtu.be/1MLPqFIVPFM

Ответ введите в виде сокращения (две латинских буквы и одной цифры без пробела), или

текстом на английском языке.

Решение: использовать инструмент NucleotideBLAST

Правильный ответ: IL6

Раздел 2

Модуль 1

1. Клонирование ДНК, эндонуклеазы рестрикции, плазмидная ДНК.

Задача 1

В тексте описывается работа с последовательностями ДНК. Выберите наиболее корректные

варианты пропущенных фраз в тексте.

Плазмиды широко используют с середины 20 века для наработки коротких или достаточно

протяженных фрагментов ДНК. Для этого интересующие исследователя

последовательности помещают в плазмидную ДНК. Данный процесс получил название

(генетического анализа / генетического инженирования / клонирования / маркирования /

секвенирования / фрагментирования)1 ДНК. Для выполнения такой процедуры

использовали ферменты эндонуклеазы рестрикции, которые могут (адресно / аналитически

/ качественно / количественно / специфически)2 разрезать молекулы (двуспиральной /

двуцепочечной / консервативной / однонитевой / одноцепочечной)3 ДНК с образованием

различных типов концов получаемых фрагментов. Если в результате разрезания ДНК на

концах образуются короткие одноцепочечные неспаренные нуклеотиды, такие фрагменты

называют (вонючими / инструктивными / колючими / липкими / однонитевыми / острыми /

сопряженными / тонкими / тупыми)4 концами, если неспаренные нуклеотиды не

образуются, такие фрагменты ДНК называют (вонючими / инструктивными / колючими /

липкими / однонитевыми / острыми / сопряженными / тонкими / тупыми)5 концами. Для

получения генно-инженерных плазмид обычно используют рестриктазы, образующие

фрагменты с неспаренными концами. Плазмидную ДНК, и ДНК, содержащую

интересующую исследователя последовательность, разрезают одинаковыми

рестриктазами, отбирают фрагменты интересующей длины и смешивают их в одной

пробирке. В результате фрагменты, содержащие комплементарные друг другу

одноцепочечные последовательности ДНК, соединяются друг с другом. Далее в пробирку

добавляют фермент (ДНК-лигазу / ДНК-полимеразу / метилирования ДНК/ модификации /

репарации ДНК / рестриктазу / экзонуклеазу / эндонуклеазу). Фрагменты, содержащие

одноцепочечные неспаренные участки, могут объединяться случайным образом, поэтому

далее требуется отделить конструкции интересующей исследователя длины. Для этого

используют электрофорез в агарозном геле.

Ответ: 1 - клонирования; 2 - специфически; 3 - двуцепочечной; 4 - липкими; 5 - тупыми; 6

- ДНК-лигазу.

Задача 2

Ферменты метаболизма ДНК используют в генетической инженерии для получения

двуцепочечных молекул ДНК из одноцепочечных, а также для синтеза ДНК на матрице

РНК. Выберите наиболее корректные варианты пропущенных фраз в тексте.

К ферментам матричного синтеза нуклеиновых кислот относят ДНК-зависимые ДНК-

полимеразы: это ДНК-полимераза I из E. coli, ее фрагмент, так называемый (фрагмент

синоним / фрагмент Кленова / фрагмент Оказаки / фрагмент 67 кДа), ДНК-полимеразу фага

Т4, Taq-полимеразу (из (Taq-зонда / Taq-фрагмента / Thermus aquaticus / Thermos / Thermo

Scientific Fisher)). Все эти ферменты в присутствии ионов (натрия / калия / кальция / магния

/ железа) осуществляют синтез ДНК, комплементарной матричной цепи ДНК и для

функционирования требуют наличия затравки (праймера) со свободным (2’ / 3’ / 4’ / 5’)-

ОН-концом, комплементарного (соответствующей / матричной / синтезируемой / участку)

ДНК. Фермент, синтезирующий ДНК на матрице РНК, называют РНК-зависимой ДНК-

полимеразой, или (интегразой / ревертазой / обратной транскриптазой / ДНКазой / РНКазой

/ ДНК-РНКазой). Так же, как и обычные ДНК-полимеразы, РНК-зависимые ДНК-

полимеразы функционируют только при наличии (матричной РНК / праймера / завтрака /

затравки /олиго-ДНК), комплементарной РНК-матрице. Эти ферменты находят применение

в синтезе двуцепочечных ДНК, комплементарных мРНК, так называемых (кРНК / мДНК /

рРНК / кДНК /дРНК). Процесс синтеза ДНК на матрице мРНК играет важную роль в

биотехнологии, для экспрессии определенных генов, в частности, в бактериальных клетках.

Рекомендуемая литература

1. Генетическая инженерия https://biomolecula.ru/articles/12-metodov-v-kartinkakh-

gennaia-inzheneriia-chast-i-istoricheskaia

2. "Синтетическая биология" Статья в журнале "Наука из первых рук"

https://scfh.ru/papers/sinteticheskaya-biologiya/

3. CRISPR https://ru.wikipedia.org/wiki/CRISPR

Пояснения к ответу: в некоторых случаях возможно несколько правильных ответов.

Ответ: фрагмент Кленова; Thermus aquaticus; магния; 3’; матричной; ревертазой, обратной

транскриптазой; праймера, завтравки; кДНК.

Задача 3

В результате разрезания плазмиды pBR322 (длина 4361 п.н.) рестриктазой AccBSII

образовались два фрагмента длиной 2560 п.н. и 1801 п.н.

Определите массу фрагмента длиной 1801 п.н., если известно, что масса исходной

плазмиды составляла 1000 нг.

Ответ округлите до целого числа.

Пояснения к ответу: следует соотнести длину фрагмента и массу исходной плазмиды.

Ответ: 413.

Задача 4

Плазмида pBluescript содержит 2961 пар оснований. Эндонуклеаза рестрикции узнает сайт

HaeIII распознает сайт GGCC. Предположим, что нуклеотиды в плазмиде распределены

случайно, количество А=Т=Ц=Г. Сколько сайтов рестрикции в данной плазмиде могла бы

иметь данная рестриктаза? Отличается ли число теоретических сайтов от реально

существующих в плазмиде? Почему?

Введите число предполагаемых сайтов рестрикции.

Решение: теоретическое число сайтов можно вычислить, исходя из того, что вероятность

встречи одного нуклеотида 0,25, соответственно, 0,25^4*2961=11.56

Ответ: 11

Задача 5

Плазмида содержит 4000 пар оснований. Эндонуклеаза рестрикции узнает сайт HaeIII

распознает сайт GGCC. Предположим, что нуклеотиды в плазмиде распределены случайно,

количество А=Т=Ц=Г. Сколько сайтов рестрикции в данной плазмиде могла бы иметь

данная рестриктаза?

Введите число предполагаемых сайтов рестрикции.

Решение: вероятность встречи 4 нуклеотидов в плазмиде длиной 4000 п. о. = (0,25)^4 *4000

= 15.625

Ответ: 15

Задача 6

Плазмида содержит 3000 пар оснований. Эндонуклеаза рестрикции узнает сайт HaeIII

распознает сайт GGCC. Предположим, что нуклеотиды в плазмиде распределены случайно,

количество А=Т=Ц=Г.

Таким образом, вероятность того, что в данном месте находится нуклеотид G = 1/4.

Соответственно, вероятность встречи динуклеотида GG = 1/4*1/4=1/16.

Сколько сайтов рестрикции в данной плазмиде теоретически имеет данная рестриктаза?

Введите число теоретических сайтов рестрикции.

Решение: вероятность встречи 4 нуклеотидов в плазмиде длиной 3000 п. о. = (0,25)^4 *3000

= 11.71

Ответ: 12

2. Генетически модифицированные организмы, трансформация бактерий.

Задача 1

Исследователь пытался экспрессировать ген в бактериальной клетке. Для этого кДНК гена

была клонирована в плазмиду. Клетки бактерий были трансформированы полученной

плазмидой. Вечером исследователь понял, что забыл добавить на чашку Петри, куда были

помещены трансформированные бактерии, антибиотик.

Что увидит исследователь в чашке Петри на следующий день?

Выберите все подходящие ответы из списка

1. Чашку Петри, на которой не выросли бактерии

2. Чашку Петри с нетрансформированными бактериями, так как антибиотик

требовался для трансформации

3. Переполненную чашку Петри, на которой выросли нетрансформированные и

трансформированные бактерии

4. Чашку Петри с отдельными колониями трансформированных и

нетрансформированных бактерий

Ответ: 3

Задача 2

Для экспрессии рекомбинантных белков в кишечной палочке широко используют

плазмидные векторы. При помощи эндонуклеаз рестрикции, требуемую

последовательность ДНК клонируют в плазмиду. Для определения бактерий, содержащих

плазмиды со вставкой, используют бело-синюю селекцию. После трансформации

компетентных клеток в таком случае используют среду, содержащую соединение X-gal.

Трансформированные клетки, содержащие плазмиду со вставкой и без вставки,

отличаются по цвету.

Выберите правильные суждения.

1. Колонии, содержащие плазмиду со встройкой, окрашены в синий цвет

2. Колонии, содержащие плазмиду со встройкой, окрашены в белый цвет

3. Синие колонии превращаются в белые после вставки необходимой

последовательности в плазмиду

4. Вставка последовательности в плазмиду приводит к нарушению

функционированию гена LacZ

5. Белые колонии превращаются в синие после вставки необходимой

последовательности в плазмиду

6. Белковый продукт гена LacZ — фермент бета-галактозидаза

7. Плазмида, содержащая вставку, вызывает накопление X-gal в клетках

8. Бета-галактозидаза гидролизует бесцветный X-gal c образованием окрашенного

продукта

9. Клетки, не содержащие плазмиду, не вырастают на чашке Петри с антибиотиком

10. Бета-галактозидаза гидролизует синий X-gal c образованием неокрашенного

продукта

Ответ: 2, 4, 6, 8, 9

Модуль 2

Задача 1

Искусственные плазмиды активно используют в генетической инженерии в качестве

векторов, в которые клонируют гены, кодирующие белки, представляющие интерес для

исследований. Для "вырезания"фрагментов ДНК используют ферменты эндонуклеазы

рестрикции. Для анализа сайтов рестрикции удобно использовать бесплатную программу

UGENE [1]. Плазмиду pBluescript (длина 2961 п.н.) используют для экспрессии различных

рекомбинантных белков [2].

Сайт Addgene (http://www.addgene.org/) позволяет исследователям в лабораториях по всему

миру заказывать плазмиды, имеющиеся в коллекции (более 80 тысяч плазмид). Аспирантка

Даша заказала с сайта Addgene плазмиду, экспрессирующую ДНК-лигазу, но ее не

удовлетворяет уровень экспрессии данного белка. Для переклонирования Даша

использовала рестриктазы (BamHI и NotI), указанные в описании плазмиды pCA24N-ligase.

Используя программу UGENE, файлы с картами соответствующих плазмид, необходимо

"вырезать" ген ДНК-лигазы из плазмиды pCA24N-ligase и "встроить" его в pBluescript [1,

4]. Определите теоретическую длину плазмиды pBluescript после встройки гена ДНК-

лигазы (в поле ответ введите длину в виде четырехзначного числа без пробелов, букв и

других символов).

Рекомендуемые ссылки

1. Программа UGENE (ссылка для скачивания); инструкция по рестрикционному

анализу https://ugene.net/wiki/display/UUOUM31/Restriction+Analysis

2. Информация о плазмиде https://en.wikipedia.org/wiki/Blue%E2%80%93white_screen

ссылка для скачивания последовательности в *.fasta

http://www2.kumc.edu/soalab/LabLinks/vectors/pbluescr.htm

3. Plasmid #87741 - pCA24N-ligase http://www.addgene.org/87741/ последова-

тельность в виде gb-файла (https://media.addgene.org/data/plasmids/87/87741/87741-

attachment_Z4nGnCtL59S_.gb).

4. Клонирование в программе UGENE

https://ugene.net/wiki/display/UUOUM15/Molecular+Cloning+in+silico

Решение

Запустить UGENE, загрузить последовательность плазмидной ДНК pCA24N- ligase,

получить фрагмент гена при помощи рестриктаз BamHI и NotI, гидролизовать плазмиду

pBluescript рестриктазой NotI (рестриктаза BamHI дает несовместимые липкие концы),

провести лигирование двух фрагментов, определить длину кольцевой молекулы (4430 пар

нуклеотидов).

Ответ: 4430.

Задача 2

В результате разрезания плазмиды pBluescript (длина 2961 п.н.) рестриктазой SspI

образовались два фрагмента. Определите массу более длинного фрагмента плазмиды

pBluescirpt, образовавшегося после рестрикции SspI, если известно, что масса исходной

плазмиды составляла 2018 нг. Ответ округлите до целого числа.

Для работы с плазмидами существует несколько программ для ПК, например, бесплатная

SnapGene Viewer [1]. Карту плазмиды pBluescript для работы в программе SnapGene

Viewer можно скачать по ссылке [2].

Рекомендуемая литература

1. Ссылка для скачивания программы SnapGeneViewer

https://www.snapgene.com/products/snapgene_viewer/

2. Ссылка для скачивания файла pBluescript II SK (+) для работы в программе SnapGene

Viewer

https://www.snapgene.com/resources/plasmid_files/basic_cloning_vectors/pBluescript_II_

SK(+)/

Пояснения к ответу: следует определить сайты рестрикции, длины фрагментов ДНК,

получающихся в результате рестрикции, соотнести длину фрагментов и массу исходной

плазмиды.

Ответ: 1929.

Задача 3

В результате разрезания плазмиды pBR322 рестриктазами HindII и BstBAI образовалось

несколько фрагментов. Определите массу самого длинного фрагмента плазмиды pBR322,

образовавшегося после гидролиза рестриктазами HindII и BstBAI, если известно, что

масса исходной плазмиды составляла 2019 нг. [2]. Ответ округлите до целого числа.

Для работы с плазмидами существует несколько программ для ПК, например, бесплатная

SnapGene Viewer [1]. Карту плазмиды pBR322 для работы в программе SnapGene Viewer

можно скачать по ссылке [2].

Рекомендуемая литература

1. Ссылка для скачивания программы SnapGeneViewer

https://www.snapgene.com/products/snapgene_viewer/

2. Ссылка для скачивания файла pBR322 для работы в программе SnapGene Viewer

http://www.snapgene.com/resources/plasmid_files/basic_cloning_ vectors/pBR322/

Пояснения к ответу: следует определить сайты рестрикции, длины фрагментов ДНК,

получающихся в результате рестрикции, соотнести длину фрагмента и массу исходной

плазмиды.

Ответ: 778.

Задача 4

В результате разрезания плазмиды pBluescript (длина 2961 п.н.) рестриктазой AcoI

получено несколько фрагментов. Определите массу самого длинного фрагмента плазмиды

pBluescirpt, образовавшегося после рестрикции AcoI, если известно, что масса исходной

плазмиды составляла 2020 нг. Ответ округлите до целого числа.

Используя программу UGENE (или аналогичную) [1], карту плазмиды pBluescript

(последовательность нуклеотидов можно найти по ссылке, сохранить в блокноте в

текстовом формате с расширением *.fasta) [2], проведите анализ длины фрагментов ДНК

которые образуются в результате рестрикции.

Рекомендованные ссылки

1. Программа UGENE (ссылка для скачивания); инструкция по рестрикционному

анализу https://ugene.net/wiki/display/UUOUM31/Restriction+Analysis

2. Информация о плазмиде https://en.wikipedia.org/wiki/Blue%E2%80%93white_screen

ссылка для скачивания последовательности в *.fasta

http://www2.kumc.edu/soalab/LabLinks/vectors/pbluescr.htm

Решение: запустить UGENE, загрузить последовательность плазмидной ДНК, ввести

названия рестриктазы AcoI, выбрать фрагмент с максимальной длиной (984).

Ответ: 982.

Задача 5

Искусственные плазмиды активно используют в генетической инженерии в качестве

векторов, в которые клонируют гены, кодирующие белки, представляющие интерес для

исследований. Для работы с плазмидами существует несколько программ для ПК,

например, бесплатная SnapGene Viewer [1] или бесплатная UGENE[2]. Молекулярные

биологи активно используют плазмиду pBluescript для отбора успешно

трансформированных клонов [3]. Карту этой плазмиды для работы в программе SnapGene

Viewer можно скачать по ссылке [4].

Для решения задач в области генетической инженерии широко используют эндонуклеазы

рестрикции - ферменты, позволяющие "разрезать" двуцепочечную ДНК [6]. Рестриктазы

позволяют "вырезать" гены из одного источника и далее клонировать полученные

последовательности в различные векторы, в том числе, плазмидные. Информация о

специфичности эндонуклеаз рестрикции, а также сайты рестрикции имеется в программе

SnapGene Viewer или UGENE.

Плазмиду pBluescript (длина 2961 п.н.) используют для экспрессии различных

рекомбинантных белков. Плазмиду pUC19 (длина 2686 п.н.) используют для экспрессии

различных рекомбинантных белков.

Рекомендуемая литература

1. Программа SnapGene Viewer http://www.snapgene.com/products/snapgene_viewer/

При установке рекомендуем выбрать Sibenzyme верхней строчкой поставщика

эндонуклеаз рестрикции.

2. Программа UGENE (ссылка для скачивания; http://ugene.net/download.html);

инструкция по рестрикционному анализу

https://ugene.net/wiki/display/UUOUM31/Restriction+Analysis

3. Информация о плазмиде pBluescript https://en.wikipedia.org/wiki/PBluescript

4. Ссылка для скачивания файла pBluescript II SK (+) для работы в программе

SnapGene Viewer

https://www.snapgene.com/resources/plasmid_files/basic_cloning_vectors/pBluescript_II

_SK(+)/

5. Информация о плазмиде pUC19, https://en.wikipedia.org/wiki/PUC19 ссылка для

скачивания последовательности в fasta https://www.neb.com/tools-and-

resources/interactive-tools/dna-sequences-and-maps-tool

6. Статья о рестриктазах в Википедии

https://ru.wikipedia.org/wiki/%D0%AD%D0%BD%D0%B4%D0%BE%D0%BD%D1%8

3%D0%BA%D0%BB%D0%B5%D0%B0%D0%B7%D1%8B_%D1%80%D0%B5%D1

%81%D1%82%D1%80%D0%B8%D0%BA%D1%86%D0%B8%D0%B8

Вариант 1

Используя программу SnapGene Viewer, карту плазмиды pBluescript, соотнесите

эндонуклеазы рестрикции (PvuII, BstBAI, RsaI, EcoICRI, SspI) и фрагменты, которые будут

получены при их действии на данную плазмиду.

1. PvuII+BstBAI

2. RsaI + EcoICRI

3. SspI + RsaI

4. PvuII+SspI

5. EcoICRI + BstBAI

a. 130+448+510+1873

б. 302 + 448 + 2211

в. 530 + 2431

г. 130+324+636+1871

д. 102 + 1090 + 1769

Пояснения к ответу: следует определить сайты рестрикции, длины фрагментов ДНК,

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

рестриктаз.

Ответ: 1 - б, 2 - д, 3 - г, 4 - а, 5 - в.

Вариант 2

Используя программу SnapGene Viewer, карту плазмиды pBluescript, соотнесите длины

фрагментов плазмидной ДНК, которые будут получены при действии рестриктаз Acc16I,

BstBAI, HindII, PvuII, SspI и ZrmI с пробирками, которые содержат реакционные смеси с

разными рестриктазами.

1. Acc16I + HindII

2. HindII + SspI

3. SspI + ZrmI

4. ZrmI + PvuII

5. PvuII + BstBAI

6. BstBAI + Acc16I

а. 302, 448, 2211

б. 448, 964, 1549

в. 197, 1172, 1592

г. 130, 324, 2507

д. 130, 657, 2174

е. 252, 920, 1789

Пояснения к ответу: следует определить сайты рестрикции, длины фрагментов ДНК,

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

рестриктаз.

Ответ: 1 - в, 2 - д, 3 - г, 4 - б, 5 - а, 6 - е.

Вариант 3

Задача. Используя программу UGENE, карту плазмиды pBluescript (последовательность

нуклеотидов можно найти по ссылке, сохранить в блокноте в текстовом формате с

расширением *.fasta), сопоставьте число фрагментов ДНК которые образуются при

гидролизе плазмидной ДНК pBluescript различными эндонуклезами рестрикции.

Сопоставьте значения из двух списков

1. SspI + VspI.

2. AcsI + PciI + EcoRI.

3. HgaI + GsaI.

4. AjnI.

5. Acc16I + AcuI + DriI.

а. 197+381+730+820+833.

б. 222+345+445+727+1222.

в. 11+452+661+1837.

г. 13+121+288+317+2222.

д. 59+130+632+905+1235.

Решение: запустить UGENE, загрузить последовательность плазмидной ДНК, ввести

комбинации рестриктаз из левой колонки, сопоставить длину образующихся фрагментов в

правом столбце.

Ответ: 1 - д, 2 - в, 3 - а, 4 - г, 5 - б

Вариант 4

Задача. Используя программу UGENE, карту плазмиды pBluescript (последовательность

нуклеотидов можно найти по ссылке, сохранить в блокноте в текстовом формате с

расширением *.fasta), сопоставьте число фрагментов ДНК которые образуются при

гидролизе плазмидной ДНК pBluescript различными эндонуклезами рестрикции.

Сопоставьте значения из двух списков

1. FokI.

2. AcsI + PciI.

3. EcoRI + DriI + GsaI + PciI.

4. AcuI + PvuII.

5. Bst6I + DriI.

6. SspI + VneI.

а. 520+637+795+1009.

б. 308+452+585+1616.

в. 130+137+1246+1448.

г. 448+724+777+1012.

д. 11+452+661+1837.

е. 181+287+1036+1457.

Решение: запустить UGENE, загрузить последовательность плазмидной ДНК, ввести

названия рестриктаз из левой колонки, сопоставить длину образующихся фрагментов в

правом столбце.

Ответ: 1 - е, 2 - д, 3 - б, 4 - г, 5 - а, 6 - в.

Вариант 5

Используя программу UGENE, карту плазмиды pUC19 (последовательность нуклеотидов

можно найти по ссылке, сохранить в блокноте в текстовом формате с расширением *.fasta),

сопоставьте число фрагментов ДНК которые образуются при гидролизе плазмидной ДНК

pUC19 различными эндонуклезами рестрикции.

Сопоставьте значения из двух списков

1. BmuI.

2. VneI.

3. Acc16I.

4. PvuII.

5. RsaI.

6. AccBSI.

а. 1023+1663.

б. 322+2364.

в. 497+943+1246.

г. 241+644+1801.

д. 241+676+1769.

е. 1306+1380.

Решение: запустить UGENE, загрузить последовательность плазмидной ДНК, ввести

названия рестриктаз из левой колонки, сопоставить длину образующихся фрагментов в

правом столбце.

Ответ: 1 - е, 2 - в, 3 - а, 4 - б, 5 - д, 6 - г.

Задача 6

Искусственные плазмиды активно используют в генетической инженерии в качестве

векторов, в которые клонируют гены, кодирующие белки, представляющие интерес для

исследований. Работать с последовательностями нуклеотидов плазмидной ДНК вручную,

искать самостоятельно сайты рестрикции, крайне затруднительно. Специально для таких

работ существуют несколько программ для ПК, например, бесплатная UGENE (пример

визуализации плазмидной ДНК см. на рисунке II.2.1).

Для решения задач в области генетической инженерии широко используют эндо- нуклеазы

рестрикции - ферменты, позволяющие "разрезать" двуцепочечную ДНК. Рестриктазы

позволяют "вырезать" гены из одного источника и далее клонировать полученные

последовательности в различные векторы, в том числе, плазмидные. Информация о

специфичности эндонуклеаз рестрикции, а также сайты рестрикции имеется в программе

UGENE.

Молекулярные биологи активно использовали плазмиду pBR322 в течение многих лет.

Рекомендованные ссылки

1. Программа UGENE (ссылка для скачивания http://ugene.net/download.html)

инструкция по рестрикционному анализу

https://ugene.net/wiki/display/UUOUM31/Restriction+Analysis

2. Информация о плазмиде pBR322 https://www.neb.com/tools-and-resources/interactive-

tools/dna-sequences-and-maps-tool

3. Статья о рестриктазах в Википедии Эндонуклеазы рестрикции

https://ru.wikipedia.org/wiki/Эндонуклеазы_рестрикции

4. Методы генетической инженерии https://biomolecula.ru/articles/12-metodov-v-

kartinkakh-gennaia-inzheneriia-chast-ii-instrumenty-i-tekhniki

Вариант 1

Используя программу UGENE (или аналогичную) [1], карту плазмиды pBR322

(последовательность нуклеотидов можно найти по ссылке, сохранить в блокноте в

текстовом формате с расширением *.fasta) [2], определите число фрагментов ДНК которые

образуются при гидролизе плазмидной ДНК эндонуклезой рестрикции GlaI. Ответом

является число.

Решение: запустить UGENE, открыть карту плазмиды, выбрать «Операции – Анализ –

Поиск сайтов рестрикции», выбрать рестриктазу GlaI. В результате полной рестрикции

образуется 31 фрагмент.

Ответ: 31.

Вариант 2

Используя программу UGENE (или аналогичную) [1], карту плазмиды pBR322

(последовательность нуклеотидов можно найти по ссылке, сохранить в блокноте в

текстовом формате с расширением *.fasta) [2], определите число фрагментов ДНК

длиннее 100 пар нуклеотидов, которое получится при гидролизе плазмидной ДНК

эндонуклезой рестрикции HaeIII. Введите число фрагментов заданной длины в поле

"ответ".

Решение: запустить UGENE, открыть карту плазмиды, выбрать «Операции – Анализ –

Поиск сайтов рестрикции», выбрать рестриктазу HaeIII. Из 22 сайтов рестрикции выбрать

фрагменты, длиннее 100 пар нуклеотидов, фрагментов с такой длиной – 13.

Ответ: 13.

Задача 7

Искусственные плазмиды активно используют в генетической инженерии в качестве

векторов, в которые клонируют гены, кодирующие белки, представляющие интерес для

исследований. Для работы с плазмидами существует несколько программ для ПК,

например, бесплатная SnapGene Viewer [1]. Плазмиду pBR322 активно использовали в

1980-е годы. Карту этой плазмиды для работы в программе SnapGene Viewer можно

скачать по ссылке [2].

Для решения задач в области генетической инженерии широко используют эндонуклеазы

рестрикции - ферменты, позволяющие "разрезать" двуцепочечную ДНК. Рестриктазы

позволяют "вырезать" гены из одного источника и далее клонировать полученные

последовательности в различные векторы, в том числе, плазмидные. Информация о

специфичности эндонуклеаз рестрикции, а также сайты рестрикции плазмид имеются в

программе SnapGene Viewer.

Используя программу SnapGene Viewer (или аналогичную) [1], карту плазмиды pBR322

[2], соотнесите эндонуклеазы рестрикции (EcoRI, NruI и PstI) и фрагменты, которые будут

получены при их действии на данную плазмиду. Фотография геля с продуктами

рестрикции приведена на рисунке. Числа около фрагментов на дорожках В-Ж

соответствуют расчетным длинам продуктов рестрикции.

1. A 2. Б 3. В 4. Г 5. Д

6. Е 7. Ж

a. pBR322 б. Маркер в. pBR322 г. pBR322 д. pBR322 е. pBR322

ж. pBR322

молекулярной массы ДНК + PstI + EcoRI+ PstI + NruI+ EcoRI + NruI

+ PstI + NruI + EcoRI + PstI

Рекомендуемая литература

4. Программа SnapGene Viewer http://www.snapgene.com/products/snapgene_viewer/ При

установке рекомендуем выбрать Sibenzyme верхней строчкой поставщика

эндонуклеаз рестрикции.

5. Ссылка для скачивания файла pBR322 для работы в программе SnapGene Viewer

http://www.snapgene.com/resources/plasmid_files/basic_cloning_vectors/pBR322/

Пояснения к ответу: следует определить сайты рестрикции, длины фрагментов ДНК,

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

рестриктаз.

Ответ: 1 - б, 2 - а, 3 - ж, 4 - д, 5 - г, 6 - в, 7 - е.

Раздел 3 Модуль 1

1. Основные молекулярно-генетические процессы. Репликация ДНК (180 минут).

Задача 1

Репликация ДНК - процесс синтеза дочерней молекулы на матрице ДНК. У человека и

кишечной палочки процесс репликации ДНК обеспечивает точную передачу генетической

информации из клетки в клетку и из поколения в поколение и обычно происходит перед

делением клетки.

Сопоставьте правильные суждения о принципах репликации ДНК, особенностях ДНК-

полимеразы и процессе синтеза ДНК.

Рекомендуемые ссылки

1. 25 лекций по молекулярной биологии (НГУ, Дымшиц) https://e-

lib.nsu.ru/reader/bookView.html?params=UmVzb3VyY2UtMzQ5OQ/cGFnZTAwMQ

2. Курс молекулярной биологии (МГУ, Асеев) https://www.youtube.com/watch?v=5k-

WuhdJJCo&list=PLcsjsqLLSfNBSQRWQXz0Pgf1lLkFz8GKx

1. Инициация.

2. Матричный синтез.

3. Недорепликация 3’-концевых участков хромосом.

4. Антипараллельность.

5. Полуконсервативность.

6. Прерывистость.

7. Потребность в затравке.

а. Молекулы ДНК после репликации содержат только одну цепочку материнской ДНК.

б. Синтез ДНК по отстающей цепи происходит фрагментами.в. Для репликации ДНК-

полимеразе требуется матрица одноцепочечной ДНК.

г. ДНК-полимераза может удлинять существующие полинуклеотиды только с 3’- конца.

д. В результате репликации происходит укорочение линейных хромосом.

е. ДНК-полимераза движется по матрице одноцепочечной ДНК в направлении 3’->5’.

ж. Репликация начинается в особых местах хромосом, называемых ориджинами

репликации.

Ответ: 1 - ж, 2 - в, 3 - д, 4 - е, 5 - а, 6 - б, 7 - г.

Задача 2

Репликация ДНК - процесс синтеза дочерней молекулы на матрице ДНК. У человека и

кишечной палочки процесс репликации ДНК обеспечивает точную передачу генетической

информации из клетки и в клетку и из поколения в поколение и обычно происходит перед

делением клетки.

Выберите правильные суждения о репликации ДНК в клетках человека.

Рекомендуемые ссылки

1. 25 лекций по молекулярной биологии (НГУ, Дымшиц) https://e-

lib.nsu.ru/reader/bookView.html?params=UmVzb3VyY2UtMzQ5OQ/cGFnZTAwMQ

Выберите все подходящие ответы из списка

1. Для синтеза ДНК в качестве матрицы используется только одна (материнская)

цепочка ДНК, вторая цепь (комплементарная) используется для проверки

корректности работы полимеразы.

2. ДНК-полимераза самостоятельно денатурирует ДНК, восстанавливая при этом

водородные связи.

3. Репликация ДНК осуществляется по полуконсервативному механизму, при

котором дочерняя цепь синтезируется на матрице материнской.

4. Репликация ДНК происходит только в ядре клетки.

5. Репликацию ДНК осуществляет комплекс из ДНК-зависимой ДНК-полимеразы и

коротких последовательностей ДНК, комплементарных матричной цепи

(фрагменты Оказаки).

6. Синтезированные фрагменты ДНК сшивает ДНК-лигаза.

7. Репликация начинается в определенном сайте кольцевой хромосомы, называемом

ориджином (ori) репликации.

8. Концевые участки хромосом недореплицируются на 10-20 нуклеотидов.

9. Молекула ДНК-полимеразы двигается по материнской цепочке в направлении 5’-

>3’, синтез ДНК идет в направлении 5’->3’.

Решение: так как репликация проходит по полуконсервативному механизму, верный

вариант 1; так как фрагменты Оказаки, синтезируемые по отстающей цепи, сшиваются

ДНК-лигазой, верный вариант 5; так как концевые участки (теломеры)

недореплицируются на 10–20 нуклеотидов, верный вариант 7.

Ответ: 3, 6, 8.

Задача 3

В каком направлении происходит синтез ДНК, катализируемый ДНК-полимеразой и

обратной транскриптазой?

Выберите все подходящие ответы из списка

1. обратная транскриптаза катализирует синтез ДНК в

направлении 5’→3’

2. ДНК-полимераза катализирует синтез ДНК в направлении

5’→3’

3. обратная транскриптаза катализирует синтез ДНК в

направлении 3’→5’

4. ДНК-полимераза катализирует синтез ДНК в направлении

3’→5’

Решение: ДНК полимераза и обратная транскриптаза синтезируют

ДНК в направлении 5’→3’

Ответ: 1, 2

Задача 4

Исследователь пытался получить комплементарную ДНК, кодирующую целевой белок.

Он выделил и размножил образец мРНК. В конце эксперимента студент получил

молекулы, содержащие только рибонуклеотиды.

Выберите правильные тезисы

1. Синтез кДНК прошел успешно

2. В реакционную смесь была добавлена РНК-полимераза

3. Получены продукты работы обратной транскриптазы

4. В реакционную смесь не была добавлена обратная транскриптаза

Ответ: 4

2. Основные молекулярно-генетические процессы. Транскрипция.

Задача 1

Рецептором нового коронавируса SARS-CoV-2 в организме человека является ангиотензин-

превращающий фермент 2 (ACE2) [1]. После заражения белок Spike на поверхности

вириона связывается с ACE2 и таким образом вирус попадает внутрь клетки.

База данных NCBI содержит несколько последовательностей, соответствующих гену ACE2

человека [2].

Используя последовательности NM_021804.3 и NP_068576.1, найдите информацию о мРНК

и белковом продукте гена ACE2.

Известно, что мРНК содержит 3'- и 5'- нетранслируемые области (НТО) [3].

Ввести числовой ответ в соответствующее поле (без обозначений п.о.), выбрать правильные

суждения.

Рекомендованные ссылки

● Статья на Биомолекуле - https://biomolecula.ru/articles/covid-19-chto-my-znaem-i-

chego-ne-znaem

● Информация о гене ACE2 в базе NCBI - https://www.ncbi.nlm.nih.gov/gene/59272

● Статья в Википедии - Нетранслируемые области

Решение: использовать материалы, представленные на странице

https://www.ncbi.nlm.nih.gov/gene/59272

Ответ: Ген ACE2 содержит 21 экзон(ов). В мРНК гена ACE2 человека седьмой кодон ATG

является стартовым. Ген ACE2 находится в коротком плече половой (Х) хромосомы.

3. Генетический код и его свойства (180 минут).

Задача 1

Представлена последовательность оснований матричной цепи ДНК: 5’-

TACGCCTTCGCCTTCGCC-3’.

Закодированный полипептид состоит из 6 аминокислотных остатков. При гидролизе этого

пептида, получается смесь трех аминокислот, которая содержит: аминокислота M (1 часть),

аминокислота K (2 части), аминокислота A (3 части).

Запишите последовательность аминокислот в пептиде (без пробелов, латинскими буквами).

Решение: следует сопоставить триплеты матричной цепи ДНК с заданной частотой

встречаемости аминокислот, порядок следования аминокислот задается

последовательностью ДНК. Соответствие триплетов и аминокислот: TAC – M, TTC – K,

GCC – A. Порядок аминокислот в полипептиде – MAKAKA.

Ответ: MAKAKA.

Задача 2

Представлена последовательность оснований матричной цепи ДНК: 5’-

TGGGCTGTTGAAGTTGAAGTT-3’.

Закодированный полипептид состоит из 7 аминокислотных остатков. При гидролизе этого

пептида, получается смесь 4 аминокислот, которая содержит: аминокислота Q (3 части),

аминокислота L (2 части), аминокислота R (1 часть), аминокислота T (1 часть).

Запишите последовательность аминокислот в пептиде (без пробелов, латинскими буквами),

если дополнительный анализ пептида показал, что аминокислота R не является N- или C-

концевой.

Решение: следует сопоставить триплеты матричной цепи ДНК с заданной частотой

встречаемости аминокислот, порядок следования аминокислот задается

последовательностью ДНК. Соответствие триплетов и аминокислот: TGG – T, GCT – R (из

условий задачи следует, что эта аминокислота не является концевой), GTT – Q, GAA – L.

Порядок аминокислот в полипептиде – TRQLQLQ.

Ответ: TRQLQLQ.

Задача 3

Выберите корректные тезисы, показывающие функциональное отношение кодонов и

аминокислот.

Выберите все подходящие ответы из списка

1. Несколько кодонов не кодируют аминокислоты

2. Одну аминокислоту кодирует только один кодон

3. Одну аминокислоту может кодировать несколько кодонов

4. Один кодон может кодировать несколько аминокислот

Ответ: 1, 2

4. История полимеразной цепной реакции, классификация ПЦР, использование

ПЦР в молекулярной биологии, диагностике (180 минут).

Задача 1

Количество молекул двуцепочечной ДНК, которые образуются в результате

полимеразной цепной реакции (N), описывается формулой, в которой m — исходное

число молекул матрицы ДНК, а n — количество циклов ПЦР.

Определите, сколько (примерно) копий ДНК будет получено к концу 25го цикла ПЦР,

если в качестве матрицы использовали 256 молекул ДНК, а длина продукта ПЦР

составляет 330 пар нуклеотидов.

Выберите один вариант из списка

1. 2 миллиарда

2. 33 миллиона

3. 500 миллионов

4. 256 миллионов

5. 4 миллиарда

6. 1 миллиард

7. 8 миллиардов

8. 3 миллиарда

Ответ: 7

Задача 2

Концентрацию компонентов в растворе обозначают различными способами. Широко

используют количественные характеристики, например, г/л, моль/л (М), % и другие [1].

Например, при приготовлении растворов для нанесения образцов на гель, или при расчете

компонентов смеси для ПЦР часто используют кратные растворы (2х, 4х, 5х, 10х).

Например, для приготовления 100 мл однократного раствора (1х), нужно взять 50 мл

двукратного раствора (2х) и добавить 50 мл воды или другого раствора.

Сколько шестикратного (6x) буферного раствора для нанесения пробы на гель необходимо

добавить в 25 мкл реакционной смеси для достижения в реакционной смеси однократной

(1x) концентрации буферного раствора? Ответ введите виде натурального целого числа без

"мкл".

Рекомендуемая литература:

1. Статья в википедии о концентрации смеси

https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BD%D1%86%D0%B5%D0%BD%D1

%82%D1%80%D0%B0%D1%86%D0%B8%D1%8F_%D1%81%D0%BC%D0%B5%D1%81

%D0%B8

Пояснения к ответу: необходимо определить объем 6х буферного раствора, который

следует добавить до достижения 1х концентрации.

Ответ: 5.

Задача 3

Концентрацию компонентов в растворе обозначают различными способами. Широко

используют количественные характеристики, например, г/л, моль/л (М), % и другие [1].

Например, при приготовлении растворов для нанесения образцов на гель, или при расчете

компонентов смеси для ПЦР часто используют кратные растворы (2х, 4х, 5х, 10х, 50х).

Например, для приготовления 100 мл однократного раствора (1х), нужно взять 50 мл

двукратного раствора (2х) и добавить 50 мл воды.

Для анализа фрагментов ДНК, получаемых методом полимеразной цепной реакции (ПЦР)

и/или эндонуклеазами рестрикции, используют электрофорез в агарозном геле.

Заполните пропуски (при необходимости в качестве десятичного разделителя используйте

запятую, целые числа запишите без десятичного знака).

Для проведения гель-электрофореза ДНК в агарозном геле нужно приготовить 1 л

буферного раствора ТАЕ. В лаборатории имеется в наличии стоковый (исходный) раствор

50х ТАЕ. В колбу для приготовления рабочего раствора необходимо добавить 1 мл 50х

раствора ТАЕ и затем добавить дистиллированную воду до отметки 1000 мл. Заливочный

столик, который имеется в лаборатории, рассчитан на гель объемом 150 мл. Для

приготовления 1,2% агарозного геля в колбу следует внести 2 г порошка агарозы и прилить

раствор ТАЕ 1х до отметки 150 мл. Тщательно перемешать содержимое колбы и дважды

довести до кипения в микроволновой печи. Охладить полученный гель под струей

проточной воды при перемешивании. Для визуализации двуцепочечной ДНК перед

заливкой геля в колбу следует добавить 3 мкл 10000х раствора интеркалирующего

красителя SYBR Green (конечная концентрация SYBR Green в геле - 1х).

Ответ: 1 - 20, 2 - 1.8, 3 - 15.

Задача 4

Смесь для проведения ПЦР состоит из нескольких компонентов. Перед началом

эксперимента часто нужно сначала приготовить рабочий раствор. Обычно в лаборатории

имеются стоковые (исходные) растворы компонентов, необходимых для проведения ПЦР.

Концентрации стоковых растворов:

• ДНК-полимераза, 40х;

• смесь дезоксинуклеозидтрифосфатов, 15 мМ каждого;

• прямой праймер, 5,5 мкМ;• обратный праймер, 5 мкМ;

• матрица ДНК, 140 нг/мкл;• хлорид магния, 30 мМ;

• Tween 20, 3%;

• Трис-HCl рН 8.5, 0,35 М;

• хлорид калия, 0,35 М.

Определите, какой объем стоковых растворов и воды следует добавить в реакционную

смесь, если известно, что конечный объем реакционной смеси 50 мкл. Необходимо

сопоставить концентрацию компонента в реакционной смеси и объем данного компонента

в мкл, который следует добавить в реакционную смесь для достижения заданной

концентрации.

1. ДНК-полимераза, 1х;

2. дНТФ, 0,45 мМ;

3. прямой праймер, 300 нМ;

4. обратный праймер, 300 нМ;

5. матрица ДНК, 10 нг/мкл;

6. хлорид магния, 2,5 мМ;

7. Твин 20, 0,15%;

8. Трис-HCl pH 8,5, 80 мМ;

9. хлорид калия, 50 мМ;

10. вода бидистиллированная.

а. 7,1.

б. 1,3.

в. 11,4.

г. 1,5.

д. 12,7.

е. 4,2.

ж. 3,0.

з. 2,7.

и. 3,6.

к. 2,5.

Решение: необходимо вычислить разведение каждого из компонентов (разделить

концентрацию стокового раствора на конечную концентрацию) и сопоставить объемы,

добавляемые в реакционную смесь с объемами в правом столбце таблицы. Например,

исходная концентрация ДНК-полимеразы 40х, конечная – 1х, разбавление в 40 раз, нужно

добавить 50/40 = 1, 3 мкл; исходная концентрация дНТФ 15 мМ, конечная – 0,45 мкМ,

разбавление 15/0, 45 = 33, 3 раза, нужно добавить 50/33, 3 = 1, 5 мкл.

Ответ: 1 - б, 2 - г, 3 - з, 4 - ж, 5 - и, 6 - е, 7 - к, 8 - в, 9 - а, 10 - д.

Задача 5

Смесь для проведения ПЦР состоит из нескольких компонентов. Перед началом

эксперимента часто нужно сначала приготовить рабочий раствор. Обычно в лаборатории

имеются стоковые (исходные) растворы компонентов, необходимых для проведения ПЦР.

Даны концентрации стоковых растворов

• ДНК-полимераза, 1.5 ед/мкл

• смесь дезоксинуклеозидтрифосфатов, 10 мМ каждого

• прямой праймер, 6 мкМ

• обратный праймер, 3.75 мкМ

• матрица ДНК, 50 нг/мкл

• хлорид магния, 30 мМ

• Tween 20, 1.25%

• Трис рН 8.5, 0.3 М

• хлорид калия, 0.25 М

Определите, какой объем стоковых растворов и воды следует добавить в реакционную

смесь, если известно, что конечный объем реакционной смеси 25 мкл.

Сопоставьте компоненты реакционной смеси и их финальные концентрации и объем

данного компонента, который следует добавить в реакционную смесь для достижения

заданной концентрации.

1. вода деионизованная

2. ДНК-полимераза, 0.03 ед/мкл

3. нуклеозидтрифосфаты, 0.4 мМ каждого

4. прямой праймер, 300 нМ

5. обратный праймер, 300 нМ

6. матрица ДНК, 4.5 нг/мкл

7. хлорид магния, 3 мМ

8. Tween 20, 0.15%

9. Трис рН 8.5, 45 мМ

10. хлорид калия, 40 мМ

а. 4 мкл

б. 3.75 мкл

в. 2.0 мкл

г. 1.25 мкл

д. 1.0 мкл

е. 3 мкл

ж. 0.5 мкл

з. 2.5 мкл

и. 2.25 мкл

л. 4.75 мкл

Пояснения к ответу: следует вычислить разведение стокового раствора до финальной

концентрации, определить объем добавляемого стокового раствора, соотнести объем и

компонент.

Ответ: 1 - л, 2 - ж, 3 - д, 4 - г, 5 - в, 6 - и, 7 - з, 8 - е, 9 - б, 10 - а.

Задача 6

Лаборант-исследователь подготовил реакционную смесь для полимеразной цепной

реакции (ПЦР), добавил в пробирку следующие компоненты:

• Двухкратный буфер для ПЦР (с Mg2+)

• ДНК-матрица

• Прямой праймер

Затем лаборант отвлекся на смс-сообщение, а когда вернулся к протоколу, задумался, каких

компонентов не хватает в реакционной смеси.

Определите, какие компоненты нужно добавить в реакционную смесь

1. дезоксигуанозинтрифосфат

2. РНК-матрица

3. РНК-зависимая ДНК-полимераза

4. дезокситимидинтрифосфат

5. дезоксиаденозинтрифосфат

6. дезоксицитидинтрифосфат

7. ДНК-зависимая РНК-полимераза

8. ДНК-зависимая ДНК-полимераза

9. обратный праймер

10. дезоксиуридинтрифосфат

Редомендуемая литература

1) Рекомендации по постановке ПЦР http://evrogen.ru/kit-user-manuals/ Evrogen-PCR-

recommendation.pdf

2) 12 методов в картинках: полимеразная цепная реакция

https://biomolecula.ru/articles/metody-v-kartinkakh-polimeraznaia-tsepnaia-reaktsiia

Пояснения к ответу: необходимо выбрать компоненты, которые являются субстратами

ДНК-полимеразы и принимают участие в репликации ДНК.

Ответ: 1, 4, 5, 6, 8.

Задача 7

Лаборант-исследователь готовит реакционную смесь для полимеразной цепной реакции

(ПЦР). Он уже добавил в пробирку следующие компоненты:

• Taq-полимераза (ДНК-зависимая ДНК-полимераза).

• Буферный раствор, содержащий Mg 2+

• Прямой и обратный праймеры.

• Дистиллированная вода.

Рекомендуемая литература

1. Рекомендации по постановке ПЦР http://evrogen.ru/kit-user-manuals/Evrogen-PCR-

recommendation.pdf

2. 12 методов в картинках: полимеразная цепная реакция

https://biomolecula.ru/articles/metody-v-kartinkakh-polimeraznaia-tsepnaia-reaktsiia

Определите, какие еще компоненты нужно добавить в реакционную смесь

1. ДНК-матрица;

2. смесь дезоксинуклеозидтрифосфатов (dNTP);

3. АТФ;

4. хлорид натрия;

5. активатор ДНК-полимеразы.

Решение: Xлорид натрия не является компонентом реакционной смеси (вариант 1), для

ПЦР не требуется активатор ДНК-полимеразы (вариант 4), АТФ не является суб- стратом

ДНК-полимеразы (вариант 5). Таким образом, правильные ответы 2 и 3.

Ответ: 1, 2.

Задача 8

Для успешной специфичной наработки фрагмента ДНК в ходе ПЦР важны все компоненты

реакционной смеси. В литературе подробно описаны принципы подбора праймеров,

закономерности специфичности ПЦР, а также многие другие особенности [1, 2, 3].

Выберите корректные суждения о полимеразной цепной реакцииДНК на матрице мРНК

играет важную роль в биотехнологии, для экспрессии определенных генов, в частности, в

бактериальных клетках.

1. увеличение концентрации ионов Mg2+ приводит к снижению специфичности ПЦР

2. ДНК-полимераза может использовать АТР в качестве субстрата при синтезе

дочерней цепи

3. для увеличения специфичности ПЦР в пробирки иногда добавляют минеральное

масло

4. проведение более 50 циклов ПЦР невозможно, так как снижается процессивность

ДНК-полимеразы и/или заканчиваются субстраты ДНК-полимеразы

5. ДНК-полимераза добавляет нуклеотиды к 5’-концу прямого праймера

6. укорочение праймера приводит к снижению температуры отжига

7. стандартнаяTaq-полимеразаэффективноамплифицируетпротяженныхфраг- менты

ДНК длиной более 10 тысяч пар нуклеотидов

8. увеличение длины праймера приводит к повышению специфичности ПЦР

9. отсутствие спаривания на 5’-конце праймера не приводит к значительному

снижению уровня наработки продукта ПЦР

Рекомендуемая литература

1.Стратегия подбора праймеров http://www.rfbr.ru/rffi/ru/books/o_1781847

2. ПЦР https://cyberpedia.su/2x6e17.html

Ответ: 1, 4, 6, 8, 9.

Задача 9

Для диагностики COVID-19 используют метод ОТ-ПЦР-РВ (полимеразная цепная реакция

с обратной транскрипцией и детекцией результатов в режиме реального времени). В

качестве матрицы используют кДНК, полученную обратной транскрипцией.

Выберите верные суждения об использовании метода ПЦР в реальном времени с обратной

транскрипцией для диагностики SARS-CoV-2.

Выберите все подходящие ответы из списка

1. Преимущество количественной ПЦР по сравнению с ПЦР с детекцией по конечной

точке в том, что вероятность контаминации продуктами количественной ПЦР,

намного ниже

2. Использование зонда в количественной ПЦР позволяет в реальном времени следить

за наработкой специфического продукта

3. Перед ПЦР-анализом на COVID-19, анализируемый образец обрабатывают

ДНКазой для удаления возможных примесей совыделяющейся ДНК

4. При детекции SARS-CoV-2 полимеразная цепная реакция происходит после

обратной транскрипции

5. Количество нарабатываемых молекул ДНК пропорционально количеству копий

геномной РНК SARS-CoV-2 в образце

6. Номер цикла, на котором выходит кривая амплификации образца пациента

соответствует циклу развития вируса в организме

7. Для детекции результатов количественной ПЦР используют гель-электрофорез

8. В результате ПЦР происходит наработка миллиардов молекул геномной РНК SARS-

CoV-2

9. Кривые амплификации пациента с COVID-19 выходят позже, чем у здоровых

пациентов

10. В процессе обратной транскрипции на матрице вирусной РНК образуется несколько

копий комплементарной ДНК

Ответ: 1, 2, 4, 5, 10

Задача 10

Для диагностики COVID-19 используют метод ОТ-ПЦР-РВ (полимеразная цепная реакция

с обратной транскрипцией и детекцией результатов в режиме реального времени) [1-4]. В

качестве матрицы используют кДНК, полученную обратной транскрипцией.

Выберите верные суждения об использовании метода ПЦР в реальном времени с обратной

транскрипцией для диагностики.

Рекомендуемые ссылки

● Инструкция ВОЗ по детекции коронавирусной ДНК методом ОТ-ПЦР-РВ -

https://www.who.int/docs/default-source/coronaviruse/real-time-rt-pcr-assays-for-the-

detection-of-sars-cov-2-institut-pasteur-paris.pdf

● Метод ПЦР на сайте Биомолекула - https://biomolecula.ru/articles/metody-v-

kartinkakh-polimeraznaia-tsepnaia-reaktsiia

● Статья в Википедии - Полимеразная цепная реакция в реальном времени

● Информация на сайте МАгАтЭ - https://www.iaea.org/bulletin/infectious-diseases/how-

is-the-covid-19-virus-detected-using-real-time-rt-pcr

Варианты ответа

1. Ввиду крайне высокой чувствительности метода для детекции даже минимальных

количеств вирусной геномной РНК достаточно провести 20-25 циклов

амплификации

2. Количество нарабатываемых молекул ДНК пропорционально количеству копий

вирусной геномной РНК SARS-CoV-2

3. В качестве мишени в протоколе ВОЗ используют ген обратной транскриптазы

SARS-CoV-2 (RdRp)

4. Для детекции результатов ОТ-ПЦР-РВ используют гель-электрофорез

5. Выделенную геномную вирусную РНК обрабатывают ДНКазой для удаления

возможных совыделяющихся примесей ДНК

6. Обратная транскрипция происходит после полимеразной цепной реакции

7. В результате ОТ-ПЦР-РВ происходит наработка миллиардов копий фрагмента

вирусной РНК

Ответ: 2, 3

Задача 11

При решении предыдущих задач оказалось, что при использовании одной и той же пары

праймеров, продукт ПЦР при использовании в качестве матрицы геномной ДНК

значительно длиннее, чем когда в качестве матрицы используют зрелую мРНК.

Чем можно объяснить наблюдаемый результат?

1. для ПЦР in silico были использованы праймеры для ПЦР в реальном времени;

2. наличие регуляторной последовательности в гене ACTB;

3. использование одной пары праймеров для матрицы мРНК и ДНК;

4. последовательность мРНК не гомологична использованной последовательности

ДНК;

5. полученная кДНК укорочена на длину праймеров, использованных при обратной

транскрипции;

6. сплайсинг пре-мРНК гена ACTB.

Решение: так как в результате сплайсинга вырезается интрон, длина ПЦР-продукта

изоформы с этими же праймерами будет короче – правильный ответ 6.

Ответ: 6.

Задача 12

Данный текст посвящен методу ПЦР.

Выберите варианты ответа, максимально соответствующие по смыслу.

Для проведения полимеразной цепной реакции (ПЦР) необходимо, в первую очередь,

выбрать участок (антигена / гена / генетического кода / молекулы / рибосомы) и

сконструировать (азотистые основания / молекулы / нуклеотиды / олиго- нуклеотиды /

праймеры), комплементарные участкам выбранного гена. Праймеры обычно выбирают

длиной около (2 / 12 / 20 / 200 / 2000) (азотистых оснований / нуклеотидов

/олигонуклеотидов / пар нуклеотидов / пар олигонуклеотидов). Положение праймеров

задаёт (длину / массу / пространство / температуру плавления / ширину) конечного

продукта. Затем нужно подготовить матрицу ДНК. Далее в пробирке смешивают все

необходимые компоненты: ДНК-матрицу, праймеры, реакционный буфер, содержащий

(ионы калия / ионы кальция / ионы магния / ионы натрия), (дезоксинуклеозидтрифосфаты /

дезокситрифосфаты / нуклеозидтрифосфаты / трифосфаты), фермент ДНК-зависимую

ДНК-полимеразу. На приборе, который называется (амплификатор / термостат /

хроматограф / центрифуга) задают протокол ПЦР, который обычно состоит из (10-15 / 15-

25 / 30-40 / 40-60 / 60-80) циклов, каждый из которых содержит последовательно стадии

(денатурации / отжига праймеров / плавления / поглощения / ренатурации / репликации /

терминации / элонгации), (денатурации / достройки / плавления / отжига праймеров /

удлинения / элонгации) и (денатурации / комплементации / поглощения / ориентации /

отжига праймеров / элонгации).

Рекомендуемая литература

1. Рекомендации по постановке ПЦР http://evrogen.ru/kit-user-manuals/Evrogen-PCR-

recommendation.pdf

2. 12 методов в картинках: полимеразная цепная реакция

https://biomolecula.ru/articles/metody-v-kartinkakh-polimeraznaia-tsepnaia-reaktsiia

Пояснения к ответу: в некоторых случаях возможно несколько правильных ответов.

Ответ: гена; праймеры, олигонуклеотиды; 20; нуклеотидов; длину; ионы магния; дез-

оксинуклеозидтрифосфаты; амплификатор; 30-40; денатурации, плавления; отжига

праймеров; элонгации.

Задача 13

В лаборатории имеется 0,2 М и 2 М растворы NaCl, необходимо приготовить 800 мл 1 М

раствора NaCl, используя имеющиеся растворы. Ответ введите в виде целого числа (без

обозначения мл).

Для приготовления 0.8 л 1 М раствора NaCl нужно взять 440 мл 0,2 М раствора NaCl и 360

мл 2 М раствора NaCl.

Решение: необходимо решить систему уравнений. V2*0,2+V1*2=800*1 и V1+V2=800

Ответ: 440, 360

Задача 14

Реакционная смесь объемом 20 мкл содержит:

● фрагмент плазмидной ДНК после рестрикции,

● продукт ПЦР,

● 1 мкл ДНК-лигазы фага Т4,

● 10Х буферный раствор для лигазной реакции.

Известно, что соотношение (молярное) плазмиды (длина 3500 пар оснований) к ПЦР-

продукту (длина 700 пар оснований) в реакционной смеси должно быть 1:3. Концентрация

плазмиды, измеренная на спектрофлуориметре — 25 нг/мкл, концентрация ПЦР-продукта

— 20 нг/мкл.

Вычислите объем плазмиды, фрагмента ДНК, буферного раствора и воды, если известно,

что в реакционную смесь следует добавить 100 нг плазмидной ДНК.

Ответы введите в мкл, округлите до ближайших целых значений.

В реакционную смесь необходимо добавить 4 мкл раствора плазмидной ДНК, 3 мкл ПЦР-

продукта и 10 мкл дистиллированной воды.

Решение: так как необходимо добавить 100 нг плазмидной ДНК, ее объем равен 4 мкл. Так

как соотношение плазмиды и ПЦР-продукта должно быть 1:3, а их длина отличается в

3500/7=5 раз, следует добавить 100/5*3=60 нг ПЦР-продукта (3 мкл). Остальной объем –

вода.

Ответ: 4, 3, 10

Модуль 2

Задача 1

Определите открытые рамки считывания (ORF) [1, 2] в плазмиде pBluescript, в которую

прошла встройка гена ДНК-лигазы. Какая из открытых рамок считывания соответствует

гену ДНК-лигазы? Скопируйте последовательной этой рамки считывания в

транслированном виде (Ctrl+T) и вставьте ее в виде отдельного объекта. Проанализируйте

содержание остатков аминокислот в этом белке. Укажите количество некоторых

аминокислот в данном пептиде (введите только число/цифру).

Рекомендуемые ссылки

1. Статья в википедии - Открытая рамка считывания

(https://ru.wikipedia.org/wiki/Открытая_рамка_считывания).

2. https://ugene.unipro.ru/wiki/display/UUOUM16/ORF+Marker.

Заполните пропуски:

Трансляция открытой рамки считывания, соответствующей ДНК-лигазе, приведет к

синтезу полипептида, содержащего 1

остатка(ов) глутаминовой кислоты, 2

остатка(ов)

лизина и 3

остатка(ов) лейцина.

Решение: Запустить UGENE, найти открытую рамку считывания, соответствующую гену

ДНК-лигазы. Анализ открытой рамки считывания данной плазмиды дает информа- цию о

содержании остатков аминокислот Е (40), K (41) и L (44).

Ответ: 1 - 40; 2 - 41; 3 - 44.

Задача 2

Заполните пропуски:

Трансляция открытой рамки считывания, соответствующей ДНК-лигазе, приведет к

синтезу полипептида, содержащего (1) остатка(ов) глутаминовой кислоты, (2) остатка(ов)

лизина и (3) остатка(ов) лейцина.

Решение: запустить UGENE, найти открытую рамку считывания, соответствующую гену

ДНК-лигазы. Анализ открытой рамки считывания данной плазмиды дает информацию о

содержании остатков аминокислот Е (40), K (41) и L (44).

Ответ: 1 - 40; 2 - 41; 3 - 44.

Задача 3

Заполните пропуски:

Белок, соответствующий ORF гомолога VP1, содержит (1) остаток(ов) фенилаланина, (2)

остаток(ов) треонина и (3) остаток(ов) триптофана.

Решение: запустить UGENE, найти открытую рамку считывания, соответствующую гену

ДНК-лигазы. Анализ открытой рамки считывания данной плазмиды дает информацию о

содержании остатков аминокислот.

Ответ: 1 - 9; 2 - 23; 3 - 1.

Задача 4

Результаты секвенирования ДНК по методу Сэнгера с использованием флуоресцентно

меченых ддНТФ представляют собой хроматограммы разделения фрагментов ДНК

капиллярным электрофорезом. Файлы с "секвенограммами" могут иметь разное

расширение, например, *.ab1. Для визуализации результатов секвенирования, обработки и

анализа секвенограмм можно использовать универсальную программу для

биоинформатического анализа, например, UGENE [1].

Проведите сборку контига из секвенограмм, полученных при анализе генома короновируса

[2]. Определите, сколько открытых рамок считывания (ORF) может иметь данный контиг

[3].

Укажите длину наиболее короткой открытой рамки считывания в полученном контиге,

последовательность нуклеотидов которой гомологична белку VP1. Ответ представьте в

виде числа, без знаков препинания, пробелов и других символов.

Рекомендуемые ссылки

1. Программа UGENE (http://ugene.net/download.html).

2. Ссылка для скачивания файлов с секвенограммами с Яндекс-диска -

https://yadi.sk/d/ocf0cAdtVwhQdg

3. Статья в википедии - Открытая рамка считывания

(https://ru.wikipedia.org/wiki/Открытая_рамка_считывания).

Решение: открыть UGENE, запустить инструмент «Сборка контигов с помощью САР3»,

добавить файлы .ab1, собрать контиг, найти открытые рамки считывания, определить

длину самой короткой рамки считывания (dna_len = 159), гомологичной белку VP1

(использовать сервис “Blast”). Не все открытые рамки считывания гомологичны белку

VP1.

Ответ: 159.

Задача 5

Олигонуклеотид имеет структуру 5'-GGTCGACAAGGTCTGTACGG-3', для лигирования

нужно добавить "липкие" концы на прямую и обратную цепь.

С учетом липких концов, структура олигонуклеотида будет следующей:

5'-XXXXN1-20-3' (прямая цепь)

5'-YYYY(complementaryN20-1)-3' (обратная комплементарная цепь),

где XXXX, YYYY - липкие концы, N - последовательность олигонуклеотида.

Ввести структуру липких концов (в направлении 5'→3') для прямой

и обратной цепи олигонуклеотида. Ответ представить в виде

XXXXYYYY

Ссылки на используемые последовательности

● Последовательность плазмиды pNB1 и вставки - https://yadi.sk/d/jQcnQi-kFi5-

Bw?w=1

Решение: анализировать приведенные последовательности в UGENE для анализа липких

концов

Ответ: GATCAATT

Для того, чтобы получить вставку с "липкими" концами, нужно заказать отдельно два

олигонуклеотида

Задача 6

Полимеразная цепная реакция является исключительно важным современным методом

молекулярной биологии. Принцип метода изложен в работах [1], [2]. В честь дня рождения

Томаса Ханта Моргана лаборант решил получить ПЦР-продукт гена white длиной 152 пары

нуклеотидов. Ген white кодирует транспортер прекурсоров пигментов глаза дрозофилы,

мутация в нем приводит к формирования белых глаз [3, 4]. Последовательность данного

гена в базе данных Gene Bank имеет идентификатор X02974.2 [5] Для амплификации

участка ДНК методом ПЦР требуется заказать прямой и обратный праймер [6].

Последовательность праймеров принято записывать от 5’- конца к 3’-концу.

Определите последовательность обратного праймера длиной 16 нуклеотидов, если в

качестве прямого праймера был использован следующий олигонуклеотид 5’-

CTCGCAACGGAAAACC-3’.

Введите последовательность обратного праймера латинскими буквами, без знаков 5’-, 3’-,

и пробелов.

Рекомендуемая литература

1. Рекомендации по постановке ПЦР http://evrogen.ru/kit-user-manuals/Evrogen-PCR-

recommendation.pdf

2. 12 методов в картинках: полимеразная цепная реакция

https://biomolecula.ru/articles/metody-v-kartinkakh-polimeraznaia-tsepnaia-reaktsiia

3. Biochimica et Biophysica Acta (BBA) - Biomembranes. - 1999. - V. 1419. - P. 173-185

https://www.sciencedirect.com/science/article/pii/S0005273699000644? via%3Dihub

4. Статья о мутации white в Википедии https://ru.wikipedia.org/wiki/White_

(%D0%BC%D1%83%D1%82%D0%B0%D1%86%D0%B8%D1%8F)

5. Интерфейс для поиска https://www.ncbi.nlm.nih.gov/nuccore

6. Статья о праймерах в английской Википедии. Внимательно изучите иллюстрацию

https://en.wikipedia.org/wiki/Primer_(molecular_biology)

Пояснения к ответу: Для решения задачи следует воспользоваться интерфейсом NCBI

(ссылка 5).

Ответ: GGCTGTTGCTAATATT.

Задача 7

Рецептором нового коронавируса SARS-CoV-2 в организме человека является ангиотензин-

превращающий фермент 2 (ACE2) [1]. После заражения белок Spike на поверхности

вириона связывается с ACE2 и таким образом вирус попадает внутрь клетки.

В одной из статей для амплификации мРНК гена ACE2 использовали следующие пары

праймеров:

ace2.1f 5'-GGGATCAGAGATCGGAAGAAGAAA-3' ,

ace2.1r 5'-AGGAGGTCTGAACATCATCAGTG-3'

и

ace2.2f 5'-AAACATACTGTGACCCCGCAT-3' ,

ace2.2r 5-'CCAAGCCTCAGCATATTGAACA-3'

Используйте последовательности в базе данных NCBI NM_021804.3 и NP_068576.1 [2],

соответствующие мРНК и белку ACE2 и инструмент UGENE "PCR in silico", для

определения длины получаемых ПЦР-фрагментов.

Ввести числовой ответ в соответствующее поле (без обозначений п.о.).

Рекомендованные ссылки

● Статья на Биомолекуле - https://biomolecula.ru/articles/covid-19-chto-my-znaem-i-

chego-ne-znaem

● Информация о гене ACE2 в базе NCBI - https://www.ncbi.nlm.nih.gov/gene/59272

● Полимеразная цепная реакция. Введение от Артема Тикунова (к. б. н., научный

сотрудник ИХБФМ СО РАН) - https://youtu.be/V2qm9jTNrKI

● Полимеразная цепная реакция. Использование инструмента UGENE (Ольга

Голосова, Унипро) - https://youtu.be/kc6DakXUtUU

Заполните пропуски

В результате ПЦР с праймерами ace2.1 образуется продукт длиной Х пар оснований, при

использовании пары праймеров ace2.2 образуется продукт длиной У пар оснований.

Решение: определить последовательность нуклеотидов при помощи инструмента UGENE

ПЦР in silico

Правильный ответ: Х - 124, У - 199

Задача 8

Полимеразная цепная реакция является исключительно важным современным методом

молекулярной биологии. Принцип метода изложен в работах [1], [2]. Для амплификации

участка ДНК методом ПЦР требуется заказать прямой и обратный праймер [3].

Ген PAX6 относят к семейству генов PAX [4], которые кодируют тканеспецифичные

факторы транскрипции. Мутации в данном гене приводят к нарушениям строения органов

зрения. Ортолог (гомолог) данного гена у дрозофилы называется eyless.

Последовательность данного гена в базе данных GeneBank имеет идентификатор

NG_008679.1 [5]

Последовательность праймеров принято записывать от 5’-конца к 3’-концу. Определите

последовательность прямого праймера длиной 20 нуклеотидов, если в качестве обратного

праймера был использован следующий олигонуклеотид 5’-

CCTAGGCCGCCGAGAGGGCT-3’, и известно, что длина ПЦР- фрагмента равна 210 пар

нуклеотидов.

Введите последовательность прямого праймера латинскими буквами, без знаков 5’-, 3’-, и

пробелов.

Рекомендуемая литература

1. Рекомендации по постановке ПЦР http://evrogen.ru/kit-user-manuals/Evrogen-PCR-

recommendation.pdf

2. 12 методов в картинках: полимеразная цепная реакция

https://biomolecula.ru/articles/metody-v-kartinkakh-polimeraznaia-tsepnaia-reaktsiia

3. Статья о праймерах в английской Википедии. Внимательно изучите иллюстрацию

https://en.wikipedia.org/wiki/Primer_(molecular_biology)

4. Статья о генах PAX в Википедии

https://ru.wikipedia.org/wiki/%D0%93%D0%B5%D0%BD%D1%8B_Pax

5. Интерфейс для поиска https://www.ncbi.nlm.nih.gov/nuccore

Пояснения к ответу: необходимо открыть последовательность гена в базе NCBI, найти

последовательность, соответствующую обратному, вычислить последовательность,

соответствующую прямому праймеру.

Ответ: GAGCTCGGAAGGGCCTAGT.

Задача 9

Полимеразная цепная реакция является исключительно важным современным методом

молекулярной биологии. Принцип метода изложен в работах [1], [2]. Для амплификации

участка ДНК методом ПЦР требуется заказать прямой и обратный праймер [3].

Ген SRY кодирует фактор транскрипции, который входит в семейство ДНК- связывающих

белков HMG. Белок, кодируемый данным геном называют фактором развития семенников,

данный белок определяет пол у мужчин. Мутации в данном гене приводят к формированию

женских гениталий у лиц с генотипом XY (синдром Свайера) [5]. Транслокация данного

участка Y-хромосомы на Х-хромосому приводит к мужскому фенотипу у лиц XX.

Последовательность гена SRY человека в базе данных GeneBank имеет идентификатор

NG_011751.1 [6]

Последовательность праймеров принято записывать от 5’-конца к 3’-концу. Определите

последовательность обратного праймера длиной 18 нуклеотидов, использованного для

амплификации фрагмента гена SRY человека, если в качестве прямого праймера был

использован следующий олигонуклеотид5’- TGACATAAAAGGTCAATG-3’, и известно,

что длина ПЦР-фрагмента равна 218 пар нуклеотидов.

Введите последовательность прямого праймера латинскими буквами, без знаков 5’-, 3’-, и

пробелов.

Рекомендуемая литература

1. Рекомендации по постановке ПЦР http://evrogen.ru/kit-user-manuals/Evrogen-

PCR-recommendation.pdf

2. 12 методов в картинках: полимеразная цепная реакция

https://biomolecula.ru/articles/metody-v-kartinkakh-polimeraznaia-tsepnaia-

reaktsiia

3. Статья о праймерах в английской Википедии. Внимательно изучите

иллюстрацию https://en.wikipedia.org/wiki/Primer_(molecular_biology)

4. Статья о гене SRY в Википедии https://ru.wikipedia.org/wiki/SRY

5. Синдром Свайера в Википедии

https://ru.wikipedia.org/wiki/%D0%A1%D0%B8%D0%BD%D0%B4%D1%80%

D0%BE%D0%BC_%D0%A1%D0%B2%D0%B0%D0%B9%D0%B5%D1%80

%D0%B0

6. Интерфейс для поиска https://www.ncbi.nlm.nih.gov/nuccore

Пояснения к ответу: необходимо открыть последовательность гена в базе NCBI, найти

последовательность, соответствующую прямому праймеру, вычислить

последовательность, соответствующую обратному праймеру.

Ответ: ATGAAACTTGCATTTCGC.

Задача 10

Для анализа продуктов полимеразной цепной реакции (ПЦР) обычно используют

электрофорез в агарозном геле. Для проведения ПЦР требуется заказать пару праймеров, а

это достаточно длительная и не совсем дешевая процедура. В связи с этим, практическое

значение имеют различные инструменты, позволяющие смоделировать продукты реакции

амплификации с заданной парой праймеров. Одним из таких инструментов является ПЦР

in silico [1], при котором программа анализирует участки возможного связывания

праймеров на заданной матрице и предсказывает получаемый продукт [2]. Ген ACTB

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

Данный ген является геном "домашнего хозяйства". мРНК ACTB часто используют в

качестве референсной в ПЦР в реальном времени. Известно, что данный ген располагается

в 7 хромосоме человека. Белок имеет массу около 42 кДа.

Используя информацию о гене ACTB в базе данных NCBI [4], его кодирующей части

NG_007992.1 (https://www.ncbi.nlm.nih.gov/nuccore/NG_007992.1?from=5001&

to=8454&report=fasta) определите при помощи UGENE [2] длину продукта ПЦР, если в

качестве праймеров использовать пару прямой: 5’-CACCATTGGCAATGAGCGGTTC-3’ и

5’-AGGTCTTTGCGGATGTCCACGT-3’ [5].

Длину продукта ПЦР (п. н.) введите в поле "ответ" в виде числа.

Рекомендуемые ссылки

1. Статья в википедии - ПЦР in silico (https://ru.wikipedia.org/wiki/Виртуальная_ПЦР).

2. Инструмент PCR in silico в UGENE-

https://ugene.net/wiki/display/UUOUM15/In+Silico+PCR

3. Статьи об актине в википедии -Актин (https://ru.wikipedia.org/wiki/Актин), beta-

Actin (https://en.wikipedia.org/wiki/Beta-actin).

4. Информация о гене ACTB в NCBI - https://www.ncbi.nlm.nih.gov/gene?Db=

gene&Cmd=DetailsSearch&Term=60.

5. Праймеры для количественной ПЦР гена бета-актина

https://www.origene.com/catalog/gene-expression/qpcr-primer-pairs/hp204660/beta-

actin-actb- human-qpcr-primer-pair-nm_001101

Решение: запустить UGENE, загрузить последовательность из базы данных NCBI, на

вкладке «ПЦР in silico» ввести последовательности прямого и обратного праймеров,

определить длину продукта (230 bp).

Ответ: 230.

Задача 11

Для анализа продуктов полимеразной цепной реакции (ПЦР) обычно используют

электрофорез в агарозном геле. Для проведения ПЦР требуется заказать пару праймеров, а

это достаточно длительная и не совсем дешевая процедура. В связи с этим, практическое

значение имеют различные инструменты, позволяющие смоделировать продукты реакции

амплификации с заданной парой праймеров. Одним из таких инструментов является ПЦР

in silico [1], при котором программа анализирует участки возможного связывания

праймеров на заданной матрице и предсказывает получаемый продукт [2].

Ген ACTB кодирует в организме человека белок актин, важный немышечный компонент

цитоскелета. Данный ген является геном "домашнего хозяйства". мРНК ACTB часто

используют в качестве референсной в ПЦР в реальном времени. Известно, что данный ген

располагается в 7 хромосоме человека. Белок имеет массу около 42 кДа.

Используя информацию об изоформе NM_001101.5 (https://www.ncbi.nlm.nih.

gov/nuccore/NM_001101.5) мРНК гена ACTB в базе данных NCBI [4], определите при

помощи UGENE [2] длину продукта ПЦР, если в качестве праймеров использовать пару

прямой:

5’-CACCATTGGCAATGAGCGGTTC-3’ и 5’-AGGTCTTTGCGGATGTCCACGT-3’ [5].

Длину продукта ПЦР (п. н.) укажите в виде числа.

Рекомендуемые ссылки

1. Статья в википедии - ПЦР in silico (https://ru.wikipedia.org/wiki/Виртуальная_ПЦР).

2. Инструмент PCR in silico в UGENE - https://ugene.net/wiki/display/UUO

UM15/In+Silico+PCR.

3. Статьи об актине в википедии -Актин (https://ru.wikipedia.org/wiki/Актин), beta-

Actin (https://en.wikipedia.org/wiki/Beta-actin).

4. Информация о гене ACTB в NCBI - https://www.ncbi.nlm.nih.gov/gene?Db=

gene&Cmd=DetailsSearch&Term=60

5. Праймеры для количественной ПЦР гена бета-актина

https://www.origene.com/catalog/gene-expression/qpcr-primer-pairs/hp204660/beta-

actin-actb-human-qpcr-primer-pair-nm_001101

Решение: запустить UGENE, загрузить последовательность из базы данных NCBI, на

вкладке «ПЦР in silico» ввести последовательности прямого и обратного праймеров,

определить длину продукта (135 bp).

Ответ: 230.

Задача 12

Для амплификации фрагмента гена ACE2 длиной 200 пар оснований использовали образец

ДНК, выделенный из буккального эпителия пациента с COVID-19.

Объем реакционной смеси — 30 мкл, проведено 30 циклов ПЦР, получено 70 нг ПЦР-

продукта.

Известно, что длина генома человека 3,2 млрд пар оснований, масса пары оснований — 660

г/моль.

Рассчитать, сколько молекул матрицы ДНК было добавлено в реакционную смесь. При

расчетах считайте, что неспецифические продукты ПЦР не образуются. Ответ введите в

виде числа (без "шт." или других обозначений). При расчетах примите значение числа

Авогадро равным 6,02*10^23 шт.

Рекомендованные ссылки

● Полимеразная цепная реакция. Введение от Артема Тикунова (к. б. н., научный

сотрудник ИХБФМ СО РАН) - https://youtu.be/V2qm9jTNrKI

Решение: использовать формулу N=m*2^n, где N-число молекул, образующихся в

результате ПЦР, m-количество молекул матрицы, добавленных в реакционную смесь, n-

число циклов ПЦР.

Правильный ответ: 297

Задача 13

Задача

1. Подобрать праймеры для амплификации участка гена MSH2, с которым связывается

направляющая РНК. Размер ампликона должен быть около 500 п.н.

2. Известно, что белок Cas9 вносит двуцепочечный разрыв на расстоянии 3 п.н. от PAM

в направлении 5’. Необходимо подобрать эндонуклеазы рестрикции для

исследования модифицированных и немодифицированных клеток.

Дано

1. Последовательность гена MSH2

2. Последовательность направляющей РНК

Решение

Прямой праймер 5’-CTTCAACCAGGAGGTGAGGA-3’ (1 б) Обратный праймер 5’-

GAACAATGCATTAAAATGCC-3’ (1 б) Размер ампликона 514 нуклеотидов. (1

б)Рестриктаза TatI. (1 б)

В результате мутации изменяется сайт узнавания эндонуклеазы рестрикции. Фрагмент не

разрезается. Детекция при помощи агарозного гель-электрофореза. (2 б)

Если мутация не происходит, происходит разрезание ДНК. Детекция при помощи

агарозного гель-электрофореза. (2 б)

Вносить мутации целесообразно в начале гена, в экзоны. Желательно получить мутации,

вызывающие появление стоп-кодона, либо сдвиг рамки считывания. (2 б)

Раздел 4 Модуль 2

Задача 1

Рецептором нового коронавируса SARS-CoV-2 в организме человека является ангиотензин-

превращающий фермент 2 (ACE2) [1]. После заражения белок Spike на поверхности

вириона связывается с ACE2 и таким образом вирус попадает внутрь клетки.

Базы данных NCBI и UniProt содержат несколько последовательностей, соответствующих

гену ACE2 человека [2, 3]. Используя последовательности NP_068576.1 и Q9BYF1, найдите

информацию о ферменте ACE2.

Известно, что данный белок содержит внеклеточный, трансмембранный и

внутриклеточный домены.

Рекомендованные ссылки

● Статья на Биомолекуле - https://biomolecula.ru/articles/covid-19-chto-my-znaem-i-

chego-ne-znaem

● Информация о гене ACE2 в базе NCBI - https://www.ncbi.nlm.nih.gov/gene/59272

● Информация о белке ACE2 в базе UniProt - https://www.uniprot.org/uniprot/Q9BYF1

Решение: использовать материалы, представленные на страницах

https://www.ncbi.nlm.nih.gov/gene/59272 и https://www.uniprot.org/uniprot/Q9BYF1

Ответ: Коронавирус SARS-CoV-2 связывается с внеклеточным доменом ACE2. В белке

ACE2 наиболее представлены остатки аминокислоты лейцин, в трансмембранном домене

наиболее представлены остатки аминокислот валин и изолейцин.

Ангиотензинпревращающий фермент 2 относят к классу гидролаз

Раздел 6 Модуль 1

1. Редактирование генома CRISPR\Cas9, РНК-интерференция.

Задача 1

Приведенный ниже отрывок текста посвящен использованию метода редактирования

генома CRISPR-Cas9 [1, 2].

Выберите корректные по смыслу варианты из выпадающего списка. В некоторых местах

возможно несколько правильных вариантов, выберите любой из них.

Метод редактирования генома, использующий систему CRISPR/Cas9, может быть

использован для (анализа родословной / выключения заранее выбранных генов / разработки

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

/ увеличения продуктивности экосистем). Молекулярный процесс редактирования гена

включает несколько стадий. На первой происходит связывание комплекса белка-нуклеазы

Cas9 и направляющей РНК с (антипараллельной / антисмысловой / идентичной /

коллинеарной / комплементарной) целевой областью ДНК. Далее (белок / фермент /

нуклеаза / рестриктаза / протеаза) Cas9 осуществляет (разрезание / расщепление /

диссоциацию / стабилизацию / сопоставление) нуклеотидной последовательности ДНК в

области непосредственного взаимодействия РНК-ДНК с образованием двуцепочечного

разрыва. На последнем этапе ферменты (репарации / репликации / ретардации /

лигирования / рестрикции) ДНК восстанавливают образующийся разрыв с формированием

мутаций в виде делеций или инсерций.

Редомендуемая литература

1. Редактирование генома с CRISPR/Cas9 https://postnauka.ru/faq/59807

2. Статья в Википедии о CRISPR https://ru.wikipedia.org/wiki/CRISPR

3. Статья о возможностях редактирования генома https://chrdk.ru/sci/ot_

bezobidnoi_kartoshki_do_biologicheskogo_oruzhiya

Пояснения к ответу: В некоторых случаях возможно несколько правильных ответов.

Ответ: выключения заранее выбранных генов; комплементарной; белок, фермент,

нуклеаза; разрезание; расщепление; репарации.

Задача 2

Механизм действия системы редактирования CRISPR/Cas9 включает несколько этапов:

1. поиск и узнавание последовательности PAM (от англ. protospacer adjacent motif —

мотив, смежный с протоспейсером)

2. формирование дуплекса между направляющей РНК и целевым участком ДНК

3. разрезание цепи ДНК нуклеазой Cas9 с образованием двуцепочечного разрыва

4. репарация ДНК по механизму гомологичной рекомбинации или негомологичного

соединения концов

Найдите в выбранном участке гена все возможные варианты последовательности PAM.

Представлена кодирующая цепь:

5’-GTCGCCAGCCGAGCCACATCGCTCAGACACCATGGGAAGTGA-3’

Выберите корректные последовательности PAM из предложенных ниже.

1. CCA

2. GAG

3. CGG

4. GGG

5. GCC

6. TGG

7. CTC

Рекомендуемая литература

1. Статья в Википедии о методе CRISPR-Cas https://ru.wikipedia.org/wiki/CRISPR

2. НЕМУДРЫИ А.А., ВАЛЕТДИНОВА К.Р., МЕДВЕДЕВ С.П., ЗАКИЯН С.М.

СИСТЕМЫ РЕДАКТИРОВАНИЯ ГЕНОМОВ TALEN И CRISPR/CAS -

ИНСТРУМЕНТЫ ОТКРЫТИИ // Acta Naturae. - 2014. - Т. 6. - С. 20.

https://yadi.sk/i/0epvvqFx2SrMoQ

Пояснения к ответу: следует определить последовательности PAM, содержащиеся в

приведенной и комплементарной ей цепи ДНК (выделены жирным).

Ответ: 3, 4, 6.

Задача 3

Механизм действия системы редактирования CRISPR/Cas9 включает несколько этапов:

1. поиск и узнавание последовательности PAM (от англ. protospacer adjacent motif —

мотив, смежный с протоспейсером)

2. формирование дуплекса между направляющей РНК и целевым участком ДНК

3. разрезание цепи ДНК нуклеазой Cas9 с образованием двуцепочечного разрыва

4. репарация ДНК по механизму гомологичной рекомбинации или негомологичного

соединения концов

Найдите в выбранном участке гена все возможные варианты последовательности PAM.

Представлена кодирующая цепь:

5’-AAGTTGTCTGATTTTTAAAACACTGATGCAGCTGGCCTCA-3’

Выберите корректные последовательности PAM из предложенных ниже.

1. 5’-TGA

2. 5’-TGG

3. 5’-GTC

4. 5’-GGG

5. 5’-AGG

6. 5’-CCG

7. 5’-CGG

Рекомендуемая литература

1. Статья в Википедии о методе CRISPR-Cas https://ru.wikipedia.org/wiki/CRISPR

2. НЕМУДРЫИ А.А., ВАЛЕТДИНОВА К.Р., МЕДВЕДЕВ С.П., ЗАКИЯН С.М.

СИСТЕМЫ РЕДАКТИРОВАНИЯ ГЕНОМОВ TALEN И CRISPR/CAS -

ИНСТРУМЕНТЫ ОТКРЫТИИ // Acta Naturae. - 2014. - Т. 6. - С. 20.

https://yadi.sk/i/0epvvqFx2SrMoQ

3. Статья на сайте Addgene https://www.addgene.org/crispr/guide/

Пояснения к ответу: необходимо выбрать последовательности PAM, встречающиеся в

представленной и комплементарной цепи ДНК.

Ответ: 2, 5.

Задача 4

Система редактирования генома включает следующие белково-нуклеиновые компоненты:

• фермент Cas9;

• направляющая РНК (sgRNA) — синтетический олигонуклеотид, который содержит

два участка, в природе представленные в виде двух молекул: crRNA и tracrRNA;

• мотив протоспейсера (PAM). Задание. Соотнесите компоненты системы

редактирования генома с обозначениями на схеме

Сопоставьте значения из списка с нумерацией на картинке

a. sgRNA.

b. ДНК.

c. Протоспейсер.

d. Участок разрезания.

e. PAM.

Ответ: 1 — d; 2 — e; 3 — b; 4 — a; 5 — c.

Задача 5

Система редактирования генома включает следующие белково-нуклеиновые компоненты:

• фермент Cas9;

• направляющая РНК (sgRNA) — синтетический олигонуклеотид, который содержит

два участка, в природе представленные в виде двух молекул: crRNA и tracrRNA;

• мотив протоспейсера (PAM).

Заполните пропуски:

На первом этапе работы системы геномного редактирования происходит связывание

(а):

1. Cas9 с активирующим доменом.

2. sgRNA с Cas9.

3. sgRNA c комплементарным участком PAM.

4. crRNA с tracrRNA.

5. скаффолдом.

6. sgRNA с PAM.

7. Cas9 с sgRNA.

, далее образовавшиися комплекс связывается с (b):

1. скаффолдом.

2. NGG.

3. Cas9.

4. PAM.

5. sgRNA.

ДНК-мишени. PAM последовательность имеет вид (с):

1. 3’-NGG.

2. 5’-GGN.

3. 3’-GGN.

4. 5’-NGG.

5. 5’-NNN.

6. 5’-GGG.

. После связывания Cas9 и PAM, происходит (d):

1. разделение цепей ДНК;

2. гидролиз цепей ДНК;

3. расплетание цепей ДНК;

4. образование двуцепочечного разрыва в ДНК-мишени;

5. диссоциация Cas9 и sgRNA.

и sgRNA связывается с (e):

1. двуцепочечной ДНК;

2. последовательностью PAM на прямой цепи;

3. последовательностью PAM на обратной цепи;

4. комплементарной последовательностью одноцепочечной ДНК.

Cas9 делает (f):

1. одноцепочечный;

2. двуцепочечный;

3. перекрестный;

4. комплементарный.

5. связывающий.

разрыв на расстоянии 3 нуклеотида от PAM. Комплекс (g):

1. Cas9 и тупого конца ДНК;

2. sgRNA и PAM;

3. Cas9 и PAM;

4. Cas9 и sgRNA;

5. sgRNA и Cas9. диссоциирует от ДНК.

Ответ: a — 2, 7; b — 2, 4; c — 4; d — 1, 3; e — 4; f — 2; g — 4, 5.

Задача 6

Зачем нужно получать новые белки-гомологи инструментов геномного редактирования?

Система оценки

1. Гомологи Cas9 позволяют использовать другие PAM

2. Мутантные формы гомологов Сas9 позволяют еще сильнее расширить функционал

белков

3. Белки, активность которых отличается от консенсусного Cas9 из Streptococcus

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

генома.

Модуль 2

Задача 1

Чтобы получить мутантный белок Cas9 аспирант взял плазмиду pVIP1 (карта плазмиды

pVIP1.gb) с фрагментом гена Cas9 и высокоточную ДНК-полимеразу Q5 (NEB

https://international.neb.com/products/m0491-q5-high-fidelity-dna-

polymerase#Product%20Information) для сайт-направленного мутагенеза. После ПЦР с

праймерами, содержащими тринуклеотидную замену (см. ниже), лигирования и

трансформации клеток E. coli были получены плазмиды c пяти разных колоний (pVIP1_*).

Проведите множественное выравнивание секвенограмм (файлы *.ab1) [1].

Какую аминокислотную замену хотел произвести аспирант? Введите в поле "ответ"

последовательность из трех нуклеотидов, которая закодирована в праймере.

Дополнительная информация

Праймеры, использованные для получения плазмид pVIP1_1, pVIP1_2, pVIP1_3, pVIP1_4:

• Primer1_F 5’-TATGATTAAGGCGCGTGGTCATTTTTTGATTGAG-3’.

• Primer1_R 5’-TGCGCTAAGGCCAAATAG-3’.

Праймеры, использованные для получения плазмиды pVIP1_5:

• Primer2_F 5’-ATATGATTAAGGCGCGTGGTCATTTTTTGATTGAGG-3’.

• Primer2_R 5’-GCGCTAAGGCCAAATAGA-3’.

Праймер, использованный для секвенирования:

• Праймер T3-промотора 5’-GCAATTAACCCTCACTAAAGG-3’.

Рекомендуемые ссылки

1. Папка с файлами, необходимыми для решения задачи -

https://yadi.sk/d/8wWYNff2j5_1-g

2. Видеоблог UGENE "Анализ результатов секвенирования по Сэнгеру"

https://www.youtube.com/watch?v=lDovNM1oZEw

3. Статья в Википедии о методе CRISPR-Cas https://ru.wikipedia.org/wiki/CRISPR

4. НЕМУДРЫИ А.А., ВАЛЕТДИНОВА К.Р., МЕДВЕДЕВ С.П., ЗАКИЯН С.М.

СИСТЕМЫ РЕДАКТИРОВАНИЯ ГЕНОМОВ TALEN И CRISPR/CAS -

ИНСТРУМЕНТЫ ОТКРЫТИИ // Acta Naturae. - 2014. - Т. 6. - С. 20.

https://yadi.sk/i/0epvvqFx2SrMoQ

5. Статья о редактировании генома на сайте Addgene

https://www.addgene.org/crispr/guide/

Решение: запустить UGENE, загрузить карту исходной плазмиды, выровнять с секвено-

граммами полученных плазмид, определить триплет, «закодированный» в праймерах –

нуклеотиды 559–561 (GCG).

Ответ: GCG.

Задача 2

Охарактеризуйте каждую из плазмид, полученных на предыдущем этапе, на наличие

мутаций.

Решение: запустить UGENE, загрузить карту исходной плазмиды, выровнять с

секвенограммами полученных плазмид, оценить, произошла ли замена в результате ПЦР,

содержит ли плазмида дополнительную мутацию рядом с триплетом GCG (нуклеотид

548).

ПРИЛОЖЕНИЕ 2

В данном разделе содержатся описания практических работ, которые вы можете выполнить

с учениками после прохождения теоретических разделов. Для выполнения практики вам

потребуется оборудование, список которого будет указан для каждой практической работы,

а также наборы реактивов. Необходимые реактивы вы можете заказать заранее собранным

набором в «МБС-детям».

Содержание:

Раздел 7

7.1 Определение ГМО в продуктах питания

7.2 Состав злаков в хлебной продукции

7.3 Определение гена метаболизма кофеина

7.4 Определение пола человека

7.5 Равновесие в популяции

7.6 Определение резус-фактора

7.7 Тонкослойная хроматография, определение активности ферментов.

Практические работы 7.1-7.6

Используемое оборудование ● штатив для микропробирок;

● пипетка автоматическая;

● амплификатор (например, БИС);

● термостат для микропробирок твердотельный;

● микроцентрифуга;

● вортекс;

● УФ-трансиллюминатор.

● Электрофорезная горизонтальная камера

Необходимые реактивы:

● Набор “Определение ГМО в продуктах питания” https://pharma-

se.ru/equipments/oborudovanie-i-materialy-dlya-obrazovatelnykh-

uchrezhdeniy/sovremennye-laboratornye-raboty-po-biologii/nabor-mbs-detyam-

opredelenie-gmo-v-produktakh-pitaniya-lineyka-ptsr/

● Набор “Состав злаков в хлебной продукци” https://pharma-

se.ru/equipments/oborudovanie-i-materialy-dlya-obrazovatelnykh-

uchrezhdeniy/sovremennye-laboratornye-raboty-po-biologii/nabor-mbs-detyam-sostav-

zlakov-v-khlebnoy-produktsii-lineyka-ptsr/

● Набор “Определение гена метаболизма кофеина” https://pharma-

se.ru/equipments/oborudovanie-i-materialy-dlya-obrazovatelnykh-

uchrezhdeniy/sovremennye-laboratornye-raboty-po-biologii/nabor-mbs-detyam-

opredelenie-gena-metabolizma-kofeina-lineyka-ptsr/

● Набор “Определение пола человека” https://pharma-se.ru/equipments/oborudovanie-i-

materialy-dlya-obrazovatelnykh-uchrezhdeniy/sovremennye-laboratornye-raboty-po-

biologii/nabor-mbs-detyam-opredelenie-pola-cheloveka-lineyka-ptsr/

● Набор “Равновесие в популяции” https://pharma-se.ru/equipments/oborudovanie-i-

materialy-dlya-obrazovatelnykh-uchrezhdeniy/sovremennye-laboratornye-raboty-po-

biologii/nabor-mbs-detyam-ravnovesie-v-populyatsii-lineyka-ptsr/

● Набор “Определение резус-фактора” https://pharma-se.ru/equipments/oborudovanie-i-

materialy-dlya-obrazovatelnykh-uchrezhdeniy/sovremennye-laboratornye-raboty-po-

biologii/nabor-mbs-detyam-opredelenie-rezus-faktora-lineyka-ptsr/

Практические работы 7.1-7.6 делятся на 3 занятия, общее время, необходимое на

выполнение 1 работы - 6 академических часов, то есть 3 занятия. На 1 занятии проводится

выделение ДНК, на 2 занятии ПЦР, на 3 занятии полученные результаты анализируются

при помощи гель-электрофореза.

Практическая работа 7.7

Практическая работа 7.7 выполняется за один раз, 6 академических часов, так как этапы

работы нельзя разбить на несколько дней. Для выполнения этой работы специального

оборудования не требуется.

Необходимые реактивы:

⮚ Набор “Тонкослойная хроматография, определение активности ферментов”

https://pharma-se.ru/equipments/oborudovanie-i-materialy-dlya-obrazovatelnykh-

uchrezhdeniy/sovremennye-laboratornye-raboty-po-biologii/nabor-tskh-mbs-detyam-

aktivnost-fermentov-lineyka-khromatografiya/

Методическое пособие

профиль: «Интеллектуальные робототехнические системы»

Направленность: научно-техническая

Общая трудоемкость: 144 академических часа

Образовательные технологии: предметно-ориентированные

Разработчик программы:

Клячин Алексей Михайлович

Оглавление

Аннотация .................................................................................................................................................. 2

Пояснительная записка .......................................................................................................................... 3

Цели программы ........................................................................................................................................ 5

Задачи программы ..................................................................................................................................... 5

Материально-техническое обеспечение ................................................................................................ 9

Тематическое планирование программы ................................................................................................ 11

Содержание программы .......................................................................................................................... 13

Характеристика деятельности учащихся ........................................................................................... 16

Методическое и дидактическое обеспечение программы................................................................. 21

Литература для учащихся ........................................................................................................................ 21

2

Аннотация

Программа дополнительного образования «Основы управления мобильными

колесными роботами» (далее - Программа) адресована учащимся 8-11 классов (14-17

лет), увлекающихся информатикой, программированием, робототехникой.

На учебных занятиях школьники смогут сформировать и развить различные

познавательные умения: выбирать наиболее эффективные способы решения

поставленных задач, устанавливать причинно-следственные связи, строить

логическое рассуждение, работать с информацией. Кроме того, занятия по программе

будут способствовать развитию компетентности в области использования

информационно-коммуникационных технологий, улучшению результатов обучения

по предметной области «Математика и информатика» (формированию умений

формализации и структурирования информации; применению изученных понятий,

методов решения задач практического характера и задач из смежных дисциплин,

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

проектирование, исследование, управление.

На занятиях планируется применение активных форм обучения: практикумы,

игровые технологии, учебное проектирование, что обеспечивает развитие у учащихся

не только познавательных, но и совокупности коммуникативных и регулятивных

умений.

Реализация программы позволит в рамках школьного образовательного

пространства создать условия, обеспечивающие развитие личности школьника,

учитывая его индивидуальные склонности и интересы, будет способствовать

формированию технологической культуры.

3

Пояснительная записка

Программа дополнительного образования «Основы управления мобильными

колесными роботами» (далее - Программа) адресована обучающимся 8-11 классов

(14-17 лет), интересующихся информатикой, программированием, техническим

творчеством и имеющим склонности к изучению области точных инженерно-

технических (сфера деятельности «человек-машина»), робототехникой.

Человеческая деятельность в технологическом плане меняется очень быстро, на

смену существующим технологиям и их конкретным техническим воплощениям

быстро приходят новые, которые современному человеку приходится осваивать

заново. Необходимость разработки данной программы обусловлена потребностью

развития информационных и коммуникационных технологий (ИКТ), в том числе, в

системе школьного и непрерывного образования в условиях информатизации и

массовой коммуникации современного общества.

Содержание программы выходит за рамки школьных курсов информатики и

технологии, что позволяет расширить целостное представление учащихся о

направлениях использования компьютерных технологий. Программа ориентирована

на выбор учащимися сферы их интересов в предметной области, направления их

предпрофессионального самоопределения и творческой самореализации.

Категория обучающихся: обучающиеся 8-11 классов.

Направление: общеинтеллектуальное (научно-техническая область).

Актуальность программы обоснована введением ФГОС ООО и способствует

обеспечению выполнения требований к содержанию дополнительного образования

школьников в направлении формирования научного мировоззрения, освоения методов

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

обучающихся, освоению электронных информационных ресурсов, воспитанию

личности, готовой к жизни в высокотехнологичном, конкурентном мире.

Программа педагогически целесообразна, ее реализация создает возможность

раскрытия индивидуальных способностей школьников, формирования сферы их

интересов в предметных областях «Математика и информатика», «Технология» и

«Робототехника», направления их предпрофессионального самоопределения и

творческой самореализации.

4

Новизна программы определяется выбором актуальной и востребованной сферы

расширения образовательных интересов школьников и использования этих знаний для

развития предпрофессиональных интересов.

Отличительные особенности данной программы обусловлены реализацией

возможностей используемой среды программирования TRIK Studio, являющейся

свободно распространяемым отечественным программным продуктом:

• Обучение основам различных текстовых языков программирования начинается

с реализации программ на визуальном языке программирования в среде TRIK

Studio, доступном для понимания обучающимся любого возраста.

• Возможность использования операторов на русском языке.

• Генерация визуальной программы в текстовой язык в среде TRIK Studio

происходит автоматически, что позволяет наглядно увидеть структуру

программы на современных языках программирования, а также сравнить

различные текстовые языки на примере одного и того же алгоритма.

• Переход от визуального языка программирования к текстовому обеспечивается

возможностями одной и той же среды программирования.

• Наличие имитационной модели в среде TRIK Studio демонстрирует результаты

выполнения программы в реальном времени и визуализирует ошибки.

• Применение физических программируемых устройств делает процесс отладки

реализуемого кода максимально приближенным к процессам современного

программирования.

• Основные алгоритмы реализуются на разных языках программирования, что

позволяет более подробно рассмотреть различия и сходства между ними.

• Для изучения выбраны языки программирования JavaScript и Python, как

наиболее востребованные на сегодняшний день промышленные языки

программирования.

• Курс можно рассматривать как начальный этап подготовки к участию в

олимпиаде НТИ, трек ИРС (интеллектуальные робототехнические системы),

для участия в котором необходимы знания как визуальной среды TRIK Studio

так и языков программирования Python и JavaScript.

5

Цели программы

Создание условий, обеспечивающих развитие ценностно-смысловых установок,

способности к саморазвитию и личностному самоопределению, интереса к научно-

техническому творчеству; создание основы для осознанного выбора сферы

профессиональных интересов через знакомство и освоение основ программирования

и начального технического творчества; подготовка к участию в Олимпиаде НТИ.

Задачи программы

Обучающие:

• Обучение основным базовым алгоритмическим конструкциям;

• Освоение основных этапов решения задачи;

• Обучение навыкам разработки, тестирования и отладки программ;

• Обучение навыкам разработки проекта, определения его структуры, дизайна.

Развивающие:

• Развивать познавательный интерес школьников;

• Развивать творческое воображение, математическое и образное мышление

учащихся;

• Развивать умение работать с компьютерными программами и дополнительными

источниками информации;

• Развивать навыки планирования проекта, умение работать в группе.

Воспитывающие:

• Воспитывать интерес к занятиям информатикой и робототехникой;

• Воспитывать культуру общения между учащимися;

• Воспитывать культуру безопасного труда при работе за компьютером и с

микроконтроллером;

• Воспитывать культуру работы в глобальной сети.

Ожидаемые результаты:

Личностные результаты:

• Наличие представлений об информации как важнейшем стратегическом

ресурсе развития личности, государства, общества;

• Понимание роли информационных процессов в современном мире;

6

• Владение первичными навыками анализа и критичной оценки получаемой

информации;

• Ответственное отношение к информации с учетом правовых и этических

аспектов ее распространения;

• Развитие чувства личной ответственности за качество окружающей

информационной среды;

• Способность увязать учебное содержание с собственным жизненным

опытом, понять значимость подготовки в области информатики и ИКТ в

условиях развития информационного общества;

• Готовность к повышению своего образовательного уровня и продолжению

обучения с использованием средств и методов информатики и ИКТ;

• Способность и готовность к общению и сотрудничеству со сверстниками и

взрослыми в процессе образовательной, общественно-полезной, учебно-

исследовательской, творческой деятельности.

Метапредметные результаты:

• Владение общепредметными понятиями «объект», «система», «модель»,

«алгоритм», «исполнитель» и др.;

• Владение информационно-логическими умениями: определять понятия,

создавать обобщения, устанавливать аналогии, классифицировать,

самостоятельно выбирать основания и критерии для классификации,

устанавливать причинно-следственные связи, строить логическое

рассуждение, умозаключение (индуктивное, дедуктивное и по аналогии) и

делать выводы;

• Владение умениями самостоятельно планировать пути достижения целей;

соотносить свои действия с планируемыми результатами, осуществлять

контроль своей деятельности, определять способы действий в рамках

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

изменяющейся ситуацией; оценивать правильность выполнения учебной

задачи;

• Владение основами самоконтроля, самооценки, принятия решений и

осуществления осознанного выбора в учебной и познавательной

деятельности;

7

• Владение основными универсальными умениями информационного

характера: постановка и формулирование проблемы; поиск и выделение

необходимой информации, применение методов информационного поиска;

структурирование и визуализация информации; выбор наиболее

эффективных способов решения задач в зависимости от конкретных

условий; самостоятельное создание алгоритмов деятельности при решении

проблем творческого и поискового характера;

• Владение информационным моделированием как основным методом

приобретения знаний: умение преобразовывать объект из чувственной

формы в пространственно-графическую или знаково-символическую

модель; умение строить разнообразные информационные структуры для

описания объектов; умение «читать» таблицы, графики, диаграммы, схемы

и т.д., самостоятельно перекодировать информацию из одной знаковой

системы в другую; умение выбирать форму представления информации в

зависимости от стоящей задачи, проверять адекватность модели объекту и

цели моделирования;

• ИКТ-компетентность – широкий спектр умений и навыков использования

средств информационных и коммуникационных технологий для сбора,

хранения, преобразования и передачи различных видов информации.

Предметные результаты:

• Формирование информационной и алгоритмической культуры;

• Формирование представления о компьютере как универсальном устройстве

обработки информации;

• Развитие основных навыков и умений использования компьютерных

устройств;

• Формирование представления об основных изучаемых понятиях:

информация, алгоритм, модель – и их свойствах;

• Развитие алгоритмического мышления, необходимого для

профессиональной деятельности в современном обществе;

• Развитие умений составить и записать алгоритм для конкретного

исполнителя;

8

• Формирование знаний об алгоритмических конструкциях, логических

значениях и операциях с алгоритмическими структурами — линейной,

условной и циклической;

• Формирование навыков и умений безопасного и целесообразного поведения

при работе с компьютерными программами и в Интернете, умения

соблюдать нормы информационной этики и права.

• Формирование навыков программирования роботов средствами TRIK

Studio;

• Развитие умения программировать и конструировать роботов для участия в

олимпиадах и соревнованиях на различных уровнях.

Формы и методы обучения

Формы и методы обучения определены возрастом учащихся. При проведении занятий

используются компьютеры с установленной программой TRIK Studio или с другими

средами разработки программных продуктов, проектор. Теоретическая работа

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

Формы проведения занятий: практические занятия, самостоятельная работа и

проекты.

Использование метода проектов позволяет обеспечить условия для развития навыков

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

самостоятельного достижения цели, анализа полученных результатов с точки зрения

решения поставленной задачи.

Рекомендуемая продолжительность учебного занятия – (90 минут (2 учебных часа)),

которое проводится каждую неделю. Всего за год – (72) часа.

Обучение по программе предполагает применение (с помощью средств ИКТ):

• словесного метода обучения (рассказ, объяснение, работа с задачником);

• наглядного метода (наблюдение, иллюстрация, схема, интерактивная модель,

физическая модель);

• практического метода (устные и письменные упражнения, практические

компьютерные работы, практические работы с конструктором);

• проблемного обучения;

• метода проектов.

9

Оценка образовательных достижений учащихся:

В программе используется безотметочное оценивание планируемых результатов,

используется самооценка и взаимооценка. По завершении курса педагог представляет

творческий отчет, обучающиеся защищают проекты. Формы оценивания:

• зачёт;

• собеседование;

• защита проектов;

• итоговая рефлексия;

• творческий отчет.

Методы контроля педагогом:

• наблюдение;

• тестирование;

• метод «Портфолио».

Иные формы учета достижений:

• участие в выставках, конкурсах, соревнованиях;

• активность в проектах и программах внеурочной деятельности;

• творческий отчет.

Материально-техническое обеспечение

Мультимедийный компьютерный класс на 12-15 обучающихся.

Аппаратные средства:

• Персональный компьютер – универсальное устройство обработки информации;

основная конфигурация современного компьютера обеспечивает учащемуся

мультимедиа-возможности.

• Проектор, подсоединяемый к компьютеру; технологический элемент новой

грамотности – радикально повышает: уровень наглядности в работе учителя,

возможность для учащихся представлять результаты своей работы всему

классу, эффективность организационных и административных выступлений.

• Телекоммуникационный блок, устройства, обеспечивающие подключение к

информационной сети – обеспечивает работу локальной сети, даёт доступ к

10

российским и мировым информационным ресурсам, позволяет вести

электронную переписку.

• Устройства вывода звуковой информации – аудиоколонки и наушники для

индивидуальной работы со звуковой информацией, громкоговорители для

озвучивания всего класса.

• Устройства для ручного ввода текстовой информации и манипулирования

экранными объектами – клавиатура и мышь.

• Робототехнический конструктор – не менее 1 набора на 2 обучающихся.

Финальный этап Олимпиады НТИ проводится на робототехнических наборах

ТРИК, но на занятиях можно использовать любые наборы/конструкторы, в

составе которых есть:

o Моторы с энкодерами, не менее 2 шт

o Дальномеры (сенсоры УЗ или ИК), не менее 3 шт

o Датчики света (отраженного света или уровня черного цвета)

o Видеокамера

o Гироскопический датчик 3-х осевой, акселерометр 3-х осевой,

выполненные по технологии MEMS или инерциальный измерительный

модуль (IMU)

o Микроконтроллер, программируемый на языках Python или Javascript

o Возможность организации единой сети для группы роботов для обмена

служебной информацией (межагентное взаимодействие)

Программные средства:

• Операционная система.

• Антивирусная программа.

• Программа-архиватор.

• Текстовый редактор, растровый и векторный графические редакторы.

• Программа разработки презентаций.

• Среда программирования TRIK Studio (в составе уже имеется Python 3.x) или:

o Интегрированные среды разработки программного обеспечения:

▪ PyCharm / Sublime Text / Visual Studio Code (VS Code)

o Установленный Python 3.x на компьютер

• Браузер

11

Тематическое планирование программы

№ Раздел / тема Всего

часов Лекция Практ. Контроль

1. ВВЕДЕНИЕ В РОБОТОТЕХНИКУ -

1.1 - Стандартизация робототехнических

устройств 0,6 0,6 -

Устное тестирование

1.2 - Классификация мобильных роботов 0,3 0,3 - Устное тестирование

1.3 - Принцип работы мобильных роботов 0,6 0,6 - Устное тестирование

1.4 - Функциональная схема мобильных

роботов 0,5 0,5 -

Устное тестирование

ИТОГО по разделу 1 2,0 2,0 -

2. СЕНСОРНАЯ ПОДСИСТЕМА

2.1 - Датчики внутреннего состояния

робота 4,0 1,0 3,0

Беседа. Практическая

работа

2.2 - Датчики внешнего окружения робота 4,0 1,0 3,0 Беседа. Практическая

работа

2.3 - Инерциальные измерительные модули

(IMU) 4,0 1,0 3,0

Беседа. Практическая

работа

ИТОГО по разделу 2 12,0 3,0 9,0

3. НАВИГАЦИЯ мобильных колесных

роботов

3.1 - Системы навигации 0,5 0,5 - Устный тест

3.2 - Классификация приводов 1,0 0,5 0,5 Практическая работа

3.3 - Контроллер TRIK 1,0 0,5 0,5 Практическая работа

3.4 Симулятор TRIK Studio 2,5 1,0 1,5

3.4.1 - Возможности и настройки в TRIK

Studio 1,0 0,5 0,5

Беседа. Практическая работа

3.4.2 - Объекты Python для управления

TRIK 1,5 0,5 1,0

Практическая работа

3.5 - Введение в ТАУ (регуляторы П, ПИ) 2,5 1,0 1,5 Беседа. Практическая

работа

3.6 - Локализация с известным начальным

направлением 4,0 1,0 3,0

Практическая работа

3.7 Картирование (представление карты

местности) 6,0 2,0 4,0

3.7.1 - Представление карты известной

местности 3,0 1,0 2,0

Практическая работа

3.7.2 - Составление карты неизвестной

местности 3,0 1,0 2,0

Практическая работа

3.8 Планирование движения 10,5 3,5 7,0

3.8.1 - Планирование маршрута

(алгоритмы BFS, DFS) 3,0 1,0 2,0

Практическая работа

3.8.2 Управление движением 7,5 2,5 5,0

3.8.2.1 - Прямолинейное движение 3,0 1,0 2,0 Практическая работа

3.8.2.2 - Ускорение / торможение 1,5 0,5 1,0 Практическая работа

3.8.2.3 - Точные повороты 3,0 1,0 2,0 Практическая работа

ИТОГО по разделу 3 28,0 10,0 18,0

12

4. КОМПЬЮТЕРНОЕ ЗРЕНИЕ В

ЗАДАЧАХ ОНТИ ИРС

4.1 - Цветовая схема RGB (RGBA, каналы) 1,5 0,5 1,0 Практическая работа

4.2 - Перевод цветного изображения в градации серого

1,5 0,5 1,0 Практическая работа

4.3 - Фильтрация изображений 4,0 1,0 3,0 Практическая работа

4.4 - Бинаризация (ч/б формат) по

пороговому значению 1,5 0,5 1,0

Практическая работа

4.5 - Распознавание меток дополненной

реальности ArTag 7,5 2,5 5,0

Практическая работа

ИТОГО по разделу 4 16,0 5,0 11,0

5. МУЛЬТИАГЕНТНОЕ

УПРАВЛЕНИЕ

5.1 - Организация единой сети 3,5 1,5 2,0 Практическая работа

5.2 - Программирование роботов с

учетом мультиагентности 8,5 2,5 6,0

Практическая работа

ИТОГО по разделу 5 12,0 4,0 8,0

6. РЕШЕНИЕ ЗАДАЧ ОНТИ

ПРОФИЛЯ ИРС (2017-2020)

6.1 Декомпозиция задач финала ОНТИ

профиля ИРС 3,0 0,5 2,5

Практическая работа

6.2 Определение конфигурации робота для

задачи 1,0 0,5 0,5

Практическая работа

6.3 Сборка модели робота (моторы,

датчики, камера) 4,0 1,0 3,0

Практическая работа

6.4 Точные движения робота на полигоне, включая повороты

12,0 2,0 10,0 Практическая работа

6.5 Представление карты местности (с динамич. коррект.)

10,5 0,5 10,0 Практическая работа

6.6 Локализация/составление карты неизвестной местности

10,5 0,5 10,0 Практическая работа

6.7 Планирование картчайшего пути 10,5 0,5 10,0 Практическая работа

6.8 Распознавание меток ArTag (5x5, 6x6,

8x8) 10,5 0,5 10,0

Практическая работа

6.9 Мультиагентное управление 2..3

роботами 12,0 2,0 10,0

Практическая работа

ИТОГО по разделу 6 74,0 8,0 66,0

ИТОГО 144,0 32,0 112,0

13

Содержание программы

Наименование разделов, тем Содержание Виды учебных

занятий/работ

1. ВВЕДЕНИЕ В РОБОТОТЕХНИКУ (2 часа)

1.1. Стандартизация

робототехнических устройств

Знакомство с терминологией робототехнических

устройств

Лекция

1.2. Классификация мобильных

роботов

Основная классификация робототехнических

устройств. Знакомство с зарубежными и

российскими стандартами

Лекция

1.3. Принцип работы мобильных

роботов

Знакомство с основными принципами работы

мобильных роботов

Лекция

1.4. Функциональная схема

мобильных роботов

Основные подсистемы функционирования

робототехнических устройств

Лекция

2. СЕНСОРНАЯ ПОДСИСТЕМА (12 часов)

2.1. Датчики внутреннего

состояния робота

Классификация и разновидности датчиков для

определение внутреннего состояния роботов

(пропрооцептивные датчики)

Лекция

Нахвать примеры проприоцептивных датчиков из

реального мира - в электронных устройствах/живых организмах (смартфоны, смартчасы, ноутбуки,

организм человека, автомобили и т.д.)

Практика

2.2. Датчики внешнего

окружения робота

Классификация и разновидности датчиков для

определения внешнего окружения роботов

(экстероцептивные датчики)

Лекция

Назвать примеры экстероцептивных датчиков из

реального мира - в электронных устройствах/живых

организмах (смартфоны, смартчасы, ноутбуки, организм человека, автомобили и т.д.)

Практика

2.3. Инерциальные измерительные модули (IMU)

Классификация и разновидности инерциальных измерительных модулей (IMU)

Лекция

Назвать примеры возможных устройств/гаджетов, где применяются IMU

Практика

3. НАВИГАЦИЯ мобильных колесных роботов (28 часов)

3.1. Системы навигации Знакомство с разновидностями систем навигации - активная, пассивная, гибридная

Лекция

3.2. Классификация приводов Классификация приводов исполнительных

устройств и механизмов мобильных колесных роботов (типы моторов, энокдеров)

Лекция

Предположения по типам приводов в существующих мобильных колесных

робототехнических устройствах (типы моторов,

энкодеры и т.п.)

Практика

3.3. Контроллер TRIK Знакомство с контроллером TRIK - описание

аппаратной платформы, назначение портов, типы

подключаемого оборудования (датчики, моторы, сервоприводы, камеры и т.д.), техника

безопасности, правила подключения

Лекция

Просмотр меню включенного контроллера.

Тестирование доступных датчиков/моторов

Практика

14

3.4. Симулятор TRIK Studio Возможности среды TRIK Studio. Настройки среды -

расположение рабочих экранов, особенности режимов 2D и TRIK. Настройки виртуальной

модели робота TRIK (порты моторов/датчиков,

расположение датчиков на роботе). Редактор тренировочных полей для 2D симулятора - стенки,

банки/мячики, цветные линии/фигуры

Лекция

Настройка виртуальной модели робота (типы,

количество и расположение датчиков). Составление

простого тренировочного поля для занятий -

кегельринг, шорт-трек, лабиринт и т.д.

Практика

3.5. Введение в ТАУ

(регуляторы П, ПИ)

Введение в теорию автоматического управления -

регуляторы. Принципы работы П- и ПИ- регуляторов. Программная модель (алгоритм) для

управления движением робота через энкодерную

модель. Модель управления движения роботом через гироскоп.

Лекция

Программирование виртуальной модель робота TRIK для точного прямолинейного перемещения с

регулированием по энкодерам.

Практика

3.6. Локализация с известным начальным направлением

Лекция об алгоритме(ах) локализации (определения местоположения) на заранее известной карте

местности.

Лекция

Написание программы локализации робот в

симуляторе TRIK Studio в лабиринте 3х3, 5х5

секторов

Практика

3.7. Картирование

(представление карты

местности)

Лекция о форматах/вариантах представления карт

местноти в цифровом виде для

локализации/навигации робота. Введение в теорию графов (матрицы/списки смежностей)

Лекция

Составить матрица смежности лабиринта 3х3 сектора. Составить список смежностей лабиринта

5х5 секторов.

Практика

3.8. Планирование движения Введение в теорию графов. Знакомство с

алгоритмами обхода графов "в ширину" (BFS) и "в

глубину" (DFS)

Лекция

Написать алгоритм обхода графа в ширину для

поиску пути между двух заданных секторов в

лабиринте 4х4

Практика

3.8.1. Управление движением Теория управления точными движениями и

поворота мобильных роботов. Расчеты точных движений и поворотов (знание необходимых

характеристик для расчетов)

Лекция

Программирование виртуальной модель робота

TRIK для точного прямолинейного перемещения с

регулированием по энкодерам и/или гироскопу.

Программирование виртуальной модели робота TRIK для точных поворотов по энкодерам и/или

гироскопу.

Практика

4. КОМПЬЮТЕРНОЕ ЗРЕНИЕ В ЗАДАЧАХ ОНТИ ИРС (16 часов)

4.1. Цветовая схема RGB

(RGBA, каналы)

Описание цветовой модели RGB и RGBA. Алгоритм

конвертирования цветности из RGB24 в каналы [R,

G, B]

Лекция

15

Написать функцию перевода цвета из RGB24 в

каналы [R,G,B]

Практика

4.2. Перевод цветного

изображения в градации серого

Изучение алгоритмов перевода цветных

изображений в градации серого (среднее арифметическое каналов R,G,B; значение яркости V

из схемы HSV; по min, max значениям из каналов

R,G,B)

Лекция

Написать функцию перевода изображения из

цветности RGB24 в градации серого используя один из изученных алгоритмов

Практика

4.3. Фильтрация изображений Изучение алгоритмов фильтрации (корректировки)

растровых изображений (median, blur)

Лекция

Написать функцию обработки изображения

фильтрами median и blur

Практика

4.4. Бинаризация (ч/б формат)

по пороговому значению

Изучение алгоритмов перевода изображений в

градациях серого цвета в черно-белое изображение (по заданному пороговому значению, адаптивная

бинаризация)

Лекция

Написать функцию перевода изображения из

градаций серого цвета в черно-белый формат

Практика

4.5. Распознавание меток дополненной реальности ArTag

Изучение алгоритма распознавания меток дополненной реальности ArTag без использования

готовых модулей/библиотек (PIL, OpenCV и т.п.)

размерами 6x6 и 8x8. Изучение кода Хэмминга для самоконтроял и восстановления раскодированной

информации метки ArTag.

Лекция

Написать функцию распознавания и декодирования

метки ArTag размерами 6х6 и 8х8 с проверкой

корректности через код Хэмминга.

Практика

5. МУЛЬТИАГЕНТНОЕ УПРАВЛЕНИЕ (12 часов)

5.1. - Организация единой сети Изучение основ локальных компьютерных сетей.

Возможности и настройки контроллеров TRIK для развертывания локальных сетей посредством Wi-Fi

(роутеры, коммутаторы)

Лекция

Подключение двух или трех роботов TRIK (+ ноутбуков) в единую сеть на базе контроллера TRIK

(в режиме "Точка доступа"). Подключение роботов

TRIK в существующю сеть Wi-Fi (в режиме "Клиент")

Практика

5.2. - Программирование с учетом мультиагентности

Знакомство с видами управления группой роботов. Выбор подходящего типа управления для задач

ОНТИ ИРС. Определение "языка команд" для

взаимодействия роботов при выполнении

группового задания.

Лекция

Написать общую тестовую программу для двух

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

Практика

6. РЕШЕНИЕ ЗАДАЧ ОНТИ ПРОФИЛЯ ИРС сезонов 2017-2020 (74 часа)

6.1. Декомпозиция задач финала ОНТИ профиля ИРС

Разложить задачу финала ОНТИ ИРС сезона 2019-2020 (или другого) на более мелкие

задачи/подзадачи.

Практика

6.2. Определение конфигурации Определить необходимую конфигурацию для Практика

16

робота для задачи выполнения заданий финала ОНТИ ИРС из п.6.1,

включая моторы (типы, количество), датчики (типы, количество, угол поворота), камеры (высота

установки, направление) и т.д.

6.3. Сборка модели робота

(моторы, датчики, камера)

Сборка реальной модели робота из набора TRIK Практика

6.4. Точные движения робота на

полигоне, включая повороты

Адаптация написанных ранее программ для

управления роботами для корректной работы на

реальном роботе TRIK

Практика

6.5. Представление карты

местности (с динамич. коррект.)

Адаптация написанных ранее программ для

представления карты местности, но с динамической

корректировкой (если обнаружено препятствие, неизвестное ранее) для корректной работы на

реальном роботе TRIK

Практика

6.6. Локализация/составление

карты неизвестной местности

Адаптация написанных ранее программ для

локализации, составления карты неизвестной

местности для корректной работы на реальном

роботе TRIK

Практика

6.7. Планирование кратчайшего

пути

Отладка алгоритмов планирования кратчайшего

пути в лабиринте на реальном роботе TRIK

Практика

6.8. Распознавание меток ArTag

(6x6, 8x8)

Отладка считывания меток ArTag камерой,

установленной на реальном роботе TRIK, и раскодирование информации на них

Практика

6.9. Мультиагентное управление 2 (3) роботами

Отладка программы и выполнения комплексных задач группой роботов (2 или 3) на реальных

роботах TRIK.

Практика

Характеристика деятельности учащихся

Рабочая программа предусматривает формирование у школьников общеучебных

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

Познавательная деятельность:

• Овладение школьниками навыками проектной деятельности.

• Успешная самореализация учащихся.

• Опыт работы в коллективе.

• Получение опыта дискуссии, проектирования учебной деятельности.

• Опыт составления индивидуальной программы обучения.

• Систематизация знаний.

• Возникновение потребности читать дополнительную литературу.

• Умение искать, отбирать, оценивать информацию.

Информационно-коммуникативная деятельность:

• развитие способности правильно, логически выстроено задавать вопросы,

высказывать и доказывать свое мнение, понимать точку зрения собеседника и

признавать право на иное мнение;

17

• использование для решения познавательных и коммуникативных задач

различных источников информации.

Рефлексивная деятельность:

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

предвидеть возможные результаты своих действий:

• организация учебной деятельности: постановка цели, планирование,

определение оптимального соотношения цели и средств.

По завершении курса педагог представляет творческий отчет, обучающиеся

защищают проекты. Необходимо сюда добавить шаблон творческого отчета для

учителя (по желанию) Обязательно требования к проектам (критерии оценки),

которые выполняют учащиеся

Контрольно-измерительные материалы программы

1. Проверка знаний обозначений датчиков в симуляторе TRIK Studio

1.1 С помощью каких датчиков возможно измерение расстояния:

Ответ: 1 и 4

1.2 С помощью какого датчика можно двигаться по черной линии:

Ответ: 5

2. Проверка знаний по оснащенности контроллера TRIK

18

2.1 Что подключатся в разъемы А1…А6 ?

(аналоговые датчики – ИК-дальномер,

датчики касания, датчики света)

2.2 Куда подключаются силовые моторы?

(питание в разъемы М1…М4, энкодеры в

разъемы Е1 … Е4)

2.3 Что подключается в разъемы D1…D3:

(цифровые датчик - УЗ-дальномер, разъем

D3 пока в системе не задействован – в него

подключать ничего не надо)

2.4 Какие из датчиков присутствуют в

контроллере TRIK: акселерометр, компас,

гироскоп, инклинометр, датчик давления

(акселерометр и гироскоп)

3. Задачи для симулятора TRIK Studio

3.1 Диаметр цилиндра:

Робот движется вдоль кирпичной стены, которая описывает некоторую

окружность (в реальности это может быть вертикальная кирпичная труба). Робот

должен полностью объехать всю конструкцию, остановиться в том же месте, где и

стартовал, и вывести на дисплей диаметр трубы в сантиметрах.

Тренировочные поля – в приложениях r данной Программе.

3.2 Движение по заданному пути (расстояние, повороты)

30 97 28 52 38 -109 91 82 66

61 -103 87 19 57 -140 62 174 93 -138 83

19

Роботу задается маршрут для движения в виде набора чисел через пробел

N M N … M N

где,

N - числа с нечетным порядковым номером задают расстояние в

сантиметрах для прямолинейного движения

M - числа с четным порядковым номером задают поворот в градусах (-179o …

+179o) относительно текущего направления движения робота.

Направление поворота определяется знаком числа M:

• при M > 0 - поворот по часовой стрелке

• при M < 0 - поворот против часовой стрелки.

Робот должен проехать по указанному маршруту, остановиться и вывести на экран

"finish". Красная зона – расчетное место финиша.

Тренировочные поля для TRIK Studio – в приложениях к данной Программе.

3.3 Неизвестный лабиринт

Робот находится в неизвестном лабиринте. Нужно исследовать лабиринт, вернуться

в сектор (0, 0) и вывести на дисплей его размерность в секторах по вертикали и

горизонтали. Лабиринт может иметь форму квадрата или прямоугольника.

Максимальные размеры лабиринта могут быть 8 х 8 секторов. Размер каждого

сектора – 52.5 см. На роботе установлены ИК-дальномеры.

Направление робота на старте всегда «на восток»

Тренировочные поля для TRIK Studio – в приложениях к данной Программе.

4. Распознавание меток дополненной реальности ArTag:

20

Файл Artag_8x8(1).txt

Файл Artag_8x8(2).txt

Дополнительные задачи по программированию интеллектуальных робототехнических

систем с возможностью проверки решений, можно посмотреть:

1. В материалах разбора решений задач Олимпиады НТИ профиля

«Интеллектуальные робототехнические системы» прошлых сезонов:

https://nti-contest.ru/problembooks/

2. На сайте Stepik: https://stepik.org/course/5255/syllabus

21

Методическое и дидактическое обеспечение программы

Основной курс обучения:

− Киселев М.М., Киселев М.М. Робототехника в примерах и задачах. – Москва:

Солон-Пресс, 2017.

− Морган Ник. JavaScript для детей. Самоучитель по программированию. – М.:

Манн, Иванов и Фербер, 2017.

− Поляков К.Ю., Еремин Е.А. Информатика. – М.: Бином, 2013.

− Бхаргава Адитья. Грокаем алгоритмы. Иллюстрированное пособие для

программистов и любопытствующих. – СПб.: Питер, 2019.

Видеокурсы, интернет ресурсы:

− Онлайн курс по программированию в среде TRIK Studio. - Ресурс доступа (дата

обращения 18.07.2021): https://stepik.org/course/462/promo

− Сайт проекта ТРИК. – Ресурс доступа (дата обращения 18.07.2021): Trikset.com

− Информационные ресурсы Университета Иннополис (дата обращения

18.07.2021):

o Алгоритмические основы технического зрения

o Теория автоматического управления

o Межагентное взаимодействие

o Построение карты. Локализация

o Планирование и построение маршрута

− Общая ссылка на все ресурсы, представленные выше: https://bit.ly/IRS_info

Литература для учащихся

− Минник Крис, Холланд Ева. JavaScript для чайников. – М.: Диалектика, 2019.

− К. Вордерман и др. Программирование на Python: Иллюстрированное

руководство для детей. – М.: Манн, Иванов и Фербер, 2018.

− Филиппов С.А. Робототехника для детей и родителей. – СПб.: Наука, 2013.

− Филиппов Сергей: Уроки робототехники. Конструкция. Движение. Управление.

– М.: Лаборатория знаний, 2017.

Методическое пособие:

профиль “Интеллектуальные энергетические системы”

Возраст учащихся: 8-11 классы

Срок реализации: 64 часа (4 месяца)

Разработчики: компания Полюс-НТ

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

2

Содержание

Пояснительная записка к сетевой образовательной программе по

“Интеллектуальным энергетическим системам” 3

Задачи сетевого кружка 4

Форматы развертки сетевого кружка 4

Типы образовательных программ 4

Площадки, на базе которых возможно создание сетевого кружка 5

Методы и формы решения поставленных задач 5

Виды занятий учащихся 5

Деятельность преподавателя в рамках программы 6

Базовая образовательная программа по направлению “Интеллектуальные

энергетические системы” 6

Задачи образовательной программы 7

Возраст детей, участвующих в реализации данной программы 7

Особенности организации учебного процесса учащихся 7

Особенности организации учебного процесса преподавателя 7

Сроки реализации программы 8

Входные требования к знаниям, умениям и навыкам 8

Календарно-тематическое планирование 9

Формат проведения образовательных семинаров 11

Формат проведения семинаров по решению задач 11

Методические рекомендации по проведению образовательных семинаров 11

Таблица с методическими рекомендациями курса “Интеллектуальные

энергетические системы” 12

Методические рекомендации по проведению семинаров по разбору задач и

объяснению тем на примере работы со сборниками прошлых лет 14

Таблица с методическими рекомендациями по темам курса 14

Список рекомендованной литературы 17

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

3

Пояснительная записка к сетевой образовательной

программе по “Интеллектуальным энергетическим системам”

Сетевая образовательная программа предполагает реализацию на базе сетевых

кружков по Интеллектуальным энергетическим системам.

Создание сетевых кружков на основе профилей Олимпиады Кружкового

движения Национально технологической инициативы (Олимпиады КД НТИ) –

направлено на привнесение в образовательное пространство актуального содержания,

формирование инженерного и проектного типа мышления, выход всех участников

образовательного процесса на другой уровень качества образования.

Сетевой кружок по профилю «Интеллектуальные энергетические системы»

Олимпиады КД НТИ - пространство, где наставники вместе с учащимися работают с

актуальным содержанием в области Интеллектуальной энергетики, управления

критическими инфраструктурами, с применением новых гибридных форм

образования.

В современном мире развития цифровых технологий увеличивает

необходимость внимания к критическим инфраструктурам, в том числе энергетике.

Энергетика — сложная уже существующая система, и её возможно преобразовать,

используя новые технологии, но невозможно новым технологиям подчинить. Это

требует одновременно глубокого понимания технического и технологического

устройства существующих энергосистем, и понимания принципов и возможностей

новых технологий. Эти навыки нужно не только совместить, но и тщательно

синтезировать, чтобы проектировать не системы будущего, но системы, более

эффективные, чем существующие, обладающие большим модернизационным

потенциалом, и устойчивые в течение длительного времени, как технически, так

технологически и финансово. “Энергосистемы будущего” должны будут не просто

существовать — они должны будут стабильно работать. В совокупности это

сложнейшая открытая задача. Выделить в ней ключевые моменты, основные

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

принципиально новое поколение специалистов новыми способами обучения.

Олимпиада НТИ по профилю “Интеллектуальные энергетические системы”

позволяет школьникам не просто услышать про новые понятия в области энергетики,

но и начать с ними работать на практике, сочетая физическое моделирование,

программное моделирование, взаимодействие с другими участниками и работу со

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

математике и информатике: теория вероятностей, геометрия, основы анализа,

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

требуется самостоятельное освоение следующих тем: теория аукционов, теория игр,

теория графов, работа с математическими моделями, программирование на языке

Python, основы численных методов в решении математических задач. Навыки

программирования являются неотъемлемой частью прохождения программы, так как

большинство задач финала требует практической реализации их решения в виде или в

составе программ — управляющего скрипта энергосистемы и вспомогательных

инструментов для принятия решений.

От этапа к этапу в профиле Олимпиады увеличивается, как сложность задач, так

и их специфика. По мере продвижения команд к финальному испытанию проводятся

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

4

вебинары, хакатоны, предоставляются дополнительные методические материалы по

сложным темам.

Методики разработаны таким образом, чтобы снизить требования к

специальной подготовке преподавателей при сохранении глубины и качества

погружения в сложную, мультидисциплинарную предметную область. Программы

построены по принципу последовательного движения от десакрализации основных

понятий к актуальному технологическому стеку с глубоким изучением основ.

Целью сетевого кружка является ознакомление с областью знаний

интеллектуальных энергетических систем, ее практическими применениями в

различных сферах, развитие математического, алгоритмического, инженерного и

проектного мышления.

Задачи сетевого кружка

● Изучить основные понятия интеллектуальной энергетики.

● Сформировать навыки по построению эффективной модели энергоснабжения.

● Сформировать навыки работы с написанием скриптов на языке Python.

● Сформировать навыки работы с биржей экономических микроконтрактов в

энергетике, осуществление которой является одной из главных задач

технологии Smart Grid и предполагает применение автоматизации, создание

оптимальных стратегий и алгоритмов анализа параметров энергосети.

● Сформировать навыки сотрудничества со сверстниками в образовательной,

учебно-исследовательской деятельности;

● Сформировать сознательное отношение к непрерывному образованию как

условию успешной профессиональной и общественной деятельности;

● Сформировать мотивацию к изучению и исследованию;

● Сформировать мировоззрение, соответствующее современному уровню

развития технологий беспроводной связи.

Форматы развертки сетевого кружка

● Без оснащения оборудованием. Предполагает работу по тематическому

направлению “Интеллектуальные энергетические системы” и по подготовке к

профилю, используя образовательные онлайн материалы.

● С оснащением оборудованием. Предполагает, как работу вдоль годичного цикла

Олимпиады НТИ, с занятиями по подготовке к Олимпиаде НТИ, так и занятия

на образовательных стендах «Интеллектуальные энергетические системы»

(производитель – компания Полюс-НТ).

Типы образовательных программ:

● Базовая образовательная программа по направлению (64 часа) -

предполагает программу, в рамках которой учащиеся занимаются в течении 4

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

5

месяцев 1 занятие (2 академических часа) в неделю с педагогом, и 2 часа в

неделю учащиеся занимаются самостоятельно. Целью программы является

введение учащихся в тематику направления ИЭС и знакомство учащихся с

задачами 2 тура профиля Олимпиады.

● Базовая образовательная программа по профилю (216 часов) - предполагает

программу, в рамках которой учащиеся занимаются в течении года 1 занятие (2

академических часа) в неделю с педагогом, и 4 часа в неделю учащиеся

занимаются самостоятельно. Целью программы является планомерная

подготовка учащихся к участию в соревнованиях по профилю “ИЭС”

Олимпиады КД НТИ. Программа включает в себя стадии от ознакомления с

Олимпиадой КД НТИ и профилем до финального испытания.

● Основная образовательная программа лаборатории (216 часа) - предполагает

программу, в рамках которой учащиеся занимаются в течении года 1 занятие (3

академических часа) в неделю с педагогом и 3 часа в неделю учащиеся

занимаются самостоятельно. Целью программы является освоение тем и

навыков работы со сложными системами, с использованием стендов

образовательной лаборатории “Интеллектуальные энергетические системы”.

Площадки, на базе которых возможно создание сетевого кружка

Общеобразовательные учреждения, Кванториумы, ЦМИТы, Фаблабы, центры

дополнительного образования или департаменты довузовской подготовки

университета.

Методы и формы решения поставленных задач

Главным преимуществом сетевого кружка является возможность проводить

смешанные (гибридные) форматы занятий – очно-дистанционные. Оснащение

программ методическими и дидактическими материалами, позволяет проводить

занятия различных видов.

Виды занятий учащихся

● Занятия с преподавателем. Возможно проведение в форме очных семинарских

занятий или в дистанционном формате в режиме вебинаров. Существуют

образовательные семинары и семинары по решению задач. Возможно

проведение хакатонов в очном или заочном формате.

● Самостоятельная работа. Изучение образовательных курсов, самостоятельное

решение задач.

● Очные лабораторные работы, с использование программно-аппаратных

комплексов (в случае оснащения учреждения оборудованием - основная

образовательная программа).

● Вебинары от разработчиков профиля (образовательные программы по

профилю). Посещение вебинаров для программ по профилю является

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

6

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

активность и заинтересованность.

Деятельность преподавателя в рамках программы

● Обучение - посещение вебинаров, прохождение образовательных онлайн

курсов, самостоятельная работа с представленными профилем дидактическими

материалами. Посещение вебинаров является обязательным требованием к

преподавателям сетевого кружка в рамках образовательных программ по

профилю и показывает их реальную активность и заинтересованность.

● Подготовка к занятиям - педагог еженедельно проводит подготовку к занятиям

с учащимися.

● Проведение занятий - предполагает очный или дистанционный семинар или

хакатон.

● Проведение очных лабораторных работ, с использование программно-

аппаратных комплексов (в случае оснащения учреждения оборудованием -

основные образовательные программы).

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

7

Базовая образовательная программа по направлению

“Интеллектуальные энергетические системы”

(32 часа программы, 32 часа самостоятельной работы)

В основу образовательной программы положено содержание профиля,

разработанное для проведения отборочных и заключительных этапов олимпиады и

подготовительных мероприятий прошедших сезонов: задачи отборочных этапов и

финалов, теоретические материалы и лекции, разборы заданий, модули

образовательных курсов, практикумы и хакатоны.

Базовая образовательная программа позволяет структурировано знакомить

учащихся с основами направления “Интеллектуальные энергетические системы”,

знакомя учащихся с основными теоретическими материалами, а также задачами 2 тура

по профилю.

Задачи образовательной программы

● Подготовка школьников к соревнованиям по профилю “Интеллектуальные

энергетические системы” Олимпиады КД НТИ и другим инженерным

соревнованиям, соответствующим тематике профиля.

● Ознакомление школьников с актуальным содержанием в области

Интеллектуальной энергетики, ее практическими применениями в различных

сферах.

Возраст детей, участвующих в реализации данной программы

Учащиеся 8-11 классов.

Особенности организации учебного процесса учащихся

Участие в очных (возможен дистанционный формат) занятиях кружка,

продолжительностью 2 академических часа (90 минут) 1 раз в неделю.

● Участие в семинарах.

● Участие в хакатонах.

Самостоятельная работа, продолжительностью 2 академических часа 1 раз в

неделю (90 минут)

● Самостоятельная работа. Изучение образовательных курсов, самостоятельное

решение задач.

Особенности организации учебного процесса преподавателя

Самостоятельная работа, продолжительностью 2 академических часа в неделю (90

минут).

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

8

● Обучение - посещение вебинаров от профиля, прохождение образовательных

онлайн курсов, самостоятельная работа с представленными профилем

дидактическими материалами. Посещение вебинаров является обязательным

требованием к преподавателям сетевого кружка в рамках образовательных

программ по профилю и показывает их реальную активность и

заинтересованность.

● Подготовка к занятиям - педагог проводит подготовку к каждому занятию с

учащимися.

Проведение очных занятий (возможен дистанционный формат проведения)

продолжительностью 2 академических часа (90 минут) 1 раз в неделю.

● Проведение семинаров.

● Проведение хакатонов.

Сроки реализации программы

Общая продолжительность: 4 месяца.

Общая трудоемкость: 64 часа.

Входные требования к знаниям, умениям и навыкам

Задачи образовательной программы нацелены на выявление и развитие навыков

по численным математическим методам, понимания принципов физических

измерений, алгоритмического мышления, на развитие навыков работы с задачами,

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

перебором, методов и способностей к аналитической работе с большими массивами

данных, навыков работы с графами, использованию законов электрического тока в

сложных схемах, развитие навыков по численной работе со случайными величинами,

навыков по анализу рядов данных, понимание принципов отказоустойчивости,

понимания процессов, происходящих в системах альтернативной энергетики, навыков

решения оптимизационных задач, развитие навыков моделирования мультиагентных

систем.

Для решения задач необходимы разделы информатики, посвященные

следующим темам: программирование на языке Python, программная реализация

алгоритмов решения математических задач, базовые навыки динамического

программирования, работа с программными экосистемами и библиотеками, навыки

численного моделирования, численное представление графов, определение связности

графа.

Для решения задач необходимы разделы математики, посвященные темам:

теория вероятностей, теория графов, численные алгоритмы (принципы работы

критериев остановки), линейные функции, поиск оптимума функции, работа с

числовыми рядами. дифференцирование, стереометрия, планиметрия, тригонометрия,

элементы теории аукционов, теории игр.

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

9

Для решения задач необходимы разделы физики, посвященные темам: закон

Кирхгофа, закон Ома, работа электрического тока, принципы работы

электрогенераторов.

Требует не только школьные знания, но и факультативные знания, доступные

школьнику.

Календарно-тематическое планирование

Тема Количество часов

Всего Аудиторны

х

Самостоятельная

работа

Образовательный семинар

“Интеллектуализация энергетики как

отдельный процесс”

2 1 1

Образовательный семинар“Парадоксальный

кризис энергетики”

2 1 1

Семинар по решению задач на тему: “Теория

игр”

4 2 2

Образовательный семинар “Цифровизация в

энергетике. Невозможность цифровизации”

2 1 1

Образовательный семинар “Системы” 2 1 1

Семинар по решению задач на тему:

“Математические модели”

4 2 2

Образовательный семинар “Образовательные

технологии. Энергетика. Личный опыт”

2 1 1

Образовательный семинар “Основные понятия” 2 1 1

Семинар по решению задач на тему: “Теория

вероятностей”

4 2 2

Образовательный семинар “Физические

законы”

2 1 1

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

10

Образовательный семинар “Потребители

энергии”

2 1 1

Семинар по решению задач на тему: “Физика” 4 2 2

Образовательный семинар “Генераторы

энергии”

2 1 1

Образовательный семинар “Возобновляемые

источники энергии”

2 1 1

Семинар по решению задач на тему:

“Алгоритмы”

4 2 2

Образовательный семинар “Устройство

энергосистемы”

2 1 1

Образовательный семинар “Системы” 2 1 1

Семинар по решению задач на тему: “Графы” 4 2 2

Образовательный семинар “Базовые понятия

архитектуры интернета энергии”

2 1 1

Образовательный семинар “Основные

экономические понятия”

2 1 1

Образовательный семинар “Технические

решения для гибкого урегулирования”

2 1 1

Образовательный семинар “Топология сетей” 2 1 1

Образовательный семинар “Аукционы” 2 1 1

Образовательный семинар

“Программирование”

2 1 1

Образовательный семинар “АСУ” 2 1 1

Образовательный семинар “Взаимодействие

игроков”

2 1 1

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

11

Итого часов: 64

часа

32 часа 32 часа

Формат проведения образовательных семинаров

Аудиторно. Прослушивание видео ролика, во время которого каждый учащийся

делает скетч (зарисовывает с подписями краткий конспект того, что его больше всего

заинтересовало). Знакомство со скетчами друг друга и каждый рассказывает о том, что

ему больше всего запомнилось и понравилось. Рассмотрение задания “Для

размышления” (в материалах курса к каждой теме) в классе.

Самостоятельно. Знакомство с материалами к ролику и внесение самого

интересного из них в скетч.

Методические рекомендации по проведению образовательных семинаров

описаны в Приложении 1.

Формат проведения семинаров по решению задач

● Аудиторно. Решение задач с последующим прослушивание видеоразбора задач.

● Самостоятельно. Знакомство с дополнительными материалами.

Методические рекомендации по проведению семинаров по разбору задач

описаны в Приложении 2.

Приложение 1

Методические рекомендации по проведению образовательных

семинаров

В основу методических рекомендаций положен образовательный модульный

видео-курс. Каждый модуль содержит видео-лекции на темы, необходимые к освоению

на профиле “Интеллектуальные энергетические системы”.

Темы модулей:

Модуль №1. “Интеллектуальные энергетические системы”.

Модуль №2. Базовые понятия энергетики.

Модуль №3. Архитектура интернета энергии.

Все лекции представлены в виде лонгридов, включающих видео, текстовую

лекцию, вопросы для самопроверки и рекомендованные материалы.

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

12

Ссылка на курс: https://onti.polyus-nt.ru/course/view.php?id=2.

Продолжительность курса: 22 видео продолжительностью 10-30 минут

каждое.

Возраст целевой аудитории: учащиеся 8-11 классов, наставники.

Таблица с методическими рекомендациями курса “Интеллектуальные

энергетические системы”

Модуль,

Краткое описание тем

модуля

Тема лекции (№ в модуле, название) Время,

мин.

1 Что такое

инфраструктура.

Почему пришло время

интеллектуализации.

Управление,

возможность и

невозможность цифры. Возможность и

невозможность

автоматического

управления.

1. Интеллектуализация энергетики как отдельный

процесс

12:15

2. Парадоксальный кризис энергетики 12:14

3. Цифровизация в энергетике 13:17

4. Невозможность цифровизации 5:57

5. Системы 29:37

6. Образовательные технологии 13:07

2 Физические законы и

математические

модели. Как устроена

энергосистема,

потребители и

генераторы энергии.

Возобновляемые

источники энергии.

1. Энергетика. Личный опыт 15:13

2. Основные понятия 18:31

3. Физические законы 16:54

4. Потребители энергии 25:37

5. Генераторы энергии 25:25

6. Возобновляемые источники энергии 15:03

7. Устройство энергосистемы 27:34

8. Системы 18:09

3 Топологии

сетей и аукционы в

1. Базовые понятия 14:16

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

13

энергетике.

Определение цены на

энергию посредством

аукционов,

взаимодействие

игроков.

2. Основные экономические понятия 12:53

3. Технические решения для гибкого урегулирования 12:06

4. Топология сетей 21:49

5. Аукционы 15:27

6. Программирование 10:13

7. АСУ 11:47

8. Взаимодействие игроков 13:49

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

14

Приложение 2.

Методические рекомендации по проведению семинаров по

разбору задач и объяснению тем на примере работы со

сборниками прошлых лет

В основу методических рекомендаций по проведению семинаров положен

видео-курс по разбору задач прошлых лет, сгруппированный по темам необходимых к

освоению на профиле “Интеллектуальные энергетические системы”.

Продолжительность курса: курс представляет собой 26 видео,

продолжительностью 10-20 минут.

Возраст целевой аудитории: учащиеся 8-11 классов, наставники.

Темы курса

Тема 1. Теория игр

Тема 2. Математические модели

Тема 3. Теория вероятностей

Тема 4. Графы

Тема 5. Алгоритмы

Тема 6. Физика

Ссылка на курс: https://onti.polyus-nt.ru/course/view.php?id=4.

Таблица с методическими рекомендациями по темам курса

Тема

курса

Название

задачи

Какие знания и навыки

формируются

Принцип

решения

1.

Теория игр

Чистая дилемма ● теория игр

● работа с моделью

аналитическое решение

2.

Математичес

кие модели

Ученью- свет ● информационный поиск

● работа со сложностью

информационный

поиск

Сейсмическая

одновременность

● геометрия

● программирование

● работа с моделью

геометрические

алгоритмы, перебор

С заботой о птицах ● геометрия

● алгоритмы

● работа с моделью

реализация,

геометрические

алгоритмы

Светлое наследие Теслы ● физика

● геометрия

● численные методы

● работа с моделью

оптимизационный

алгоритм,

аналитическое решение

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

15

Ветряки Беца ● физика

● работа с моделью

● автоматизация вычислений

реализация

Баланс в напряжении ● физика

● численные методы

● программирование

оптимизационный

алгоритм

3.

Теория

вероятностей

Светофоростояние I ● теория вероятностей

● работа с моделью

аналитическое

решение, реализация

Солнцестояние ● теория вероятностей

● работа с моделью

● программирование

аналитическое решение

Невероятная формулища ● теория вероятностей

○ работа с распределениями

(плотность, медиана)

● работа со сложной моделью

● автоматизация вычислений

реализация,

предварительная

реалиация

PageRank на минималках ● теория вероятностей

● численные методы

● реализация ● работа с моделью

принцип Монте-Карло

(альтернатив)

Броуновский кузнечик ● теория вероятностей

● численные методы

● математика

● программирование

принцип Монте-Карло

(альтернатив)

Мемексотека ● теория вероятностей

● работа с моделью ● численные методы

аналитическое

решение, принцип Монте-Карло

(альтернатив)

Сопротивление на удачу ● теория вероятностей

● программирование

● физика

● работа с моделью

реализация,

программирование

Случайное

сопротивление

● теория вероятностей

● работа с моделью

аналитическое решение

Недетерминированный

конь

● теория вероятностей

● работа с моделью

аналитическое решение

Немного

детерминированный

конь

● теория вероятностей

● работа с моделью

● программирование

динамическое

программирование

4.

Графы

Неолимпиадное

сопротивление I

● графы

● физическая модель

● реализация

реализация, свертка

графа

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

16

Перекладка сетей ● теория графов

● программирование

реализация,

минимальное дерево

Одеревенение ● теория графов ● физическая модель

реализация, остовное дерево

Вероятный отказ ● графы

● теория вероятностей

● реализация

реализация,

свертывание графа

Умная сетка ● графы

● работа с моделью

● реализация

реализация

5. Алгоритмы Светофоростояние II ● теория вероятностей

● алгоритмы

● автоматизированное управление

● работа с данными

динамическое

программирование - от

частного к общему

Кассетная сортировка ● алгоритмика

● работа с моделью

● реализация

циклическая

сортировка

Цепной забор ● работа с данными

● работа с математической моделью

реализация

Поминутная

тарификация

● алгоритмика

● работа с моделью

● реализация

циклический буфер

Зделай сервер ● программирование

● информационный поиск

● работа в непривычной системе и модели

информационный

поиск, реализация

6.

Физика

Кессонный эффект ● физика

● работа с моделью

аналитическое решение

Напряжённая вилка ● физика

● работа с моделью

аналитическое решение

Плавание вверх ● физика ● численные методы

● работа с моделью

● автоматизация вычислений

аналитическое решение,

бинарный поиск

Здоровое питание ● физика (электротехника)

● работа со сложной моделью

аналитическое решение

Необходимое оборудование, симуляторы и ПО: компьютер, среда для программирования.

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

17

Приложение 3

Список рекомендованной литературы

1. «Теория игр» от Школа «Интеллектуал» и проект «Дети и наука»

(https://childrenscience.ru/courses/math_games/) - курс очень живо и интересно,

погрузит вас в мир игр.

2. Курс МФТИ “Теория игр” https://openedu.ru/course/mipt/GAMETH/

3. Александр Филатов "Теория и практика аукционов". Часть 1

https://www.youtube.com/watch?v=X2cH9RHhICs

4. Александр Филатов "Теория и практика аукционов". Часть 2

https://www.youtube.com/watch?v=2xypFRoDd74

5. Курс “Теория вероятностей – наука о случайности”

https://stepik.org/course/2911/promo

6. А.Шень. Вероятность:примеры и задачи https://www.mccme.ru/free-

books/shen/shen-probability.pdf

7. Курс Андрея Райгородского и Максима Жуковского “Теория вероятностей для

начинающих” https://ru.coursera.org/learn/probability-theory-basics

8. Курс “Основы теории графов” https://stepik.org/course/126/promo

9. Курс “Основы дискретной математики” https://stepik.org/course/1127/promo

10. Численные методы: решение нелинейных уравнений http://statistica.ru/branches-

maths/chislennye-metody-resheniya-uravneniy/

11. Программирование на Python https://stepik.org/course/67/promo

12. Программирование на Python для решения олимпиадных задач

https://stepik.org/course/66634/promo

13. Python: основы и применение https://stepik.org/course/512/promo

14. Курс “Введение в машинное обучение” (https://www.coursera.org/learn/vvedenie-

mashinnoe-obuchenie)

15. Курс “Математика и Python для анализа данных”

https://www.coursera.org/learn/mathematics-and-python

16. Статья Самые большие солнечные электростанции на Земле

https://www.rlocman.ru/review/article.html?di=600887

17. А. В. Савватеев, А. Ю. Филатов. ТЕОРИЯ И ПРАКТИКА АУКЦИОНОВ

http://www.vestnik.vsu.ru/pdf/econ/2018/03/2018-03-19.pdf

Сборники прошлых лет

● Методическое пособие Том 12: Профиль «Интеллектуальные энергетические

системы», командная инженерная олимпиада школьников «Олимпиада

Кружкового движение Национальной технологической инициативы». Учебно-

методическое пособие (в 28 томах). — М.: Типография «Ваш Формат», 2021.

Методическое пособие по профилю “Интеллектуальные энергетические системы”, ООО

“Полюс-НТ”, Иркутск, 2020

18

— ISBN 978-5-00147-278-0. https://drive.google.com/file/d/1-

KL8cFgjF3ifN3bJoJmSnL6Tyt3xlPVx/view?usp=sharing

● Методическое пособие Том 11: Профиль «Интеллектуальные энергетические

системы», командная инженерная олимпиада школьников «Олимпиада

Кружкового движения Национальной технологической инициативы». Учебно-

методическое пособие (в 28 томах). – М.: Типография «Ваш Формат», 2020. –

ISBN 978-5-00147-184-4.

https://drive.google.com/file/d/1l1HgjYCxzvIRfEnSdIcpY9wR84tiZ4sK/view?usp=

sharing

● Методическое пособие Том 7: Профиль «Интеллектуальные энергетические

системы». Командная инженерная олимпиада школьников «Олимпиада

Национальной технологической инициативы». Учебно-методическое пособие

(в 20 томах). – М.: Типография «Ваш Формат», 2019. – ISBN 978-5-00147-017-

5. https://drive.google.com/open?id=1qUdt-UIEWCva-y4h8Zk8H1WaEBfk-PEm

● Учебно-методическое пособие (в 17 томах) Том 7: Профиль

«Интеллектуальные энергетические системы». Командная инженерная

олимпиада школьников «Олимпиада Национальной технологической

инициативы». Учебно-методическое пособие (в 17 томах) – М.: Типография

«Ваш Формат», 2018. ISBN 978-5-906982-80-3. http://old.nti-contest.ru/wp-

content/uploads/compilations/7%20-

%20%D0%9C%D0%B0%D1%82%D0%B5%D1%80%D0%B8%D0%B0%D0%BB

%D1%8B%20%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D0%B

9%20%D0%98%D0%AD%D0%A1.pdf?_gl=1*1682x2b*_ga*NDE2MDQ3MjA2L

jE1OTYwOTUyOTQ.*_ga_Q2VTLRFTKB*MTYyMzc0Njg0My4zLjAuMTYyMz

c0NzIzMC42MA..&_ga=2.33770145.1047499211.1623728409-

416047206.1596095294

● Методическое пособие Том 6: «Интеллектуальные энергетические системы».

Командная инженерная олимпиада школьников «Олимпиада Национальной

технологической инициативы». Учебно-методическое пособие (в 12 томах) //

Группа авторов под редакцией Николаенко А.В. – М.: Типография «Ваш

Формат», 2017. ISBN 978-5-9500065-6-2.

https://drive.google.com/open?id=0B0X30BfOmpvzQklKczZxMjRhM00

● Учебно-методическое пособие Командная инженерная олимпиада школьников

«Олимпиада Национальной технологической инициативы» // Коллектив

авторов под ред. Анисимова Н.Ю.– М.: Типография «Ваш Формат», 2016.

ISBN 978-5-9908167-1-8. http://old.nti-contest.ru/wp-

content/uploads/%D0%9F%D0%BE%D1%81%D0%BE%D0%B1%D0%B8%D0%

B52016.pdf?_gl=1*1h6pa8y*_ga*NDE2MDQ3MjA2LjE1OTYwOTUyOTQ.*_ga_

Методическое пособие

Профиль: «Летающая робототехника»

образовательные технологии – предметно-ориентированные

Разработчик: ООО «Коптер Экспресс Технологии»

Дополнительная общеразвивающая образовательная программа «Летающая

робототехника» направлена на: развитие творческих способностей и интереса к научной, и

инженерной деятельности учащихся лежащих в области конструирования беспилотных

летательных аппаратов, осваивающих общеобразовательные программы основного общего и

среднего образования; распространение и популяризацию научных знаний в области

конструирования, компьютерного зрения и автономной навигации беспилотных летательных

аппаратов; создание условий для интеллектуального развития и поддержки учащихся,

оказания содействия молодежи в профессиональной ориентации и осознанном выборе

образовательной траектории.

Дополнительная общеразвивающая образовательная программа «Летающая

робототехника» отнесена к программам технической направленности, является авторской

разработкой и направлена на ознакомление и погружение в профиль «Летающая

робототехника» Олимпиады КД НТИ.

СОДЕРЖАНИЕ

1. Пояснительная записка 4

1.1 Краткая характеристика предмета 4

1.2 Направленность образовательной программы 4

1.3 Новизна, актуальность и педагогическая целесообразность 5

1.4 Цель образовательной программы 6

1.5 Задачи образовательной программы 6

1.6 Условия реализации образовательной программы 7

1.7 Планируемые результаты освоения программы 8

2 Учебно-тематический план дополнительной общеразвивающей образовательной

программы по направлению «Летающая робототехника» 11

2.1 Содержание разделов и тем 15

3. Сведения о условиях для реализации учебного процесса 18

4. Словарь терминов (глоссарий) 21

1. Пояснительная записка

1.1 Краткая характеристика предмета

Беспилотные летающие аппараты (БПЛА) — это бурно развивающийся сегмент

мирового рынка в высокотехнологичных отраслях. Сегодня промышленные и сервисные

БПЛА находят применение в различных областях — доставка грузов, видеосъемка,

обеспечение безопасности, промышленность, мониторинг Земли и других планет. В

последние годы технологии БПЛА быстро развиваются, а степень автономности становится

все выше. Расширение сфер применения квадрокоптеров (термин, аналогичный БПЛА)

требует подготовки квалифицированных кадров для создания систем автоматического

управления, а также проектирования и разработки конструкций БПЛА. Правильная

эксплуатация квадрокоптера возможна только при наличии знаний и умений, которые

позволят эксплуатировать, конструировать и обслуживать БПЛА. Сегодня, можно сказать

активно формируется новое направление – практически интегрированное в образование,

науку, педагогику и инженерное дело.

Дополнительная общеразвивающая образовательная программа «Летающая

робототехника» — это междисциплинарный курс, включающий в себя науку, технологию,

инженерное дело, математику и программирование, включающие востребованные на

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

способностей учащихся, развивает навыки взаимодействия, самостоятельности при принятии

решений, раскрывая их инженерный и творческий потенциал.

Курс направлен на формирование как теоретических, так и практических основ

авиастроения, подробный разбор конструкции мультироторного БПЛА, самостоятельное

проектирование и изготовление узлов квадрокоптера. Учащиеся познакомятся с практикой и

теорией программирования автономных миссий БПЛА. В рамках курса будут рассмотрены

типы задач по программированию автономного полета квадрокоптера, разобраны решения

практических задач. Рассмотренные в курсе темы помогут учащимся решать задачи, понимать

иллюстрации, использовать специализированное оборудование, применять необходимые

программы для решения задач с применением конструктора программируемого

квадрокоптера COEX “Клевер 4”, понимать требования и критерии к задачам. Программа

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

основы сборки, настройки, пилотирования и программирования квадрокоптера.

При этом, освоение и применение современных сквозных технологий в процессе

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

роботов не требует углубленных знаний классических предметов, но дает стимул к их

изучению через практическое применение ранее полученных теоретических основ.

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

или изобретают что-то самостоятельно, а наличие большого количества инженерных

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

индивидуальную траекторию дальнейшего развития обучающихся.

1.2 Направленность образовательной программы

Направленность программы — научно-техническая. Программа направлена на

привлечение учащихся к электронике, конструированию и программированию летающих

робототехнических систем/беспилотников, проектной работе в команде, самостоятельный

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

задач. Все это становится ценным опытом для дальнейшего профессионального

ориентирования и почвой для раскрытия потенциала и собственного развития. Программа

способствует приобретению навыков анализа, проектирования, программирования и

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

1.3 Новизна, актуальность и педагогическая целесообразность

В 1912 году компанией Sperry Corporation был представлен первый гироскопический

автопилот. Технология обеспечивала автоматическое удержание курса полета и стабилизацию

крена. В 1930-х годах автопилоты уже устанавливались на гражданские самолеты, а в 1947

году самолет C-54 ВВС США совершил трансатлантический перелет полностью под

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

проникают в нашу повседневную жизнь. Еще недавно мало кто представлял, что мы увидим

рои беспилотных летательных аппаратов в небе.

Многие отрасли уже с трудом представляют себе работу без применения дронов. Это и

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

участия человека; и энергетическая отрасль, где дроны выполняют мониторинг объектов

инфраструктуры, в том числе, протяженностью в сотни километров. В шахтах специальные

дроны следят за состоянием вентиляции и сводов, в городе сотни дронов организуют для нас

захватывающие шоу, а на Марсе беспилотный летательный аппарат исследует поверхность

Красной планеты и ищет возможные цели для марсохода. Для человечества началась эра

искусственного интеллекта, семейства технологий, несущих потенциал революционного

технологического прорыва и требующей адекватной реакции как в сфере науки, так и в сфере

образования.

Авторитетными группами международных экспертов область взаимосвязанных

роботизированных систем признана приоритетной, несущей потенциал революционного

технологического прорыва и требующей адекватной реакции как в сфере науки, так и в сфере

образования.

В связи с активным внедрением новых технологий в жизнь общества постоянно

увеличивается потребность в высококвалифицированных специалистах. Для реализации

фундаментальных и прикладных научно-исследовательских разработок в области

робототехники ряд передовых ВУЗов открыл специальности, а также лаборатории, но большее

количество абитуриентов не предполагает о наличии данных направлений, ввиду отсутствия

ранней профориентации, что говорит о необходимости создания подобных образовательных

программ.

Представленная программа предназначена для подготовки школьников, выбравших

популярное сегодня направление – БПЛА, которые смогут поступать в высшие учебные

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

программированием БПЛА или иных робототехнических платформ, а затем продуктивно

работать в качестве инженеров, операторов БПЛА, программистов, геодезистов,

разработчиков, научных сотрудников и т.д.

В процессе освоения программы развиваются теоретические и практические навыки, а

также основы программирования. Образовательная программа предполагает решение

обучающимися разноплановых задач, градирующихся по уровню сложности, что позволит

ученикам на практике ознакомиться с физическими основами и возможностями беспилотных

летательных аппаратов. Изучение беспилотных летательных аппаратов и решение кейсов в

команде, самостоятельный выбор необходимых для работы компетенций, а также решение

реальных практических задач, позволяет объединить вышеперечисленные пункты в одном

курсе, что в свою очередь позволяет, стимулируя техническое творчество, интегрировать

преподавание дисциплин физико-математического профиля и естественнонаучных дисциплин

с развитием инженерного мышления. Все это становится ценным опытом для дальнейшего

профессионального ориентирования и почвой для раскрытия потенциала и собственного

развития. Программа способствует приобретению навыков анализа, проектирования,

программирования и конструирования, что является необходимым условием для инженерного

образования.

1.4 Цель образовательной программы

Целью подготовки слушателей по Программе является:

● совершенствование компетенций, необходимых для решения задач в областях

разработки новых методов управления, обработки информации и поиска новых

конструктивных решений беспилотных летающих аппаратов широкого назначения, их

подсистем и отдельных модулей, проведения исследований в сферах робототехники,

теории управления и методов искусственного интеллекта.

● привлечение учащихся к работе в области инженерной и изобретательской

деятельности.

● создание условий для мотивации и повышения интереса учащихся к беспилотным

летающим аппаратам и робототехнике, содействие им в профессиональном

самоопределении.

● развитие творческого и научно-технического потенциала учащихся через

образовательную, проектную и соревновательную траектории выстроенные данной

программой в единую систему.

1.5 Задачи образовательной программы

Образовательные:

● Формирование творческого отношения к выполняемой работе;

● Формирование навыков и подходов к решению реальных практических задач.

● Ознакомление учащихся с историей, основными принципами работы и устройством

БПЛА.

● Реализация межпредметных связей с математикой, информатикой и физикой.

● Освоение базовых компетенций в областях конструирования, электромонтажа, пайки.

● Освоить навык визуального управления БПЛА, и с видом от первого лица (режим FPV).

● Освоение навыков анализа, проектирования, программирования и конструирования.

● Решение учащимися ряда задач по программированию БПЛА на базе компьютерного

зрения.

● Подготовка учащихся к участию в Олимпиадах НТИ.

● Использование современных разработок по беспилотным летающим аппаратам и

компьютерному зрению, организация на их основе активной внеурочной деятельности

учащихся.

● Развитие умения излагать мысли в последовательности, отстаивать свою точку зрения

анализировать ситуацию и самостоятельно находить ответы на вопросы путем

логических рассуждений.

Развивающие:

● Формирование у учащихся стремления к получению качественного законченного

результата;

● Умение работать в команде, распределять обязанности и делегировать задачи.

● Развитие у учащихся мотивациии и интереса к исследовательской, научно-технической

и инженерной сферам;

● Развитие у школьников инженерного мышления и навыков программирования.

● Развитие таких важных личностных компетенций как: память, внимание, способность

логически мыслить и анализировать, концентрировать внимание на главном при работе

над проектами.

● Формирование основ технической культуры и грамотности при работе в рамках

специализированных лабораторий.

● Развитие принципов и идей, которые будут полезны учащимся в настоящем и

пригодятся впоследствии при его профессиональном развитии в инновационно-

техническом мире.

● Формирование способности решать проблемы и актуальные задачи в заданные сроки

при разработке инженерно-технических устройств.

● Организация и участие в олимпиадах, конкурсах и соревнованиях связанных с

беспилотными летающими аппаратами для закрепления изучаемого материала,

мотивации к дальнейшему развитию, формированию критического и аналитического

мышления

● Формирование навыков проектного мышления.

Воспитательные:

● Воспитание настойчивости, собранности, организованности, аккуратности.

● Формирование мотивации к саморазвитию.

● Формирование творческой инициативы и самостоятельности при выполнении проекта.

● Повышение мотивации учащихся к самообразованию, созданию собственных

самоуправляемых автономных программных и робототехнических систем.

1.6 Условия реализации образовательной программы

Категория обучающихся (слушателей): уровень образования - учащиеся 8-11 классов

образовательных организаций системы средних общеобразовательных учреждений.

Форма обучения: очная, в случаях необходимости может иметь гибридный формат (очно-

заочный).

Сроки реализации программы: программа рассчитана на 1-2 года обучения, может быть

изменена в соответствии с материально-техническим обеспечением организации (кружка), в

котором планируется ее реализация.

В первый год учащиеся проходят курс по основам конструирования БПЛА, в который

заложена работа над сборкой БПЛА, где обучающиеся выступают в роли инженеров. В

процессе разработки проекта, обучающиеся коллективно обсуждают идеи решения

поставленной конструкторской задачи, далее строят, программируют и оценивают

работоспособность созданного мультикоптера. Особое внимание уделяется составлению

технических текстов (техническое задание, памятка, инструкция, технологическая карта и

т.д.), и развитие навыков устной и письменной коммуникации и командной работы. Реализуя

инженерно-исследовательский проект, обучающиеся осваивают основы радиоэлектроники,

получают первые представления о строении и функционировании квадрокоптеров,

проектируют и строят свой квадрокоптер и тестируют работу. Параллельно осваивая навыки

пилотирования в различных режимах, знакомятся с программированием микроконтроллеров

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

зрения.

Во второй год учащиеся углубляют полученные знания для программирования

беспилотного летательного аппарата, ориентирующегося по данным с видеокамеры при

помощи технологии компьютерного зрения. Изучают новые алгоритмы компьютерного

зрения и методов визуализации. Проходят курс по основам 3D моделирования, дорабатывая

квадрокоптер под решение актуальных задач. Участвуют в учебных состязаниях.

Режим занятий: Занятия от 2 до 4 ак. часов, от 1 до 2 раз в неделю.

Принципы обучения:

● Научность. Обучающиеся в рамках образовательной программы получают

достоверный материал, проверенный на практике и актуальный новейшим научно-

техническим достижениям.

● Доступность. Данный принцип предполагает соответствие сложности учебного

материала степени общего развития учеников, что преследует цель наиболее

качественного усвоения знаний и навыков учащимися.

● Связь теории с практикой. Принцип предусматривает практическое применение

теоретических знаний, полученных обучающимися.

● Воспитательный характер обучения. В ходе процесса обучения, помимо освоения

знаний и приобретения навыков, ученик также развивает свои интеллектуальные и

моральные качества.

● Сознательность и активность обучения. В ходе учебного процесса обучающийся

должен действовать обоснованно, сознательно. Процесс обучения предполагает

инициативность и самостоятельность учащихся, развитие критического мышления.

● Наглядность. Использование определенных образцов технических изделий и

видеоматериалов образовательного характера в ходе преподавания техники сборки.

● Систематичность и последовательность. Логически последовательная реализация

учебного материала в виде упорядоченной системы, преследующая цель наиболее

качественного его усвоения.

● Прочность закрепления знаний, умений и навыков. Качественное обучение

предполагает уверенное освоение обучающимися знаний умений и навыков,

следовательно, для достижения результата, необходимо закреплять приобретенные

знания, умения и навыки регулярным повторением.

1.7 Планируемые результаты освоения программы

Для развития творческих способностей обучающихся необходимо создать ситуацию

заинтересованности. Здесь решающее значение имеет не только содержание знаний, но и тип

деятельности, в которой они приобретались. Поэтому акцент ставится на разнообразие форм

и типов активности обучающихся, в которых приобретаются знания и создаются авторские

продукты.

Формы организации деятельности учащихся на занятии используемые при реализации

программы образовательных технологий:

● Индивидуально-групповая работа. Позволяет ученикам апробировать различные

командные роли, развить чувство ответственности за выполнение своей части задачи.

● Работа по подгруппам (по звеньям). Позволяет ученикам проводить соревнования и

исследования параллельно, сравнивая и анализируя используемые методы и

полученные результаты.

● Самостоятельная аналитическая и практическая работа. Занятия представляют работу

по проектированию и конструированию беспилотного летательного аппарата и

руководство технологическим процессом. В ходе практических занятий ученики

приобретают умения и навыки работы в условиях технической лаборатории и на

практике применяют теоретические знания по дисциплинам физико- математического

и естественнонаучного профиля.

● Мастер-классы от представителей отрасли и экскурсии. Данная форма занятий

позволит ученикам сформировать наиболее полное представление о состоянии отрасли

и перспективах ее дальнейшего развития.

● Лекции. С целью повышения качества усвоения материала предполагается внести в

лекционные занятия элементы игровой активности. Таким образом, за счет смены

видов деятельности, возрастет качество восприятия материала.

● Соревнования. Помимо соревнований, предусмотренных учебной программой,

обучающиеся имеют возможность принимать участие в сторонних соревнованиях

различного уровня, а также огрганизовавыть соревнования внутри группы, между

группами, открытые соревнования. Таким образом, в процессе организации участники

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

рассмотреть соревновательный и олимпиадные процесс с противоположной для

участников точки зрения. Данная форма занятий включает обязательный инструктаж

учеников по правилам техники безопасности при эксплуатации БПЛА.

Методологический базис среды развития технологических компетенций формируется

на основе научных концепций, результатах исследований, передовых отечественных и

международных практиках. Для чего учащимся необходимо проверять полученные знания и

навыки на открытых конференциях, конкурсах, хакатонах и иных состязаниях.

В течение курса предполагаются регулярные зачеты, на которых решение

поставленной заранее известной задачи принимается в свободной форме (не обязательно

предложенной преподавателем). При этом тематические состязания также являются методом

проверки, и успешное участие в них освобождает от соответствующего зачета.

Результатом использования данных подходов и обеспечение разноуровневости

программы предполагается приобретение обучающимися таких компетенций 21 века, как:

● генерация инженерных идей;

● продуктовое, изобретательское мышление;

● навыки проектного управления;

● владение технологией постановки задач,

● навыки гибкого и аккуратного выполнения операций;

● умение работать в команде, самомотивация и продуктивная коммуникация;

● способность формулировать, представлять и решать проблемы;

● логическое мышление, рефлексия, объяснения и аргументация.

Предметные результаты обучения:

● знать простейшие основы электромеханики;

● знать определения понятий: датчик, интерфейс, алгоритм и т.п., а также

специализированную терминологию;

● знать основные компоненты и устройство БПЛА мультироторного типа;

● знать технологическую последовательность сборки моделей;

● знать технику безопасности при пайке, запуске и эксплуатации БПЛА;

● знать принципы управления БПЛА;

● знать принцип работы элементов управления;

● знать компьютерную среду, включающую в себя ОС, языки программирования; виды

подвижных и неподвижных соединений;

● знать способы навигации БПЛА;

● знать области применения БПЛА различных типов, а также их возможные

ограничения;

● уметь применять полученные знания для ремонта и диагностики БПЛА;

● применять свои знания в 3D моделирование узлов БПЛА;

● читать и оформлять технологическую документацию;

● летать по трассе с видом от первого лица;

● программировать БПЛА для автономного полета;

● осуществлять навигацию квадрокоптера, и распознавание цветных маркеров

используя системы технического зрение;

● владеть научной терминологией, ключевыми понятиями, методами и приемами

конструирования, моделирования, программирования в области аэродинамики;

● владеть программами: Компас 3D, Qgroundcontrol, Gazebo;

● владеть информацией с GitBook и уметь ее применять.

Метапредметные результаты обучения:

● уметь определять последовательность выполнения действий, составлять

инструкции (алгоритмы) в несколько действий;

● формировать универсальные учебные действия (познавательные, регулятивные,

коммуникационные), обобщенные способы информационной деятельности при

использовании информационных технологий, в том числе при программировании

БПЛА для автономного полета;

● развить познавательные интересы, интеллектуальные и творческие способности путем

освоения и использования методов и приемов конструирования, моделирования,

программирования в области аэродинамики;

● приобрести опыт программирования БПЛА для автономного полета в

индивидуальной, групповой и коллективной учебно-познавательной деятельности.

Личностные результаты обучения:

● личностное и предпрофессиональное самоопределение через познавательную

мотивацию к получению профессий, связанных с программированием БПЛА для

автономного полета;

● построение дальнейшей индивидуальной образовательной траектории через

получение представления о перспективных направлениях развития методов и приемов

моделирования, программирования в области аэродинамики;

● овладение навыками постановки задачи для другого члена команды исходя из

специфических знаний по своей специализации;

● осознание стратегической важности для государства, общества и для своего будущего

развития БПЛА.

Воспитательный результат занятий можно считать достигнутым, если учащиеся проявляют

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

созданию собственных творческих проектов. Участие в научных конференциях для

школьников, выставках, открытых чемпионатов связанных с научно-техническим

направлением и беспилотными летающими аппаратами, а также свободное творчество во

многом демонстрируют и закрепляют полученные знания стимулируя участника к

дальнейшему развитию своих знаний и навыков.

2 Учебно-тематический план дополнительной общеразвивающей

образовательной программы по направлению «Летающая робототехника»

п/п

Наименование разделов

(модулей) и тем

Виды учебных занятий,

учебных работ

Формы

контроля Трудоемк

ость Лекции

Практи

ческие

занятия

Самостоя

тельная

работа

1 Сборка и настройка 35 13 15 7

1.1. Введение. Знакомство с

лабораторией 1 1

Практическая

работа №1

Промежуточное

тестирование

№1

1.2.

Разновидности БПЛА.

История развития

летательных аппаратов.

Применение БПЛА. Виды

БПЛА.

2 2

1.3.

ТБ при пайке и работе с Li-

Po аккумуляторами.ТБ при

сборке и настройке

коптеров, при подготовке к

вылету.

2 1 1

1.4. Принципы проектирования

и строения мультикоптеров 2 2

1.5. Основы электричества.

Теория пайки 2 2

1.6. Пайка узлов квадрокоптера 4 1 3

1.7. Сборка рамы квадрокоптера 2 2

1.8. Финальная сборка

квадрокоптера 4 1 3

1.9. Настройка квадрокоптера 5 1 2 2

1.10. Аэродинамика полета.

Пропеллеры 2 1 1

1.11. Учебные полеты.

Соревнования. 9 1 3 5

2 Диагностика и ремонт

коптера 6 3 3 0

2.1. Поиск неисправностей.

Техника безопасности. 4 2 2 Практическая

работа №2

Промежуточное

тестирование

№2 2.2.

Устранение

неисправностей. Заполнение

дефектной ведомости.

2 1 1

3 Пилотирование от первого

лица (режим FPV) 10 2 8 0

3.1.

Устройство видео

передатчика, видео

приемника и камеры для

FPV. Пайка навесных

элементов

4 1 3

Практическая

работа №3

3.2.

Предполетная подготовка.

Полеты на дроне в режиме

FPV

6 1 5

4 Программирование.

Симулятор. 20 8 12 0

4.1. Язык программирования

Python 10 4 6

Практическая

работа №4 4.2.

Введение в ROS (Robot

Operating System) 10 4 6

5 Программирование

квадрокоптера 56 16 37 3

5.1.

Настройка параметров

коптера. Запись образа ОС.

Работа с командной строкой

Raspberry и ssh клиентом.

5 1 4

Практическая

работа №5

5.2. Работа со светодиодной

лентой 4 1 3

5.3. Работа с лазерным

дальномером 4 1 3

5.4. Работа с камерой 2 1 1

5.5 Способы навигации.

Системы координат. 4 1 3

5.6 Навигация по полю меток 4 1 3

5.7.

Работа в симуляционной

среде Gazebo. Подготовка

полигона. Запуск

простейших полетных

миссий.

10 4 4 2

5.8

Визуализация полетных

миссий с помощью RVIZ в

симуляторе.

8 3 4 1

5.9

Перемещение в заданные

координаты. Пролет по

заданной траектории с

выводом текущих

координат.

8 1 7

5.10

Полет по трассе на дроне и

использование функций.

Визуализация полетных

миссий с помощью RVIZ

8 2 5 1

6 Программирование и

распознавание 24 8 15 1

6.1. Компьютерное зрение.

OpenCV 10 5 4 1

Практическая

работа №6

6.2.

Перемещение в заданные

координаты. Распознавание

цветных маркеров, вывод

данных в терминал

10 2 8

6.3.

Перемещение в заданные

координаты. Распознавание

QR-кода, вывод данных в

терминал

4 1 3

7 Захват и перенос груза 8 1 7

7.1. Настройка и калибровка

захвата. Захват груза. 4 1 3

Практическая

работа №7

7.2. Захват, перенос и сброс

груза. 4 4

8

Моделирование

конструктивного узла

коптера

17 3 13 6

8.1. Построение 3D объекта по

чертежу 9 1 7 1

Практическая

работа №8 8.2.

Постановка на 3D принтер.

Сборка, монтаж, настройка

конструктивного узла.

8 1 2 5

Итоговая аттестация Зачет на основании совокупности выполненных работ

ИТОГО 176 54 110 14

Образовательный процесс предусматривает развитие природных задатков учеников,

реализацию их интересов и способностей. Каждое занятие направлено на обеспечение

развития личности обучающегося, следовательно, планирование и проведение занятий

проводится в соответствии с личностно-ориентированной технологией и системно-

деятельным методом обучения.

Данная образовательная программа предполагает вариативный подход,

предусматривающий творческую инициативу со стороны учеников и преподавателя в том, что

относится к порядку освоения раздела, использования дополнительных материалов, методики

проведения занятий.

Реализуя представленную образовательную программу, преподаватель располагает

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

либо меньшую сторону уровень сложности учебного материала.

Рекомендуемый дополнительный образовательный блок.

П/П

Наименование разделов

(модулей) и тем

Виды учебных занятий,

учебных работ Формы

контроля Трудоемк

ость Лекции

Практи

ческие

занятия

Самостоя

тельная

работа

1. Проектный модуль 32 8 7 17

1.1.

Погружение в проектную

деятельность.

Проблематизация.

Выбор учебного кейса

2 1 1

Практическая

работа №1

1.2.

Анализ специфики кейса,

определение базы данных,

необходимых для решения

задачи. Распределение по

ролям внутри группы

4 1 3

1.3.

Формирование плана

работы. Самостоятельная

аналитическая работа

4 1 3

1.4. Проработка и оформление

ТЗ проекта. 4 1 3

1.5.

Промежуточная

презентация плана

реализации проекта

2 1 1

1.6. Практический блок: работа

над проектом 14 2 4 8

1.7. Презентация результатов 2 1 1

ИТОГО 32 8 7 17

2.1 Содержание разделов и тем

Модуль 1. Сборка и настройка

Тема 1.1. Введение. Знакомство с лабораторией. Знакомство с деятельностью лаборатории /

направления, презентация образовательной программы. Знакомство с оборудованием.

Тема 1.2. Разновидности БПЛА. История развития летательных аппаратов. Применение

БПЛА. Виды БПЛА. Знакомство с историей создания БПЛА. Преимущества и минусы

использования, законодательные ограничения, перспективы развития БПЛА мультироторного

типа.

Тема 1.3. ТБ при пайке и работе с Li-Po аккумуляторами. ТБ при сборке и настройке

коптеров, при подготовке к вылету. Ознакомление с правилами техники безопасности при

конструировании и эксплуатации квадрокоптеров и последствиями несоблюдения (используя

иллюстративный материал).

Тема 1.4. Принципы проектирования и строения мультикоптеров. Знакомство слушателей с

историей создания и развития мультироторных систем, формирование представления о

функциях и возможностях современных мультироторных систем, наглядная демонстрация

видов и конфигураций квадрокоптеров. Основы конструирования мультироторных систем.

Тема 1.5. Основы электричества. Теория пайки. Природа и физические характеристики

электродвижущей силы. Формирование у слушателей представления о тепловом действии

электрического тока и его причинах. Принципы строения электрических цепей. Теория пайки,

представление инструментов и методики пайки.

Тема 1.6. Пайка узлов квадрокоптера. Практическая работа: подготовка платы распределения

питания (PDB); пайка регуляторов и ВЕС.

Тема 1.7. Сборка рамы квадрокоптера. Практическая работа: сборка основы для рамы;

установка моторов; сборка рамы; монтаж платы распределения питания (PDB).

Тема 1.8. Финальная сборка квадрокоптера. Практическая работа: перевод пульта в режим

PWM; сопряжение приемника и пульта управления; проверка направления вращения моторов;

перевод пульта в режим PPM; установка пластины для полетного контроллера; установка

полетного контроллера.

Тема 1.9. Настройка квадрокоптера. Практическая работа: настройка полетного контроллера

и калибровка датчиков.

Тема 1.10. Аэродинамика полета. Пропеллеры. Основные принципы аэродинамики винтов.

Представление главных характеристик винта, и их влияния на полетные качества

квадрокоптера. Технические таблицы по подбору винтов и моторов.

Тема 1.11. Учебные полеты. Принципы управления квадрокоптером. Особенности работы

полетного контроллера и ПИД регулятора. Представление о принципах расчетов ПИД-

регуляторов. Теория ручного визуального пилотирования. Техника безопасности. Процедуры

проверки готовности: пилотирование БПЛА визуально, выполнение простейших полетных

процедур. Посадка.

Модуль 2. Диагностика и ремонт коптера.

Тема 2.1. Поиск неисправностей. Техника безопасности. Практическая работа: Определение

дефектов, неисправностей и способов их устранения по цифровой или физической модели

коптера

Тема 2.2. Устранение неисправностей. Заполнение дефектной ведомости. Практическая

работа: описание дефектов и неисправностей и способов их устранения в дефектной

ведомости. Оценка применения профессиональной терминологии. Устранение

неисправностей.

Модуль 3. Полеты в FPV режиме.

Тема 3.1. Устройство видеопередатчика, видео приемника и камеры для FPV. Пайка

навесных элементов. Практическая работа: подготовка и установка камеры и передатчика;

настройка и подключение FPV-очков.

Тема 3.2. Предполетная подготовка. Полеты на дроне в режиме FPV. Практическая работа:

развитие и отработка навыков FPV пилотирования.

Модуль 4. Программирование.

Тема 4.1. Язык программирования Python. Знакомство с Python, историческая справка,

особенности языка основные типы данных, операции с ними. Запуск программ. Получение

результатов. Математические выражения. Знакомство, общее представление об условных

операторах и логических выражениях. Разбор базовых принципов работы с операторами и

циклами. Практическая работа: обработка, создание и вывод вложенных массивов; ввод,

обработка массивов.

Тема 4.2. Введение в ROS (Robot Operating System). Знакомство с операционной системой ROS:

понятие пакета, иерархия папок в файловой системе, компиляция; создание простых нод

писателя и читателя; Обмен сообщениями.

Модуль 5. Программирование квадрокоптера

Тема 5.1. Настройка параметров коптера. Запись образа ОС. Работа с командной строкой

Raspberry и ssh клиентом. Способы применения микрокомпьютеров на примере Raspberry Pi.

Взаимодействие с unix-подобными системами.

Тема 5.2. Работа со светодиодной лентой. Установка, настройка, программирование.

Тема 5.3. Работа с лазерным дальномером. Настройка, способы использования лазерных

дальномеров, получение данных.

Тема 5.4. Работа с камерой. Принцип работы камеры, фокусное расстояние, способы

калибровки.

Тема 5.5. Способы навигации. Системы координат. ArUco маркеры. Способы навигации

беспилотных летательных аппаратов (БПЛА). Автономные системы навигации, какими они

могут быть и что требуется для их создания. Принципы работы ArUco маркеров с камерой.

Тема 5.6. Навигация по полю меток. Способы программирования автономного квадрокоптера.

Написания кода для автономного полета на языке Python и закрепление навыков по

использованию unix-подобных систем.

Тема 5.7. Работа в симуляционной среде Gazebo. Знакомство с симуляционной средой Gazebo.

Отработка навыков написания программного кода для автономного полета квадрокоптера.

Тема 5.8. Визуализация полетных миссий с помощью RViz в симуляторе. Знакомство с

инструментом 3D-визуализации (RViz). Визуализировать на 3D-сцене все компоненты

робототехнической системы — системы координат, движущиеся части, показания датчиков,

изображения с камер.

Тема 5.9. Перемещение в заданные координаты. Написание программного кода для

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

с выводом текущих координат. Подготовка импровизированной полетной трассы и задания

для полетной миссии. Запуск и тестирование автономного полета квадрокоптера.

Тема 5.10. Полет по трассе на дроне и использование функций. Визуализация полетных

миссий с помощью RVIZ. Подготовка импровизированной полетной трассы и задания для

полетной миссии. Запуск и тестирование автономного полета квадрокоптера с визуализацией

полетной миссии на 3D-сцене в режиме реального времени.

Модуль 6. Программирование и распознавание.

Тема 6.1. Компьютерное зрение. OpenCV. Знакомство с библиотекой компьютерного зрения

с открытым исходным кодом (OpenCV). Компьютерное зрение. Знакомство с цветовыми

моделями и схемами. Операции с цветом в OpenCV и Python. Простейшие программы для

распознавания объектов через камеру ноутбука.

Тема 6.2. Перемещение в заданные координаты. Распознавание цветных маркеров, вывод

данных в терминал. Подготовка программного кода для автономной миссии с распознаванием

цветных маркеров, выводом данных в терминал. Тестирование программ на физическом

полигоне.

Тема 6.3. Перемещение в заданные координаты. Распознавание QR-кода, вывод данных в

терминал. Подготовка программного кода для автономной миссии с детектированием QR-

кодов и цветных маркеров различной формы, знакомство с библиотекой pyZBar. Тестирование

программ на физическом полигоне.

Модуль 7. Захват и перенос груза.

Тема 7.1. Настройка и калибровка захвата. Захват груза. Практическая работа: сборка и

настройка электромагнитного захвата / сборка и настройка механического захвата.

Тема 7.2. Захват, перенос и сброс груза. Практическая работа: отработка навыков

пилотирования: захват, перенос и сброс груза.

Модуль 8. Моделирование конструктивного узла квадрокоптера.

Тема 8.1. Построение 3D объекта по чертежу. Основы создания чертежей и 3D моделей на

примере создания модели конструктивного узла квадрокоптера.

Тема 8.2. Постановка на 3D принтер. Изготовление изделия. Основы работы с 3D принтером:

постановка, печать, постобработка изделия. Монтаж изделия на квадрокоптер, проверка

работоспособности изделия.

3. Сведения о условиях для реализации учебного процесса

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

оснащенной современными персональными компьютерами и программным обеспечением в

соответствии с тематикой изучаемого материала. Число рабочих мест в аудитории должно

обеспечивать индивидуальную работа обучающегося (или из расчета 1 персональный

компьютер/ноутбук на слушателя курса) на отдельном персональном компьютере. Аудитория

также должна быть оснащенной современным ПК с подключенным к нему проектором, для

обеспечения трансляции видеотерминала на настенный экран, или аналогичным по

функциональному назначению оборудованием.

Материальное обеспечение программы включает в себя:

1. Персональные компьютеры с установленным необходимым ПО.

2. Учебные наборы квадрокоптера СОЕХ Клевер 4 WorldSkills Russia с дополнительными

ремкомплектами.

3. Кабинет физики, помещение кружка робототехники или авиакружка,

демонстрационная или образовательная лаборатория. Данные помещения должны быть

оборудованы необходимыми инструментами и материалами, а также обеспечить

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

4. Преподавательский состав для работы с данным оборудованием должен иметь

необходимую квалификацию, навыки и проводить работу с соблюдением требований

техники безопасности.

5. Полетный куб с защитной сеткой (минимальный размер 3x3x3 м).

№ Наименование Тех. описание

1.

Учебный набор квадрокоптера

"СОЕХ Клевер 4 WorldSkills

Russia"

2. Паяльная станция с феном

3. Дымоуловитель

(Дымопоглотитель) настольный

4. Комплексный набор

инструментов

Мультиметр; Кусачки;

MicroUSB - USB провод;

Клеевой-Пистолет; Набор надвилей;

Штангенциркуль; Плоскогубци;

Вороток; Третья рука;

8мм накидная головка; Канцелярский нож;

Большой пинцет; Маленький пинцет;

Губка для паяльника; Паяльник TS100;

Жало для паяльника TS100; Силиконовый коврик для

пайки;

Провод для паяльника Ts100; Lipo Пищалка;

Ручка; Ножницы;

Линейка металлическая; Рулетка;

Плоскогубцы для моторов; Hex 1.5 Отвертка;

Hex 2 Отвертка; Hex 2.5 Отвертка;

Hex 3 Отвертка; Шлицевая отвертка; Крестовая

отвертка;

Отвертка торцевая М3

5. Ноутбук или Персональный

компьютер

Не ниже:

Процессор Core i5-9300HF

Тактовая частота 2.4 ГГц

Максимальная тактовая частота 4.1 ГГц

Количество ядер 4

Объем оперативной памяти 16 ГБ

6. Коврик для компьютерной мыши На усмотрение организатора

7. Компьютерная мышь На усмотрение организатора

8. Одноплатный портативный

микрокомпьютер Raspberry Pi 4 Дополнительный расходный материал

9. Wi-Fi роутер Для обеспечения свободного доступа рабочих станций

к сети интернет

10. Пилот, 6 розеток Не менее 6 розеток, длина шнура не менее 2 метров

11.

Ремкомплект предназначенный

для «COEX Клевер 4 WorldSkills

Russia»

На усмотрение организатора

12. Комплексный набор расходных

материалов

Припой оловянно-свинцовый ПОС 61 - 1 шт;

Флюс - 1 шт;

Очиститель жал паяльника - 1 шт;

Набор термоусадочной трубки - 1 уп;

Пропеллеры для мультикоптера с типоразмером 3050

- 1 уп;

Пропеллеры для мультикоптера с типоразмером 5050

- 1 уп;

Алкалиновые батарейки типа АА - 4 шт;

Шлейф для камеры Raspberry Pi 3 model B+ 10см - 1

шт;

Хомут пластиковый 3х200 мм - 50 шт;

Литиевая аккумуляторная батарея, 4S, 2200 mah - 1

шт;

Литиевая аккумуляторная батарея, 3S, 1600 mah - 1

шт;

Салфетки тканевые для уборки - 1 уп;

Телескопичный провод MicroUSB-USB длина не

менее 50 см - 1 шт;

Телескопический провод Type-C - 1 шт;

Скотч двухсторонний - 1 шт;

Изолента - 1 шт;

Оплетка для пайки - 1 шт ;

Провод для пайки 30 AWG - 4 цвета по 1 метру;

Стержни для клеевого пистолета - 4 шт.

13. Очки защитные прозрачные Обеспечение ТБ при пайке элементов квадрокоптера.

14. Халат рабочий Обеспечение ТБ при пайке элементов квадрокоптера.

15. Перчатки

Свойства: бесшовные вязаные перчатки из полиэстера

с полиуретановым покрытием в области кончиков

пальцев и ладонной части.

16. Набор первой медицинской

помощи (аптечка)

Кровоостанавливающие средства, бинты, вата и др.На

усмотрение организатора.

17. Проводной интернет Для обеспечения свободного доступа рабочих станций

к сети интернет необходимого оборудования

18. Электричество: 4 точки на 220

Вольт (не менее 2 кВт) - тройник Для обеспечения электропитания необходимого

оборудования.

19. Трансформирующаяся модульная

полетная зона

Размер полетной зоны (ДxШхВ): 3х3х3м.

Ячейка защитной сетки: 40х40мм. Поле аруко-меток.

На не бликующей баннерной ткани, размер 2Х2м, не

менее 8 aruco-меток

Широкие возможности установки дополнительного

навесного оборудования

20. Поле Aruco-меток Размер меток 33 см, метраж в зависимости от

размеров полетной зоны

21. Стол учебный

22. Стул

4. Словарь терминов (глоссарий)

БПЛА

Беспилотный летательный аппарат. Примеры: квадрокоптер,

гексакоптер, самолет, летающее крыло, конвертоплан (VTOL),

вертолет.

Квадрокоптер Беспилотный летательный аппарат с 4-мя винтами и электронной

системой стабилизации.

Мультикоптер

Беспилотный летательный аппарат с электронной системой

стабилизации и числом винтов, равным 3 (трикоптер), 4 (квадрокоптер),

6 (гексакоптер), 8 (октокоптер) или более.

Полетный

контроллер /

автопилот

1. Специализированная плата, спроектированная для управления

мультикоптером, самолетом или другим аппаратом. Примеры: Pixhawk,

ArduPilot, Naze32, CC3D.

2. Программное обеспечение для платы управления мультикоптером.

Примеры: PX4, APM, CleanFlight, BetaFlight.

Прошивка

Программное обеспечение, управляющее работой какого-либо

устройства, например, полетного контроллера или регулятора мотора

(ESC).

Мотор

Электродвигатель, который вращает винты мультикоптера. Обычно

используются бесколлекторные электродвигатели. Такие двигатели

подключаются к ESC.

ESC / регулятор

двигателя /

"регуль"

Electronic Speed

Controller

Специализированная плата, которая управляет скоростью вращения

бесколлекторного электродвигателя. Управляется полетным

контроллером при помощи широтно-импульсной модуляции (ШИМ).

ESC имеет прошивку, которая определяет особенности его работы.

АКБ /

аккумулятор /

батарея

Перезаряжаемый источник тока для БПЛА. В квадрокоптерах обычно

применяются Li-po (литий-полимерные) аккумуляторы.

Ячейка /

"банка" АКБ

Составная часть АКБ, непосредственный источник тока. Обычно АКБ

для БПЛА состоят из нескольких (2–6) ячеек, соединенных

последовательно. Максимальное напряжение одной Li-po ячейки – 4.2

В; общее напряжение АКБ равно суммарному напряжению ячеек.

Количество ячеек обозначается буквой S, например: 2S, 3S, 4S.

В Клевере обычно применяются аккумуляторы 3S или 4S

Пульт /

аппаратура

радиоуправлени

я / "аппа"

Пульт для управления квадрокоптером, работающий по радиоканалу.

Для работы пульта к полетном контроллеру необходимо подключить

ресивер.

Клевером, также, можно управлять со смартфона.

Телеметрия

1. Передача данных о состоянии квадрокоптера или другого аппарата на

расстояние.

2. Совокупность данных о состоянии аппарата, так таковая (высота,

ориентация, глобальные координаты и т. д.).

3. Система для передачи данных о состоянии аппарата или команд для

него по воздуху. Примеры: радиомодемы (RFD900, 3DR Radio Modem),

Wi-Fi модули (ESP-07). Raspberry Pi на Клевере также может быть

использован в качестве модуля для телеметрии: использование

QGroundControl через Wi-Fi.

Арминг

Armed – состояние коптера готовности к полету. При поднятии стика

газа либо при посылке внешней команды с целевой точкой – коптер

полетит. Обычно коптер начинает вращать винтами при переходе в

состояние "armed" даже если стик газа находится внизу.

Противоположным состоянием является Disarmed.

PX4

Популярный полетный контроллер с открытым исходным кодом,

работающий на платах Pixhawk, Pix Racer и других. PX4 рекомендуется

для использования на Клевере.

Raspberry Pi Популярный одноплатный микрокомпьютер, использующийся в

конструкторе Клевер.

Образ SD-карты

Полная копия содержимого SD-карты, представленная в виде файла.

Такой файл можно загрузить на SD-карту, воспользовавшись

специальной утилитой, например Etcher. SD-карта, вставленная в

Raspberry Pi является единственным его долговременным хранилищем

и полностью определяет, что он будет делать.

Конструктор Клевер включает в себя рекомендованный образ

для SD-карты.

APM / ArduPilot

Полетный контроллер с открытым исходным кодом, изначально

созданный для платы Arduino. Впоследствии был портирован на

Pixhawk, Pixracer и другие платы.

MAVLink

Протокол для взаимодействия дронов, наземных станций и других

аппаратов по радиоканалам. Обычно именно этот протокол

используется для телеметрии.

ROS Популярный фреймворк для написания сложных робототехнических

приложений.

MAVROS Библиотека-связующее звено между аппаратом, работающем по

протоколу MAVLink, и ROS.

UART

Последовательный асинхронный интерфейс передачи данных,

применяемый во многих устройствах. Например, GPS антенны, Wi-Fi

роутеры или Pixhawk.

IMU

Inertial measurement unit. Комбинация датчиков (гироскоп,

акселерометр, магнитометр), которая помогает БПЛА рассчитывать

ориентацию и положение в пространстве.

Estimation

Процесс определения ПО полетного контроллера состояния

квадрокоптера: положения в пространстве, скоростей, углов наклона и

т. д. Для этого используется смешивание данных с установленных

датчиков и различные алгоритмы фильтрации, например фильтр

Калмана.

В прошивке PX4 есть два модуля для estimation'а: LPE и ECL EKF

(EKF2).

В прошивке APM эту функцию выполняет подсистема EKF2.

1. Учебно - методические материалы // COEX Clover Gitbook URL:

https://clover.coex.tech/ru/metod.html (дата обращения: 15.07.2021).

2. Контрольные материалы // COEX Clover Gitbook URL:

https://clover.coex.tech/ru/tests.html (дата обращения: 15.07.2021).

3. Теория и видеоуроки // COEX Clover Gitbook URL:

https://clover.coex.tech/ru/lessons.html (дата обращения: 15.07.2021).

4. Проектная деятельность // COEX Clover Gitbook URL:

https://clover.coex.tech/ru/projects.html (дата обращения: 16.11.2020).

5. Организация соревнований // COEX Clover Gitbook URL:

https://clover.coex.tech/ru/events.html (дата обращения: 15.07.2021).

6. Гурьянов А. Е. Моделирование управления квадрокоптером.

Инженерный вестник. МГТУ им. Н.Э. Баумана. Электрон. Журн. 2014. No8 Режим

доступа: http://engbul.bmstu.ru/doc/723331.html (Дата обращения 15.07.2021)

1. Ефимов. Е. Программируем квадрокоптер на Arduino: Режим доступа:

http://habrahabr.ru/post/227425/ (Дата обращения 15.07.2021)

2. Институт транспорта и связи. Основы аэродинамики и динамики полета. Рига,

2010. Режим доступа:

http://www.reaa.ru/yabbfilesB/Attachments/Osnovy_ajerodtnamiki_Riga.pdf (Дата обращения

20.10.15) Понфиленок О.В., Шлыков А.И., Коригодский А.А. «Клевер. Конструирование и

программирование квадрокоптеров». Москва, 2016.

3. Канатников А.Н., Крищенко А.П., Ткачев С.Б. Допустимые пространственные

траектории беспилотного летательного аппарата в вертикальной плоскости. Наука и

образование. МГТУ им. Н.Э. Баумана. Электрон. журн. 2012. No3. Режим доступа:

http://technomag.bmstu.ru/doc/367724.html (дата обращения 17.04.2014).

4. Валерий Яценков: Электроника. Твой первый квадрокоптер. Теория и практика;.

http://www.ozon.ru/context/detail/id/135412298/

5. Л. Шапиро, Дж. Стокман Компьютерное зрение / Бином. Лаборатория знаний,

2006, 752с, ISBN 5-94774-384-1, ISBN 0-13-030796-3

Методическое пособие

Профиль: «Машинное обучение»

общая трудоемкость – 86 часов

образовательные технологии – предметно-ориентированные

Разработчик программы: Академия искусственного интеллекта для школьников

Пояснительная записка

Анонс программы

Данная программа объединила в себе лидеров рынка по направлению Data Science и исследователей данных Сбербанка, чтобы каждый ученик мог прокачать свои возможности от 0 до уровня, достаточного для участия в олимпиадах и соревнованиях.

Мир в котором мы живем невозможно представить без информационных технологий. С каждым годом они стремительно развиваются и делают жизнь человека более комфортной. Особое место среди IT разработок занимает искусственный интеллект. Он постепенно проникает во многие области жизни человека. То что можно создать в сфере искусственного интеллекта интересно всем. Искусственный интеллект обогатит в любом случае любую специальность. Какой бы опыт ученики не имели перед началом изучения данного курса их ждет насыщенная программа обучения, возможно местами сложная, но в целом очень интересная. Все знания полученные в рамках данного курса позволят сформировать у учащихся навыки XXI века.

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

Цель курса: предоставить учащимся возможность осознанно подойти к выбору карьеры в IT-индустрии и поступлению в вуз на специальность, связанную с программированием или машинным обучением.

Задачи курса:

● познакомить учащихся с понятием искусственного интеллекта и его возможностями;

● сформировать у учащихся базовые знания о языке Python; ● познакомить учащихся с объектно-ориентированным программированием; ● научить учащихся работать с моделями машинного обучения.

Категория учащихся: курс рассчитан на учащихся 8-11 классов

Сроки реализации программы: курс рассчитан на 86 часов (5 месяцев занятий по 4 часа в неделю)

По итогам обучения на курсе учащиеся смогут:

● принимать участие в олимпиадах по искусственному интеллекту ● принимать участие в международных соревнованиях по искусственному

интеллекту ● принять участие в стажировках для школьников

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

Все тематические уроки разбиты на семь модулей:

● Основы Python. ● Анализ данных. ● Машинное обучение. ● Решение задачи классификации

● Рекомендательные системы

● Нейросети

● Обработка естественного языка

Рекомендуется следующая структура любого урока:

● вводный блок; ● постановка задачи; ● теория; ● разбор примера вместе с учащимися; ● отработка практики самостоятельно; ● подведение итогов урока.

По итогам курса ученики:

● сразу начнут писать программы на языке Python и осознанно использовать различные методы изученных библиотек;

● узнают различные алгоритмы и методы машинного обучения и смогут применять их на практике;

● разработают предсказательную модель ML.

Планируемые результаты программы

Предметные результаты обучения:

● иметь представление об искусственном интеллекте и его возможностях в современном обществе;

● иметь представление о перспективах развития технологий искусственного интеллекта;

● уметь приводить примеры решения различных задач (разными методами) с использованием систем искусственного интеллекта;

● использовать различные средства для поиска информации о возможностях, направлениях развития искусственного интеллекта и его средств;

● уметь взаимодействовать со средствами искусственного интеллекта; ● иметь представление о возможностях и перспективах машинного обучения

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

интеллектуальной деятельности; ● приводить примеры решения различных задач с использованием нейронных

сетей; ● иметь представление о перспективных направлениях моделирования

интеллектуальной деятельности; ● уметь обучать готовые нейронные сети при проведении компьютерных

экспериментов; ● иметь представление о возможностях и перспективах развития

искусственного интеллекта в области обработки естественного языка интеллектуальными системами;

● приводить примеры решения различных задач с использованием систем искусственного интеллекта при распознавании и синтезе речи;

● иметь представление о проблемах обучения интеллектуальных систем распознаванию и синтезу речи;

● уметь разрабатывать некоторые программные средства по обработке естественного языка.

Метапредметные результаты обучения:

● формировать универсальные учебные действия (познавательные, регулятивные, коммуникационные), обобщенные способы информационной деятельности при использовании информационных технологий, в том числе при организации машинного обучения интеллектуальных систем, при моделировании интеллектуальной деятельности и при использовании технологий искусственного интеллекта по обработке естественного языка;

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

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

Личностные результаты обучения:

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

● построение дальнейшей индивидуальной образовательной траектории через получение представления о перспективных направлениях машинного обучения интеллектуальных систем;

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

Содержание программы

Учебно-тематический план

№ Тема Количество

часов Лекции Практика Контроль

Вводное занятие

1 Введение в искусственный

интеллект

0, 3 0,2 0,1

2 Введение в Python 0, 7 0,2 0,5

Всего по разделу 1 0,4 0,6

Основы Python

3 Переменные и условный

оператор

3 1 2 Тест

4 Циклы и работа со

строками

3 1 2 Тест

5 Списки и словари 4 1 3 Тест

6 Работа с файлами 2 0,6 1,4 Тест

7 Функции 3 0,5 2,5 Тест

8 Основы объектно-

ориентированного

программирования

3 0,5 2,5 Тест

Всего по разделу 18 4,6 13,4

Анализ данных

9 Введение в анализ данных 5 1,5 3,5 Тест

10 Работа с таблицами и

подготовка данных

4 1 3 Тест

11 Визуализация данных 5 1,5 3,5 Тест

12 Линейная алгебра с

Numpy

4 1 3 Тест

13 Статистика и теория

вероятности

5 1,5 3,5 Тест

Всего по разделу 23 6,5 16,5

Машинное обучение

14 Введение в машинное

обучение

5 2 3 Тест

15 Линейная регрессия 4 1,5 2,5 Тест

16 Логистическая регрессия 4 1,5 2,5 Тест

17 Дерево решений и

случайный лес

4 1,5 2,5 Тест

18 Ансамбли 4 1,5 2,5 Тест

19 Определение класса

игрока Dota 2. Проект

2 2 Проект

Всего по разделу 23 8 15

Решение задачи классификации

20 Предсказание транзакций.

Проект

2 2 Проект

Всего по разделу 2 2

Рекомендательные системы

21 Введение в

рекомендательные

системы

2 1,5 0,5 Тест

22 Рейтинговая

рекомендательная

система. Проект

2 0,5 1,5 Проект

23 Контентная

рекомендательная

система. Проект

2 0,5 1,5 Проект

24 Коллаборативная

рекомендательная

система. Проект

3 0,5 2,5 Проект

Всего по разделу 9 3 6

Нейросети

25 Введение в нейросети 2 1,5 0,5 Тест

26 Нейросети. Проект 2 2 Проект

Всего по разделу 4 1,5 2,5

Обработка естественного языка

27 Введение в NLP 2 1,5 0,5 Тест

28 Вопросно-ответные

системы. Проект

3 0,5 2,5 Проект

Всего по разделу 5 2 3

Итоговое занятие

29 Подведение итогов курса 1 1

Всего по разделу 1 1

Итого на курс 86 26 60

Содержание программы

Наименование,

разделов, тем

Содержание Виды учебных

занятий,

учебных работ

Раздел 1 Вводное занятие (1 ч)

Введение в

искусственный

интеллект

Понятие искусственного интеллекта

(ИИ). Области применения. Обсуждение,

где встречаемся с ИИ, перспективы

развития

Лекция

обсуждение

Введение в Python Технические моменты: установка

Anaconda.

Лекция

практика

Раздел 2 Основы Python (18 ч)

Переменные и условный

оператор

Описание переменных. Операции над

переменными. Условный оператор.

Полный условный оператор.

Лекция

Тест №№

Задание №№

Циклы и работа со

строками

Цикл While. Цикл For. Операции над

строками.

Лекция

Тест №№

Задание №№

Списки и словари Списки. Индексы и срезы. Методы

работы со списками. Генератор списков.

Словари. Перебор элементов словаря.

Лекция

Тест №№

Задание №№

Работа с файлами Функция open(). Считывание данных в

программу из внешнего файла. Базовые

Лекция

Тест №№

Задание №№

операции для анализа полученных

данных.

Функции Определение функции. Лямбда-

функция и функция map. Локальные и

глобальные переменные.

Лекция

Тест №№

Задание №№

Основы объектно-

ориентированного

программирования

Основные понятия ООП. Создание

класса. Создание экземпляра класса.

Инкапсуляция. Наследование и

полиморфизм. Модули.

Лекция

Тест №№

Задание №№

Раздел 3 Анализ данных (23 ч)

Введение в анализ

данных

О Pandas. Основные объекты Pandas.

Считывание и вывод данных.

Информация о данных. Извлечение

данных по условиям. Группировка

данных. Агрегирующие функции.

Лекция

Тест №№

Задание №№

Работа с таблицами и

подготовка данных

Сводные таблицы. Вводные данные.

Объединение таблиц. Предварительная

обработка данных.

Лекция

Тест №№

Задание №№

Визуализация данных Графические возможности Pandas.

Объектно-ориентированный подход.

Гистограммы распределения признаков

в Seaborn. Работа с категориальными

признаками. Библиотека Plotly.

Лекция

Тест №№

Задание №№

Линейная алгебра с

Numpy

Массивы Numpy. Знакомство с линейной

алгеброй. Операции с массивами.

Лекция

Тест №№

Задание №№

Статистика и теория

вероятности

Введение в статистику и теорию

вероятности. Статистические операции

в Numpy. Графики табличного типа.

Распределение данных.

Лекция

Тест №№

Задание №№

Раздел 4 Машинное обучение (23 ч)

Введение в машинное

обучение

Задачи машинного обучения. Этапы

разработки модели. Проблема

переобучения. Библиотека Sckit-learn.

Лекция

Тест №№

Задание №№

Линейная регрессия Описание линейной регрессии. Метрики

качества линейной регрессии. Разбор

задачи линейной регрессии.

Лекция

Тест №№

Задание №№

Логистическая регрессия Логистическая регрессия. Разбор задачи

логистической регрессии. Метрики

качества классификации. Пример

использования метрик качества в

решении задачи. Решение задачи

логистической регрессии на kaggle.

Лекция

Тест №№

Задание №№

Дерево решений и

случайный лес

Дерево решений. Реализация модели

дерева решений для задач бинарной

классификации. Решение задачи

деревом решений на kaggle. Случайный

лес реализация модели случайного леса

для решения задачи регрессии.

Решение задачи случайным лесом на

kaggle.

Лекция

Тест №№

Задание №№

Ансамбли Бустинг. Реализация градиентного

бустинга в задаче классификации.

Стекинг. Реализация блендинга в

задаче классификации. Решение задачи

моделями бустинга и стекинга на kaggle.

Лекция

Тест №№

Задание №№

Определение класса

игрока Dota 2. Проект

Решение задачи классификации на

данных игры Dota 2.

Проект

Раздел 5 Решение задачи классификации (2 ч)

Предсказание

транзакций. Проект

Решение задачи по предсказанию

вероятности совершения покупки

клиентом банка.

Проект

Раздел 6 Рекомендательные системы. Проект (9 ч)

Введение в

рекомендательные

системы

Введение в рекомендательные системы.

Что такое рекомендательная система?

Неперсонализированные рекомендации.

Контентные рекомендации.

Коллаборативная фильтрация.

Лекция

Тест

Рейтинговая

рекомендательная

система. Проект

Рейтинговая рекомендательная

система.

Лекция

Проект

Контентная

рекомендательная

система. Проект

Контентная рекомендательная система. Лекция

Проект

Коллаборативная

рекомендательная

система. Проект

Коллаборативная рекомендательная

система.

Лекция

Проект

Раздел 7 Нейросети (4 ч)

Введение в нейросети Знакомство с нейросетями. Задачи

обучения нейросетей.

Лекция

Тест

Нейросети. Проект Разработка нейросети: решение

проектной задачи.

Лекция

Проект

Раздел 8 Обработка естественного языка (5 ч)

Введение в NLP

Анализ элементов естественного языка.

Методы обработки естественного языка.

Применение методов обработки

естественного языка.

Лекция

Тест

Вопросно-ответные

системы. Проект

Разработка вопросно-ответной системы:

решение проектной задачи.

Лекция

Проект

Раздел 9 Итоговое занятие (1 ч)

Подведение итогов курса Теоретические и прикладные

результаты изучения разделов курса.

Обсуждение

Результаты обучения

Раздел 1 Вводное занятие (1 ч)

Введение в искусственный интеллект. Введение в Python

Учащиеся должны знать:

● понятие искусственного интеллекта

Учащиеся должны понимать:

● возможности применения искусственного интеллекта в различных областях

жизни

Учащиеся должны уметь:

● устанавливать программного обеспечения, необходимого для

программирования на Python

Раздел 2 Основы Python (18 ч)

Переменные и условный оператор

Учащиеся должны знать: ● что такое переменные; ● основные типы переменных - int, float, str и bool; ● две новые функции input() и print(); ● что такое условный оператор.

Учащиеся должны понимать: ● как писать свои программы в Jupiter; ● как запускать программы; ● для чего нужна функция print(); ● для чего нужна функция input(); ● как использовать условный оператор для составления ветвления в

программе. Учащиеся должны уметь:

● читать простые программы, включающие в себя переменные, операции над ними, условные операторы, ввод данных с клавиатуры и вывод информации на экран;

● работать с переменными при написании своих программ; ● составлять логические условия, которые требуются для решения

поставленной задачи; ● использовать неполный условный оператор для проверки одного условия; ● использовать полный условный оператор в своих программах для решения

задач с несколькими условиями. Циклы и работа со строками

Учащиеся должны знать: ● что такое цикл; ● структуры циклов while и for; ● операторы break и continue; ● функции работы со строками: len(), find(), count(), lower(), upper(), title(),

replace(). Учащиеся должны понимать:

● как использовать циклы для использования повторений в программе; ● для каких задач удобно использовать цикл while, а для каких for; ● для чего нужна каждая из рассмотренных функций по работе со строками; ● как использовать циклы для организаций повторений в программе.

Учащиеся должны уметь: ● читать программы, включающие в себя циклы, а также работу со строками; ● работать с циклами и строками при написании своих программ; ● составлять условия в заголовке цикла while, которые требуются для

решения поставленной задачи. Списки и словари

Учащиеся должны знать:

● что такое список; ● что такое генератор списка; ● что такое словарь.

Учащиеся должны понимать:

● как создать список; ● как создать список при помощи генератора списка; ● как добавить или изменить элементы списка;

● как создать словарь; ● как добавить или изменить элементы словаря.

Учащиеся должны уметь:

● создавать списки и словари; ● добавлять элементы в список или словарь; ● изменять элементы списка или словаря; ● обращаться к конкретному элементу списка или словаря; ● выводить списки или их отдельные элементы на экран; ● выводить словари целиком, ключи или значения конкретных элементов

словаря на экран. Работа с файлами

Учащиеся должны знать:

● команду, позволяющую совершать манипуляции с файлами csv в программе.

Учащиеся должны понимать:

● как открыть файл для работы с ним в программе; ● почему нужно закрывать файл после работы с ним в программе.

Учащиеся должны уметь:

● считывать данные из файла в различные структуры в программе; ● анализировать данные, полученные из внешнего файла csv.

Функции

Учащиеся должны знать:

● что такое функция; ● что такое анонимная функция; ● что такое локальные и глобальные переменные.

Учащиеся должны понимать:

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

Учащиеся должны уметь:

● создавать (определять) свои функции; ● вызывать функции для их использования в программе.

Основы объектно-ориентированного программирования

Учащиеся должны знать:

● что такое класс;

● что такое экземпляр класса;

● что такое полиморфизм;

● что такое инкапсуляция;

● что такое наследование.

Учащиеся должны понимать:

● как создавать свои классы;

● чем методы отличаются от обычных функций;

● чем свойства отличаются от полей;

● для чего нужны модули.

Учащиеся должны уметь:

● создавать свои классы и их экземпляры;

● подключать необходимые для работы модули или функции, хранящиеся в

них.

Раздел 3. Анализ данных (23 ч)

Введение в анализ данных

Учащиеся должны знать:

● что такое группировка данных;

● основные объекты в Pandas — Series и DataFrame;

● что такое группировка данных;

● что такое сводная таблица.

Учащиеся должны понимать:

● как подключить библиотеку для анализа данных Pandas;

● как вывести на экран часть загруженных данных;

● как вывести на экран информацию о загруженных данных;

● зачем нужна группировка данных;

● для чего нужны сводные таблицы.

Учащиеся должны уметь:

● выводить на экран загруженные данные;

● извлекать данные из датасета по определенным условиям

● группировать данные по различным признакам;

● создавать сводные таблицы на основе датасетов.

Работа с таблицами и подготовка данных

Учащиеся должны знать:

● метод, позволяющий объединять таблицы;

● какие трудности возникают при объединении данных;

● что такое дубликаты.

Учащиеся должны понимать:

● зачем хранить информацию в разных таблицах;

● какие есть варианты объединения таблиц и как они отличаются;

● как удалять повторы строк;

● как удалять пустые значения;

● зачем стоит заменять пустые значения на константы;

● как отфильтровать значения различными функциями.

Учащиеся должны уметь:

● объединять таблицы;

● удалять дубликаты;

● фильтровать данные;

● удалять пропуски;

● заменять пропуски.

Визуализация данных

Учащиеся должны знать:

● о встроенных возможностях визуализации библиотеки Pandas;

● диаграммы и графики, которые можно построить в библиотеке Matplotlib;

● диаграммы и графики, которые можно построить в библиотеке Seaborn;

● диаграммы и графики, которые можно построить в библиотеке Plotly.

Учащиеся должны понимать:

● как подключать библиотеки для создания графиков;

● чем отличаются виды графиков и диаграмм;

● для каких целей подходят разные библиотеки для визуализации данных.

Учащиеся должны уметь:

● строить графики, используя библиотеки Pandas, Matplotlib, Seaborn и Plotly;

● настраивать параметры построенных графиков.

Линейная алгебра с Numpy

Учащиеся должны знать:

● что такое массив и его особенности;

● что такое вектор и матрица.

Учащиеся должны понимать:

● зачем нужны массивы;

● чем отличается массив от списка list;

● как обратиться к отдельным элементам массива.

Учащиеся должны уметь:

● создавать массивы;

● работать с индексами в массивах;

● совершать различные операции с массивами и их элементами;

● совершать математические операции с векторами и матрицами.

Статистика и теория вероятности

Учащиеся должны знать:

● что такое нормальное распределение;

● как выглядит «ящик с усами»;

● что такое квантили и выбросы.

Учащиеся должны понимать:

● как выполняются статистические операции;

● что отображает нормальное распределение.

Учащиеся должны уметь:

● строить диаграмму «ящик с усами» и использовать ее в анализе;

● считать статистические характеристики в Python и визуализировать их.

Раздел 4 Машинное обучение (23 ч)

Введение в машинное обучение

Учащиеся должны знать:

● что такое обучение с учителем;

● что такое обучение без учителя;

● что такое кросс-валидация;

● как проходит процесс разработки модели машинного обучения.

Учащиеся должны понимать:

● проблемы, которые могут возникнуть при обучении модели;

● способы борьбы с проблемой переобучения.

Учащиеся должны уметь:

● выбирать подходящий алгоритм для разных задач машинного обучения;

● подключать библиотеку Scikit-learn.

Линейная регрессия

Учащиеся должны знать:

● что такое линейная регрессия;

● как решается задача линейной регрессии;

● некоторые метрики качества модели.

Учащиеся должны понимать:

● требования, которым должны соответствовать данные при работе с

линейной регрессией;

● процесс создания модели линейной регрессии;

● порядок решения задач линейной регрессии при помощи библиотеки Scikit-

learn.

Учащиеся должны уметь:

● находить ошибку модели линейной регрессии;

● решать задачу линейной регрессии с библиотекой Scikit-learn.

Логистическая регрессия

Учащиеся должны знать:

● что такое логистическая регрессия;

● что является решением задачи логистической регрессии;

● некоторые метрики качества классификации;

● что такое матрица ошибок.

учащиеся должны понимать:

● задачу линейной классификации;

● как строится модель логистической регрессии;

● как оценить качество полученного результата;

● как решить задачу линейной классификации.

Учащиеся должны уметь:

● использовать метрики качества классификации для оценки модели;

● решать задачу логистической регрессии методами библиотеки Scikit-learn.

Дерево решений и случайный лес

Учащиеся должны знать:

● что такое дерево решений;

● что такое случайный лес;

● как решать задачи регрессии и классификации с помощью случайного леса;

● метрики качества дерева решений и случайного леса.

Учащиеся должны понимать:

● почему дерево решений является популярным алгоритмом;

● как случайный лес улучшает работу метода дерева решений;

● как строится модель дерева решений;

● как строится модель случайного леса;

● как оценить качество полученного результата.

Учащиеся должны уметь:

● строить дерево решений и случайный лес, используя библиотеку Scikit-

learn;

● решать задачи классификации и регрессии при помощи дерева решений

или случайного леса методами библиотеки Scikit-learn.

Ансамбли

Учащиеся должны знать:

● что такое бустинг и бэггинг;

● что такое стекинг и блендинг.

Учащиеся должны понимать:

● зачем нужны ансамбли;

● как строятся ансамбли;

● как решить задачу с помощью ансамблей.

Учащиеся должны уметь:

● использовать новые знания на практике;

● решать задачи методами библиотеки sklearn.

Раздел 6 Рекомендательные системы. Проект (9 ч)

Введение в рекомендательные системы

Ученик должен знать:

● множество сфер применения рекомендательных систем с примерами;

Ученик должен понимать

● принципы рекомендательных систем и их виды;

Ученик может уметь:

● объяснить матрицу предпочтений;

● описать три подхода к созданию систем рекомендаций;

● создавать рекомендательные системы на основе трех базовых подходов.

1

Методическое пособие

Профиль: Нейротехнологии и когнитивные науки

Количество часов: (2-4 часа в неделю)

образовательные технологии – предметно-ориентированные

Разработчики программы: И.А. Басюл, Я.И. Поздняков, В.Р. Кудрявцев,

М.А. Киселева

2

Пояснительная записка

Знание и понимание основных закономерностей познавательных процессов и

функционирования нервной системы являются важным компонентом

раскрытия способностей ученика, формированием его готовности к жизни в

современном информационно нагруженном и высокотехнологичном мире.

Навыки регуляции когнитивных процессов и оптимизации функционального

состояния нервной системы способствуют высокой эффективности

коммуникации в социуме, а также формируют способность к быстрому

освоению новых видов и сфер деятельности.

Цель программы:

сформировать базовые представления об особенностях различных

познавательных процессов и функционировании нервной системы.

Задачи:

⚫ познакомиться с основными когнитивными процессами, их

особенностями и взаимосвязями;

⚫ сформировать базовые представления об основных структурно-

функциональных компонентах нервной системы – от элементарных

единиц (нейроны и синапсы) до отделов головного мозга;

⚫ рассмотреть взаимосвязи функционирования нервной системы и

реализации различных когнитивных процессов;

⚫ познакомиться с основными методами исследования функционального

состояния и событий в центральной нервной системе;

⚫ познакомиться с основными методами исследования когнитивных

процессов;

⚫ овладеть базовыми методами регуляции когнитивных процессов и

функционального состояния центральной нервной системы.

Возрастная категория обучающихся: 8-11 классы

Направление внеурочной деятельности: Научно-познавательное,

общеинтеллектуальное, духовно-нравственное.

Ценностные ориентиры содержания программы внеурочной деятельности:

Развитие навыков самоопределения, развитие навыков смыслообразования,

морально-ценностных и духовно-нравственных установок

Рекомендуемые формы и методы работы: Кружки, секции, круглые столы,

конференции, диспуты, школьные научные общества, олимпиады,

соревнования, поисковые и научные исследования, постановка и решение

проблемных вопросов, игровые моменты, проекты, практические работы,

самоанализ и самооценка, наблюдения.

3

Общие замечания к занятиям и практическим работам

Занятие (или практическую работу) не следует рассматривать как один урок

(один академический час). В старших классах какие-то темы можно проходить

за меньшее количество часов, в средних классах может понадобиться большее

время на освоение материала и на выполнение практических работ.

При выполнении практической работы в ходе нескольких уроков старайтесь

не делать длительных перерывов в занятиях. Материал, особенно комплексные

задачи, может быть достаточно сложным и для его эффективного освоения

желательно оставаться «погруженным» на протяжении всего периода

выполнения работы.

Темы занятий и практических работа являются примерными и предназначены

в основном для иллюстрации направления, в котором следует двигаться. Вы

можете оттолкнуться от них, возможно, выполнив какие-то из них, чтобы в

дальнейшем самостоятельно определять темы занятий и конструировать

исследовательские и практические работы.

Планируемые метапредметные результаты

Регулятивные УУД:

⚫ умение самостоятельно определять цели своего обучения, ставить и

формулировать для себя новые задачи в познавательной деятельности,

развивать интересы своей познавательной деятельности;

⚫ умение самостоятельно планировать пути достижения целей, в том

числе альтернативные, осознанно выбирать наиболее эффективные

способы решения познавательных задач;

⚫ умение соотносить свои действия с планируемыми результатами,

осуществлять контроль своей деятельности в процессе достижения

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

условий и требований, корректировать свои действия в соответствии с

изменяющейся ситуацией.

Коммуникативные УУД:

⚫ умение организовывать учебное сотрудничество и совместную

деятельность с учителем и сверстниками; работать индивидуально и в

группе: находить общее решение и разрешать конфликты на основе

согласования позиций и учета интересов; формулировать,

аргументировать и отстаивать свое мнение;

⚫ владение устной и письменной речью, монологической контекстной

речью;

⚫ формирование и развитие компетентности в области использования

информационно-коммуникационных технологий.

4

Познавательные УУД:

⚫ умение определять понятия, создавать обобщения, устанавливать

аналогии, классифицировать, самостоятельно выбирать основания и

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

связи, строить логическое рассуждение, умозаключение (индуктивное,

дедуктивное и по аналогии) и делать выводы;

⚫ умение создавать, применять и преобразовывать знаки и символы,

модели и схемы для решения учебных и познавательных задач.

Планируемые предметные результаты:

Знать:

⚫ основные закономерности протекания когнитивных процессов и

функционирования нервной системы;

⚫ основные взаимосвязи когнитивных процессов и функционирования

центральной нервной системы;

Уметь:

⚫ определять ключевые когнитивные процессы, а также их характерные

комплексы для той или иной деятельности;

⚫ находить методы исследования центральной нервной системы и

когнитивных процессов в контексте решения той или иной практической

задачи.

Владеть:

⚫ основными методами исследования функционирования центральной

нервной системы и когнитивных процессов;

⚫ базовыми методами регуляции когнитивных процессов и

функционального состояния нервной системы.

Тематический план программы внеурочной деятельности

№ Тема Количеств

о часов

Теоретически

е занятия

Практически

е занятия Контроль

Модуль 1. Биология

1 Нейрон. Типы нейронов 6 3 3 Устный

опрос

2 Электрофизиология 4 2 2 Выполнение

лабораторно

й работы

5

3 Преобразование

сенсорных стимулов в

нервные импульсы

2 1 1 Устный

опрос

4 Анатомия нервной

системы.

2 1 1 Выполнение

лабораторно

й работы

5 Строение спинного и

головного мозга.

2 1 1 Выполнение

лабораторно

й работы

6 Отделы головного мозга,

их функции.

2 1 1 Выполнение

лабораторно

й работы

7 Электроэнцефалография

.

2 1 1 Выполнение

лабораторно

й работы

8 Ритмы головного мозга. 2 1 1 Выполнение

лабораторно

й работы

9 Вегетативная нервная

система.

2 1 1 Выполнение

лабораторно

й работы

Модуль 2. Психология

1 Восприятие и ощущение.

Основные модальности

ощущения и их

особенности.

2 1 1 Выполнение

лабораторно

й работы

2 Внимание.

Разновидности внимания

и его свойства.

2 1 1 Выполнение

лабораторно

й работы

3 Память. Виды памяти и

её свойства.

2 1 1 Выполнение

лабораторно

й работы

4 Мышление. Определение

мышление, его

разновидности и

закономерности.

2 1 1 Выполнение

лабораторно

й работы

5 Мышление. Логика.

Когнитивные искажения.

2 1 1 Выполнение

лабораторно

й работы

6

6 Психометрические

методы исследования

характеристик внимания

и памяти

2 1 1 Выполнение

лабораторно

й работы

7 Технология когнитивной

саморегуляции. Методы

и подходы.

2 1 1 Выполнение

лабораторно

й работы

8 Методы развития

навыков

самонаблюдения.

Оценка состояния и

планирование

деятельности исходя из

полученной оценки.

2 1 1 Выполнение

лабораторно

й работы

Модуль 3. Python/Машинное обучение

1 Введение в

программирование на

Python

2 1 1 Выполнение

лабораторно

й работы

2 Знакомство с понятием

машинного обучения,

основными

инструментами и

задачами.

2 1 1 Выполнение

лабораторно

й работы

3 Знакомство с моделями

машинного обучения и

понять, как они

обучаются.

2 1 1 Выполнение

лабораторно

й работы

4 Разобратка EDA. 2 1 1 Выполнение

лабораторно

й работы

5 Пайплайн решения

задачи машинного

обучения, разработка

проблем признаковых

описаний.

2 1 1 Выполнение

лабораторно

й работы

6 Комплексные модели. 2 1 1 Выполнение

лабораторно

й работы

7 Анализ временных

рядов.

2 1 1 Выполнение

лабораторно

й работы

Модуль 4. Arduino, аппаратные методы исследования

7

1 Общее знакомство с

Arduino. IDE.

2 1 1 Выполнение

лабораторно

й работы

2 Аппаратные возможности

и ограничения различных

вариантов Arduino.

Назначение различных

разъемов, границы их

функциональных

возможностей.

2 1 1 Выполнение

лабораторно

й работы

3 Измерение времени

моторной реакции при

помощи Arduino.

2 1 1 Выполнение

лабораторно

й работы

4 Регистрация

электрической

активности мышцы при

помощи Arduino и

дополнительных

внешних датчиков.

2 1 1 Выполнение

лабораторно

й работы

5 Регистрация

электрической

активности головного

мозга при помощи

Arduino и

дополнительных

датчиков.

2 1 1 Выполнение

лабораторно

й работы

Модуль 5. Комплексные задачи

1 Электрофизиологические

методы исследования

процессов восприятия.

2 1 1 Выполнение

лабораторно

й работы

2 Электрофизиологические

методы исследования

внимания.

2 1 1 Выполнение

лабораторно

й работы

3 Электрофизиологические

методы исследования

моторики.

2 1 1 Выполнение

лабораторно

й работы

4 Методы классификации

электрофизиологических

сигналов.

Пространственно-

временные паттерны,

вызванные потенциалы.

2 1 1 Выполнение

лабораторно

й работы

8

5 Взаимосвязь

функционального

состояния человека с

электрофизиологическим

и показателями. ЭЭГ,

ЭКГ, КГР.

2 1 1 Выполнение

лабораторно

й работы

6 Вегетативная нервная

система и когнитивные

процессы. Взаимосвязь и

возможности

взаиморегуляции.

2 1 1 Выполнение

лабораторно

й работы

7 Информационно-

коммуникационные

технологии (ИКТ) и

когнитивные процессы.

Взаимосвязь и

оптимизация методов

использования ИКТ.

2 1 1 Выполнение

лабораторно

й работы

ИТОГО: 78 39 39

Содержание программы

Наименование, разделов, тем Содержание Виды учебных

занятий,

учебных работ

Модуль 1 Биология (24 ч)

Нейрон. Типы нейронов Нейрон: общее строение, органоиды,

функции.

Лекции,

семинары

Типы нейронов. Нервные окончания,

межнейронные контакты.

Лекции,

семинары

Транспорт веществ через клеточную

мембрану: диффузия, активный

транспорт.

Лекции,

семинары

Электрофизиология Электрофизиология, электрические

явления в живых организмах.

Лекции,

семинары

Потенциал покоя, потенциал действия.

Ионные токи, пре- и постсинаптические

потенциалы, распространение

Лекции,

семинары,

практические

занятия

9

нервного импульса по нервным

волокнам.

Преобразование сенсорных

стимулов в нервные импульсы

Преобразование сенсорных стимулов в

нервные импульсы. Строение глаза,

пример рецепторной функции.

Лекции,

семинары

Анатомия нервной системы. Нейрон и глия. Основные отделы

нервной системы. Центральная и

периферическая нервная система.

Лекции,

семинары,

практические

занятия

Строение спинного и

головного мозга.

Сегмент спинного мозга. Афферентные

и эфферентные пути. Ствол и

полушария головного мозга.

Лекции,

семинары,

практические

занятия

Отделы головного мозга, их

функции.

Передний, средний, задний,

промежуточный и продолговатый мозг.

Отделы коры больших полушарий.

Подкорковые ядра. Лимбическая

система.

Лекции,

семинары,

практические

занятия

Электроэнцефалография. Электрическая активность головного

мозга, методы измерения и

интерпретация результатов ЭЭГ.

Лекции,

семинары,

практические

занятия

Ритмы головного мозга. ЭЭГ при различных функциональных

состояниях. Динамика ритмов мозга в

разных областях.

Лекции,

семинары,

практические

занятия

Вегетативная нервная

система.

Вегетативная нервная система.

Симпатический и парасимпатический

отделы. Методы исследования.

Лекции,

семинары,

практические

занятия

Модуль 2 Психология (16 ак.часов)

Восприятие. Основные

модальности ощущения и их

особенности.

Зрение, слух, тактильная

чувтсвительность, проприоцепция,

хемочувствительность (вкус, запах).

Лекции,

семинары,

практические

занятия

Внимание. Разновидности

внимания и его свойства.

Объем, устойчивость,

переключаемость внимания.

Лекции,

семинары,

практические

занятия

10

Память. Виды памяти и её

свойства.

Классификация видов памяти.

Механизмы запоминания, хранения и

воспроизведения информации.

Лекции,

семинары,

практические

занятия

Мышление. Определение

мышление, его разновидности

и закономерности.

Операции в уме с объектами.

Наглядно-образное и абстрактное

мышление, методики диагностики

мышления.

Лекции,

семинары,

практические

занятия

Мышление. Логика.

Когнитивные искажения.

Виды логики. Понятие о когнитивных

искажениях, апофения.

Лекции,

семинары,

практические

занятия

Психометрические методы

исследования характеристик

внимания и памяти

Валидность, надежность,

репрезентативность. Отработка

применения различных методов и

методик исследования внимания и

памяти.

Лекции,

семинары,

практические

занятия

Технология когнитивной

саморегуляции. Методы и

подходы.

Назначение и виды саморегуляции.

Функциональная и дисфункциональная

саморегуляция.

Семинары,

практические

занятия

Методы развития навыков

самонаблюдения. Оценка

состояния и планирование

деятельности исходя из

полученной оценки.

Наблюдение за своими процессами и

состояниями — от простого к

сложному. Меры предосторожности.

Семинары,

практические

занятия

Модуль 3 Python/Машинное обучение (14 ак.часов)

Введение в

программирование на Python

Базовый синтаксис, встроенные типы.

Базовые элементы программирования.

Лекции,

семинары,

практические

занятия

Знакомство с понятием

машинного обучения,

основными инструментами и

задачами.

Постановка задачи, подготовка и

представление данных. Критерии

решения задачи, оценка качества

решения.

Лекции,

семинары,

практические

занятия

Знакомство с моделями

машинного обучения и понять,

как они обучаются.

Способы решения задач машинного

обучения. Их сильные и слабые

стороны.

Лекции,

семинары,

практические

занятия

11

Разобратка EDA. Исследование данных. Поиск структур,

выявление аномалий, выбор наиболее

важных переменных.

Лекции,

семинары,

практические

занятия

Пайплайн решения задачи

машинного обучения.

Общий процесс работы с данными,

автоматизация обучения и настройки

гиперпараметров, разработка проблем

признаковых описаний.

Лекции,

семинары,

практические

занятия

Комплексные модели. Случайные леса, бэггинг, ансамбли. Лекции,

семинары,

практические

занятия

Анализ временных рядов. Находим временные паттерны. Лекции,

семинары,

практические

занятия

Модуль 4 Arduino, аппаратные методы исследования (10 ак.часов)

Общее знакомство с Arduino.

IDE.

Платформа для работы с

микроконтроллерами. Подключение к

компьютеру, написание программы и

её установка на микроконтроллер.

Лекции,

семинары,

практические

занятия

Аппаратные возможности и

ограничения различных

вариантов Arduino.

Доступные аппаратные средства

платформы. Назначение различных

разъемов, границы их функциональных

возможностей.

Лекции,

семинары,

практические

занятия

Измерение времени моторной

реакции при помощи Arduino.

Базовые варианты экспериментов,

позволяющие выполнять

психофизиологические исследования.

Семинары,

практические

занятия

Электромиографическое

исследование на базе Arduino

и дополнительных внешних

датчиков.

Регистрация электрофизиологических

сигналов. Активность мышц в

различных задачах и условиях.

Семинары,

практические

занятия

Электроэнцефалографическое

исследование при помощи

Arduino и дополнительных

датчиков.

Регистрация электрофизиологических

сигналов. Активность головного мозга в

различных задачах и условиях.

Семинары,

практические

занятия

Модуль 5 Комплексные задачи (14 ак.часов)

12

Электрофизиологические

методы исследования

процессов восприятия.

Проявления зрения, слуха, осязания и

других процессов восприятия в

активности мозга. Базовые подходы к

исследованию.

Семинары,

практические

занятия

Электрофизиологические

методы исследования

внимания.

Как фокус внимания изменяет

активность мозговой ткани? Методы

построения эксперимента. Подходы к

исследованию внимания.

Семинары,

практические

занятия

Электрофизиологические

методы исследования

моторики.

Как меняется активность мышц и мозга

в разных условиях? Как формирование

опыта отражается в активности мышц

и мозга?

Семинары,

практические

занятия

Методы классификации

электрофизиологических

сигналов. Пространственно-

временные паттерны,

вызванные потенциалы.

Приложение методов машинного

обучения к электрофизиологическим

сигналам. Детектирование состояний

при помощи методов машинного

обучения. Интерфейсы мозг-

компьютер.

Семинары,

практические

занятия

Взаимосвязь функционального

состояния человека с

электрофизиологическими

показателями. ЭЭГ, ЭКГ, КГР.

Отличается ли человек в состоянии

утомления от человека в бодром

состоянии по регистрируемым внешне

сигналам? Возможно ли распознать

функциональное состояние (например,

бодрость — усталость) при помощи

методов машинного обучения?

Семинары,

практические

занятия

Вегетативная нервная

система и когнитивные

процессы. Взаимосвязь и

возможности

взаиморегуляции.

Как влияет тонус вегетативной нервной

системы (симпатика-парасимпатика) на

динамику различных когнитивных

процессов — внимание, память,

мышление и др? Возможно ли

посредством когнитивных процессов

осуществить регуляцию ВНС?

Семинары,

практические

занятия

Информационно-

коммуникационные технологии

(ИКТ) и когнитивные

процессы. Взаимосвязь и

оптимизация методов

использования ИКТ.

Режим использования ИКТ и

функциональное состояние человека.

«Производительность» когнитивных

процесов при различных режимах

использования ИКТ. Методы

исследования.

Семинары,

практические

занятия

Темы лабораторных работ

Модуль 1 Биология

13

Тема. Электрофизиология

Скорость моторной (мышечной) реакции на стимулы различного типа.

Тема. Анатомия нервной системы.

Исследование разрешающей способности тактильной чувствительности

различных участков кожи.

Тема. Строение спинного и головного мозга.

Определение угловых размеров слепого пятна глаза.

Тема. Отделы головного мозга, их функции.

Зрительные вызванные потенциалы.

Тема. Электроэнцефалография.

Амплитуда ЭЭГ-сигнала при открытых и закрытых глазах.

Тема. Ритмы головного мозга.

Амплитуда ЭЭГ-сигнала при открытых и закрытых глазах в различных

областях мозга.

Тема. Вегетативная нервная система.

Ритм дыхания при покое, при физической нагрузке и умственной

деятельности.

Модуль 2 Психология

Тема. Восприятие. Основные модальности ощущения и их особенности.

Подбор психологической методики для исследования восприятия

человека, ее проведение и интерпретация результатов. (Примеры

методик: «Методика диагностики объема восприятия», «Узнавание

фигур», «Исследование наблюдательности»)

Тема. Внимание. Разновидности внимания и его свойства.

Подбор психологической методики для исследования внимания человека,

ее проведение и интерпретация результатов. (Примеры методик:

«Таблицы Шульте», «Перепутанные линии», «Расстановка чисел»)

Тема. Память. Виды памяти и её свойства.

14

Подбор психологической методики для исследования памяти человека, ее

проведение и интерпретация результатов. (Примеры методик: «10 слов»,

«пиктограммы», «память на числа» , «память на образы»)

Тема. Мышление. Определение мышление, его разновидности и

закономерности.

Подбор психологической методики для исследования мышления

человека, ее проведение и интерпретация результатов. (Примеры

методик: «Исключение лишнего», «Числовые ряды», «Словесный

лабиринт»)

Тема. Мышление. Логика. Когнитивные искажения.

Подбор психологической методики для исследования мышления

человека, ее проведение и интерпретация результатов. (Примеры

методик: «Методика для оценки логического мышления»,

«Прогрессивные матрицы Равена», «Сложные аналогии»)

Тема. Психометрические методы исследования характеристик внимания

и памяти.

Разработка методики измерения порога ощущения.

Разработка методики измерения объема внимания.

Тема. Технология когнитивной саморегуляции. Методы и подходы.

Изменение тонуса вегетативной нервной системы.

Тема. Методы развития навыков самонаблюдения. Оценка состояния и

планирование деятельности исходя из полученной оценки.

Комплексная оценка когнитивных процессов на фоне различных

состояний.

Модуль 3. Python/Машинное обучение

Тема. Введение в программирование на Python.

Опрос пользователя в терминале и вычисление его индекса массы тела.

Тема. Знакомство с понятием машинного обучения, основными

инструментами и задачами.

15

Составить векторное описание учеников класса.

Тема. Знакомство с моделями машинного обучения и понять, как они

обучаются.

Линейный классификатор учеников класса. Выполнить разделение по 3

различным признакам.

Тема. Разобратка EDA.

Обнаружение групп похожих учеников.

Тема. Пайплайн решения задачи машинного обучения.

Поиск наиболее информативных предикторов оценок по произвольному

предмету.

Тема. Комплексные модели.

Классифицировать учащихся своего класса двумя различными методами.

Сравнить эффективность и выбрать наилучший. Обосновать.

Тема. Анализ временных рядов.

Предсказать оценки учащихся в следующей четверти на основе данных

предыдущих лет.

Модуль 4. Arduino, аппаратные методы исследования

Тема. Общее знакомство с Arduino. IDE.

Загрузка программы на Arduino.

Тема. Аппаратные возможности и ограничения различных вариантов

Arduino.

Зажигаем светодиод при помощи Arduino.

Тема. Измерение времени моторной реакции при помощи Arduino.

Сборка и применение установки для измерения времени моторной

реакции на зажигание светодиода.

Тема. Электромиографическое исследование на базе Arduino и

дополнительных внешних датчиков.

Коммутация дополнительных датчиков и регистрация электрической

активности мышц. Соблюдаем правила электробезопасности.

16

Тема. Электроэнцефалографическое исследование при помощи Arduino и

дополнительных датчиков.

Коммутация дополнительных датчиков и регистрация электрической

активности головного мозга. Соблюдаем правила электробезопасности.

Модуль 5. Комплексные задачи

Тема. Электрофизиологические методы исследования процессов

восприятия.

Вызванные потенциалы (ВП). Сборка установки и регистрация ВП на

стимулы различной модальности.

Тема. Электрофизиологические методы исследования внимания.

Когнитивный вызванный потенциал P300. Конструирование

эксперимента и регистрация.

Тема. Электрофизиологические методы исследования моторики.

Электрическая активность мышц-антагонистов и мышц-синергистов в

сложно-координационной деятельности. Динамика в процессе

формирования навыка.

Тема. Методы классификации электрофизиологических сигналов.

Пространственно-временные паттерны, вызванные потенциалы.

Классификатор ЭЭГ-паттернов вызванных потенциалов на примере

потенциала P300.

Тема. Взаимосвязь функционального состояния человека с

электрофизиологическими показателями. ЭЭГ, ЭКГ, КГР.

Взаимосвязь кожно-гальванической реакции и сердечной деятельности.

Реакция на стимулы и стресс.

Тема. Вегетативная нервная система и когнитивные процессы.

Взаимосвязь и возможности взаиморегуляции.

Сравнительное исследование когнитивных показателей, в т.ч. ЭЭГ-

коррелятов (потенциал P300), на фоне различных показателей

вегетативной НС (ЧСС, КГР и т.д.).

17

Тема. Информационно-коммуникационные технологии (ИКТ) и

когнитивные процессы. Взаимосвязь и оптимизация методов

использования ИКТ.

Исследование характеристик внимания и памяти на фоне низкой и

высокой интенсивности использования ИКТ (на примере пользования

соц.сетями).

Текущий и итоговый контроль

Осуществляется на основе выполнения лабораторных работ.

Материально-техническое обеспечение кружка

ПК с ОС Windows;

наборы Arduino и различных датчиков;

готовые наборы для регистрации различных физиологических сигналов:

«Юный Нейромоделист» (https://bitronicslab.com/neuromodelist), комплект

модулей BiTronics NeuroLab (https://bitronicslab.com/modulset) или

цифровая лаборатория в области нейротехнологий

(https://bitronicslab.com/digitlab);

мерная лента, секундомер, карандаши и ручки;

паяльник;

электроды для электрофизиологических исследований;

батарейки ААА;

напиток «Coca-Cola», небольшой вилок белокачанной капусты, железные

или стальные гвозди без покрытия, медный провод (или проволока)

неэмалированый;

мультиметр.

Помимо предложенных готовых наборов для регистрации

физиологических сигналов возможна разработка и сборка собственных

комплектов. Один из вариантов самостоятельного получения ЭЭГ-

сигнала при помощи Arduino описан в статье

https://habr.com/ru/post/536532/, пульоксиметр -

https://habr.com/ru/post/506220/.

В качестве сенсоров возможно использование как подсобных средств

(например, ЭКГ возможно регистрировать при помощи пары монет), так

и полноценных датчиков, шлемов и электропроводящего геля,

18

применяемых в научно-исследовательских лабораториях или

медицинских учреждения (например, https://mks.ru/ ).

Кроме того, часто возможна комбинация в одной установке компонентов

различного происхождения. Например, подключение хлорсеребряных

электродов (обеспечивающих качественную долгую запись ЭЭГ) к

самодельным усилительным модулям и плате Arduino. Изготовление на

основе обычного пьезоэлемента датчика дыхания и т.д.

ВНИМАНИЕ!!! При любых работах с регистрацией

электрофизиологических сигналов, использовать гальваническую

развязку датчиков, подключенных к человеку, и сети электроснабжения.

19

Учебные материалы, методические пособия и практические

руководства:

1. Орсильо С., Рёмер Л. Осознанность или тревога. Перестань

беспокоиться и верни себе свою жизнь / Пер. с англ. - Х.: изд-во

«Гуманитарный Центр», М.С. Литвиненко, 2016. – 364 с. ISBN 978-617-

7022-66-3.

2. Файфер Л., Краудер А., Элсенраат Т., Галл Р. Практическая

когнитивно-поведенческая терапия для детей и подростков. Более 200

упражнений для поддержки детей с тревожными и эмоциональными

расстройствами, с расстройствами поведения, детей с аутизмом и СДВГ.

Пер. с англ. – СПб.: ООО «Диалектика», 2020. – 272 с. ISBN 978-5-907203-

31-0.

3. Виноградов С.Н., Кузьмин А.Ф. Логика: учебник для средней школы –

М.: Концептуал, 2020. – 176 с. ISBN 978-5-907289-11-6.

4. В.М. Богуславский. Упраженения по логике. Пособие для средней

школы. – 2020 г. – 176 с. ISBN 978-5-907289-47-5.

5. Учебная лаборатория по нейротехнологиям. Методическое пособие.

Естественно-научное направление / Бережной Даниил Сергеевич. – М. :

Битроникс, 2021. – 296 с.: илл. 250.

ISBN 978-5-6046254-0-8.

6. Учебно-методическое пособие к набору «Юный нейромоделист». Часть

1.

7. Учебно-методическое пособие к набору «Юный нейромоделист». Часть

2.

8. Фримен А., Девульф Р. Почему умные люди совершают глупости, и как

не попасть в капкан привычек. – СПб.: Питер, 2021. – 320 с. ISBN 978-5-

4461-1573-0.

9. Практикум по общей и когнитивной психологии: практикум / А. П.

Лобанов. – Минск : БГПУ, 2014. – 144 с.

ISBN 978-985-541-167-4.

Интернет-ресурсы:

https://habr.com/ru/

http://arduino.ru/

https://elementy.ru/

https://www.python.org/

https://bitronicslab.com/

Методическое пособие

профиль: “Технологии беспроводной связи”

Возраст учащихся: 8-11 классы

Срок реализации: 64 часа (4 месяца)

Разработчики: компания ИнСитиЛаб

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

Содержание

Пояснительная записка к сетевой образовательной программе по “Технологиям

беспроводной связи” 3

Задачи сетевого кружка 4

Форматы развертки сетевого кружка 4

Типы образовательных программ 4

Площадки, на базе которых возможно создание сетевого кружка 5

Методы и формы решения поставленных задач 5

Виды занятий учащихся 5

Деятельность преподавателя в рамках программы 5

Базовая образовательная программа по направлению “Технологии беспроводной

связи” 6

Задачи образовательной программы 6

Возраст детей, участвующих в реализации данной программы 6

Особенности организации учебного процесса для учащихся: 6

Особенности организации учебного процесса для преподавателя: 7

Сроки реализации программы 7

Входные требования к знаниям, умениям и навыкам: 7

Календарно-тематическое планирование 9

Методические рекомендации по образовательному курсу “Технологии

беспроводной связи” 11

Таблица с методическими рекомендациями курса “Технологии беспроводной

связи” 12

Методические рекомендации по проведению семинаров по разбору задач и

объяснению тем на примере работы со сборниками прошлых лет 13

Таблица с методическими рекомендациями по темам курса 13

Список рекомендованной литературы 15

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

Пояснительная записка к сетевой образовательной программе по

“Технологиям беспроводной связи”

Сетевая образовательная программа предполагает реализацию на базе сетевых кружков

по Технологиям беспроводной связи.

Создание сетевых кружков на базе профилей Олимпиады Кружкового движения

Национально технологической инициативы (Олимпиады КД НТИ) – направлено на

привнесение в образовательное пространство актуального содержания, формирование

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

процесса на другой уровень качества образования.

Сетевой кружок по профилю «Технологии беспроводной связи» Олимпиады КД НТИ -

пространство, где наставники вместе с учащимися работают с актуальным содержанием

в области технологий связи, с применением новых гибридных форм образования.

Сетевыми кружками могут стать площадки, занимающиеся со школьниками и

абитуриентами: общеобразовательные учреждения, Кванториумы, ЦМИТы, Фаблабы,

лаборатории при вузах.

В современном мире все большее значение имеют технологии передачи больших

зашифрованных массивов данных, в рамках которых при обмене сравнительно

небольшими динамически изменяющимися ключами можно осуществлять доверенное

шифрование и дешифрование. Задачи профиля связаны с актуальными задачами систем

связи, включая вопросы помехоустойчивого кодирования, передачи информации в

условиях шумов, работы с различными форматами данных, разработки адаптивной

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

применения связаны с Космосом, промышленным интернетом вещей, подводной и

мобильной робототехникой, каналами связи для роевых устройств.

Задачи профиля на всех этапах составлены таким образом, что для их решения

требуются знания не только школьного уровня, но и углубленные знания в области

программирования, математики и геометрии, а также азы по помехоустойчивому

кодированию. От этапа к этапу увеличивается, как сложность задач, так и их специфика.

По мере продвижения команд к финальному испытанию проводятся вебинары,

хакатоны, предоставляются дополнительные методические материалы по сложным

темам.

Методики для сетевых кружков разработаны таким образом, чтобы снизить требования

к специальной подготовке преподавателей при сохранении глубины и качества

погружения в сложную, мультидисциплинарную предметную область. Программы

построены по принципу последовательного движения от десакрализации основных

понятий к актуальному технологическому стеку с глубоким изучением основ физики и

освоением задач в области технологий беспроводной связи, информатики, кодирования

и декодирования сигналов, математических методов.

Целью сетевого кружка является ознакомление с областью знаний технологии

беспроводной связи, ее практическими применениями в различных сферах, развитие

математического, алгоритмического, инженерного и проектного мышления.

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

Задачи сетевого кружка

● Изучить основные понятия технологий беспроводной связи: кодирование и

декодирование, помехозащищенные коды, информация, цифровая и аналоговая

передача, методы исследования каналов связи и обработки сигналов, методы

борьбы с шумами.

● Сформировать навыки по помехоустойчивому кодированию в системах связи.

● Сформировать навыки работы с бинарными файлами - байтами и битами.

● Сформировать навыки работы с анализом информации разных типов:

графической, текстовой.

● Сформировать навыки сотрудничества со сверстниками в образовательной,

учебно-исследовательской деятельности;

● Сформировать сознательное отношение к непрерывному образованию как

условию успешной профессиональной и общественной деятельности;

● Сформировать мотивацию к изучению и исследованию;

● Сформировать мировоззрение, соответствующее современному уровню развития

технологий беспроводной связи.

Форматы развертки сетевого кружка

● Без оснащения оборудованием. Предполагает работу по тематическому

направлению “Технологии беспроводной связи” и по подготовке к профилю,

используя образовательные онлайн материалы.

● С оснащением оборудованием. Предполагает работу по тематическому

направлению “Технологии беспроводной связи” и по подготовке к профилю,

используя образовательные онлайн материалы и занятия на образовательных

стендах Комплекса «Беспроводные технологии связи» (производитель –

компания ИнСитиЛаб, разработанного в рамках программы Развитие НТИ Фонда

содействия инновациям).

Типы образовательных программ

● Базовая образовательная программа по направлению (64 часа) -

предполагает программу, в рамках которой учащиеся занимаются в течении 4

месяцев 1 занятие (2 академических часа) в неделю с педагогом, и 2 часа в неделю

учащиеся занимаются самостоятельно. Целью программы является введение

учащихся в тематику направления ТБС и знакомство учащихся с задачами 2 тура

профиля Олимпиады.

● Базовая образовательная программа по профилю (216 часов) - предполагает

программу, в рамках которой учащиеся занимаются в течении года 1 занятие (2

академических часа) в неделю с педагогом, и 4 часа в неделю учащиеся

занимаются самостоятельно. Целью программы является планомерная

подготовка учащихся к участию в соревнованиях по профилю “ТБС” Олимпиады

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

КД НТИ. Программа включает в себя стадии от ознакомления с Олимпиадой КД

НТИ и профилем до финального испытания.

● Основная образовательная программа лаборатории (216 часа) - предполагает

программу, в рамках которой учащиеся занимаются в течении года 1 занятие (3

академических часа) в неделю с педагогом и 3 часа в неделю учащиеся

занимаются самостоятельно. Целью программы является освоение тем и навыков

работы со сложными системами, с использованием стендов образовательного

комплекса “ТБС”.

Площадки, на базе которых возможно создание сетевого кружка

Общеобразовательные учреждения, Кванториумы, ЦМИТы, Фаблабы, центры

дополнительного образования или департаменты довузовской подготовки университета.

Методы и формы решения поставленных задач

Главным преимуществом сетевого кружка является возможность проводить

смешанные (гибридные) форматы занятий – очно-дистанционные. Оснащение программ

методическими и дидактическими материалами, позволяет проводить занятия

различных видов.

Виды занятий учащихся

● Занятия с преподавателем. Возможно проведение в форме очных семинарских

занятий или в дистанционном формате в режиме вебинаров. Существуют

образовательные семинары и семинары по решению задач. Возможно проведение

хакатонов в очном или заочном формате.

● Самостоятельная работа. Изучение образовательных курсов, самостоятельное

решение задач.

● Очные лабораторные работы, с использование программно-аппаратных

комплексов (в случае оснащения учреждения оборудованием - основная

образовательная программа).

● Вебинары от разработчиков профиля (образовательные программы по профилю).

Посещение вебинаров для программ по профилю является обязательным для

учащихся сетевого кружка и показывает их реальную активность и

заинтересованность.

Деятельность преподавателя в рамках программы

● Обучение - посещение вебинаров, прохождение образовательных онлайн курсов,

самостоятельная работа с представленными профилем дидактическими

материалами. Посещение вебинаров является обязательным требованием к

преподавателям сетевого кружка в рамках образовательных программ по

профилю и показывает их реальную активность и заинтересованность.

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

● Подготовка к занятиям - педагог еженедельно проводит подготовку к занятиям с

учащимися.

● Проведение занятий - предполагает очный или дистанционный семинар или

хакатон.

● Проведение очных лабораторных работ, с использование программно-

аппаратных комплексов (в случае оснащения учреждения оборудованием -

основные образовательные программы).

Базовая образовательная программа по направлению

“Технологии беспроводной связи”

(32 часа программы, 32 часа самостоятельной работы)

В основу базовой образовательной программы положено содержание профиля,

разработанное для проведения отборочных и заключительных этапов олимпиады и

подготовительных мероприятий прошедших сезонов: задачи отборочных этапов и

финалов, теоретические материалы и лекции, разборы заданий, модули образовательных

курсов, практикумы и хакатоны.

Базовая образовательная программа позволяет структурировано знакомить

учащихся с основами направления “Технологии беспроводной связи”, знакомя

учащихся с основными теоретическими материалами, а также задачами 2 тура по

профилю.

Задачи образовательной программы

● Ознакомление с актуальным содержанием в области Технологий беспроводной

связи, ее практическими применениями в различных сферах. Создание

фундамента знаний по тематике “Технологии беспроводной связи”.

● Подготовка к соревнованиям по профилю “Технологии беспроводной связи”

Олимпиады КД НТИ и другим инженерным соревнованиям, соответствующим

тематике профиля.

Возраст детей, участвующих в реализации данной программы

Учащиеся 8-11 классов.

Особенности организации учебного процесса для учащихся:

Участие в очных (возможен дистанционный формат) занятиях кружка,

продолжительностью 2 академических часа (90 минут) 1 раз в неделю.

● Участие в семинарах.

● Участие в хакатонах.

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

Самостоятельная работа, продолжительностью 2 академических часа 1 раз в неделю

(90 минут)

● Самостоятельная работа. Изучение образовательных курсов, самостоятельное

решение задач.

Особенности организации учебного процесса для преподавателя:

Самостоятельная работа, продолжительностью 2 академических часа в неделю (90

минут).

● Обучение - посещение вебинаров от профиля, прохождение образовательных

онлайн курсов, самостоятельная работа с представленными профилем

дидактическими материалами. Посещение вебинаров является обязательным

требованием к преподавателям сетевого кружка в рамках образовательных

программ по профилю и показывает их реальную активность и

заинтересованность.

● Подготовка к занятиям - педагог проводит подготовку к каждому занятию с

учащимися.

Проведение очных (возможен дистанционный формат проведения) занятий

продолжительностью 2 академических часа (90 минут) 1 раз в неделю.

● Проведение семинаров.

● Проведение хакатонов.

Сроки реализации программы

Общая продолжительность: 4 месяца.

Общая трудоемкость: 64 часа.

Входные требования к знаниям, умениям и навыкам:

Задачи образовательной программы нацелены на выявление и развитие навыков

математического моделирования; аппроксимации функций и решение обратных задач;

на выявление и развитие алгоритмического мышления; на развитие навыков по

передаче информации в каналах с существенными потерями данных; на развитие

навыков работы со статистикой и теорией вероятности.

Для решения задач необходимы разделы информатики, посвященные следующим

темам: обработка простых массивов данных, работа с чтением/записью файлов, работа

с матрицами, работа с циклами условиями, различными системами счисления,

способность работать с рядами данных, выявление периодичностей в данных,

использование рекурсивных алгоритмов, работа с организацией стека памяти,

грамотное использование функциональной декомпозиции, разработка оптимальных

алгоритмов, построение прямой в растровой графике, использование условного и

циклического оператора.

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

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

темам: алгебраический анализ данных, теория вероятностей, комбинаторика, теория

информации, геометрии, работа с тригонометрическими функциями, базовые знания

их планиметрии, алгебраическая запись декартовой метрики для плоскости,

алгебраические вычисления в различных системах счисления.

Для решения задач требуются не только школьные знания, но и факультативные

знания, доступные школьнику.

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

Календарно-тематическое планирование

Тема Количество часов

Всего Аудиторны

х

Самостоятельная

работа

Образовательный семинар “Что такое

информация и какое значение имеет

информация?”

2 1 1

Образовательный семинар “Базовые понятия

беспроводных технологий связи”

2 1 1

Образовательный семинар “Сигналы, шумы и

помехи. Автокорреляционная функция”

2 1 1

Образовательный семинар

“Автокорреляционная функция. Спектральный

подход.”

2 1 1

Семинар по решению задач на тему: “Анализ

данных”

4 2 2

Образовательный семинар “Отношение

Сигнал/Шум”

2 1 1

Образовательный семинар “Кодирование

сигнала ”

2 1 1

Семинар по решению задач на тему:

“Кодирование/Декодирование”

4 2 2

Образовательный семинар “Представление

сигналов”

2 1 1

Образовательный семинар “Метод наименьших

квадратов”

2 1 1

Семинар по решению задач на тему:

“Алгоритмы”

4 2 2

Образовательный семинар “Линейные блочные

коды. Кодирование”

2 1 1

Образовательный семинар “Линейные блочные

коды. Декодирование”

2 1 1

Семинар по решению задач на тему: “Анализ

кода”

4 2 2

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

Образовательный семинар “Каналы связи” 2 1 1

Образовательный семинар “Проблема

помехоустойчивого кодирования”

2 1 1

Семинар по решению задач на тему: “Канал

связи”

4 2 2

Образовательный семинар “Спутниковые

каналы связи”

2 1 1

Образовательный семинар “Алгоритмы

слежения за спутником”

2 1 1

Семинар по решению задач на тему:

“Автономное управление”

4 2 2

Образовательный семинар “Диаграмма

направленности”

2 1 1

Образовательный семинар “КНД” 2 1 1

Образовательный семинар “Узконаправленные

каналы связи”

2 1 1

Образовательный семинар “Протоколы

спутниковой связи”

2 1 1

Образовательный семинар “Интернет вещей” 2 1 1

Образовательный семинар “Профессии

будущего”

2 1 1

Итого часов: 64

часа

32 часа 32 часа

Формат проведения образовательных семинаров

Аудиторно. Прослушивание видео ролика, во время которого каждый учащийся делает

скетч (зарисовывает с подписями краткий конспект того, что его больше всего

заинтересовало). Знакомство со скетчами друг друга и каждый рассказывает о том что

ему больше всего запомнилось и понравилось. Рассмотрение задания “Для

размышления” (в материалах курса к каждой теме) в классе.

Самостоятельно. Знакомство с материалами к ролику и внесение самого интересного

из них в скетч.

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

Методические рекомендации по проведению образовательных семинаров описаны в

Приложении 1.

Формат проведения семинаров по решению задач

● Аудиторно. Решение задач с последующим прослушивание видеоразбора задач.

● Самостоятельно. Знакомство с дополнительными материалами.

Методические рекомендации по проведению семинаров по разбору задач описаны в

приложении 2.

Приложение 1.

Методические рекомендации по образовательному курсу

“Технологии беспроводной связи”

В основу методических рекомендаций положен образовательный модульный видео-

курс, который включают видео-лекции на темы, необходимые к освоению на профиле

“Технологии беспроводной связи”:

Курс состоит из двух модулей:

Модуль №1. Базовые понятия теории информации и теории передачи сигналов.

Модуль №2. Каналы связи и проблема помехоустойчивого кодирования. Спутниковые

каналы связи, алгоритмы слежения за спутником. Диаграмма направленности,

узконаправленные каналы связи.

Все лекции представлены в виде лонгридов, включающих видео, лекцию, вопросы для

самопроверки и рекомендованные материалы.

Ссылка на курс “Технологии беспроводной связи”: https://onti.polyus-

nt.ru/course/view.php?id=9

Продолжительность курса: 20 видео продолжительностью 10-30 минут каждое.

Возраст целевой аудитории: учащиеся 8-11 классов, наставники.

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

Таблица с методическими рекомендациями курса “Технологии

беспроводной связи”

Модуль,

№ Краткое описание тем модуля Тема лекции (№ в модуле, название)

Время,

мин.

1 В модуле рассматриваются

базовые понятия, на которых

строится понимание теории передачи информации и

передачи сигналов.

1. Что такое информация и какое значение имеет

информация? 14:38

2. Базовые понятия беспроводных технологий связи 24:38

3. Сигналы, шумы и помехи. Автокорреляционная

функция 18:53

4. Автокорреляционная функция. Спектральный

подход. 20:12

5. Отношение Сигнал/Шум 11:19

6. Кодирование сигнала 24:43

7. Представление сигналов 17:46

8. Метод наименьших квадратов 44:30

9. Линейные блочные коды кодирования 31:57

10. Линейные блочные коды декодирования 21:41

2 В модуле подробно

рассматриваются вопросы

передачи данных по

беспроводным каналам связи.

1. Каналы связи 17:42

2. Проблема помехоустойчивого кодирования 22:02

3. Спутниковые каналы связи 20:39

4. Алгоритмы слежения за спутником 17:06

5. Диаграмма направленности 21:54

6. КНД 6:34

7. Узконаправленные каналы связи 19:17

8. Протоколы спутниковой связи 22:35

9. Интернет вещей 12:31

10. Профессии будущего 12:16

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

Приложение 2.

Методические рекомендации по проведению семинаров по

разбору задач и объяснению тем на примере работы со

сборниками прошлых лет

В основу методических рекомендаций положен видео-курс по разбору задач прошлых

лет, сгруппированный по темам необходимым к освоению на профиле “Технологии

беспроводной связи”.

Продолжительность курса: курс представляет собой 24 видео, продолжительностью

10-20 минут.

Возраст целевой аудитории: учащиеся 8-11 классов, наставники.

Темы курса

Тема 1. Анализ данных.

Тема 2. Автономное управление.

Тема 3. Кодирование/Декодирование.

Тема 4. Анализ кода.

Тема 5. Алгоритмы.

Тема 6. Канал связи.

Ссылка на курс с разборами задач: https://onti.polyus-nt.ru/course/view.php?id=3.

Таблица с методическими рекомендациями по темам курса

Тема

курса

Название

задачи

Какие знания и навыки

формируются

Принцип решения

Тема 1. Счёт для

уверенных

алгоритмы

программирование

реализация

Цифровой вираж работа с шумами

программирование

статистические методы

реализация, статистические

методы

Числа алгоритмы

анализ данных

программирование

реализация, решето

Эратосфена

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

Да здравствует

четность!

программирование

работа с кодами и шумами

реализация

Окружность статистические методы

работа с шумами

геометрия

статистические методы,

реализация

Воздушная

передача

программирование

работа с шумами

реализация

Тройная

устойчивость

программирование работа с кодами

реализация

Сломанный

телеграф

программирование

работа с кодами

статистические методы

реализация

Тема 2 Звуковой

беспилотник

физика

анализ данных программирование

алгоритмы

информационный поиск

аналитическое решение,

реализация, доплеровское уширение, преобразование

Фурье

Полуавтомат работа с данными

программирование

реализация

Тема 3 Туннельный

синдром

работа с бинарными данными

работа с кодами

программирование

реализация (работа с

битами)

Код для

мотивации

работа с бинарными данными

работа с кодами

программирование

реализация (работа с

битами)

Код с удвоением работа с кодами

программирование

реализация

Тема 4 Умный код работа с кодами код Хемминга

Чет.-нечет. работа с данными

работа с кодами

обработка сигналов

теория вероятностей

реализация (АКФ)

Выбор работа с данными

работа с кодами

расстояние Хемминга

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

Компенсация

работа с данными

работа с кодами

программирование

расстояние Хемминга

(предварительная

оптимизация)

Тема 5 Кабельное

подключение

работа с графами

алгоритмы

программирование

минимальное дерево

(реализация)

PatchME работа со строковыми данными программирование

реализация

Починить сеть работа с графами

алгоритмы

программирование

поиск компонент связности

(реализация)

Спуск с горы динамическое программирование динамическое

программирование

Спуск с горы:

найти маршрут

динамическое программирование динамическое

программирование

Тема 6 Исследование работа с данными

теория вероятностей

статистические методы

аналитическое решение

(теория вероятностей)

Слепое

прослушивание

работа с бинарными данными

работа с шумами

теория вероятностей

программирование

реализация (“на смекалку”)

Необходимое оборудование, симуляторы и ПО: компьютер, среда для

программирования.

Приложение 3

Список рекомендованной литературы

1. Статья “Помехоустойчивое кодирование с иcпользованием различных кодов”

https://habr.com/ru/post/111336/

2. Статья “Коды Рида-Соломона. Часть 1 — теория простым языком”

https://habr.com/ru/company/yadro/blog/336286/

3. Статья “Коды Рида-Соломона. Часть 2 — арифметика полей Галуа”

https://habrahabr.ru/company/yadro/blog/341506/ ;

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

4. Видео “Коды Хэмминга — Григорий Кабатянский”. Что привело Хэмминга к

созданию его знаменитых кодов?

https://www.youtube.com/watch?v=DycYyYBwb9E;

5. Апроксимация функции http://libraryno.ru/3-3-approksimaciya-funkcii-

matmodosipkina/

6. Статья “Методы сжатия данных” https://habr.com/ru/post/251295/

7. Обзор методов сжатия данных

http://www.compression.ru/arctest/descript/methods.htm

8. Статья “Сжатие данных в примерах”

https://www.ibm.com/developerworks/ru/library/l-compr/index.html

9. Статья “Нежное введение в автокорреляцию и частичную автокорреляцию”

https://www.machinelearningmastery.ru/gentle-introduction-autocorrelation-partial-

autocorrelation/

10. Видео “Основы ЦОС:Корреляционная функция”

https://www.youtube.com/watch?v=SR2ettkhmio

11. Программирование на Python (https://stepik.org/course/67/promo) — достаточная

база, особое внимание урокам 3.8 и 3.9.

12. Программирование на Python для решения олимпиадных задач

(https://stepik.org/course/66634/promo) — наиболее сбалансирован по глубине,

особое внимание третьему модулю.

13. Python: основы и применение (https://stepik.org/course/512/promo) — затрагивает

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

обработки данных.

14. Пособие Б.В. Керниган, Д.М. Ричи.“Язык СИ”

https://nsu.ru/xmlui/bitstream/handle/nsu/9058/kr.pdf

15. Программирование на языке С++ для решения олимпиадных задач

https://stepik.org/course/66646/promo

16. УРОК J-15. ФОРМАТИРОВАНИЕ ЧИСЕЛ И ТЕКСТА В JAVA http://study-

java.ru/

17. Курс “Введение в машинное обучение” https://www.coursera.org/learn/vvedenie-

mashinnoe-obuchenie

18. Денисенко В.В. ПИД-регуляторы: принципы построения и модификации //

Современные технологии автоматизации – 2006 – №4. – с. 66-67

https://www.cta.ru/cms/f/342946.pdf

19. Линник Ю.В. Способ наименьших квадратов и основы теорий обработки

наблюдений. М.: Физматгиз, 1962 - 349с.

20. Кларк Дж. мл., Кейн Дж. Кодирование с исправлением ошибок в системах

цифровой связи: Пер. с англ. – М.: Радио и связь, 1987. – 392 с.

21. Драбкин, А. Л. Антенны / А. Л. Драбкин, Е. Б. Коренберг. – М.: Радио и связь,

1992. – 144 с.

22. Фельд, Я. Н. Основы теории антенн / Я. Н. Фельд, Л. С. Бененсон. – М.: Дрофа,

2007. – 491 с.

23. К.Ю. Поляков // ТЕОРИЯ АВТОМАТИЧЕСКОГО УПРАВЛЕНИЯ ДЛЯ

«ЧАЙНИКОВ» - 2008. - 80 с.

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

https://drive.google.com/file/d/1S7EeWUI3ERtq3HbbS519MIlm8asdz8ZA/view?usp

=sharing

24. Березюк Н.Г. // Кодирование информации (двоичные коды) / А. Г. Андрущенко,

С.С. Мощицкий, В.И. Глушков, М.М. Бекеша, В.А. Гаврилов - Харьков:

Издательство при государственном университете издательского объединения

“Вища школа”. - 1987. - 250 с.

25. ПОМЕХОУСТОЙЧИВОЕ КОДИРОВАНИЕ В ЦИФРОВЫХ СИСТЕМАХ

ПЕРЕДАЧИ ДАННЫХ Ю.Б. Зубарев, д.т.н., член-корр. РАН, Г.В. Овечкин,

к.т.н., доцент РГРТУ

https://drive.google.com/file/d/1MVcjAWrrkVywuCRLqTHO1s8ay27V9J7o/view?us

p=sharing

26. В.ЛАНГЕ. Сколько стоит запуск спутника?/ Статья журнал "Квант" 2002/ №5

http://kvant.mccme.ru/pdf/2002/05/kv0502lange.pdf

27. Ю.Маношкин, А.СТАСЕНКО. Интерференция на Островах Синего Мыса./

Статья журнал "Квант" 1998/ №1

http://kvant.mccme.ru/pdf/1998/01/kv0198manoshkin.pdf

28. А.И. Королев. Коды и устройства помехоустойчивого кодирования

информации. Мн.: 2002. - 286 с.

https://drive.google.com/file/d/1PFBpDTDSnTGlTEKfDfiPWOf5_KV-

mbNQ/view?usp=sharing

29. Брит Круз. Восьмая серия из раздела "Современная теория информации" на

Академии Хана

https://drive.google.com/file/d/1hGhHWHtCbhF6gHn7zz0J7kieHnYns7K4/view?usp

=sharing

30. Алгоритм кодирования и обнаружения ошибки кодом Хемминга

https://drive.google.com/file/d/1rYeosZP_lrl-

SCDO2dwGd1Oq6X5bizfj/view?usp=sharing

31. М. Гарднер. От мозаек Пенроуза к надежным шифрам: Пер. с англ.:-М.:Мир,

1993,-416 с.

https://drive.google.com/file/d/1ZrC3tUaKIQRLnJdXh4Q3pulCNfoTm6dy/view?usp

=sharing

32. П. М. Ширяев, Сравнение кода Голея с алгеброгеометрическим кодом, ПДМ,

2015, номер 4(30), 77–82 https://drive.google.com/file/d/1J42ZI8rv7kOdj5uz28W-

GaUm-BPjkrvs/view?usp=sharing

33. Сагалович Ю.Л. Введение в алгебраические коды.

https://drive.google.com/file/d/1NHy_L41b8orYFUUeyjRtB3mJKPxOzUBN/view?u

sp=sharing

34. Рафаилов А., Как излучать радиоволны? Статья журнал "Квант" 1991/ №11

http://kvant.mccme.ru/1991/11/kak_izluchat_radiovolny.htm

35. Баканина Л., Интерференция волн. Статья журнал "Квант" 1983/ №5

http://kvant.mccme.ru/1983/05/interferenciya_voln.htm

36. Код Хемминга, лекция https://drive.google.com/file/d/1FkLJ0Mfuird7FgTVn-

fLAfFNQo62Zy_N/view?usp=sharing

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

37. Pulsar-Based Spacecraft Navigation System One Step Closer to Reality

https://www.spacedaily.com/reports/Pulsar_Based_Spacecraft_Navigation_System_O

ne_Step_Closer_to_Reality_999.html

Сборники прошлых лет

1. Методическое пособие Том 22: Профиль «Технологии беспроводной связи»,

командная инженерная олимпиада школьников «Олимпиада Кружкового

движение Национальной технологической инициативы». Учебно-методическое

пособие (в 30 томах). — М.: Типография «Ваш Формат», 2021. — ISBN 978-5-

00147-298-8. https://drive.google.com/file/d/1M9wmIjXm1MjHOriLz-

ns1NpbixWu8dCc/view?usp=sharing

2. Методическое пособие Том 22: Профиль «Технологии беспроводной связи»,

командная инженерная олимпиада школьников «Олимпиада Кружкового

движения Национальной технологической инициативы». Учебно-методическое

пособие (в 28 томах). – М.: Типография «Ваш Формат», 2020. – ISBN 978-5-

00147-206-3. https://drive.google.com/file/d/14WN80Kmh8nJCaBB8KEPlxuRaoP-

eNFgm/view?usp=sharing

3. Методическое пособие Том 14: Профиль «Технологии беспроводной связи».

Командная инженерная олимпиада школьников «Олимпиада Национальной

технологической инициативы». Учебно-методическое пособие (в 20 томах). –

М.: Типография «Ваш Формат», 2019. – ISBN 978-5-00147-027-4.

https://drive.google.com/open?id=1QomB7AhrlCbL55RSbbIPluchONfD4uGP

4. Учебно-методическое пособие (в 17 томах) Том 15: Профиль «Технологии

беспроводной связи». Командная инженерная олимпиада школьников

«Олимпиада Национальной технологической инициативы». Учебно-

методическое пособие (в 17 томах) – М.: Типография «Ваш Формат», 2018.

ISBN 978-5-906982-88-9. http://old.nti-contest.ru/wp-

content/uploads/compilations/7%20-

%20%D0%9C%D0%B0%D1%82%D0%B5%D1%80%D0%B8%D0%B0%D0%BB

%D1%8B%20%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D0%B9

%20%D0%A2%D0%91%D0%A1.pdf?_gl=1*2034bl*_ga*NDE2MDQ3MjA2LjE1O

TYwOTUyOTQ.*_ga_Q2VTLRFTKB*MTYyMzczNDAyNi4yLjEuMTYyMzczND

M1MS42&_ga=2.263939468.1047499211.1623728409-416047206.1596095294

5. Методическое пособие Том 10: «Технологии беспроводной связи». Командная

инженерная олимпиада школьников «Олимпиада Национальной

технологической инициативы». Учебно-методическое пособие (в 12 томах) //

Группа авторов под редакцией Николаенко А.В. – М.: Типография «Ваш

Формат», 2017. ISBN 978-5-9500065-5-5.

https://drive.google.com/file/d/0B0X30BfOmpvzTWRPandkMExUQ3M/view?resour

cekey=0-nPsm5mvEbhgbWB4DRGrxsw

Методическое пособие по профилю “Технологии беспроводной связи”, ООО “ИнСитиЛаб”,

Иркутск, 2020

1

Методическое пособие

Профиль: «Технологии дополненной реальности»

общая трудоемкость – 72 часа

образовательные технологии – предметно-ориентированные

Разработчик: А.Г. Балахчи, З.А. Воловикова, Ю.В. Пестова, Я.А. Угорская, М.А. Сокольская

2

Содержание

Требования к формированию команд 6

Планируемые результаты программы 9

Учебно-тематическое планирование 11

Содержание программы 12

Контрольно-измерительные материалы курса 24

Материально-техническое оснащение кружка 31

Методические рекомендации к проведению первого раздела программы 31

Методические рекомендации по проведению второго раздела программы. 32

Методические материалы курса 32

Первый модуль индивидуального этапа 32

Задача 1. Что такое куча? 33

Задача 2. Нужны ли городу развлекательные центры? 34

Задача 3. Как найти проходное место в городе? 37

Задача 4. Маршруты 39

Задача 5. Анализ сообщений в социальных сетях 41

Задача 6. Погода в городе 43

Задача 7. Выбираем место под новый жилой комплекс 46

Задача 8. Время работы развлекательного центра 48

Задача 9. Сколько "счастья" надо? 50

Задача 10. Конкурс заявок 53

Второй модуль индивидуального этапа. 55

Постановка проблемы для участников. 55

Задача 2. Единицы измерения площадей земельных участков 59

Задача 3. Парковые зоны 60

Задача 4. Замечательные места 62

Задача 5. "Фишки" в облаках 63

Задача 6. Предпочтения 69

Задача 7. Удобство в дорогах 71

Задача 8. Центр. 73

Задача 9. Центральная достопримечательность 74

Задача 10. Время работы 75

Третий модуль индивидуального этапа. 77

Постановка проблемы для участников. 77

Задача 1. Сбор данных для исследований 79

Задача 2. Анализ отзывов 81

Задача 3. Анализ целевой аудитории района 83

Задача 4. Какие в районе проблемы? 85

Задача 5. Формирование рейтинга мест 87

Задача 6. Что важнее? 89

Задача 7. Умные решения 90

Задача 8. Плотность предприятий в районе 92

3

Задача 9. Где открыть ресторан? 94

Задача 10. Ресторан или кафе быстрого питания? 99

Задачи командного этапа 102

Легенда. 102

Генеральная задача командного этапа. 103

Пояснительная записка

На состояние здоровья человека влияет образ жизни и окружающая среда, поэтому

так важно, где и как он живет. Объекты городской инфраструктуры обладают визуальными

и смысловыми кодами, которые оказывают влияние на наше эмоциональное состояние, а в

целом определяют поведение социума на данной территории. Каждая улица города имеет

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

территории. Чтобы создать комфортную для человека среду обитания, важно исследовать ее

состояние, правильно выделять негативные и позитивные факторы, принимать управляющие

решения, которые основываются на сборе информации и анализе разнообразных данных об

объектах уличного ландшафта. Современные исследования среды обитания очень часто

выполняются на стыке компьютерных и гуманитарных наук, касаются понятий «цифровая

гуманитаристика», «социальная инженерия», урбанистика и дизайн окружающей среды.

Материалы курса, предлагаемые командой разработчиков, фокусируют внимание

школьников, наставников, родителей и преподавателей на исследованиях, задействующих

самые разные науки. При этом планируется задействовать уже привычные всем технологии

программирования для сбора, обработки, анализа и визуализации пакетов данных. Показать

их использование в новом контексте, заинтересовать подходами к решению проблем,

регулированию эмоционального фона общества, повышения комфортности окружающей

среды для населения некоторой территории.

В процессе решения комплекса задач, учащиеся работают с таким компонентом как

“вычислительное эссе”. Применение такого образовательного компонента позволит

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

будет способствовать формированию умений выражать свои мысли, строить гипотезы,

описывать подходы, презентовать материалы. Вычислительное эссе — это симбиоз

сочинения и сложной алгебраической задачи, вычислительная история с инфографикой:

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

визуализировать. Термин “вычислительное эссе” впервые ввел Стивен Вольфрам.

4

Вычислительное эссе – итоговый продукт командных соревнований, форма

публикации, объединяющая выводы и позиции авторов, вычисления (снабженные

комментариями), интерактивную инфографику. Вычислительное эссе, позволяет добавлять

и исправлять данные в публикации по мере поступления или корректировки.

В качестве ключевой технологий реализации вычислительного эссе разработчики

предложили использовать Google Collab.

Google Colab — это облачный сервис, направленный на упрощение исследований в

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

Colab является некоторым аналогом гугл-документов для JupyterNotebook.

Ученикам 5–7 классов школ, командам участникам курса «Технологии для среды

обитания» предстоит провести и оформить интерактивную публикацию исследования по

теме «Настроение улиц города».

Ребята, в процессе подготовки эссе решают следующие обобщенные задачи:

1) сбор из свободных источников информации данных об объектах инфраструктуры

улиц города (или любой другой территории проживания), включающие:

– цветовые решения;

– естественное и искусственное освещение;

– строительные материалы;

– архитектурные формы;

– функциональное назначение зданий;

– озеленение и т. п.

2) формулировка своей гипотезы об удобстве, полезности, востребованности

изученных объектов и аргументация выводов;

3) обработка данных, построение графиков, подтверждающих или опровергающих

выдвинутые ими ранее гипотезы. Все работы этой части выполняются с использованием

облачного сервиса Google Collab;

4) оформление материалов в виде вычислительного эссе с интерактивной

инфографикой.

Содержание опубликованных материалов эссе меняется динамически. Таким образом,

с одной стороны, мы получаем инструмент для исследований, а с другой, учебное пособие,

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

математики и анализа данных.

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

на поискспособов решения проблем, связанных с организацией комфортной среды для жизни

и деятельности сообществ людей.

5

Задачи программы:

● Знакомство учащихся с алгоритмами поиска оптимальных решений в вопросах

организации среды обитания

● Формирование навыков учащихся по анализу разрозненных данных,

выявлением неочевидных закономерностей.

Возраст детей:5-7класс

Количество часов: 2 академических часа в неделю (1 занятие по 2 часа)

Сроки реализации программы: 72 часа

Особенности реализации курса

Программа обучения содержит два основных модуля. При этом задачи для каждого раздела

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

самостоятельности школьников и сильнее ограничен во времени.

Первый раздел программы “Технологии для среды обитания” содержит не только

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

материалов. Обучающие материалы необходимы, т. к. учащиеся 5–7 классов сталкиваются с

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

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

Слушатели курса получают задачи и тестовые задания по следующим модулям:

● программирование на языке Python;

● сбор, обработка, анализ данных (все с учетом школьной образовательной программы

для соответствующего возраста);

● визуализация и инфографика;

● сторителлинг;

● системы коллективного пользования (куда войдут, в том числе, задания по системе

Google Colab).

По результатам первого учебного раздела составляются рейтинги участников, в

соответствии с которым необходимо будет сформировать команды для второго раздела

обучения. Поскольку каждая задача первого раздела рассчитана на определенную роль

участника в команде, то рейтинг составляется по каждому модулю отдельно (что, возможно,

поможет после первого раздела распределить ребят по ролям). Все школьники начинают в

равных условиях и роль участника в его будущей команде определяет педагог по результатам

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

индивидуален, команды формируются только для второго раздела.

6

Второй раздел обучения включает в себя три основных этапа, на каждом из которых

учащиеся получают новую информацию, тренируют новые навыки. В итоге команды, на

заключительном занятии представляют жюри (в состав которого могут входить как педагоги,

так и учащиеся старших классов, а также представители местного сообщества, эксперты в

своих вопросах) свои вычислительные эссе.

Лучшие вычислительные эссе команд могут быть рекомендованы к публикациям и

представлению на научно-практических конференциях школьников, таких как:

«Ломоносов», «Шаг в будущее», МНСК, Удивительный мир и другие. На основе

изложенных материалов может быть собран элективный курс по началам анализа данных для

учащихся средних классов школ.

Требования к формированию команд

Каждая команда учащихся состоит из 4 человек: программист, аналитик, дизайнер-

инфографик, журналист данных.

Программист - знает основы программирования на языке Python.

Аналитик – владеет основными математическими методами обработки числовых

данных, построения графиков, знаком с понятием функции, основами теории вероятностей

и комбинаторики, базовыми методами оптимального выбора.

Дизайнер-инфографик – понимает значение и сущность понятия «график», владеет

компьютерными технологиями построения графиков, любым компьютерным графическим

редактором (GIMP, Inscape, Photoshop, CorelDraw).

Журналист данных - обладает широким кругозором, способен к оригинальному

мышлению, построению гипотез, владеет письменной речью - умеет излагать свои мысли,

формировать логическую цепочку: утверждение, аргументы, вывод.

В таблице 1 можно посмотреть роли участников и выдвигаемые к ним требования.

Таблица 1. Роли участников команд

№ Роль в команде Задача Компетенции

1 Программист

(пишет

программный код:

Данные собраны

АНАЛИТИКОМ. Теперь ин

надо обработать в соответствии

с выдвинутой командой

Софт: логическое

мышление,

Коммуникабельность,

7

обрабатывает

данные)

гипотезой. Участник пишет код

для обработки данных:

вычисления, поиск

минимальных и максимальных

значений, построение

графиков, создание

интерактивных манипуляторов

для обработки данных

АНАЛИТИКОМ

умение работать в

команде,

пунктуальность,

стрессоустойчивость

Хард: знает основы

программирования на

языке Python

Возраст:6-7 класс

Дублер для роли:

аналитика

2 Аналитик

(производит

предварительные

расчеты, готовит

структуры данных

для программиста)

Собирает первичные данные

согласно условию задачи.

Формирует логику решения.

Строит предположения

относительно выдвинутых

гипотез. Может получить

решение задачи аналитически,

опираясь на математические

методы. Оценивает

правильность, полученного

ПРОГРАММИСТОМ

численного решения или

графика.

Софт: логическое

мышление,

Коммуникабельность,

умение работать в

команде,

креативность,

наблюдательность

Хард: владеет основными

математическими

методами обработки

числовых данных,

построения графиков,

знаком с понятием

функции, основами

теории вероятностей и

комбинаторики, базовыми

методами оптимального

выбора

Возраст:5-7 класс

Дублер для роли:

программист; журналист

данных

3 Дизайнер

инфографики

(обрабатывает

графики,

подготовленные

программистом

создает визуальные

истории из данных,

оформляет

публикацию)

На финале редактирует карты,

схемы, графики, готовит

иллюстрации для публикации.

Отвечает за визуальное

оформление публикации.

Оформляет в графическом

редакторе, полученные

ПРОГРАММИСТОМ графики

добавляя к инфографике

подписи и графические

Софт:креативность,

художественный вкус,

коммуникабельность,

умение работать в

команде

Хард: понимает значение

и сущность понятия

«график», владеет

компьютерными

технологиями построения

графиков, любым

8

элементы. Отвечает за стилевое

оформление публикации.

компьютерным

графическим редактором

(GIMP, Inscape, Photoshop,

CorelDraw)

Возраст:4-7 класс

Дублер для роли:

журналист данных

4 Журналист данных

(формирует

содержание

публикации на

основе анализа

данных всей

команды. Помогает

сформулировать

гипотезы и

аргументы, сделать

выводы)

Готовит сценарий и

содержание публикации.

Формулирует идею, логику,

аргументы, выводы,

обосновывает оригинальность

и определяет перспективы.

Важной частью является

выполнение задач, связанных с

анализом текстов. Журналист

пишет текстовую часть эссе,

соответственно владея

навыками устной и письменной

коммуникации лучше

остальных членов команды.

Поскольку основной задачей

является интерактивная

публикация исследования

среды обитания, основанная на

анализе данных, то

ЖУРАНЛИСТ - режиссер всего

процесса.

Софт: широкое

мировоззрение,

наблюдательность,

креативность

коммуникативность,

умение работать в

команде, эмоциональный

интеллект

Хард: системное

мышление, способен к

оригинальному

мышлению, построению

гипотез, владеет

письменной речью - умеет

излагать свои мысли,

формировать логическую

цепочку: утверждение,

аргументы, вывод. Умеет

выделять главное в

тексте: видит проблему.

Владеет методами

построения облака слов.

Возраст:4-7 класс

Дублер для роли:

дизайнер инфографики.

Выполняя задания самостоятельно первого раздела, ребятам удастся

получить необходимые для участия во втором разделе компетенции,

определиться, какую роль в команде, он хочет выполнять. Это означает, что

каждое задание будет снабжено обучающей статьей или ссылками на

соответствующие учебные материалы.

9

Планируемые результаты программы

Предметные результаты обучения:

иметь представление об анализе данных и том, как аппарат анализа данных можно

использовать в различных сферах;

иметь представление о том, как можно использовать данные из открытых источников для

создания комфортной среды обитания человека; как учитывать данные в развитии человека

и среды вокруг него;

иметь представление о том, что такое вычислительное эссе и интерактивные тетради Google

Colab;

иметь представление о парсинге: извлечении данных из открытых источников , в том числе

сайтов;

уметь вычислять и анализировать данные при помощи электронных таблиц Excel, строить

графики;

уметь использовать инструменты облачного сервиса Google Colab;

уметь программировать на языке Python:вычислять, строить статические и динамические

диаграммы, облака слов;

уметь на базовом уровне работать с геоданными: получать, обрабатывать их, наносить на

карту;

иметь представления и уметь на базовом уровне анализировать изображения, например,

при помощи специальных сервисов;

уметь работать с графическими редакторами: обрабатывать изображения (графики),

рисовать иконки, оформлять карту.

Метапредметные результаты обучения:

уметь использовать данные в исследовательской работе: определять тренды, строить

гипотезы, подбирать аргументы на основе данных, подтверждающие или опровергающие

гипотезы, формировать выводы;

развить познавательные интересы, интеллектуальные и творческие способности путем

освоения и использования методов анализа данных;

приобрести опыт работы с данными в индивидуальной, групповой и коллективной учебно-

познавательной и исследовательской деятельности, использовать этот опыт на практике в

повседневной жизни.

10

Личностные результаты обучения:

личностное и предпрофессиональное самоопределение через познавательную мотивацию к

получению профессий, связанных с наукой о данных, программированием, дата-

наналитикой, инфографикой и т.п.;

построение дальнейшей индивидуальной образовательной траектории через получение

представления о перспективных развития науки о данных и инструментах, методиках и

сферах практического применения data science;

осознание стратегической важности для государства, общества и для своего будущего

развития науки о данных, понимание, что умение работать с данными является

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

11

Учебно-тематическое планирование

№ Тема Количество

часов Лекции Практика

Контроль

Раздел 1. Индивидуальное решение задач

1 Модуль 1. 20 8,5 11,5

1.1 Введение. Постановка проблемы для

учащихся. Создание тетрадки.

Задача. Что такое куча?

2 1 1 Задача

1.2 Построение столбчатых графиков

Задача 2. Нужны ли городу

развлекательные центры?

2 1 1 Задача

1.3 Вычисления в тетрадке на языке Python 2 1 1

1.4 Задача 3. Как найти проходное место в

городе?

Задача 4. Маршруты

2 0,5 1,5 Задача

1.5 Построение облака слов

Задача 5. Анализ сообщений в социальных

сетях

2 1 1 Задача

1.6 Задача 6. Погода в городе 2 1 1 Задача

1.7 Построение линейчатых графиков

Задача 7. Выбираем место под новый

жилой комплекс

2 1 1 Задача

1.8 Задача 8. Время работы развлекательного

центра

2 0,5 1,5 Задача

1.9 Построение круговых-диаграмм 2 1 1

1.10 Задача 9. Сколько "счастья" надо?

Задача 10. Конкурс заявок

2 0,5 1,5 Задача

2 Модуль 2. 18 4,5 13,5

2.1 Введение. Постановка проблемы

Задача 1. Ищем аналоги

2 0,5 1,5 Задача

2.2 Задача 2. Единицы измерения площадей

земельных участков

2 0,5 1,5 Задача

2.3 Задача 3. Парковые зоны 2 0,5 1,5 Задача

2.4 Задача 4. Замечательные места 2 0,5 1,5 Задача

2.5 Задача 5. "Фишки" в облаках

Задача 6. Предпочтения

2 0,5 1,5 Задача

2.6 Задача 7. Удобство в дорогах 2 0,5 1,5 Задача

2.7 Задача 8. Центр.

Задача 9. Центральная

достопримечательность

2 0,5 1,5 Задача

2.8 Задача 10. Время работы 4 1 3 Задача

3 Модуль 3. 18 6 12

3.1 Введение. Постановки проблемы.

Парсинг данных

2 1,5 0,5 Задача

3.2 Задача 1. Сбор данных для исследований 2 0,5 1,5

3.3 Задача 2. Анализ отзывов 2 0,5 1,5 Задача

3.4 Задачи на работу с массивами и списками. 2 1 1

3.5 Задача 3. Анализ целевой аудитории

района

2 0,5 1,5 Задача

3.6 Задача 4. Какие в районе проблемы?

Задача 5. Формирование рейтинга мест

2 0,5 1,5 Задача

3.7 Задача 6. Что важнее?

Задача 7. Умные решения

2 0,5 1,5 Задача

3.8 Задача 8. Плотность предприятий в районе 2 0,5 1,5 Задача

3.9 Задача 9. Где открыть ресторан? Задача 10. Ресторан или кафе быстрого

питания?

2 0,5 1,5 Задача

Раздел 2. Командное решение задач

4 Модуль 4. 16 3 13

12

4.1 Введение. Знакомство с Легендой.

Решение организационных вопросов.

Формирование команд

2 1 1

4.2 Решение задач первого этапа 2 2

4.3 Решение задач второго этапа 8 2 6

4.4 Оформление работы 2 2

4.5 Финал. Презентация вычислительных эссе 2 2 Проект

Итого: 72 22 50

Содержание программы

Наименование, разделов, тем Содержание Виды учебных занятий,

учебных работ

Раздел 1. Индивидуальное решение задач

Модуль 1. Постановка проблемы

для учащихся.

Мэр города Энска достроил новый

развлекательный центр с парком

аттракционов, и надеялся, что это

место будет центром отдыха для

горожан и гостей города.

Необходимо провести

исследования по улучшению

качества инфраструктуры

территории за счет ее

трансформации, чтобы в городе

появился еще один район с

комфортной средой обитания.

Лекция

Задача. Что такое куча? Создание тетрадки, настройки

доступа к тетрадке.

Разметка тетрадки текстовыми

блоками. Правила безопасности

при работе с тетрадкой

Лекция

Написать программу, которая

будет определять количество

людей на квадратный метр — это

покажет, сколько в среднем людей

мы можем ожидать в центре

отдыха с определенной площадью

Практика

Задача 2. Нужны ли городу

развлекательные центры?

Построение столбчатых графиков Лекция

Дано количество людей -

посетителей развлекательных

центров в разных районах города в

период с января по декабрь 2019

года. Необходимо- построить

столбчатую диаграмму и ответить

Практика

13

на вопрос, какой буквой

закодирован торговый центр с

наименьшей посещаемостью.

Задача 3. Как найти проходное

место в городе?

Вычисления в тетрадке на языке

Python Лекция

Проанализировать трехмерный

массив,в котором по оси Z - время в

городе; X, Y - позиция в городе.

Необходимо усреднить данные по

времени. Ваша задача найти ячейку

в полученном массиве с

максимальным значением — это

точка города, где за сутки проходит

больше всего людей - "проходное"

место.

Практика

Задача 4. Маршруты Задана схема маршрутов и длина

путей между пунктами.Известно,

что точка E — это область, где

живет большинство людей. Ж -

исследуемый торговый центр.

Определите количество маршрутов

из района с максимальным

населением до развлекательного

центра, укажите длину

наименьшего из найденных

маршрутов.

Практика

Задача 5. Анализ сообщений в

социальных сетях

Построение облака слов Лекция

Необходимо посмотреть

сообщения в социальных сетях,

оставленные людьми с улиц,

расположенных по соседству с

новым развлекательным центром

улиц.

Постройте облако слов на основе

обобщенного текста, составленного

из таких сообщений.

Практика

Задача 6. Погода в городе Постройте диаграмму-пирог, на

которой можно посмотреть,

соотношение ненастных дней и

дней с хорошей погодой.

Используйте два массива: в первом

массиве t - температура воздуха за

день, во втором w - количество

осадков в этот же день.

Практика

Построение линейчатых графиков Лекция

14

Задача 7. Выбираем место под

новый жилой комплекс

Вблизи развлекательного

комплекса должны находиться

густонаселенные жилые районы с

доступными транспортными

развязками.По карте, которая

приведена в задаче, найдите

территориальный пункт, от

которого идет больше всего

маршрутов к развлекательному

центру.

Практика

Задача 8. Время работы

развлекательного центра

Проанализируйте заданные

графики. Определите оптимальный

временной интервал работы

центра, исходя из числа

потенциальных посетителей и

расходов на обслуживание центра

отдыха.

Практика

Задача 9. Сколько "счастья" надо?

Построение круговых-диаграмм Лекция

В рамках данной задачи

необходимо определить

оптимальное количество

возможных предприятий фудкорта,

развлечений и торговли.

Практика

Задача 10. Конкурс заявок Список заявок на открытие своих

представительств в центре отдыха

больше, чем установленное в

задаче 9 рекомендуемое

количество. Надо решить, чьи

заявки лишние.

Пользуясь графиком интересов

жителей города и опираясь на

мнение горожан, постройте список

предприятий, заявки от которых не

будут реализованы

Практика

Модуль 2. Постановка проблемы Необходимо провести

исследования городского парка

Энска "Роднички". Место отдыха

"Роднички" расположено на

территории прекрасного

природного массива, но, к

сожалению, по прошествии многих

лет концепция парка устарела: его

аллеи опустели, он больше не

является сердцем города. Пришло

время нового содержания для этого

замечательного места.

Лекция

15

Задача 1. Ищем аналоги

Один из вариантов модернизации

парка — это поиск готовых

решений среди парков других

городов. Необходимо, используя

данные из заданной таблицы,

найти 3 города с наиболее схожими

с Энскими погодными условиями.

Практика

Задача 2. Единицы измерения

площадей земельных участков

Составьте программу,

позволяющую осуществлять

перевод Га в кв.км. и наоборот

(кв.км. в Га).

Практика

Задача 3. Парковые зоны

На основе проекта и статистики

необходимо определить

возможные размеры всех зон парка

в кв.метрах. Общая парковая зона

15 гектаров (15 Га).

Практика

Задача 4. Замечательные места Написать программу для поиска

наиболее посещаемых зон в парках

исследуемых городов. Необходимо

найти 5 таких зон.

Практика

Задача 5. "Фишки" в облаках

У вас есть пять текстов —

обобщённых записей,

опубликованных в социальных

сетях пяти "замечательных мест".

К каждому из них постройте

облако слов.

Практика

Задача 6. Предпочтения По заданному графику

предпочтений горожан выберите

два объекта, которые стоит

добавить в проект при

реконструкции парка.

Практика

Задача 7. Удобство в дорогах Дана карта-схемы территории

парка. Каждая точка карты-схемы

проектируется как место для

размещения определенного

паркового объекта. Парковый

объект будет посещаемым, если

точка является доступной.

Необходимо найти все такие точки.

Практика

Задача 8. Центр. Центрированное место — это точка,

из которой до других точек выходит

наибольшее количество быстрых

маршрутов (таких маршрутов, в

которых все точки удовлетворяют

условию доступности). Иначе, от

Практика

16

центра любой объект находится в

доступной точке. Используя схему

парка, найти такой центр.

Задача 9. Центральная

достопримечательность

Используя результаты опроса

людей, построить график

усредненных значений оценки

достопримечательностей по

данным из файла. Укажите

достопримечательность с самым

высоким баллом.

Практика

Задача 10. Время работы Используя три графика активности

для разных возрастных категорий,

определите оптимальное время

работы парка.

Практика

Модуль 3. Постановки проблемы. Исследование социальных

активностей, поведения поможет

выявить потребности жителей

района, их предпочтения, укажет

на проблемы.

Лекция

Задача 1. Сбор данных для

исследований

Парсинг данных Лекция

Дан сайт, на котором собраны

отзывы о знаковых местах района

Эн. Необходимо написать

программу-парсер, который

соберет данных с интернет-

ресурса. Для этого нужно

разобраться с кодом страницы

сайта, найти в коде "метки" (теги),

которые будут указывать парсеру,

какие данные и откуда считывать.

Практика

Задача 2. Анализ отзывов Необходимо обработать

обобщенный текст из Задачи 1,

выделить в нем ключевое слово, то

которое чаще всего используют

пользователи, описывая

исследуемый район Энска.

Сгенерировать облако слов по всем

отзывам

Практика

Задача 3. Анализ целевой

аудитории района

Задачи на работу с массивами и

списками.

Лекция

Администрацией района Эн

проводился опрос населения. Вам

необходимо проанализировать

данные и построить диаграмму-

Практика

17

пирог с заданными категориями.

Определите, какова доля

участников каждой категории в

опросе. Расположите группы в

порядке убывания их количества: от

самой большой группы к самой

маленькой.

Задача 4. Какие в районе

проблемы?

Вам предоставляются данные,

представляющие из себя список

проблем данного района,

выявленных в результате опросов,

интервью и данных с интернет-

ресурса города.

Вам необходимо найти 2 главные

проблемы территории.

Практика

Задача 5. Формирование рейтинга

мест

Рейтинг выстраивается по

количеству лайков, жалоб, по

посещаемости места.

Воспользуйтесь заданным

графиком показателей мести

сформируйте рейтинг. Укажите

топовое и худшее место, по версии

пользователей.

Практика

Задача 6. Что важнее? Администрация района предложила

определить жителям приоритет

финансового вложения в решение

проблем города.Можно выделить

одну проблему и потратить

выделенные финансы только на

одно решение, либо выбрать две с

распределением

финансов.Используя данные опроса

укажите, сколько процентов

жителей района предложили

решать обе проблемы

одновременно?

Практика

Задача 7. Умные решения Определите оптимальное

количество умных решений

достаточных для обеспечения

комфортной среды обитания

района и укладывающихся в

бюджет.

Практика

Задача 8. Плотность предприятий в

районе

Исходя из выявленных проблем и

определенных умных решений,

нужно порекомендовать

администрации, в каком районе

Практика

18

лучше открыть заведение

общественного питания

Задача 9. Где открыть ресторан? Найти район города, в котором

открытие нового предприятия

общественного питания, например

ресторана, будет наиболее

целесообразным.

Практика

Задача 10. Ресторан или кафе

быстрого питания?

Используя данные двух списков,

необходимо определить, какого

типа будет предприятие: кафе

быстрого питания, ресторан или

кафе.

Практика

Раздел 2. Командное решение задач

Модуль 3. Знакомство с Легендой Мэр и администрация Энска

стараются создавать в городе

наиболее благоприятные условия

для жизни. Вам необходимо

провести исследование,

результатом которого будет

изучение настроения жителей

различных кварталов города и

рекомендации по проектированию

или реконструкции объектов

городской инфраструктуры.

Лекция

Задача 1. Получение данных в

Google Collab.

Создание тетрадки, настройки

доступа к тетрадке для членов

команды и экспертов. Разметка

тетрадки текстовыми блоками.

Правила безопасности при работе с

тетрадкой

Практика

Задача 2. Анализ статьи мэра Проанализируйте обращение мэра

на сайте Дистрикта, выявите по

данным мест какая именно

проблема существует в районе из

описанных в выступлении мэра.

Сформулируйте несколько

предположений(гипотез), с чем

связана данная проблема, на основе

информации, предоставленной на

сайте данных.

Практика

Задача 3-4. Парсинг сайта для

извлечения данных.

Вам предлагается воспользоваться

инструментами парсинга: извлечь

информацию из содержимого

элемента html или значений

атрибутов и сделать

Практика

19

преобразование типов в

соответствии с типом информации.

Задача 5. Анализ зеленых

насаждений городской среды

На основе фотографии района с

квадрокоптера определить

отношение зеленых насаждений к

другим объектам. Для анализа

изображения воспользуйтесь

сервисом по определению цветов с

картинки (например:

https://hysy.org/get_colors)

Практика

Задача 6. Анализ зеленых

насаждений (нахождение аналога)

На основании представленных

данных найдите город-аналог со

схожим процентным содержанием

зеленых насаждений по сравнению

с вашим районом. В ответе укажите

название найденного города.

Практика

Задача 7. Интересы Дистрикта Проанализируйте интересы

исследуемого района города N на

основе данных, представленных в

файле интересов Дистрикта.

Найдите 5 типов интересов,

которые чаще всего встречаются в

Дистрикте. Постройте столбчатый

график интересов.

Практика

Задача 8. Интересы Дистрикта

(поиск аналога)

Проанализируйте данные в файлах

по интересам трех других городов.

Составьте рейтинг из 5

приоритетных интересов жителей.

Сравните результаты интересов

вашего Дистрикта и получившиеся

топы интересов трех других

городов. Определите город(город-

аналог), наиболее похожий по

интересам на ваш Дистрикт.

Практика

Задача 9. Публикация

аналитических выводов

На основе полученного аналитиком

команды графика интересов вашего

Дистрикта сделайте выводы по

интересам жителей вашего района и

опубликуйте их в тетради вместе с

графиком.

Практика

Задача 10-11. Визуализация мест Работа с картами Лекция

Создайте визуализацию всех точек

района по их координатам на карте,

такие точки называют геометками.

При визуализации геометок

Практика

20

отобразите популярность и тип

каждой метки.

Разместите получившуюся карту

Дистрикта в эссе, сделайте выводы

о корректности расстановки

геометок.

Задача 12 Частотный анализ

отзывов.

Сгенерируйте облако слов по всем

отзывам, чтобы распределить слова

отзывов по частоте их упоминания.

Исключите такие слова как: место,

здесь, очень. Возьмите для анализа

отзывов только слова длиной от 4

букв и больше. Определите

ключевое существительное,

которое пользователи используют

чаще всего.

Практика

Задача 13. Семантический анализ

отзывов

Отзывы имеют оценку

пользователей. Считается, что

рейтинг от 3 и ниже определяет

отзыв как негативный, а

позитивные имеют оценку 4 или 5.

Распределите отзывы

пользователей с сайта дистрикта

города N по настроению.

Постройте облака слов к каждому

из настроений, чтобы найти

главную позитивную сущность и

негативную.

Практика

Задача 14. Анализ отзывов

(завершение)

По результатам анализа отзывов

добавьте в эссе получившиеся

облака слов и выводы, которые по

итогу решения данных задач можно

сформулировать

Практика

Задача 15-16. Посещаемость мест На основе данных посещаемости

мест с сайта необходимо найти

самое посещаемое место в вашем

Дистрикте. Постройте столбчатую

диаграмму по среднему значению

посещаемости мест в Дистрикте.

Найдите самое посещаемое место в

вашем Дистрикте города N.

Оформите результаты анализа

посещаемости мест Дистрикта в

эссе

Практика

Задача 17. Центрированная карта Определите центрированную

точку(и), исходя, из условной карты

дорог между точками

Практика

21

района(графа) представленной в

задаче. При этом перекресток

точкой не считается. Определите

номер самой центрированной точки

по району, если их несколько, то

укажите одну(любую) из них.

Задача 18. Непопулярность точки Сравните данные посещаемости

центрированной точки и самого

посещаемого места. Сделайте

соответствующие выводы.

Сделайте предположения почему

центрированная точка может

оказаться не самой посещаемой.

Опубликуйте свои выводы в эссе.

Вычислите у центрированной

точки максимальное число

посещений за день.

Практика

Задача 19. Плотность района Рассчитайте плотность Дистрикта

города N по данным плотности

района.

Проанализируйте данные по

плотности Дистрикта.

Практика

Задача 20. Поиск аналогичного по

плотности района

Проанализируйте данные о средней

плотности из районов трех других

городов и плотности вашего

Дистрикта.

Определите город аналог для

вашего Дистрикта

Практика

Задача 21. Посещаемость города-

аналога

Задание программиста: построить

столбчатую диаграмму по

показателю о средней

посещаемости мест Дистрикта.

Задание аналитика: взять данные

из задачи 15, а данные по

текущему шагу взять из

результатов работы программиста

команды по этому же заданию.

Сравните полученные результаты

по вашему Дистрикту из двух

источников и сделайте выводы по

точкам с низкой посещаемостью и

максимальной. Оформите

результаты сравнения в итоговом

эссе.

Практика

Задача 22. Настроение города Напишите функцию, которая по

условию, указанному в условии

Практика

22

задачи, расшифровывает цветовой

код улицы

Задача 23-24. Исследование

климата

NumPy: сложные задачи Лекция

Вычислите среднее значение

температуры воздуха

анализируемого вами района

города N по представленным

данным. По полученному среднему

значению температуры Дистрикта

найдите его "климатический"

двойник среди данных о районах

других городов. Внесите в

итоговую публикацию

получившиеся ранее значение

средней температуры воздуха

исследуемого Дистрикта

Практика

Задача 25. Настроение города По номеру города аналога,

возьмите координату точки.

Отыщите эту точку на Google

Картах. С помощью сервиса

определения главных цветов

определите три ключевых цвета

улицы. С помощью созданного в

задаче 22 кода расшифруйте

полученный цветовой код.

Сделайте вывод о том, имеет ли

смысл скопировать этот цветовой

код в вашем Дистрикте.

Практика

Задача 26. Центрированная карта Соотнесите точки из заданного

графа с точками на графической

карте с геометками вашего района,

получившейся на шаге 18. И

отобразите все дороги между

инфраструктурными точками.

Разместите новую карту района в

своем эссе.

Практика

Задача 27. Добавление дорог Модифицируйте карту Дистрикта

таким образом, чтобы самая

посещаемая точка стала самой

центрированной. Для этого вы

можете добавить новые дороги

между пунктами.

Практика

Задание 28. Сопоставление

негативных и позитивных отзывов

Проанализируйте количество

негативных и позитивных отзывов в

Дистрикте.

Практика

23

Составьте диаграмму-пирог по

анализу количества негативных и

позитивных отзывов и разместите

ее в своем эссе. По итогу анализа

укажите количество негативных и

количество позитивных отзывов.

Задание 29. Улучшение системы

дорог

Обработка графиков в графическом

редакторе.

Лекция

Нанесите на созданную вами карту

с геометками и дорогами

дополнительные дороги, которые

спроектировали на шаге 27.

Выделите их цветом или формой.

Практика

Задание 30. Оформление

вычислительного эссе

В результате выполнения командой

заданий появилось несколько

графических объектов. Добавьте на

них подписи, визуализируйте ответ

при помощи выделения нужно

столбца или сектора на них,

установите на графике метки

Практика

Задание 31. Новые объекты

городской инфраструктуры

Исходя из полученных данных в

ходе анализа по Дистрикту города

N (погода, плотность, его текущая

инфраструктура и т. п.), выбрать

места куда лучше всего установить

новые объекты городской

инфраструктуры. Обосновать

потребность в новых объектах не

только логически, но и

результатами анализа данных по

району. Показать, как может

меняться настроение города в

зависимости от места и положения

установленного вами объекта.

Нанести новые объекты на

итоговую карту Дистрикта.

Оформить все выводы в эссе.

Практика

Задание 33. Манипуляторы Построение интерактивных

диаграмм с манипуляторами

Лекция

Для того, чтобы территория

процветала, и среда обитания

населения города была

комфортной, а люди счастливыми,

необходимо наделить район

объектами в соответствии с

интересами населения. Определите

Практика

24

оптимальное количество умных

решений достаточных для

обеспечения комфортной среды

обитания района и

укладывающихся в бюджет.

Контрольно-измерительные материалы курса

В первом разделе курса, во время выполнения индивидуальных заданий, оценка

работы учащихся складывается из правильности выполнения задач. Ответы на

задачи представлены в таблице:

Номер задачи Правильный ответ

Модуль 1

Задача 2. Нужны ли городу развлекательные

центры?

центр отдыха с минимальной посещаемостью под

буквой D

Задача 3. Как найти проходное место в городе? 89, 50 или 89, 49

Задача 4. Маршруты 2 маршрута, 5 км минимальное расстояние

Задача 5. Анализ сообщений в социальных сетях СТРОЙКУ, ДОЖДИ, СТРЕЛА

Задача 6. Погода в городе преобладающая погода пасмурная.

Количество дней и тип погоды

Пасмурная 182

Плохая 73

Прогулочная 73

Хорошая 37

Задача 7. Выбираем место под новый жилой

комплекс

Наибольшее количество маршрутов идет из

пункта В

Задача 8. Время работы развлекательного центра оптимальный режим работы центра с 10 утра до 18

вечера

Задача 9. Сколько "счастья" надо?

Задача 10. Конкурс заявок Нужно отклонить заявку ресторана "Две Шпаги" и

заявку Облачного парка

Модуль 2.

Задача 1. Ищем аналоги города под номерами 3,9 и 28 наиболее схожи с

Энском

25

Задача 3. Парковые зоны

Задача 4. Замечательные места [2,31], [5,4], [10,12], [35,49], [48,30]

Задача 5. "Фишки" в облаках

Кораблики Барабаны дождя Песочники Forrest

Cafe Музей

Задача 6. Предпочтения Стоит добавить в проект:

● Детский парк под открытым небом

(но застекленный).

● Колесо обозрения. Окна в каютах

при соприкосновении стекла с

каплями дождя небо в окнах

становится радужными.

Задача 7. Удобство в дорогах Точки Д и Л располагаются за пределами

доступности

Задача 8. Центр. Центр исследуемого объекта - точка Б

Задача 9. Центральная достопримечательность Колесо обозрения

Задача 10. Время работы Оптимальное время работы с 9 утра до 17 вечера

Модуль 3.

Задача 1. Сбор данных для исследований название места: h2, описание к фото: p.

Задача 2. Анализ отзывов чаще всего упоминается слово “Природа”

Задача 3. Анализ целевой аудитории района Родители с детьми, Другое, Молодежь и

Пенсионеры

Задача 4. Какие в районе проблемы? Мусор и Скучно

Задача 5. Формирование рейтинга мест Худшее место: Набережная

Лучшее место: Парк Динамо

Задача 6. Что важнее? 60%

Задача 7. Умные решения возможный вариант ответа 5 18 2 1

Задача 8. Плотность предприятий в районе 0.0033, 0.0016, 0.0008

Задача 9. Где открыть ресторан? 3,37355

Задача 10. Ресторан или кафе быстрого питания? 5775.3

Во втором разделе курса система оценивания несколько усложняется. На

рисунке ниже приведена схема структуры системы оценивания. На схеме

26

структуры оценивания можно видеть типы оценки – автоматическая и

экспертная, типы задач для автоматической оценки, основные критерии

экспертной оценки.

Система оценивания разбита на две части: автоматизированную оценку,

через систему выполнения тестовых заданий, и экспертную оценку - с участием

четырех внешних (приглашенных) экспертов. При этом вклад в оценку

автоматической части составляет 60%, экспертной 40%. Кроме того, за одну из

задач (задачу, которую участники сами ставят и сами предлагают оригинальное

решение) судьи могут начислить дополнительно до 10 баллов. Структура

оценки также делится на выполнение отдельных заданий соревнований, а также

создание командой и демонстрацию (защиту) комплексного документа –

публикации результатов исследований в документе Google Cоllab.

Рис. Схема структуры системы оценивания участников финала

27

Структура заданий командного этапа с условным разделением по ролям,

представлена на рисунке ниже.

Структура заданий командного этапа с условным разделением

по ролям (слева) и исходными данными (справа)

Команда участников, набравшая наибольшее количество баллов, становится

победителем. Определенные типы задач могут представлять для участников трудности, в

этом случае участники в праве заменить эти задания на те, которые они умеют решать

хорошо. Здесь хотелось бы уточнить, что за правильно решенные однотипные задачи баллы

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

последующую задачу одного и того же типа начисляется меньше на два балла: 1 и 2 задачи-

10 баллов, 3 задача -8, 4 -7, 5 -6 и т.д.

Ответы на задачи раздела 2.

Номер задачи Правильный ответ

Задача 2. Анализ статьи мэра Дистрикт 2

Задача 3-4. Парсинг сайта для

извлечения данных.

img,name,category,alt

28

Задача 5. Анализ зеленых

насаждений городской среды

Задача 6. Анализ зеленых

насаждений (нахождение аналога)

Уфа

Задача 7-8. Интересы Дистрикта

доступная среда;тир;скейтпарк

Задача 9. Публикация

аналитических выводов

Самым популярным интересом является “доступная среда”

Задача 10-11. Визуализация мест жилой комплекс-ласточка

ЦПКиО имеет самую маленькую геометку, хотя его

местоположение достаточно хорошее

Задача 12 Частотный анализ

отзывов.

площадка

Задача 13. Семантический анализ

отзывов

парк; площадка

Задача 15-16. Посещаемость мест Галерея Детроит

Задача 17. Центрированная карта 13

Задача 18. Непопулярность точки 7

Задача 19. Плотность района 5,3

Задача 20. Поиск аналогичного по

плотности района

3.40-3.40

Задача 21. Посещаемость города-

аналога

Задача 22. Настроение города 28.67;27.57

29

Задача 23-24. Исследование климата средняя температура воздуха в анализируемом Дистрикте

составляет 23.23.

Задача 25. Настроение города В палитре города аналога преобладает серый и его оттенки

Задача 26. Центрированная карта

Задача 27. Добавление дорог

Задание 28. Сопоставление

негативных и позитивных отзывов

12,33

Задание 33. Манипуляторы 2 10 2 3 3 3 14 13 1

Критерии оценки, которыми должны руководствоваться члены жюри

приведены в таблице ниже.

Таблица. Критерии оценивания выступлений команд на итоговом занятии

этапе

Критерии (максимальный балл) Итого баллов

Критерий 1. Правильность определения проблемы.

Структура публикацию. Логичность гипотез,

аргументов и выводов. Оригинальность найденных

решений (содержание)

Максимум 9

Проблема выделена правильно, предложены

гипотезы возникновения проблемы 2 балла

30

Публикация оформлена в структуру: есть заголовки

и содержание, вычисления и графики, указаны

авторы публикации

2 балла

Выводы к задачам анализа данных

Сделаны более чем 60% задач - 3

балла

Сделаны к некоторым задачам - 1

балл

Сделан общий вывод в публикации 1 балл

Предложены оригинальные решения для проблем 1 балл

Критерий 2. Оригинальность найденных решений

(технология). Выбор методов, используемых для

решения задач (программирование). Оценка

наличия интерактивных элементов

Максимум 10 баллов

При решении задач использовали

программирование

в основном - 2 балла

иногда -1 балл

не использовали – 0 баллов

Интерактивная карта 3 балла

Графики с манипуляторами 2 балла

Парсинг данных выполнен автоматически 3 балла

Критерий 3. Оформление графиков, иллюстраций,

представление данных на карте, оформление графа

дорог

Максимум 10 баллов

Карта с нанесением на нее меток категорий

заведений, отличающихся размером в зависимости

от количества лайков у заведения

4 балла

Графики и их оформление

оформлен выделением цветом

ответа - 2 балла

есть подписи на шкалах 1

есть иллюстрация к графику -1

На карту нанесен граф дорог

граф есть -1 балл

дорога выделена цветом или формой

- 1 балл

Критерий 4. Доклад, демонстрация возможностей

активных элементов публикации, ответы на

вопросы экспертов, соблюдение регламента

Максимум 11 баллов

Доклад и публикация (эссе)

Доклад публикации представлен,

как единое целое есть выводы – 3

балла

как отдельные элементы, есть

выводы – 2 балла элементы доклада

не связаны совсем, выводы в конце

доклада не сделаны – 1 балл

В тетради есть активное содержимое

(манипуляторы, карта) ребята демонстрируют, как

работает это механизм

2 балла

Графики в публикации 5 и более графиков и (или)

иллюстраций – 3 балла

31

не более 4 графиков и (или)

иллюстраций – 2

2 и менее – 1 балл

Представитель команды отвечает на вопросы

экспертов уверенно

очень – 2 балла

владеет информацией слабо - 1 балл

не владеет информацией – 0 баллов

Соблюден регламент доклада 1 балл

Материально-техническое оснащение кружка

● Персональный компьютер или ноутбук с выходом в сеть Интернет для каждого

учащегося

● Графический планшет (особенно, для учащихсяс ролью дизайнер).

● Установленное на компьютере программное обеспечение:

o Excel,

o Python 3,

o Paint (Inscape, Gimp, любой другой графический редактор)

Методические рекомендации к проведению первого раздела программы

При составлении задач данного раздела учитываются особенности подросткового

возраста, а именно:

● Стремление к реализации своих способностей

● Интерес к социальным проблемам

● Осознание себя в обществе

● Стремление к признанию своих заслуг.

Тема трека подразумевает целый комплекс возможных социальных проблем,

связанных с непосредственным окружением школьников. Содержание задач и методы их

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

своих интересов. Участие в соревнованиях питает стремление к признанию заслуг.

Также следует отметить, что задачи как первого раздела, так и второго представляют

собой единую неразрывную историю, рассказанную в традициях сторителлинга и, решая

задачи, участники дописывают эту историю, принимают в ней непосредственное участие, а

затем рассказывают собственную.

При построении задач соблюдаются принципы «от простого с сложному», «от

конкретного к абстрактному», что позволяет даже слабоподготовленному школьнику

принять участие в отборочном туре и проявить себя в одной из ролей.

32

Для того, чтобы выстроить историю через серию задач требуется преамбула,

введение. Ниже представлено введение, которое можно использовать на первом занятии для

учащихся.

Методические рекомендации по проведению второго раздела

программы.

В данном разделе программы формируются команды для выполнения заданий.

На этапе подготовки к итоговому задания учащиеся знакомятся с понятием

вычислительного эссе. Это знакомство проходит в три этапа. Первый этап связан с

рассмотрением готового вычислительного эссе: ребята получают доступ к интерактивной

публикации, в которой смогут менять данные, анализировать их, делать выводы, строить

графики. На втором этапе ребята работают с вычислительным эссе, в котором есть данные, а

функции для их обработки и визуализации надо разработать самостоятельно. На третьем

этапе учащиеся получают задание для самостоятельной разработки вычислительного эссе.

Дополнительно нужно провести мастер-классы по инфографике и написанию

историй, основанных на данных (сторителлинг).

Для оценки итогового задания рекомендуется использование автоматической

(компьютерной) оценки для критериев, связанных с корректностью вычислений, а также

подсчетом реализаций определенных функций в вычислительном эссе. Для оценки

творческого компонента интерактивной публикации можно привлечь экспертов из числа

сотрудников технологических партнеров сферы.

Методические материалы курса

Первый модуль индивидуального этапа

Постановка проблемы для участников.

Отдел «неЛинейного счастья» компании AltFuture ведет работу по исследованию

условий создания комфортной городской среды обитания. Градоначальники, заботящиеся о

достойном жизнеобеспечении своих граждан, стали обращаться в новый отдел за советом и

анализом ситуации.

Однажды в отдел «неЛинейного счастья» пришел мэр города Энска. Он рассказал, что совсем

недавно, достроил в Энске новый развлекательный центр с парком аттракционов, и надеялся,

что это место будет центром отдыха для горожан и гостей города (рис. 1).

33

Рис. 1. Торговый центр г.Энск

Полученные результаты послужат разработке проекта по улучшению качества

инфраструктуры территории за счет ее трансформации, а в городе появится еще один район

с комфортной средой обитания.

Задача 1. Что такое куча?

Условие.

За какую работу ты бы не взялся, необходимо проанализировать все аспекты.

Помните, мультфильм про удава, слоненка, обезьянку и попугая? Был в этом мультфильме

разговор о том, что считать кучей. Так же и у нас 5 человек — это куча людей? Ну да, а если

их надо уместить на площади 0,5 кв.м? Мало людей в новом центре отдыха — это понятие

относительное. Если людей в городе в принципе не так много, например, всего 2000, а

территория города очень большая, нет ничего удивительного, что в среднем для некоторого

отдельно взятого территориального района плотность горожан невелика.

Потому, первое что необходимо выполнить стажерам, написать программу, которая

будет определять количество людей на квадратный метр — это покажет, сколько в среднем

людей мы можем ожидать в центре отдыха с определенной площадью.

На вход дано два числа: N - количество людей в городе и S - площадь города в метрах.

На выходе нужно получить количество людей на квадратный метр, округленное по правилам

математики.

Пример данных

ВХОД: 16 2

ВЫХОД: 8

Решение.

34

Пример решения на Python 3

st = input().split(" ")

result = int(st[0])/int(st[1])

if result>0:

result = int(result+0.5)

else:

result = int(result-0.5)

print(result)

Задача 2. Нужны ли городу развлекательные центры?

Условие

Также возможно, что у горожан нет потребности в центре отдыха - они вообще не

посещают развлекательные центры. Необходимость в уточнении этого факта, ставит перед

стажерами новую задачу.

В таблице представлено количество людей - посетителей развлекательных центров в

разных районах города в период с января по декабрь 2019 года. Задача стажеров- построить

столбчатую диаграмму и ответить на вопрос, какой буквой закодирован торговый центр с

наименьшей посещаемостью.

Центр отдыха с минимальной посещаемостью - исследуемый развлекательный центр.

В таблице посещаемость указана количеством человек на 100 кв. метров. Посещаемость 30

000 человек в год на 100 кв.метров - считается нормой.

Таблица 2. Пример данных о посещаемости

A B C D E

2019-01-01 83 98 113 46 9

2019-01-02 67 80 109 48 63

2019-01-03 88 122 106 96 34

2019-01-04 80 103 125 45 35

2019-01-05 92 110 111 65 30

... ... ... ... ... ...

2019-12-27 63 83 136 98 59

2019-12-28 76 89 102 41 33

2019-12-29 62 114 115 51 50

35

2019-12-30 68 107 125 57 49

2019-12-31 98 120 124 44 33

Рис. 2. Посещаемость центров отдыха

В данном случае центр отдыха с минимальной посещаемостью обозначен буквой E.

Входные данные для решения задачи:

A = [85, 102, 83, 93, 106, 63, 83, 118, 95, 130, 110, 95, 70, 140, 85, 87, 96, 85,98, 69, 122, 88, 95

, 96, 93, 80, 102, 92, 106, 75, 95, 103, 92, 75, 86, 71, 87, 108, 154, 91, 125, 116, 87, 109, 93, 82, 1

00, 87, 100, 112, 76, 116, 115, 93, 98, 95, 96, 92, 108, 106, 121, 97, 134, 85, 92, 76, 100, 94, 92, 9

9, 104, 116, 100, 81, 86, 98, 85, 114, 84, 97, 76, 82, 134, 105, 73, 101, 98, 109, 99, 114, 124, 95, 9

4, 111, 96, 72, 87, 90, 94, 102, 109, 86, 109, 84, 85, 123, 82, 99, 85, 106, 121, 112, 95, 117, 79, 11

8, 110, 117, 93, 94, 113, 93, 110, 105, 97, 101, 126, 96, 96, 128, 67, 101, 96, 99, 95, 107, 112, 111

, 108, 95, 120, 84, 88, 104, 110, 113, 119, 81, 105, 89, 116, 91, 90, 108, 96, 114, 102, 94, 117, 101

, 88, 102, 103, 87, 85, 101, 98, 127, 80, 111, 84, 88, 114, 94, 110, 95, 92, 102, 124, 113, 94, 102, 1

02, 90, 96, 121, 74, 106, 91, 88, 96, 103, 94, 107, 87, 114, 102, 79, 79, 98, 110, 90, 100, 101, 95, 1

10, 132, 88, 119, 75, 114, 72, 73, 87, 85, 97, 85, 116, 96, 85, 126, 95, 89, 96, 79, 98, 118, 96, 126,

91, 113, 90, 81, 122, 81, 80, 108, 109, 92, 113, 116, 99, 103, 112, 118, 113, 86, 84, 117, 101, 94, 1

07, 88, 84, 115, 117, 109, 106, 107, 86, 123, 114, 80, 75, 86, 69, 101, 59, 73, 88, 96, 99, 112, 105,

100, 125, 90, 107, 100, 91, 96, 96, 116, 115, 129, 98, 95, 96, 87, 107, 98, 99, 104, 71, 107, 113, 10

5, 94, 110, 111, 103, 110, 100, 121, 93, 119, 113, 103, 111, 90, 84, 96, 116, 105, 89, 123, 127, 100

, 94, 111, 81, 90, 135, 115, 90, 101, 90, 72, 101, 104, 92, 94, 94, 90, 99, 109, 105, 102, 94, 86, 120

, 102, 110, 127, 90, 94, 109, 118, 106, 98, 94, 107, 70, 88, 89, 107, 87, 102, 84, 106, 116, 96, 91, 1

09, 103]

B = [107, 87, 93, 42, 111, 88, 69, 96, 57, 65, 109, 86, 60, 59, 68, 81, 78, 72, 57, 94, 86, 98, 63, 81,

98, 74, 108, 76, 81, 120, 104, 68, 90, 85, 67, 68, 70, 75, 106, 65, 82, 67, 97, 125, 98, 95, 77, 93, 10

4, 68, 84, 89, 107, 79, 121, 65, 94, 85, 103, 102, 67, 76, 53, 84, 75, 53, 72, 74, 98, 79, 102, 68, 46,

91, 64, 52, 70, 95, 114, 70, 142, 69, 70, 120, 88, 82, 91, 95, 89, 74, 89, 98, 52, 77, 85, 106, 49, 104

, 77, 93, 65, 74, 65, 108, 66, 119, 56, 91, 32, 71, 64, 73, 129, 106, 103, 60, 72, 96, 87, 91, 104, 80,

91, 82, 78, 58, 76, 80, 67, 95, 73, 74, 59, 72, 52, 71, 98, 127, 64, 78, 77, 67, 77, 99, 52, 93, 110, 10

2, 50, 62, 96, 56, 110, 46, 62, 71, 113, 72, 112, 71, 80, 68, 84, 88, 58, 97, 57, 108, 57, 66, 89, 112,

47, 62, 52, 86, 93, 69, 48, 64, 61, 99, 73, 64, 94, 50, 87, 66, 119, 60, 48, 67, 83, 64, 79, 63, 72, 101

, 85, 94, 74, 84, 89, 76, 60, 135, 74, 78, 107, 88, 68, 75, 92, 85, 88, 85, 74, 110, 102, 113, 80, 67, 6

6, 118, 86, 108, 69, 131, 46, 128, 63, 57, 114, 93, 84, 78, 62, 110, 91, 51, 51, 93, 95, 93, 51, 82, 64

, 84, 75, 59, 67, 42, 87, 82, 101, 76, 73, 67, 96, 85, 23, 107, 40, 92, 85, 101, 78, 34, 98, 82, 76, 123

, 32, 71, 56, 92, 71, 84, 76, 56, 77, 105, 77, 87, 75, 68, 74, 43, 72, 48, 84, 93, 79, 78, 62, 73, 85, 95

36

, 92, 109, 106, 79, 87, 103, 104, 61, 63, 101, 80, 58, 61, 86, 84, 48, 79, 104, 99, 94, 110, 90, 87, 79

, 45, 64, 75, 28, 87, 96, 94, 129, 105, 110, 97, 67, 58, 56, 40, 62, 88, 101, 73, 42, 52, 120, 108, 57,

69, 86, 83, 72, 71, 42, 119, 73, 67, 90, 64, 82, 72, 77, 80, 54, 89, 95, 60]

C = [160, 64, 123, 111, 157, 127, 82, 169, 121, 123, 126, 110, 147, 58, 149, 111, 187, 117, 71, 124

, 111, 154, 200, 157, 68, 101, 112, 83, 188, 148, 122, 73, 98, 103, 143, 102, 126, 104, 144, 123, 98

, 172, 137, 88, 106, 127, 173, 109, 98, 94, 111, 97, 104, 112, 128, 81, 123, 147, 87, 154, 139, 98, 1

17, 77, 78, 117, 129, 150, 91, 128, 106, 53, 150, 131, 144, 147, 132, 81, 125, 141, 150, 160, 156, 1

09, 128, 67, 121, 113, 78, 111, 147, 130, 127, 64, 117, 112, 42, 127, 166, 158, 131, 82, 171, 164, 5

8, 114, 164, 149, 111, 112, 150, 121, 116, 148, 129, 102, 125, 102, 69, 143, 160, 128, 179, 125, 17

8, 150, 109, 109, 127, 96, 92, 88, 115, 128, 126, 111, 121, 95, 158, 21, 116, 109, 67, 114, 116, 123

, 141, 103, 91, 91, 98, 129, 81, 85, 114, 147, 115, 135, 116, 126, 121, 116, 121, 125, 158, 112, 140

, 146, 122, 136, 178, 162, 123, 76, 178, 80, 103, 113, 68, 139, 173, 73, 89, 137, 123, 161, 135, 66,

128, 81, 108, 122, 148, 75, 118, 82, 50, 75, 84, 159, 91, 163, 127, 106, 88, 139, 78, 147, 108, 75, 1

35, 76, 109, 95, 123, 101, 129, 164, 149, 106, 82, 100, 98, 121, 89, 104, 142, 145, 115, 69, 127, 10

7, 145, 138, 210, 110, 123, 163, 158, 136, 123, 100, 141, 83, 126, 62, 131, 151, 129, 107, 165, 128

, 144, 162, 82, 129, 164, 150, 88, 123, 92, 137, 167, 125, 103, 83, 81, 63, 127, 124, 98, 122, 102, 1

43, 123, 144, 80, 95, 154, 114, 62, 113, 107, 101, 104, 140, 113, 94, 144, 69, 125, 136, 111, 128, 1

36, 94, 118, 141, 97, 142, 115, 119, 138, 155, 53, 70, 137, 117, 128, 77, 150, 80, 128, 116, 111, 13

2, 117, 150, 173, 165, 140, 170, 121, 113, 136, 201, 107, 113, 92, 141, 114, 137, 159, 103, 70, 162

, 92, 153, 145, 124, 74, 96, 83, 120, 65, 83, 170, 100, 108, 146, 134, 80, 98, 137, 124, 124, 87, 164

, 71, 114, 114, 88, 115, 156, 114]

D = [60, 24, 49, 55, 45, 45, 49, 41, 60, 51, 51, 51, 39, 29, 44, 46, 44, 41, 50, 66, 50, 32, 58, 69, 50,

53, 55, 42, 38, 53, 40, 42, 56, 59, 62, 32, 52, 47, 49, 50, 36, 54, 59, 43, 37, 55, 44, 62, 42, 40, 32,

71, 46, 56, 54, 40, 43, 35, 40, 26, 53, 40, 41, 38, 44, 54, 54, 39, 40, 44, 46, 56, 76, 46, 53, 41, 41, 6

7, 48, 29, 49, 46, 41, 46, 53, 41, 48, 56, 39, 46, 47, 41, 63, 78, 49, 40, 51, 45, 50, 49, 67, 58, 62, 45

, 56, 55, 32, 54, 34, 45, 46, 46, 45, 66, 49, 53, 57, 44, 55, 43, 32, 31, 43, 55, 47, 40, 50, 63, 53, 55,

41, 77, 49, 46, 60, 53, 59, 54, 55, 47, 62, 42, 65, 41, 54, 49, 66, 64, 60, 52, 65, 44, 54, 58, 64, 59, 4

8, 46, 56, 54, 51, 44, 52, 37, 48, 48, 57, 55, 36, 66, 44, 58, 70, 49, 55, 54, 54, 41, 43, 47, 48, 46, 47

, 47, 54, 60, 63, 62, 47, 62, 42, 42, 65, 58, 63, 40, 38, 67, 55, 52, 53, 48, 47, 42, 61, 29, 41, 47, 32,

60, 62, 35, 60, 29, 44, 42, 60, 45, 56, 32, 66, 59, 40, 57, 38, 44, 69, 43, 25, 46, 47, 47, 51, 44, 56, 3

8, 54, 51, 51, 55, 45, 54, 53, 40, 51, 49, 47, 30, 46, 46, 53, 55, 44, 54, 40, 36, 49, 42, 80, 56, 42, 64

, 50, 44, 71, 40, 48, 43, 40, 41, 36, 60, 52, 53, 40, 46, 43, 43, 57, 46, 64, 40, 48, 64, 37, 33, 45, 50,

48, 55, 34, 54, 60, 39, 45, 65, 48, 37, 41, 62, 43, 52, 43, 42, 63, 56, 42, 56, 36, 61, 55, 72, 50, 43, 4

6, 53, 45, 66, 40, 64, 43, 35, 31, 59, 46, 63, 40, 60, 53, 46, 40, 60, 61, 44, 59, 54, 56, 69, 48, 55, 52

, 50, 46, 32, 60, 58, 50, 61, 59, 42, 49, 40, 59, 55, 51, 35, 45, 57, 52, 35, 60, 37, 41, 53, 48]

E = [74, 22, 54, 104, 88, 73, 55, 67, 121, 48, 31, 73, 34, 54, 85, 96, 34, 43, 64, 65, 63, 88, 82, 48, 8

6, 61, 74, 87, 89, 46, 45, 38, 113, 65, 72, 55, 61, 77, 67, 75, 101, 77, 86, 70, 60, 40, 69, 44, 41, 25,

103, 87, 60, 96, 84, 54, 91, 47, 88, 97, 83, 55, 43, 53, 104, 89, 45, 61, 73, 56, 62, 107, 79, 99, 69, 8

0, 85, 100, 51, 77, 78, 54, 46, 79, 76, 32, 84, 106, 43, 70, 130, 85, 39, 87, 61, 61, 66, 58, 79, 51, 65

, 85, 61, 87, 86, 63, 92, 61, 65, 56, 65, 77, 89, 79, 77, 67, 31, 66, 71, 38, 96, 114, 5, 69, 81, 85, 52,

94, 41, 51, 61, 58, 89, 56, 77, 84, 88, 76, 29, 57, 83, 48, 41, 65, 86, 32, 69, 58, 64, 48, 79, 85, 64, 6

3, 63, 69, 85, 93, 127, 54, 64, 100, 71, 75, 68, 46, 76, 48, 54, 59, 62, 83, 76, 61, 61, 110, 48, 78, 75

, 86, 61, 92, 66, 72, 65, 82, 54, 69, 59, 44, 89, 42, 76, 61, 92, 101, 41, 66, 60, 80, 80, 68, 66, 60, 10

1, 48, 53, 84, 70, 76, 54, 82, 41, 46, 86, 100, 112, 59, 94, 80, 88, 86, 68, 82, 77, 56, 47, 59, 74, 73,

90, 60, 47, 54, 39, 35, 99, 56, 113, 37, 57, 82, 87, 49, 91, 84, 76, 53, 57, 39, 79, 72, 32, 86, 22, 45,

67, 79, 77, 61, 113, 76, 70, 53, 65, 76, 42, 82, 57, 86, 52, 98, 76, 95, 31, 59, 79, 40, 101, 64, 53, 90

, 63, 70, 61, 98, 88, 60, 85, 80, 49, 55, 107, 64, 66, 49, 69, 88, 70, 33, 63, 94, 76, 67, 65, 77, 56, 67

, 67, 31, 62, 76, 58, 54, 65, 74, 38, 50, 59, 71, 45, 73, 83, 92, 96, 65, 85, 58, 51, 37, 39, 47, 84, 65,

37

80, 127, 81, 49, 100, 78, 103, 54, 90, 91, 91, 45, 46, 83, 69, 34, 24, 50, 37, 65, 59, 77, 82, 68, 58, 4

3, 82, 121, 120, 36, 73]

Дополнительный вопрос на размышление:

Каковы общепринятые нормы посещаемости развлекательных центров, исходя из

которых их можно считать рентабельными?

Решение:

import matplotlib.pyplot as plt

plt.bar(['A', 'B', 'C', 'D', 'E'], [sum(A), sum(B), sum(C), sum(D), sum(E)])

plt.title('Ответ D');

Решение без построения графика:

Вывести сумму по всем массивам и посмотреть минимальную посещаемость.

print(sum(A), sum(B), sum(C), sum(D), sum(E))

Ответ: центр отдыха с минимальной посещаемостью под буквой D (рис.3).

Рис. 3. Посещаемость центров отдыха

Задача 3. Как найти проходное место в городе?

Условие.

Проходное место - место, где бывает много людей. Успех нового проекта городской

инфраструктуры во многом зависит от того, как далеко от такой точки находится объект.

Если мы найдем точку города, в которой больше всего людей, мы сможем дать ответы на

следующие вопросы:

● Как далеко от этой точки находится центр?

● Почему люди из этой точки не доходят до центра?

38

Вам нужно проанализировать трехмерный массив со следующей структурой (рис. 4):

Рис. 4. Структура трехмерного массива

По оси Z - время в городе; X, Y - позиция в городе.

По этим координатам можно посмотреть количество людей в определенной точке в

определенное время. Таким образом если мы усредним данные по времени и в полученном

массиве найдем ячейку с максимальным значением — это точка города, где за сутки

проходит больше всего людей - "проходное" место.

Ваша задача - найти эту точку. Ответ запишите в формате: x, y (без скобок). Для

генерации данных используйте функцию, описанную ниже.

def generate():

import numpy as np

np.random.RandomState(42)

r = []

for i in range(24):

x = np.linspace(-90, 10, 100)

y = np.linspace(-50, 50, 100)

x, y = np.meshgrid(x, y)

f = 7*(-x**2)+1*(-y**2)+100*np.sin(i/48*2*np.pi)

f[f<10]=np.random.random(f[f<10].shape)*40 +30

r.append(f)

return [[[round(el, 3) for el in r]for r in m] for m in r]

Решение

#Предполагается решение в интерактивной тетрадке (рис. 5)

import matplotlib.pyplot as plt

import numpy as np

img = np.mean(generate(), axis = 0)

plt.imshow(img)

np.where(img == np.max(img))

Ответ:(array([50]), array([89]))

39

Рис.5. Графическое представление решения задачи 3

Ответ 89, 50 или 89, 49

Задача 4. Маршруты

Условие

На картинке (рис. 6, 7) изображена схема маршрутов и длина путей между пунктами.

Известно, что точка E — это область, где живет большинство людей. Ж - исследуемый

торговый центр. Определите количество маршрутов из района с максимальным населением

до развлекательного центра, укажите длину наименьшего из найденных маршрутов.

В ответе запишите два целых числа через пробел. Первое - количество маршрутов,

позволяющих попасть из точки Е в точку Ж, второе – длину минимального маршрута в

километрах.

40

Рис. 6. Граф маршрутов между ключевыми точками

Рис. 7. Схема расположения ключевых точек города

Обратите внимание, что стрелка указывает направления движения: там, где она есть -

дорога односторонняя, где стрелок нет - движение имеет двунаправленный характер. Цифра

на ребрах графа(на прямой, соединяющей маршрутные пункты) обозначает расстояние

между ними в километрах.

Дополнительный вопрос на размышление:

Относительно площади города, можно ли сказать, что даже минимальный маршрут

слишком длинный?

Решение.

Длину маршрутов, согласно графу, выпишем в таблицу:

41

Маршрут 1 Маршрут 2 Маршрут 3

1+1+3 =5 7 нет

Из точки Е существует два варианта движения к точке Ж. Третий вариант нужно

исключить, так как из точки Е в точку В противоположное движение.

Ответ:2 маршрута, 5 км минимальное расстояние

Задача 5. Анализ сообщений в социальных сетях

Условие.

Теперь мы знаем, что маршрутов ведущих в развлекательный центр мало. Тем не

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

Давайте посмотрим сообщения в социальных сетях, оставленные людьми с улиц,

расположенных по соседству с новым развлекательным центром улиц. Возможно,

настроение улиц сказывается на низкой посещаемости места отдыха?

Постройте облако слов на основе обобщенного текста, составленного из таких

сообщений. В ответ запишите 3 слова, которые занимают самое большое место в облаке. При

построении облака слов уберите следующие слова ["на", "все", "эта", "не", "вчера", "уже"].

Сообщения (сохранены стилевые характеристики текстов социальных сетей):

Рис. 8. Иллюстрация к задаче 5

Ох уж эта стройка! Мало того, что постоянно дождь, так еще и эта грязь на улице.

Никуда не годится.

42

Ехал вчера на машине мимо. Думал не проеду. Могли бы уже завершить эти

строительные работы. Ведут стройку уже больше года.

Был вчера в новом развлекательном центре. Мне все понравилось, всем советую. Ноги

правда все испачкал пока дошел, но все равно круто.

Дождди-дожди-дожди(((((( Устала ходить на работу, особенно в такую погоду.

Кто-то стащил со стройки цемент, ахаха)).

Строится новый жилой комплекс Стрела! Спишите купить квартиру за смешную

цену. Стрела приглашает на круглый стол «Социальные объекты для новых районов: как

синхронизировать стройку?

Ура солнце! Лол впервые за 100000 лет.

Решение

from wordcloud import WordCloud, STOPWORDS, ImageColorGenerator

from collections import Counter

import matplotlib.pyplot as plt

comments = """

Ох уж эта стройка! Мало того, что постоянно дождь, так еще и эта грязь на улице. Никуда не

годится. Ехал вчера на машине мимо. Думал не проеду. Могли бы уже завершить эти

строительные работы. Ведут стройку уже больше года. Был вчера в новом развлекательном

центре. Мне все понравилось, всем советую. Ноги правда все испачкал пока дошел, но все

равно круто. Дождди-дожди-дожди(((((( Устала ходить на работу, особенно в такую погоду.

Кто-то стащил со стройки цемент, ахаха)). Строится новый жилой комплекс Стрела!

Спишите купить квартиру за смешную цену. Стрела приглашает на круглый стол

«Социальные объекты для новых районов: как синхронизировать стройку? Ура солнце! Лол

впервые за 100000 лет."""

#Выделяем слова, которые точно не должны использоваться при построении облака слов!

stopwords = set(STOPWORDS)

stopwords.update(["на", "все", "эта", "не", "вчера", "уже"])

#Создаем облако

wordcloud = WordCloud(stopwords = stopwords, background_color="white").generate(comments

)

# Рисуем результат

plt.imshow(wordcloud, interpolation='bilinear')

plt.axis("off")

plt.show()

Получившееся облако слов показано на рисунке 9.

Ответ: СТРОЙКУ, ДОЖДИ, СТРЕЛА

43

Рис. 9. Облако слов

Задача 6. Погода в городе

Условие

Третий и четвертый пункт дают повод задуматься. Стройка рядом, это не так

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

Постройте диаграмму-пирог, на которой можно посмотреть, соотношение ненастных

дней и дней с хорошей погодой.

Для это нам понадобится два массива: в первом массиве t - указана температура

воздуха за день, во втором w - количество осадков в этот же день.

Погода определяется по условию:

Хорошая если: t> 20, w = 0

Прогулочная: t> 20, w != 0, w < 2

Пасмурно: t< 20andt> 15, w !=0 andw< 2

Плохая: t < 15 and t > 7 and w > 2

Определите по получившейся диаграмме погодные условия, преобладающие на

территории города. Какова длительность в днях каждого погодного периода?

Входные данные:

t = [19.0, 15.1, 27.44, 23.57, 18.67, 15.23, 17.72, 17.46, 8.33, 19.59, 15.41, 16.09, 27.07, 21.46, 1

0.73, 9.26, 27.61, 19.79, 27.0, 22.29, 9.91, 10.02, 16.34, 18.54, 15.33, 11.79, 23.92, 25.92, 17.58,

15.24, 8.68, 10.4, 15.48, 23.72, 19.71, 19.24, 28.8, 21.72, 11.66, 19.88, 27.6, 17.76, 26.95, 18.95,

18.45, 24.75, 11.47, 15.79, 19.38, 15.8, 18.31, 18.28, 20.44, 15.79, 23.76, 23.08, 15.65, 21.36, 19.

59, 27.04, 8.11, 9.88, 18.94, 20.9, 29.8, 28.03, 9.36, 27.68, 9.67, 17.19, 18.28, 20.38, 27.58, 21.6,

25.13, 15.81, 22.92, 18.54, 8.19, 9.49, 18.25, 29.46, 17.55, 9.31, 18.19, 15.45, 23.36, 19.99, 29.77,

20.61, 10.64, 29.48, 20.99, 17.73, 16.92, 17.43, 26.69, 19.66, 19.57, 28.44, 25.18, 21.61, 17.14, 1

6.81, 7.96, 17.85, 27.69, 18.88, 15.29, 17.23, 18.34, 19.7, 19.74, 19.5, 16.64, 23.31, 19.88, 11.1, 1

44

9.27, 21.49, 11.68, 16.33, 26.74, 11.5, 8.96, 18.04, 24.91, 7.32, 16.25, 19.37, 8.82, 27.72, 7.77, 19.

55, 28.42, 16.66, 18.6, 22.68, 27.95, 15.54, 18.7, 19.12, 7.33, 26.12, 16.51, 18.17, 19.18, 19.96, 25

.35, 18.59, 8.18, 16.37, 7.22, 17.47, 18.43, 8.12, 17.92, 22.16, 25.49, 17.73, 19.25, 9.51, 7.96, 23.9

9, 24.17, 15.4, 22.77, 19.9, 17.49, 19.55, 21.26, 23.82, 7.34, 24.64, 18.92, 16.39, 26.34, 8.93, 19.5

8, 19.42, 8.35, 8.77, 28.77, 17.94, 16.48, 7.1, 28.42, 19.45, 7.9, 15.47, 16.95, 15.9, 15.66, 17.04, 1

5.08, 19.73, 28.99, 8.79, 23.42, 18.69, 28.52, 16.67, 11.99, 16.14, 25.44, 16.7, 21.05, 9.77, 16.13,

16.09, 24.03, 16.15, 17.07, 11.66, 19.23, 25.76, 19.16, 17.22, 15.2, 26.48, 23.01, 16.4, 23.91, 22.3

4, 24.86, 16.52, 23.57, 19.28, 8.29, 16.57, 16.09, 17.3, 17.81, 26.82, 24.59, 16.85, 17.02, 11.53, 27

.99, 15.35, 15.97, 20.04, 15.16, 9.96, 11.03, 16.93, 19.19, 7.35, 23.38, 28.54, 27.33, 9.49, 9.04, 8.8

2, 7.46, 16.29, 16.29, 25.94, 23.67, 23.99, 16.11, 15.05, 25.62, 19.78, 15.63, 20.74, 24.02, 17.46, 2

8.7, 17.2, 8.09, 16.46, 8.07, 16.07, 11.47, 20.62, 25.89, 21.57, 15.72, 10.64, 18.82, 17.57, 18.64, 1

6.11, 23.97, 16.61, 18.03, 18.11, 28.35, 16.08, 16.11, 27.29, 15.92, 15.93, 25.63, 15.67, 19.61, 7.2

7, 24.58, 11.39, 9.08, 16.66, 27.38, 22.44, 18.52, 24.23, 19.1, 8.17, 17.29, 15.65, 25.89, 29.7, 16.7

9, 19.86, 21.01, 9.73, 19.21, 7.04, 19.26, 10.3, 23.39, 10.65, 19.79, 17.08, 15.85, 7.12, 19.97, 17.3,

15.0, 18.47, 17.85, 19.57, 11.13, 11.32, 19.73, 22.29, 22.93, 18.25, 16.51, 18.81, 16.26, 28.87, 25.

38, 17.96, 9.62, 10.52, 19.61, 15.24, 26.87, 10.75, 19.71, 18.01, 8.43, 16.05, 11.29, 8.36, 18.56, 11

.38, 16.67, 25.65, 19.67, 26.85, 15.46, 15.92, 19.18]

w = [1.299, 0.408, 0.0, 0.386, 1.252, 0.599, 1.198, 0.15, 2.458, 1.529, 0.165, 0.951, 0.829, 0.0, 2.0

12, 2.325, 0.996, 1.676, 1.913, 1.584, 2.33, 2.75, 1.855, 1.473, 1.762, 2.933, 1.256, 0.0, 1.904, 1.1

85, 2.476, 2.069, 0.321, 0.0, 1.836, 0.89, 1.147, 0.934, 2.989, 0.262, 0.0, 0.587, 1.108, 1.537, 1.56

8, 1.884, 2.463, 1.41, 1.425, 0.95, 1.851, 1.16, 0.106, 1.443, 0.932, 0.088, 1.478, 0.648, 1.683, 0.0,

2.328, 2.964, 1.132, 0.567, 0.075, 0.839, 2.517, 0.0, 2.648, 1.382, 0.111, 1.284, 1.547, 0.322, 1.53

3, 0.854, 0.0, 1.435, 2.438, 2.837, 1.859, 0.833, 0.633, 2.495, 1.655, 0.714, 0.562, 0.972, 0.364, 1.

904, 2.174, 1.254, 1.457, 1.673, 0.702, 0.646, 0.0, 0.779, 0.151, 0.0, 0.0, 1.458, 1.54, 1.643, 2.122,

0.364, 0.0, 1.072, 1.146, 1.251, 0.064, 1.464, 1.962, 0.253, 1.276, 1.573, 1.13, 2.57, 0.236, 0.0, 2.

682, 0.181, 0.088, 2.529, 2.348, 0.955, 1.101, 2.274, 1.151, 1.566, 2.177, 0.733, 2.21, 0.67, 0.285,

0.516, 0.145, 0.0, 0.0, 0.637, 1.616, 1.494, 2.748, 0.294, 1.366, 0.058, 1.86, 1.421, 1.442, 1.804, 2.

561, 1.524, 2.494, 1.429, 1.16, 2.68, 0.286, 0.042, 0.184, 1.611, 0.655, 2.076, 2.683, 0.489, 0.0, 1.

81, 0.0, 1.257, 1.961, 1.024, 0.0, 1.067, 2.625, 0.0, 1.014, 0.763, 0.0, 2.248, 1.173, 1.097, 2.416, 2.

159, 0.0, 0.709, 1.864, 2.051, 1.662, 0.452, 2.361, 1.443, 0.91, 0.503, 0.743, 1.048, 1.62, 1.655, 1.

594, 2.484, 0.437, 0.393, 1.656, 0.256, 2.321, 1.197, 1.585, 0.614, 0.555, 2.128, 0.109, 1.563, 1.06

5, 0.357, 0.859, 2.981, 1.848, 0.0, 1.574, 1.161, 1.309, 0.62, 1.234, 0.495, 0.009, 1.311, 1.091, 1.5

86, 0.368, 0.6, 2.354, 1.799, 0.056, 0.182, 0.458, 0.0, 1.65, 0.722, 0.844, 2.316, 0.0, 0.272, 0.527,

0.0, 0.908, 2.666, 2.954, 0.105, 1.797, 2.187, 0.399, 1.047, 0.823, 2.217, 2.928, 2.473, 2.986, 1.03

45

4, 0.345, 0.0, 0.488, 0.0, 1.162, 1.509, 0.045, 0.691, 1.018, 1.175, 0.37, 0.626, 0.157, 1.749, 2.828,

0.898, 2.974, 0.371, 2.977, 0.0, 0.0, 0.0, 0.057, 2.35, 1.68, 0.604, 0.023, 0.161, 0.445, 1.689, 0.67

6, 0.781, 0.0, 0.658, 0.715, 0.0, 1.971, 0.871, 0.0, 1.57, 0.769, 2.918, 0.121, 2.834, 2.346, 1.81, 0.0

98, 1.595, 1.951, 0.976, 1.164, 2.055, 1.109, 0.576, 0.0, 0.852, 0.249, 1.517, 0.0, 2.034, 0.79, 2.64

5, 0.981, 2.015, 1.505, 2.655, 0.403, 0.559, 0.561, 2.753, 0.755, 0.454, 0.381, 1.231, 1.311, 0.457,

2.286, 2.943, 1.843, 1.38, 1.88, 1.66, 0.114, 0.571, 0.915, 0.0, 0.854, 1.719, 2.676, 2.511, 1.399, 1.

137, 0.251, 2.507, 1.693, 1.301, 2.329, 1.192, 2.34, 2.818, 0.037, 2.415, 0.926, 1.058, 0.583, 0.0, 0

.251, 1.414, 0.305]

Решение

Предполагается решение в интерактивной тетрадке по примеру из задач

самоподготовки

weather_year = [0,0,0,0]

i=0

while(i<len(t)):

if t[i] >20and w[i] == 0:

weather_year[0]+=1

elif t[i]>20and w[i]!=0and w[i]<2:

weather_year[1]+=1

elif (t[i] <20and t[i] >15) and (w[i] !=0and w[i] <2):

weather_year[2]+=1

elif t[i] <15and t[i]>7and w[i]>2:

weather_year[3]+=1

i+=1

explode = (0, 0, 0.1, 0)

doies = ["хорошая {0}".format(weather_year[0]), "прогулочная {0}".format(weather_year[1]),

"пасмурная {0}".format(weather_year[2]), "плохая {0}".format(weather_year[3])]

importmatplotlib.pyplotasplt

plt.figure(figsize = (10,10))

plt.pie(weather_year, explode=explode, labels=doies, shadow=True, startangle=90)

plt.show()

Полученная диаграмма представлена на рисунке 10.

46

Рис. 10. Диаграмма погоды

Решение без отрисовки диаграммы:

weather_year = [0,0,0,0]

i=0

while(i<len(t)):

if t[i] >20and w[i] == 0:

weather_year[0]+=1

elif t[i]>20and w[i]!=0and w[i]<2:

weather_year[1]+=1

elif (t[i] <20and t[i] >15) and (w[i] !=0and w[i] <2):

weather_year[2]+=1

elif t[i] <15and t[i]>7and w[i]>2:

weather_year[3]+=1

i+=1

print(weather_year)

Ответ: преобладающая погода пасмурная.

Количество дней и тип погоды

Пасмурная 182

Плохая 73

Прогулочная 73

Хорошая 37

Задача 7. Выбираем место под новый жилой комплекс

Условие

Новый развлекательный центр в городе — это хорошо. Но надо понимать, что вблизи

развлекательного комплекса должны находиться густонаселенные жилые районы с

доступными транспортными развязками.

47

Если бы мы могли построить еще несколько жилищных комплексов, расположенных вблизи

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

посетителей.

По карте, которая приведена ниже (рис. 11), найдите территориальный пункт, от

которого идет больше всего маршрутов к нашему развлекательному центру. В ответе

укажите букву такого пункта.

Рис. 11. Карта города

Решение

Нарисуем на основе карты и информации из предыдущих заданий граф маршрутов, по

которым люди могут перемещаться между ключевыми точками города (рис. 12).

Рис. 12. Граф маршрутов

Развлекательный комплекс находится в точке Ж.

Таблица 2. Количество маршрутов к точке Ж

Из точки Количество маршрутов к Ж

А 1

Б 1

В 3

48

Г 1

Д 1

Е 2

З 1

Ответ: Наибольшее количество маршрутов идет из пункта В

Задача 8. Время работы развлекательного центра

Условие

Так-с! Начало делу положено. Стоит отметить, что не менее важно определиться с

временем работы центра отдыха. Надо понимать - время деньги. Если неправильно выбрать

время его работы, то народу будет приходить мало, а денег на поддержание инфраструктуры

будет тратиться много. С учетом, что на обслуживание центра планируется тратить в день

400 тысяч условных денежных единиц, а в час– стоимость работы по обслуживанию

составляет - 50 тысяч условных денежных единиц, стажерам компании AltFuture следует

выяснить по графикам местонахождения и времяпрепровождения горожан, оптимальные

часы работы центра.

Ниже дано три графика:

Количество людей, пребывающих с 8.00 до 22.00 на улицах, которые расположены в

непосредственной территориальной близости от пункта Ж

Рис. 13. Количество людей в непосредственной близости от пункта Ж

Количество людей, находящихся непосредственно в точке расположения развлекательного

комплекса с 8.00 до 22.00

49

Рис. 14. Количество людей в точке расположения комплекса

Количество людей, использующих с 8.00 до 22.00 маршруты следования по

направлению к развлекательному комплексу, которые отправляются из района нового

жилищного комплекса (см. задание 7)

Рис. 15.Количество людей, следующих по маршруту в направлении пункта Ж

Проанализируйте графики. Определите оптимальный временной интервал работы

центра, исходя из числа потенциальных посетителей и расходов на обслуживание центра

отдыха.

Напишите ответ слитным четырехзначным числом. Например, с 9 утра до 21 вечера -

0921.

Решение

По условию задачи у комплекса в планах тратить не более 400 000 условных

денежных единиц. И так как час работы центра составляет 50 000 денежных единиц, это

означает, что центр отдыха будет работать 8 часов в день.

Теперь посмотрим на графики:

● Исходя из первого графика, мы можем заметить, что в 18:00 идет резкое уменьшение

численности людей в точках близких к исследуемому центру отдыха и после этого

50

времени держится на довольно низкой отметке ~5 человек, при таких количествах

посетителей, вряд ли комплекс будет окупаться.

● Но втором графике, видно, что людей непосредственно возле центра отдыха больше

пяти, но после 19:00 меньше, чем за весь день. Максимальное количество людей

приходится на 17:00 — значит в это время комплекс точно должен работать.

● На третьем графике видно, что пики активности движения от нового жилого

комплекса к центру отдыха приходятся на 11:00 и 14:00. Захватим и это время для

работы центра.

После этих наблюдений интервал работы комплекса определили как с 11:00 до 17:00.

Это только 6 часов работы, поэтому рассмотрим численность людей:

● в 09:00 в 10:00 для определения начала рабочего дня

● в 18:00 и 19:00 для определения окончания рабочего дня

На втором графике видно, что больше людей в 10:00 и 18:00, но нужно учитывать еще

и тех, кто близко. Считаем примерное количество людей в выбранные промежутки времени:

9 утра: 12 + 35 + 10 = 57

10 утра: 14 + 40 + 0 = 54

18 вечера: 22 + 60 + 0 = 82

19 вечера: 4 + 24 + 0 = 28

По результатам подсчетов видно, что если выбрать время работы центра с 10:00 до

18:00, то потенциальных посетителей будет больше, чем в другие промежутки времени.

Ответ: оптимальный режим работы центра с 10 утра до 18 вечера

Задача 9. Сколько "счастья" надо?

Условие

Мы выбрали время работы центра. А как насчет комфорта, сервиса, развлечений?

Давайте, определим количество возможных предприятий фудкорта, развлечений и

торговли.

Как вы уже знаете, у нашего развлекательного комплекса есть ограничение по тому,

сколько он может затратить на обеспечение своей инфраструктуры (см. задачу 8). Кроме

того, мэр города и городской совет предполагали, что новый объект станет не просто

развлекательным комплексом, а будет центром "притяжения" горожан и гостей - надо, чтобы

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

людям чувствовать себя счастливыми, в этом центре должно быть достаточно много.

Осталось узнать, достаточно много — это сколько?

51

Будем считать, что на обслуживание фудкортов за 8 часов тратится 10 000 условных

денежных единиц (один фудкорт), на аттракционы за 8 часов расходуется 60 000 условных

денежных единиц (одна площадка), торговые павильоны отнимает за 8 часов 2 000 условных

денежных единиц (один павильон).

Также социологи считают, что фудкорты прибавляют 1000 очков "счастья".

Аттракционы +3000 очков "счастья". Торговые павильоны +600 очков "счастья". Сколько

необходимо фудкортов, площадок с аттракционами и торговых павильонов, чтобы

уложиться в выделенную на обслуживание инфраструктуры денежную сумму, и обойти по

очкам "счастья" другие развлекательные комплексы. Усредненное количество очков счастья

по другим центрам: 20020, 29000, 35000, 23000.

Для подбора оптимальных вариантов рекомендуется создать интерфейс для

манипулирования основными параметрами: food, market, joy (см. материалы для

самоподготовки, задание 5). Двигайте ползунки и меняйте параметры, чтобы получить

оптимальный вариант: расходы-"счастье".

В ответе запишите три числа через пробел: соответствующие значения для food,

market и joy.

Решение

Ответ может быть не самым оптимальным, но должен соответствовать следующим

условиям:

● Общий бюджет не должен превышать 400 тысяч условных денежных единиц.

● Нужно заработать больше 35000 очков "счастья".

При следующих значениях предприятий:

● На фудкорты тратится 10 000 условных денежных единиц и +1000 очков "счастья".

● Торговые павильоны отнимает за 8 часов 2 000 условных денежных единиц и +600

очков "счастья".

● На аттракционы расходуется 60 000 условных денежных единиц и +3000 очков

"счастья".

Ответом, например, может служить перечень:

● 10 фудкортов (100 000 денежных единиц и 10000 "счастья")

● 28 торговых предприятий (56 000 денежных единиц и 16 800)

● 4 аттракциона (240 000 и 12000)

Итого: при затратах условных денежных единиц 396 000 получаем 38 800 очков

"счастья", что больше, чем очки счастья в других центрах. Цель выполнена!

52

Осталось еще 4 000 денежных единиц и можно добавить два торговых павильона,

тогда мы потратим весь бюджет центра и получим 40 000 очков "счастья". Данный ответ (10

фудкортов, 30 торговых павильонов и 4 аттракциона) тоже будет считаться верным.

Решениевинтерактивнойтетрадке.

def counts_of_points(foods = 10, market = 10, joy = 10):

mfoods = foods*10000

mmarket = market*2000

mjoy = joy*60000

spends = [mfoods, mmarket, mjoy]

maxspend = 400000

title_1 = "Текущие траты %d!"%sum(spends) if sum(spends) < maxspend else "Текущие траты

%d! Превышают лимит 400-000"%sum(spends)

hfoods = foods*1000

hjoy = joy*3000

hmarket = market*600

max_happy = hfoods+hjoy+hmarket

other_centers = [20020, 29000, 35000, 23000, max_happy ]

explode = explode = (0, 0, 0, 0, 0.1)

title_2 = "Счастья слишком мало!" if max(other_centers[:-1]) >other_centers [-1]

else "Счастья сколько надо!"

plt.figure(figsize = (10, 4))

plt.subplot(1,2,1)

plt.pie(spends,labels=spends, autopct='%1.1f%%',

shadow=True, startangle=90)

plt.title(title_1)

plt.subplot(1,2,2)

plt.pie(other_centers,labels=other_centers, explode = explode, autopct='%1.1f%%',

shadow=True, startangle=90)

plt.title(title_2)

plt.tight_layout()

plt.show()

import matplotlib.pyplot as plt

from ipywidgets import interact, interactive, fixed, interact_manual

from IPython.display import display

#counts_of_points()

w = interactive(counts_of_points, foods = 10, market = 28, joy = 4)

display(w)

Функция проверки для stepik.org, если для организации автоматической проверки

программ использована эта платформа.

53

def check(answer):

foods, market, joy = list(map(int,answer.split()))

mfoods = foods*10000

mmarket = market*2000

mjoy = joy*60000

spends = [mfoods, mmarket, mjoy]

maxspend = 400000

hfoods = foods*1000

hjoy = joy*3000

hmarket = market*600

max_happy = hfoods+hjoy+hmarket

other_centers = [20020, 29000, 35000, 23000, max_happy ]

explode = explode = (0, 0, 0, 0, 0.1)

title_2 = "Счастья слишком мало!" if max(other_centers[:-1]) > other_centers[-

1] else "Счастья сколько надо!"

if sum(spends)>maxspend:

return False

if max(other_centers[:-1]) > other_centers[-1]:

return False

return True

Рис. 16. Результат выполнения программного кода.

Задача 10. Конкурс заявок

Условие

54

Стажеры определили оптимальное количество предприятий, которые стоит

разместить в новом развлекательном комплексе. Теперь у мэра возникла новая проблема.

Список заявок на открытие своих представительств в центре отдыха больше, чем

установленное в задаче 9 рекомендуемое количество. Надо решить, чьи заявки лишние.

На графике представлены интересы жителей города. Пользуясь графиком и опираясь

на мнение горожан, постройте список предприятий, заявки от которых не

будут реализованы.

Рис. 17. График интересов жителей города.

Исходя из графика, нужно определить какие компании не пройдут отбор и

соответственно не представят свои предприятия в новом развлекательном комплексе:

● Кото-Кафе Ламповое. Можете согреться в пасмурную, выпить горячего шоколада,

погладить котиков.

● VR зона. Аттракционы смешанной, дополненной и виртуальной реальности!

● Магазин зонтов Оле Лукое. Самый широкий ассортимент в городе.

● Облачный парк - парк аттракционов прямо на крыше города. 245 видов качелей

собранных из разных уголков вселенной. А также горки и бассейн.

● магазин одежды "Нежность". Все что нужно вашему ребенку.

● Ресторан "Две Шпаги". Мясо и мясо и еще много мяса.

55

● Магазин овощей и фруктов.

● Магазин сына подруги твоей мамы - одежда для стильных тинейджеров.

Решение

Заявки, которые необходимо отклонить:

● Облачный парк - парк аттракционов прямо на крыше города. 245 видов качелей

собранных из разных уголков вселенной. А также горки и бассейн

● Ресторан "Две Шпаги". Мясо и мясо и еще много мяса

Исходя из графика, можно сказать, что жителям не интересны Бифштексы, поэтому

стоит отклонить заявку ресторана "Две Шпаги".

Заявку Облачного парка стоит тоже отклонить, хоть и интерес к аттракционам есть,

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

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

данной заявке есть VR зона, которая удовлетворит потребности горожан по аттракционам.

Остальные заявки попадают в интересы горожан.

Второй модуль индивидуального этапа.

Постановка проблемы для участников.

Современный город — это экосистема. Мэр и администрация г. Энск стараются

создавать в нем наиболее благоприятные условия для жизни.

При реконструкции города решили уделить особое внимание парковым зонам и

местам отдыха. Они являются сердцем города. Парковые зоны способствуют улучшению

качества воздуха и являются средой обитания представителей флоры и фауны. Также

парковые зоны способствуют сплочению городского населения и повышению качества его

жизни. Перед Jinior-стажерами компании AltFuture поставлена задача исследования

городского парка Энска "Роднички". Парк был построен еще в начале прошлого века и с тех

пор никаких работ по его улучшению предпринято не было. Место отдыха "Роднички"

расположено на территории прекрасного природного массива, но, к сожалению, по

прошествии многих лет концепция парка устарела: его аллеи опустели, он больше не

является сердцем города. Пришло время нового содержания для этого замечательного места.

Новый директор "Родничков" хочет сделать парк более молодежным. Добавить

динамики! Пусть молодежь оторвется от электронных развлечений, будет больше времени

проводить на свежем воздухе, общаться, знакомиться и задумываться о будущем своего

города.

56

Нашим Junior-стажерам необходимо в предстоящем исследовании решить 10 задач. В

частности, предлагается исследовать различные парки культуры и отдыха и исходя из этого,

а также опираясь на предпочтения горожан, придумать как можно улучшить парк. Также не

стоит забывать особенность г. Энск: как было выяснено в прошлый раз, это пасмурный город

со значительным количеством осадков.

Задача 1. Ищем аналоги

Условие.

Один из вариантов модернизации парка — это поиск готовых решений среди парков

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

Решение по оснащению, зонированию, техническому обеспечению парковой зоны может

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

идентичен по ряду параметров Энску. И, в первую очередь, это касается погодных условий.

Будем искать города аналог Энска.

Вам дана таблица следующего формата:

Первый столбец — это день года.

Второй — код города.

Третий — оценка погодных условий в городе в определенный день.

Вам необходимо найти 3 города с наиболее схожими с Энскими погодными

условиями. Средняя годовая оценка погодных условий в Энске составляет 2.12 балла.

Примечание. Для задачи таблица дается в двух форматах pythonDict и csv. Решить

задачу можно как написав программу, так и с помощью Excel.

В ответе укажите числа через пробел в порядке возрастания.Пример ответа: 1 17 39

Решение.

Решение приведено на примере csv файла с помощью Excel.

57

Для начала нужно вставить данные, сделаем это через вкладку “Данные” и вставить

данные из файла CSV (рис. 18).

Рис. 18. Загрузка данных в Excel

Далее можно найти среднее значение погоды в городе несколькими способами. Мы

воспользуемся сводными таблицами (рис. 19).

Рис. 19. Создание сводной таблицы в Excel

Настроив сводную таблицу на отображение среднего значения погоды по городам, мы

уже можем сравнивать со значением погоды в Энске (рис. 20).

58

Рис. 20. Средние значения погодных условий в Excel

По условию средняя годовая оценка погодных условий в Энске составляет 2.12 балла,

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

можно заметить, что наиболее похожие города по погодным условиям под номерами 3, 9 и

28 (рис. 21).

59

Рис. 21. Отсортированные средние значения в Excel

Пример решения с помощью программы на Python3

def ga():

ga1= float(a[0])

print(ga1/100)

def kvkm():

kvkm1= float(a[0])

print(kvkm1*100)

a=input().split(",")

if a[1] == " кв.км":

kvkm()

elifa[1] == " га":

ga()

Ответ: города под номерами 3,9 и 28 наиболее схожи с Энском

Задача 2. Единицы измерения площадей земельных участков

Условие

Измерение площадей городской инфраструктуры обычно осуществляется в гектарах

(Га), потому при исследовании аналогов мы будем часто оперировать этой величиной. В

школе чаще оперируют понятием кв. километров (кв.км) или кв.метров (кв.м).

Составьте программу, позволяющую осуществлять перевод Га в кв.км. и наоборот

(кв.км. в Га).

Входные данные: строка «n, type», где n — число, type — система измерения. В

результате: m — число в альтернативной системе измерения.

Пример:

● входные данные: 12.67, кв.км

● результат: 1267.0

Примечание. Выход цифрой, без единицы измерения и без округления

Решение

Вариант решения на Python 3

st= input().split(", ")

x=0

if 'кв.км' in st[1]:

x= float(st[0])*100

elif 'га' in st[1]:

x = float(st[0])/100

print(x)

60

Задача 3. Парковые зоны

Условие

Функциональное зонирование является одной из важнейших составляющих

градостроительного регулирования использования территории. Функциональная зона

понимается как территория в определенных границах с однородным функциональным

назначением.

Функциональное зонирование парка заключается в рациональном размещении

территории зоны отдыха для тех или иных видов деятельности отдыхающего населения.

Проектом предусмотрено деление территории на следующие зоны:

● зона тихого отдыха;

● детская игровая зона;

● зона аттракционов;

● зоны физической культуры и спорта;

● культурно-просветительская зона;

● автостоянка для посетителей;

● зона фонтанов и водоемов;

● зона обслуживания;

● хозяйственная зона.

Статистика показывает, что наиболее удачным является следующее соотношение зон.

1. По площади "Зона тихого отдыха" должна быть самой большой.

2.Площади "Детской игровой зоны", "Зоны аттракционов", "Зоны физической культуры и

спорта", "Зоны обслуживания" — равны между собой и их сумма в два раза больше "Зоны

тихого отдыха".

3. "Зона фонтанов и водоемов" составляет 2/3 от "Зоны тихого отдыха".

4. "Культурно-просветительская зона" в 5 раз больше "Хозяйственной зоны".

Ваша задача определить возможные размеры всех зон парка в кв.метрах. Общая

парковая зона 15 гектаров (15 Га).

Размер "Автостоянки для посетителей" рассчитывается так: 1 машиноместо на 10

кв.м. Сколько машиномест может быть спроектировано на автостоянке парка?

Примечание.В ответе через пробел перечислите площади в т.кв.м. в следующем

порядке:

● зона тихого отдыха;

● детская игровая зона;

● зона аттракционов;

● зоны физической культуры и спорта;

61

● культурно-просветительская зона;

● автостоянка для посетителей;

● зона фонтанов и водоемов;

● зона обслуживания;

● хозяйственная зона.

● последней цифрой укажите количество машиномест на автостоянке.

Пример ответа:35 28 15 11 22 10 20 15 50 2000

Решение

Решений много, но они должны подходить под перечисленные условия, а именно:

● площадь зоны тихого отдыха самая большая.

● Площадь Детской игровой зоны = Площади Зоны аттракционов = Площади Зоны

физической культуры и спорта = Площади Зоны обслуживания.

● (Площадь Детской игровой зоны + Площади Зоны аттракционов + Площади Зоны

физической культуры и спорта + Площади Зоны обслуживания)/2=Площади зоны

тихого отдыха.

● Площади зоны тихого отдыха/3*2 = Зона фонтанов и водоемов.

● Культурно-просветительская зона/5 = Площадь хозяйственной зоны

● Сумма всех площадей не превышает 15 гектаров.

Чтобы посчитать количество машиномест нужно площадь автостоянки * 1000 - чтобы

перевести в м2 и /10 для подсчета мест(исходя из условия на одну машину 10 квадратных

метров).

Ответ: возможный вариант ответа: 30 15 15 15 25 10 20 15 5 1000

Диаграмма-ответ к задаче представлена на рис. 22.

62

Рис. 22. Диаграмма размеров зон парка

Задача 4. Замечательные места

Условие.

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

в тех трех городах, которые, как было показано в задаче 1- "Ищем аналоги", аналогичны

Энску. Будем искать в парках этих городов замечательные места — те, которые притягивают

наибольшее количество людей и определим, в чем их "фишки".

Перед стажерами стоит задача написать программу для поиска наиболее посещаемых

зон в парках исследуемых городов. Необходимо найти 5 таких зон.

На вход подается массив натуральных чисел N на N. В каждой ячейке усредненное

количество людей за год. Выведите координаты 5 "замечательных мест" (порядок указания

любой).

Примечание. Ответ должен быть перечислением точек координат через запятую и в

квадратных скобках.

Пример ответа:[x1, y1], [x2, y2], [x3, y3], [x4, y4], [x5, y5]

Решение

Предполагается решение в интерактивной тетрадке.

importnumpyas np

importmatplotlib.pyplotasplt

63

data = eval(полученныесгенерированныеданныесостепика)

maxima = sorted(data.ravel())[::-1][:5]

plt.imshow(data)

points = np.where(np.isin(data, maxima))

plt.scatter(points[1], points[0], color='r');

Ответ. В коде генерации заложены одинаковые для всех координаты замечательных мест.

ответ всегда будет следующим:[2, 31], [5, 4], [10, 12], [35, 49], [48, 30]

Картинка-ответ к задаче представлена на рис. 23.

Рис. 23. Посещаемые зоны парка.

Задача 5. "Фишки" в облаках

Условие.

Естественно, что найти готовые успешные решения не так просто.Как узнать, что

именно привлекает в людей в замечательные места? В чем их "фишка"? Будем искать наши

"фишки" в облаках слов, которые сформируем по текстам, опубликованным в социальных

сетях.

У вас есть пять текстов — обобщённых записей, опубликованных в социальных сетях

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

укажите 5 слов — по одному, самому большому слову в облаке. Найдите "фишку"!

Текст 1.

Любимая забава детства весной пускать по ручейкам кораблики. Кораблики

проплывают под мостом И белыми сверкают парусами, И я радуюсь жизни. Разноцветные

кораблики в нашем парке: жёлтые, красные, оранжевые, — целая флотилия! Все они

64

прилетели сюда по воздуху. Красиво покачиваясь «на крыльях ветерка», кораблики

опускались на воду тихо и плавно — без плеска и без шума. Кораблики с поднятыми

парусами плывут так важно, горделиво! Мне нравится смотреть, как кораблики

раскачиваются на поверхности воды родничков. Вдоль тропинок парка сделаны каналы, так

вот в них, пускать кораблики в период наибольшего половодья особенно интересно и так

волнительно…

Текст 2.

Сначала лёгкое дуновение ветерка всколыхнуло траву и потревожило листву

деревьев. Затем с неба посыпались крохотные капельки воды, они ударялись о Барабаны-для-

дождя, расставленные на площадке, и вокруг зазвучала тихая мелодичная музыка. Барабаны-

для-дождя! Поразили! Стояла рядом зачарованная и чем сильнее становился дождь, тем

громче звучали Барабаны-для-дождя. Дети на площадке кружили в танце под музыку,

которую исполняли Барабаны-для-дождя.

Текст 3.

Песочники нравятся всем. Лепим песочники сами в песочнице, а потом забираем в

пекарне и едим яблочные, вишневые, клубничные песочники. Песочники - готовят как

сладкие, так и не сладкие. Дети в восторге от песочников. Играли в песочники: сначала

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

творожный песочные пироги. Здорово придумано! Пироги, в которых используется песочное

тесто – это песочники. Пироги из песка - песочники. Песочников много не бывает. Дети

налепили 10 штук – сколько мы их будем есть? Песочники – детская мечта, воплощенная в

реальность.

Текст 4.

Как я люблю ForrestCafe! ForrestCafe— это уголок волшебного леса, в котором

каждый может вспомнить детство и погрузиться в чарующую сказочную атмосферу.

Горожане! Слушайте, в Forrest Cafe можно вкусно пообедать под сенью фантастического

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

же здесь классно! Фантастический интерьер ForrestCafe воплощает мои представления об

антураже дремучего леса из русской народной сказки. Два небольших зала ForestCafe,

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

Панели из резного дерева со структурой растрескавшейся коры, переплетение ветвей,

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

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

атмосферу векового лесного сумрака и покоя. Как же всей нашей семье нравится ForrestCafe!

В ForrestCafe Столики и лавки из темного дерева в фантастическом стиле «избушки бабы

65

Яги», барная стойка в том же стиле, украшенная резьбой в виде растительного орнамента,

картины в рамках из веток, резные фигурки фантастических животных на стенах, расписные

абажуры ламп над столиками объединяются в целостную композицию, в которой уютно и

интересно и детям, и взрослым. ForrestCafe отличное место для отдыха всей семьей! Как в

гостях у сказки побывали! А музыка дождя рядом придают этому месту еще большую

«ламповость».

Текст 5.

Прекрасный музей современного искусства! Хорошая выставка и приятный персонал.

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

месте. Классно! Очень понравилось! Посещал данный музей. Атмосфера понравилась. Что

написать про современное искусство...есть моменты, которые не укладываются в

сознании...но искусство каждый воспринимает по-своему...очень запомнилось. Музей

современного искусства хорошо продуман в архитектурном плане (внешний вид здания,

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

этот музей. С точки зрения архитектуры музей имеет очень красивое. Просторный

современный музей. Пространство соответствует статусу. Экспозиция подобрана

гармонично Музей впечатляет! Неожиданно организовано пространство, стильно, очень

много воздуха. Не могу назвать себя знатоком современного искусства, и уж точно не

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

точно. Музей "МУ" прекрасен! Совместить поход в него можно с прогулкой по парку.

Удобно и познавательно! Музей насыщен событиями: лекции, кинопросмотры, встречи и пр.

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

современное здание, напичканное всеми элементами современной музейной электроники.

Удобно, что он расположен в парке, после посещения можно прогуляться, посетить кафе.

Примечание. В ответе перечислите 5 слов

Решение

Чтобы создать облако слов, можно воспользоваться любым сайтом, который

предоставляет данные услуги, или по примеру из заданий первого тура и заданий на

самоподготовку воспользоваться интерактивной тетрадкой.

Примеррешениявтетрадке.

fromwordcloudimportWordCloud, STOPWORDS, ImageColorGenerator

from collections import Counter

importmatplotlib.pyplotasplt

comments_1 = """

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

мостом И белыми сверкают парусами, И я радуюсь жизни. Разноцветные кораблики в нашем

парке: жёлтые, красные, оранжевые, — целая флотилия! Все они прилетели сюда по воздуху.

66

Красиво покачиваясь «на крыльях ветерка», кораблики опускались на воду тихо и плавно —

без плеска и без шума. Кораблики с поднятыми парусами плывут так важно, горделиво! Мне

нравится смотреть, как кораблики раскачиваются на поверхности воды родничков. Вдоль

тропинок парка сделаны каналы, так вот в них, пускать кораблики в период наибольшего

половодья особенно интересно и так волнительно…

"""

comments_2 = """

Сначала лёгкое дуновение ветерка всколыхнуло траву и потревожило листву деревьев. Затем

с неба посыпались крохотные капельки воды, они ударялись о Барабаны-для-доджя,

расставленные на площадке, и вокруг зазвучала тихая мелодичная музыка. Барабаны-для-

дождя! Поразили! Стояла рядом зачарованная и чем сильнее становился дождь, тем громче

звучали Барабаны-для-дождя. Дети на площадке кружили в танце под музыку, которую

исполняли Барабаны-для-дождя.

"""

comments_3 = """

Песочники нравятся всем. Лепим песочники сами в песочнице, а потом забираем в пекарне

и едим яблочные, вишневые, клубничные песочники. Песочники - готовят как сладкие, так и

не сладкие. Дети в восторге от песочников. Играли в песочники: сначала лепили их из

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

песочные пироги. Здорово придумано! Пироги, в которых используется песочное тесто – это

песочники. Пироги из песка - песочники. Песочников много не бывает. Дети налепили 10

штук – сколько мы их будем есть? Песочники – детская мечта, воплощенная в реальность.

"""

comments_4 = """

Как я люблю ForrestCafe! ForrestCafe- это уголок волшебного леса, в котором каждый может

вспомнить детство и погрузиться в чарующую сказочную атмосферу. Горожане! Слушайте,

в Forrest Cafe можно вкусно пообедать под сенью фантастического дуба и живых

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

классно! Фантастический интерьер ForrestCafe воплощает мои представления об антураже

дремучего леса из русской народной сказки. Два небольших зала ForestCafe, разделенных

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

дерева со структурой растрескавшейся коры, переплетение ветвей, расползающихся по

потолку сложной формы с необычными светильникам в виде цветочных лепестков, зелень в

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

сумрака и покоя. Как же всей нашей семье нравится ForrestCafe! В ForrestCafe Столики и

лавки из темного дерева в фантастическом стиле «избушки бабы Яги», барная стойка в том

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

резные фигурки фантастических животных на стенах, расписные абажуры ламп над

столиками объединяются в целостную композицию, в которой уютно и интересно и детям, и

взрослым. ForrestCafe отличное место для отдыха всей семьей! Как в гостях у сказки

побывали! А музыка дождя рядом придают этому месту еще большую ламповость.

"""

comments_5 = """

Прекрасный музей современного искусства! Хорошая выставка и приятный персонал. Музей

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

Классно! Очень понравилось! Посещал данный музей. Атмосфера понравилась. Что

написать про современное искусство...есть моменты, которые не укладываются в

сознании...но искусство каждый воспринимает по своему...очень запомнилось. Музей

современного искусства хорошо продуман в архитектурном плане (внешний вид здания,

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

этот музей. С точки зрения архитектуры музей имеет очень красивое. Просторный

современный музей. Пространство соответствует статусу. Экспозиция подобрана

67

гармонично Музей впечатляет! Неожиданно организовано пространство, стильно, очень

много воздуха. Не могу назвать себя знатоком современного искусства, и уж точно не

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

точно. Музей "МУ" прекрасен! Совместить поход в него можно с прогулкой по парку.

Удобно и познавательно! Музей насыщен событиями: лекции, кинопросмотры, встречи и пр.

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

современное здание, напичканное всеми элементами современной музейной электроники.

Удобно, что он расположен в парке, после посещения можно прогуляться, посетить кафе.

"""

#Выделяем слова которые точно не должны использоваться при построении облака слов!

stopwords = set(STOPWORDS)

stopwords.update(["на", "все", "эта", "не", "вчера", "уже"])

#Создаем облако

wordcloud = WordCloud(stopwords = stopwords,

background_color="white").generate(comments_1)

# Рисуемрезультат

plt.imshow(wordcloud, interpolation='bilinear')

plt.axis("off")

plt.show()

#Создаемоблако

wordcloud = WordCloud(stopwords = stopwords,

background_color="white").generate(comments_2)

# Рисуемрезультат

plt.imshow(wordcloud, interpolation='bilinear')

plt.axis("off")

plt.show()

#Создаемоблако

wordcloud = WordCloud(stopwords = stopwords,

background_color="white").generate(comments_3)

# Рисуемрезультат

plt.imshow(wordcloud, interpolation='bilinear')

plt.axis("off")

plt.show()

#Создаемоблако

wordcloud = WordCloud(stopwords = stopwords,

background_color="white").generate(comments_4)

# Рисуемрезультат

plt.imshow(wordcloud, interpolation='bilinear')

plt.axis("off")

plt.show()

#Создаемоблако

wordcloud = WordCloud(stopwords = stopwords,

background_color="white").generate(comments_5)

# Рисуемрезультат

plt.imshow(wordcloud, interpolation='bilinear')

plt.axis("off")

plt.show()

Ответ.

Исходя из получившихся облаков-слов можно выделить следующие слова:

68

● кораблики;

● барабаны или барабаны дождя (и тот и другой вариант засчитывается);

● песочники;

● ForrestCafe(принимаются ответы и с любым одним словом из данной картинки);

● музей.

Ответ: Кораблики Барабаны дождя Песочники Forrest Cafe Музей

Получившиеся облака слов представлены на рис. 24.

69

Рис. 24. Облака слов

Задача 6. Предпочтения

Условие

Полностью копировать готовые решения — дело неблагодарное, поэтому к

позаимствованным "фишкам" для "замечательных мест" необходимо добавлять что-то

востребованное именно в Энске.

По графику предпочтений горожан (рис. 25) выберите два объекта, которые стоит

добавить в проект при реконструкции парка.

70

Рис. 25. График предпочтений горожан

Предполагаемые для строительства объекты:

● Колесо обозрения. Окна в каютах, при соприкосновении стекла с каплями

дождя – небо в окнах становится радужным.

● Гриль-бар. Горячие закуски.

● Детский парк под открытым небом (но застекленный).

● Музыкальная сцена.

● Новые физические тренажёры X-FIT.

● Подземная парковка.

Решение

Так как погода в Энске чаще всего пасмурная и дождливая (исходя из задач первого

тура), то текущие предложения аттракционов более актуальны, чем бывшие аттракционы на

крыше, которые большую часть времени простаивали бы и ржавели. И так как горожане по-

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

Так же, горожане предпочли бы Развлечения для маленьких, так как такое

предложение одно, к тому же, застекленному парку не помешает погода, то эту заявку тоже

следует принять.

Ответ.

Стоит добавить в проект:

● Детский парк под открытым небом (но застекленный).

71

● Колесо обозрения. Окна в каютах при соприкосновении стекла с каплями дождя небо

в окнах становится радужными.

Задача 7. Удобство в дорогах

Условие

Итак, junior-стажеры успешно разобрались с задачей зонирования и "замечательных"

мест, нашли "фишки" в решениях для парков городов аналогичных Энску. Теперь важно

продумать пешеходную логистику парковой территории (рис. 26).

Рис. 26. Дорожки парковой территории

Рассмотрите внимательно карту-схему территории парка. Каждая точка карты-схемы

проектируется как место для размещения определенного паркового объекта. Парковый

объект будет посещаемым, если точка является доступной.

Мы считаем точку доступной, когда добраться до нее от центрального входа можно,

минуя не более одного объекта. Таким образом, каждая первая и вторая точка на какой-либо

тропинке от центрального входа — доступна, но если путь к интересующему нас объекту

лежит через два других, то объект располагается за пределами доступности.

Junior-стажерам необходимо найти такие точки, которые не отвечают

вышеприведенному условию доступности.

72

Примечание. Перекресток точкой не считается! Обратите внимание, что центральный

вход только один. На схеме он подписан. Все точки обозначены русскими буквами.

Решение

Прочертим линии к точкам, до которых мы можем сразу добраться от центрального

входа (рис. 27).

Рис. 27. Ближайшие ко входу точки парка.

Точки А, Б, Е, В очевидно, доступны.

Теперь прочертим дороги к точкам “второго уровня”, к которым мы можем добраться

через точно доступные точки и которые по условию тоже являются доступными (рис 28).

73

Рис. 28. Второй уровень доступных точек парка

Если внимательно посмотреть, то точки З и К, тоже доступны, так как перекрестки

точками не считаются. Из этой картинки следует, что точки Г, Ж, З, И, К - тоже доступны.

Все другие точки будут считаться недоступными, так как придется миновать уже два

объекта, а в условии сказано минуя не более одного объекта.Соответственно точки Д и Л -

недоступны.

Ответ

Точки Д и Л располагаются за пределами доступности

Задача 8. Центр.

Условие.

Любое место должно быть центрировано — это позволяет быстрее ориентироваться.

Центрированное место — это точка, из которой до других точек выходит наибольшее

количество быстрых маршрутов (таких маршрутов, в которых все точки удовлетворяют

условию доступности). Иначе, от центра любой объект находится в доступной точке. Схема

парка представлена на рис. 26.

Ваша задача найти такой центр. В ответе напишите название точки-центра парка

(русская буква).

74

Решение

Из точки Б напрямую доступны 7 других точек: А,В,Г,Е,Ж,З,К. Из других точек

напрямую доступно меньшее количество точек.

Рис. 29. Маршруты из точки Б

Ответ

Центр исследуемого объекта - точка Б

Задача 9. Центральная достопримечательность

Условие

Теперь следует выбрать центральную "фишку", тот объект, который станет главной

достопримечательностью парка "Роднички".

Мы опросили людей, чтобы они оценили каждую достопримечательность от 0 до 10.

Данные опроса были занесены в таблицу. Таблица также есть в формате csv и pythondict.

Ваша задача построить график усредненных значений оценки

достопримечательностей по данным из любого файла.

В ответ напишите достопримечательность с самым высоким баллом.

Решение

Предполагается решение на интерактивной тетрадке

from random import shuffle

import pandas as pd

data = (данные из файла со степика)

data.mean()

75

В результате выведется следующее:

Детский парк 5.488977

Кораблики 6.291124

Барабаны-для-дождя 6.671595

Лесное кафе 6.810179

МУ 6.891329

Песочники 7.035429

Колесо обозрения 7.337698

Ответ

Данные в файле сгенерированы так, чтобы самый высокий балл был у Колеса

обозрения.Поэтому ответ - Колесо обозрения

Задача 10. Время работы

Условие

Как и в предыдущий раз, нам важно определиться со временем работы парка. Будем

исходить из того, что оптимальное время работы вновь 8 часов. Только теперь нам важнее

не количество людей в определенных центрах города (как было в случае развлекательного

центра), а количество людей разного возраста рядом с парком. Помните — парк

молодежный. Поэтому самое главное, чтобы время устраивало именно эту возрастную

категорию.

Ниже приведено три графика активности для разных возрастных категорий: с 5 до 24

лет (рис. 30), с 24 до 38 (рис. 31) и на третьем людей старше 38 (рис. 32). Исследуемая

возрастная категория (5–24, 24–38). Определите по графикам оптимальное время работы

парка.

Рис. 30. График активности людей 5–24 лет

76

Рис. 31. График активности людей 24–38 лет

Рис. 32. График активности людей старше 38 лет

Примечание. Напишите ответ слитным четырехзначным числом. Например, с 9 утра

до 21 вечера - 0921.

Решение

Имеет смысл использовать только графики первых двух категорий, так как наша

исследуемая аудитория - молодежь отображена только в тех двух графиках.Посмотревна

них, можно заметить два пика:13:00 и 17:00 - в это время парк точно должен быть открыт.

Общее время работы парка 8 часов. Период с 13 до 17 — это 4 часа.

Но после 17:00 идет резкое падение количества молодежи на обоих графиках (рис.

33).

77

Рис. 33. Посещаемость парка после 15:00

Из графика следует, что оптимальное время работы парка с 9 утра до 17 вечера.

Ответ. Оптимальное время работы с 9 утра до 17 вечера.

Третий модуль индивидуального этапа.

Постановка проблемы для участников.

Город Энск стремится к процветанию и старается предложить своим жителям и

гостям лучшие решения для благоприятного пребывания в нем! Но впереди, Junior-стажеры,

вас ждут еще 10 заданий по социальному исследованию территории района "Эн" (рис. 34) на

периферии города "Энск". Исследование социальных активностей, поведения поможет

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

78

Рис. 34. Район Эн, города Энск.

79

Задача 1. Сбор данных для исследований

Ниже представлен скриншот страницы сайта города Энск (рис. 35), где собраны

отзывы о знаковых местах района Эн. Так сайт выглядит для пользователей: галерея фото с

привязкой к местам, описанием к ним и лайками.

Рис. 35. Фрагмент страницы сайта г. Энск.

Такие сайты - с оценками и мнением пользователей становятся значимыми

источниками информации для исследований самых разных объектов, в том числе и для

формирования мнения относительно инфраструктуры городских территорий. Переносить

данные для анализа с сайта руками достаточно трудоемкий и бессмысленный процесс. Сбор

данных с интернет-ресурса можно автоматизировать, составив специальные программы -

парсеры. Задача это сложная. на первом этапе junior-стажерам предстоит разобраться с кодом

страницы сайта, найти в коде "метки" (теги), которые будут указывать парсеру, какие данные

и откуда считывать.

Страница сайта написана на языке разметки html. Ниже представлен фрагмент кода.

<!DOCTYPE html>

<html>

<head>

<title>Места района города Энск</title>

<meta charset="utf8">

<link rel="stylesheet" href="css/style.css">

</head>

80

<body>

<div class="col-md-4 project-item mix buildings">

<div class="project-thumb">

<imgsrc="images/projects/project_1.jpg" alt="">

<div class="overlay-b">

<div class="overlay-inner">

<a href="images/projects/project_1.jpg" class="fancybox fa fa-expand"

title="Project Title Here"></a>

</div>

</div>

</div>

<div class="box-content project-detail">

<h2>Мост1</h2>

<p>Мост обалденный, в нем наша история! Величественная постройка, отражает

прошлое нашего района!</p>

<span>17 ♥</span>

</div>

</div>

<div class="col-md-4 project-item mix nature">

<div class="project-thumb">

<imgsrc="images/projects/project_2.jpg" alt="">

<div class="overlay-b">

<div class="overlay-inner">

<a href="images/projects/project_2.jpg" class="fancybox fa fa-expand"

title="Project Title Here"></a>

</div>

</div>

</div>

<div class="box-content project-detail">

<h2>Парк Динамо</h2>

<p>Хороший парк, гуляем с дочкой, но после дождей тропики размывает. Природа

замечательное, белочек можно покормить!</p>

<span>50 ♥</span>

</div>

</div>

</body>

</html>

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

треугольные скобки <>. Как правило теги парные, внутри них заключена разнообразная

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

разметке страницы определенные теги и извлечь информацию, которую они содержат.

В коде данного сайта представлены следующие теги: ['div', 'h2', 'link', 'head', 'title',

'span', 'img', 'body', 'meta', 'html', 'p', 'a']

Например, чтобы получить количество лайков ("17 ♥" и "50 ♥") - нужно найти тег

span: 17 ♥.

Определите, в каких тегах содержится информация (данные):

81

● Название места (локации) района, в котором сделана фотография.

● Описание к фотографии.

Примечание. Введите названия тегов (пишутся английскими буквами)

Решение

При рассмотрении структуры документа нужно найти название места. Из картинки

(рис. 35) видно, что нам нужна надпись “Мост1” и “Парк Динамо”. Внимательно просмотрев

документ, находим следующие строки:

<h2>Мост1</h2>

<h2>Парк Динамо</h2>

Других надписей с содержанием “Мост1” и “Парк Динамо” нет, значит тег, в котором

содержатся названия мест - h2.

Описание к фотографии. Опять же, посмотрев на картинку (рис. 35), находим эти

описания. В коде легко заметить строки с ними.

<p>Мост обалденный, в нем наша история! Величественная постройка, отражает прошлое

нашего района!</p>

<p>Хороший парк, гуляем с дочкой, но после дождей тропики размывает. Природа

замечательное, белочек можно покормить!</p>

Других подобных надписей нет, соответственно тег для описания фото – р

Ответ: название места: h2, описание к фото: p.

Задача 2. Анализ отзывов

С помощью сбора данных (задача №1) компания AltFuture получила готовый dataset с

отзывами пользователей: их мнением об исследуемой территории. Теперь junior -стажеры

должны обработать обобщенный текст и выделить в нем ключевое слово, то которое чаще

всего используют пользователи, описывая исследуемый район Энска.

Сгенерируйте облако слов по всем отзывам, предварительно исключив из списка

слова: ["на", "все", "эта", "не", "уже", "это", "что", "по", "так", "но"].

Отзывы.

['Мост обалденный, в нем наша история! Величественная постройка, отражает прошлое

нашего района!', 'Хороший парк, гуляем с дочкой, но после дождей тропики размывает.

Природа замечательное, белочек можно покормить!', Парк к сожалению старый, но в этом

его плюс. Прошла целая эпоха, история, всегда навевает прошлое этого места. Хорошо здесь

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

Природа супер! #настроениеосень, погода сегодня была замечательная!', 'Обожаю тусовки с

82

друзьями летом на речке, это наше место, природа... Благодать!)) хд', 'Сегодня было чудесное

настроение, но я приехал на работу и офигел! Так много мусора на дорогах (ветер разнес, у

нас что, дворники совсем не работают???', 'Тут можно покормить белочек. Люблю это место,

как здорово, что природа рядом с нами', 'Пробки просто кошмар! Невозможно доехать до

центра за 30 минут, приходится стоять долго ((', 'Здесь я могу ни о чем не думать, читать

книгу, наслаждаться жизнью, прекрасное место', 'Вы замечали какая культура у наших

людей? Опять не убрали мусор за собой (Жалко лес', 'Людей нет, тишина! Благодать! Играли

в фрисби с собакой, кайф']

В ответе укажите слово, которое чаще упоминается

Решение

Для нахождения ответа к данной задаче нужно построить облако слов. Можно

использовать сторонний сервис или интерактивную тетрадку с аналогичной задачей из

набора пробных задач.

Пример решения с использованием интерактивной тетрадки

comments = данныеизусловия

from wordcloud import WordCloud, STOPWORDS, ImageColorGenerator

from collections import Counter

importmatplotlib.pyplotasplt

#Выделяем слова которые точно не должны использоваться при построении облака слов!

stopwords = set(STOPWORDS)

stopwords.update(["на", "все", "эта", "не", "уже", "это", "что", "по", "так", "но"])

#Создаемоблако

wordcloud = WordCloud(stopwords = stopwords,

background_color="white").generate(comments)

# Рисуемрезультат

plt.imshow(wordcloud, interpolation='bilinear')

plt.axis("off")

plt.show()

83

Рис. 36. Результат работы программы – облако слов.

Ответ: чаще всего упоминается слово “Природа”

Задача 3. Анализ целевой аудитории района

Условие

Администрацией района Эн проводился опрос населения. В ходе опроса участники,

должны были выбирать возрастную категорию аудитории, которую они представляют:

студент, пенсионер, работающее население. Кроме того, респондентов просили отметить,

есть ли у них дети. Компания AltFuture просмотрела результаты опроса и сформулировала

для своих стажеров новую задачу.

Результаты опроса собраны в два массива:

● groups — группа (категория), к которой участники себя относили во время опроса

("Студент", "Пенсионер" или "Работаю");

● child — есть ли у них дети (True — есть, False — нет).

Аналитики компании считают, что из массива данных категории респондентов

целесообразно пересобрать в группы: "молодежь", "родители с детьми", "пенсионеры" и

"другое".

Junior-стажерам предстоит проанализировать данные и построить диаграмму-пирог

со следующими категориями:

● Родители с детьми, если: groups='Работаю' или groups ='Студент' и есть дети;

● Молодежь: groups ='Студент' и детей нет;

● Пенсионеры: groups='Пенсионеры';

● Другое groups="Работаю" и детей нет.

84

Определите, какова доля участников каждой категории в опросе. И расположите

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

Данные.

groups = ['Работаю', 'Студент', 'Работаю', 'Студент', 'Работаю', 'Пенсионер', 'Работаю',

'Студент', 'Студент', 'Пенсионер', 'Работаю', 'Работаю', 'Пенсионер', 'Пенсионер', 'Студент',

'Работаю', 'Работаю', 'Студент', 'Работаю', 'Работаю', 'Работаю', 'Работаю', 'Работаю', 'Студент',

'Студент', 'Студент', 'Работаю', 'Студент', 'Пенсионер', 'Студент', 'Работаю', 'Работаю',

'Работаю', 'Студент', 'Студент', 'Работаю', 'Работаю', 'Студент', 'Работаю', 'Студент', 'Студент',

'Работаю', 'Студент', 'Работаю', 'Работаю', 'Студент', 'Студент', 'Работаю', 'Работаю', 'Работаю']

child = [False, True, False, True, False, True, False, True, True, False, False, False, False, True,

True, True, True, True, True, True, True, False, False, False, False, True, False, False, False, True,

False, False, False, True, True, True, False, False, True, False, False, False, True, False, True, False,

False, False, False, False]

Решение

Возможное решение с использованием интерактивной тетрадки

groups = данные из условия

child = данные из условия

category = [0,0,0,0]

i = 0

while(i<len(groups)):

if (groups[i] =='Работаю'or groups[i] =='Студент') and child[i]:

category[0]+=1

elif (groups[i] =='Студент') andnot child[i]:

category[1]+=1

elif (groups[i] =='Работаю') andnot child[i]:

category[2]+=1

else:

category[3]+=1

i+=1

labels = ['Родителисдетьми', 'Молодежь',"Другое", "Пенсионеры"]

importmatplotlib.pyplotasplt

plt.figure(figsize = (10,10))

plt.pie(category, labels=labels, shadow=True, startangle=90)

plt.show()

85

Рис. 37. Диаграмма-пирог численности разных категорий населения

На диаграмме видно, что “Родители с детьми” больше всего, далее следует категория

“Другое”, затем “Молодежь” и последние по количеству “Пенсионеры”

Ответ: Родители с детьми, Другое, Молодежь и Пенсионеры

Задача 4. Какие в районе проблемы?

Условие.

Вам предоставляются данные, представляющие из себя список проблем данного

района, выявленных в результате опросов, интервью и данных с интернет-ресурса города.

Вам необходимо найти 2 главные проблемы территории.

Пример: ['Мусор', 'Безопасность', 'Шум', 'Несанкционированная реклама', 'Шум',

'Шум', 'Транспорт', 'Мусор', 'Мусор', 'Мусор', 'Скучно', 'Скучно', 'Мусор', 'Скучно',

'Несанкционированная реклама']

Ответ: Мусор, Шум и Скучно (если проблемы имеют равное значение, то указываем

их все).

Данные для анализа.

['Мусор', 'Безопасность', 'Шум', 'Несанкционированная реклама', 'Шум', 'Шум', 'Транспорт',

'Мусор', 'Мусор', 'Мусор', 'Скучно', 'Скучно', 'Мусор', 'Скучно', 'Несанкционированная

реклама', 'Безопасность', 'Скучно', 'Мусор', 'Несанкционированная реклама', 'Мусор',

'Скучно', 'Скучно', 'Безопасность', 'Безопасность', 'Безопасность', 'Мусор', 'Шум', 'Шум',

'Шум', 'Несанкционированная реклама', 'Мусор', 'Мусор', 'Мусор', 'Безопасность', 'Скучно',

'Мусор', 'Несанкционированная реклама', 'Несанкционированная реклама',

'Несанкционированная реклама', 'Шум', 'Мусор', 'Мусор', 'Скучно', 'Шум',

86

'Несанкционированная реклама', 'Шум', 'Несанкционированная реклама', 'Мусор', 'Мусор',

'Скучно', 'Безопасность', 'Мусор', 'Несанкционированная реклама', 'Мусор', 'Скучно', 'Мусор',

'Скучно', 'Безопасность', 'Несанкционированная реклама', 'Мусор', 'Мусор',

'Несанкционированная реклама', 'Несанкционированная реклама', 'Скучно', 'Скучно', 'Мусор',

'Безопасность', 'Скучно', 'Скучно', 'Безопасность', 'Безопасность', 'Безопасность', 'Шум',

'Мусор', 'Скучно', 'Несанкционированная реклама', 'Несанкционированная реклама', 'Мусор',

'Шум', 'Скучно', 'Мусор', 'Скучно', 'Мусор', 'Скучно', 'Мусор', 'Несанкционированная

реклама', 'Шум', 'Шум', 'Скучно', 'Несанкционированная реклама', 'Скучно', 'Мусор', 'Шум',

'Мусор', 'Скучно', 'Скучно', 'Скучно', 'Мусор', 'Скучно', 'Несанкционированная реклама',

'Мусор', 'Скучно', 'Мусор', 'Шум', 'Несанкционированная реклама', 'Мусор', 'Мусор', 'Шум',

'Шум', 'Скучно', 'Шум', 'Мусор', 'Скучно', 'Транспорт', 'Безопасность', 'Несанкционированная

реклама', 'Безопасность', 'Безопасность', 'Скучно', 'Несанкционированная реклама', 'Скучно',

'Мусор', 'Несанкционированная реклама', 'Скучно', 'Несанкционированная реклама', 'Мусор',

'Скучно', 'Мусор', 'Скучно', 'Скучно', 'Несанкционированная реклама', 'Скучно',

'Безопасность', 'Мусор', 'Мусор', 'Несанкционированная реклама', 'Скучно', 'Скучно',

'Несанкционированная реклама', 'Мусор', 'Скучно', 'Скучно', 'Мусор', 'Мусор', 'Шум',

'Транспорт', 'Несанкционированная реклама', 'Несанкционированная реклама', 'Шум',

'Безопасность', 'Несанкционированная реклама', 'Мусор', 'Скучно', 'Мусор', 'Скучно',

'Скучно', 'Скучно', 'Скучно', 'Мусор', 'Несанкционированная реклама', 'Мусор',

'Несанкционированная реклама', 'Шум', 'Безопасность', 'Шум', 'Несанкционированная

реклама', 'Шум', 'Шум', 'Безопасность', 'Несанкционированная реклама', 'Шум', 'Мусор',

'Шум', 'Шум', 'Скучно', 'Несанкционированная реклама', 'Скучно', 'Мусор', 'Скучно', 'Шум',

'Несанкционированная реклама', 'Мусор']

Решение

Возможное решение в интерактивной тетради - построить график.

importmatplotlib.pyplotasplt

data = данныеизусловия

plt.bar([x for x in set(data)], [data.count(x) for x in set(data)])

plt.gcf().autofmt_xdate()

Рис. 38. График выраженности проблем территории

87

Второе возможное решение - построить облако слов.

text = данныеизусловия

stopwords = set(STOPWORDS)

stopwords.update(["на", "все", "эта", "не", "уже", "это", "что", "по", "так", "но"])

wordcloud = WordCloud(stopwords = stopwords, background_color="white").generate(text)

plt.imshow(wordcloud, interpolation='bilinear')

plt.axis("off")

plt.show()

Рис. 38. Облако слов по проблемам территории

Ответ:Мусор и Скучно

Задача 5. Формирование рейтинга мест

Условие

Рейтинг выстраивается по количеству лайков, жалоб, по посещаемости места.

Если количество лайков и показатель посещаемости места увеличивает его рейтинг,

то количество жалоб уменьшает. Например, если у места 20 лайков, 40 посетителей и 10

жалоб, то итоговый рейтинг будет равен 50.

Воспользуйтесь графиком показателей мест (рис. 39) или данными по каждому

показателю (likes — лайки, problems — проблемы, attendance— посещаемость, labels —

названия мест), представленными ниже, и сформируйте рейтинг.

88

Рис. 39. График количества отзывов и их характер

В ответе укажите топовое и худшее место, по версии пользователей.

Примечание. При вводе значений регистр не учитывается.

Решение.

Для определения лучшего места нам необходимо посмотреть максимальное значение

лайков(синяя линия) и посещаемости(зеленая линия) и при этом меньшее количество

жалоб(оранжевая линия).

На графике видно, что максимальное количество лайков приходится на места: парк

Динамо, ул. Мира и Река. При этом у ул. Мира меньшее количество посещаемости и больше

жалоб по сравнению с Парком Динамо, поэтому вычеркиваем ее из кандидатов в самое

“топовое” место. Осталось сравнить количество жалоб на Парк Динамо и Реку. По графику

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

Река: 48+36–35 = 49

Парк Динамо: 47+36-21=62

Таким образом самое “топовое” место - Парк Динамо

Для определения худшего места нужно смотреть наименьшие значения синей и

зеленой линий(лайков и посещаемости) и одновременно с этим большое высокое значение

оранжевой(жалоб). Из графика видно, что Набережная имеет как раз такие значения. И

89

ближайшее место по значению лайков к ней Лесопарк, имеет большую посещаемость, что

убирает его из конкурентов на звание “худшего” места.

Вывод: Худшее место - Набережная

Ответ

Худшее место: Набережная

Лучшее место: Парк Динамо

Задача 6. Что важнее?

Условие.

В задаче № 4 стажерами были выделены наиболее острые проблемы

района.Администрация района предложила определить жителям приоритет финансового

вложения в решение этих проблем.

Можно выделить одну проблему и потратить выделенные финансы только на одно

решение, либо выбрать две с распределением финансов.

Часть жителей проголосовали только за финансирование решений по проблеме «А»,

еще часть только за решение по проблеме «Б», но были те, кто считает важным,

одновременное решение обеих проблем. Таким образом, 75% всех жителей высказались за

решение проблемы «Б» на территории, 85% — за устранение проблемы «А».

В ответе укажите, сколько процентов жителей района предложили решать обе

проблемы одновременно?

Решение

По условию общее значение проголосовавших за:

“А” = 85%

“Б” = 75%

Всего 100% проголосовавших, соответственно, все, кто не проголосовал за “Б”

проголосовали за “А”. Вычисляем это значение:100–75 = 25.

25% — это точно проголосовавшие только за вариант “А”, поэтому нужно вычесть

это значение из общего значения проголосовавших за “А”. 85–25 = 60%. 60% - и есть искомое

значение.

Можно проверить его: есть 60 процентов проголосовали за оба варианта, значит за

вариант “А” проголосовали 85–60 = 25, а за “Б” 75–60 = 15.

15+25+60 = 100%

Ответ: 60%

90

Задача 7. Умные решения

Условие.

Для того, чтобы территория процветала, и среда обитания населения города была

комфортной, а люди счастливыми, необходимо внедрить несколько умных решений.

Каждое умное решение имеет оценку, указывающую на степень одобрения его

жителями района — баллы счастья (см. условие задачи 9 первой попытки).

Администрация может:

● разместить пункты сбора раздельного мусора (waste) — 1000 баллов за один пункт;

● открыть общепиты/фудкорты (cafe) — 3000 баллов за одно предприятие;

● настроить вай-фай на площадках (wifi) — 1500 баллов за одну площадку;

● установить кнопки экстренной помощи (helps) — 600 баллов за один двор.

Кроме того, умные решения требуют финансовых затрат, которые у нас ограничены.

Городом администрации района выделено — 170 000 условных денежных единиц (уде), при

этом:

● на пункт мусора тратится 7000 уде;

● на предприятие общественного питания — 5000 уде;

● на wi-fi точку — 30000 уде;

● на кнопку помощи — 10000 уде.

Определите оптимальное количество умных решений достаточных для обеспечения

комфортной среды обитания района и укладывающихся в бюджет.

Известно, что администрация намерена реализовать все умные решения, а это значит,

что количество размещаемых объектов (кафе, точки wi-fi, пункты сбора раздельного мусора,

кнопки экстренной помощи) не могут быть равны нулю.

Параметр необходимого уровня комфорта устанавливается таким образом, чтобы его

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

довольны обустройством и жизнеобеспечением территории): 39020, 40000, 38800, 39800.

Примечание. В ответе перечислите через пробел — соответствующие значения для

waste, cafe, wifi и helps.

Решение

Решение может быть разное, главное - чтобы подходило под условия задачи. А

именно:

● общая сумма не превышает 170 000 уде;

● количество мусорок, общепитов, вай-фая и кнопки больше 0;

● уровень комфорта больше 40000.

91

При стоимости и комфорту за единицу:

● пункт сбора мусора - 7000 уде и 1000 баллов;

● общепит - 5000 уде и 3000 баллов;

● вай-фай - 30000 уде и 1500 баллов;

● кнопка помощи 10000 уде и 600 баллов.

Вариант ответа:

Первым действием посчитаем стоимость и баллы, когда каждого решения по 1, так

как это обязательное условие.

уде:7000+5000+30000+10000 = 52000

баллы:1000+3000+1500+600 = 6100

Посчитаем оставшуюся сумму для реализации решений и недостающие баллы.

остаток баланса: 170000–52000 = 118000

не хватает баллов:40000-6100 = 33900

И теперь нужно определить, что нужно реализовать на сумму 118 000 уде для

получения 6100 баллов.

Например, мы поставим еще 4 пункта сбора мусора.

остаток баланса: 118000-(7000*4) = 90000

не хватает баллов: 33900-(1000*4) = 29900

И допустим сделаем еще одну точку вай-фая.

остаток баланса: 90000–3000 = 87000

не хватает баллов: 29900–1500 = 28400

А на оставшиеся уде реализуем общепиты(17 штук)

остаток баланса: 87000-(5000*17) = 2000

не хватает баллов: 28400-(3000*17) = -22600

Так как значение баллов ушло в отрицательную отметку, значит получившееся

решение превышает максимальное количество баллов комфорта в других регионах, чего и

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

минимум по 1.

Таким образом одним из возможных вариантов ответа является: 5 точек сбора мусора,

18 общепитов, 2 точки вай-фая и 1 кнопка экстренной помощи.

Возможно решение в интерактивной тетради с помощью ползунков

from ipywidgets import Dropdown, Checkbox, HBox, VBox, Text, Button

from IPython.display import display, clear_output

def counts_of_points(waste = 10, cafe = 10, wifi = 10, helps = 10):

92

mwaste = waste*7000

mcafe = cafe*5000

mwifi = wifi*30000

mhelp = helps*10000

spends = [mwaste, mcafe, mwifi, mhelp]

maxspend = 170000

title_1 = "Текущиетраты %d!"%sum(spends) if sum(spends) <maxspend else "Текущиетраты

%d! Превышаютлимит170-000"%sum(spends)

max_happy = waste*1000 + wifi*1500 + cafe*3000 + helps*600

other_centers = [39020, 40000, 38800, 39800, max_happy ]

explode = explode = (0, 0, 0, 0, 0.1)

title_2 = "Счастьяслишкоммало!" if max(other_centers[:-1]) >other_centers[-1] else

"Счастьяскольконадо!"

plt.figure(figsize = (10, 4))

plt.subplot(1,2,1)

plt.pie(spends,labels=spends, autopct='%1.1f%%',

shadow=True, startangle=90)

plt.title(title_1)

plt.subplot(1,2,2)

plt.pie(other_centers,labels=other_centers, explode = explode,

autopct='%1.1f%%',shadow=True, startangle=90)

plt.title(title_2)

plt.tight_layout()

plt.show()

import matplotlib.pyplot as plt

from ipywidgets import interact, interactive, fixed, interact_manual

from IPython.display import display

w = interactive(counts_of_points, waste = 5, cafe = 5, wifi = 5, helps = 5)

display(w)

Ответ: возможный вариант ответа 5 18 2 1

Задача 8. Плотность предприятий в районе

Условие.

Исходя из выявленных проблем и определенных умных решений, нужно

порекомендовать администрации, в каком районе лучше открыть заведение общественного

питания.

93

На картинке (рис. 40) представлено 6 общепитов в 3 районах (прямоугольники

разного цвета).

Рис. 40. Распределение пунктов общественного питания в районах.

Нужно определить плотность распределения общепитов в районах. Для этого

напишите функцию, на вход которой подается 3 параметра: a (высота прямоугольника), b

(ширина прямоугольника), count (число кафе в районе).

Входные данные по 3 районам выглядят так: [[10, 60, 2], [30, 60, 3], [20, 60, 1]].

На выходе функция должна подсчитывать значение плотности, которое вычисляется

как число заведений на площадь района:

S=a×b, где S –площадь.

D=count/S, где D - плотность заведений.

Найдите D для каждого района, введите значения через запятую для первого, второго

и третьего района, оставив после нуля 4 знака, остальное отбросив, например:

0.0039666666666666668 — получится 0.0039 (между нулем и дробной частью – точка)

Пример ответа: 0.0259,0.0007,0.0340

Решение

По условию на вход поступают следующие данные:[[10, 60, 2], [30, 60, 3], [20, 60, 1]].

Распишем их, более подробно.

Район №1:

а = 10

b = 60

94

count = 2

Район №2:

а = 30

b = 60

count = 3

Район №3:

а = 20

b = 60

count = 1

Теперь по формулам нужно вычислить площадь и плотность по каждому из районов.

Район №1:

S = 10 * 60 = 600

D = 2/600 = 0.003333333333, оставляем 4 знака после запятой путем отбрасывания D = 0.0033

Район №2:

S = 30 * 60 = 1800

D = 3/1800 = 0.00166666666, оставляем 4 знака после запятой путем отбрасывания D = 0.0016

Район №3:

S = 20 * 60 = 1200

D = 1/1200 = 0.00083333333, оставляем 4 знака после запятой путем отбрасывания D = 0.0008

Ответ: 0.0033, 0.0016, 0.0008

Задача 9. Где открыть ресторан?

Условие.

В задаче 8 junior-стажеры определили какова плотность предприятий общественного

питания в трех районах города Энск. Теперь научный руководитель просит проделать их

дополнительную работу и найти район, в котором открытие нового предприятия

общественного питания, например ресторана, будет наиболее целесообразным.

По каждому району представлена посещаемость, ее значение указано для каждой

клетки территории (рис. 41). Красные точки на графике — это уже открытые заведения

общественного питания.

95

Рис. 41. Посещаемость районов и расположение заведений общественного питания.

В первую очередь, стажерам необходимо посчитать среднюю посещаемость по

району, т. е. следует найти среднее значение по всем точкам прямоугольника.

Значения посещаемости по районам содержатся в переменных с названиями:

для первого района (район №1) — data_1;

для второго (район №2) — data_2;

для третьего (район №3) — data_3.

Посещаемость по району — это спрос, который может быть удовлетворен

предложением — открытыми заведениями общепита.

Ваша задача найти показатель рейтинга района, который показывает, насколько

уместно открывать в районе новое заведение общественного питания.

Чем больше средняя посещаемость по району, тем выше этот показатель, а, значит, в

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

плотность количества заведений в районе, тем показатель ниже. Поэтому рейтинг районов

нужно подсчитать следующим образом:

R=A|D,где A — среднее значение посещаемости по району, D — плотность заведений района

(из задачи №8 с уже отброшенной дробной частью).

Район с максимальным значением R — самый пригодный для открытия в нем нового

заведения общественного питания.

96

Определите рейтинг районов. В ответе укажите район, который находится в топе и

после запятой значение рейтинга для него (дробную часть при подсчете рейтинга просто

отбросьте).

Пример ответа: 1,43355, где 1 — это район, а 43355 — значение рейтинга.

Данные.

data_1 = [58, 57, 51, 61, 68, 58, 55, 63, 56, 65, 58, 58, 69, 56, 54, 56, 57,50, 63, 54, 66, 53, 67, 62,

62, 57, 68, 62, 62, 57, 65, 61, 58, 54,67, 59, 56, 57, 63, 71, 58, 65, 53, 63, 55, 55, 61, 67, 68, 57,

58,59, 58, 57, 58, 60, 64, 60, 69, 53, 52, 62, 54, 63, 60, 66, 56, 54,57, 62, 52, 64, 55, 56, 65, 55, 66,

68, 55, 65, 61, 65, 62, 51, 63,57, 59, 57, 63, 66, 59, 67, 55, 57, 69, 63, 62, 61, 57, 67, 68, 61,55, 66,

60, 55, 58, 65, 59, 63, 57, 57, 62, 68, 52, 59, 58, 61, 54,60, 65, 51, 53, 51, 63, 60, 65, 50, 64, 66, 60,

56, 57, 62, 52, 60,55, 62, 64, 54, 64, 67, 63, 59, 60, 58, 61, 67, 62, 57, 48, 59, 61,55, 54, 56, 59, 64,

65, 65, 58, 55, 55, 64, 56, 65, 61, 63, 54, 62,67, 63, 61, 60, 62, 62, 60, 62, 66, 54, 54, 61, 61, 58, 62,

65, 57,55, 61, 57, 64, 63, 61, 70, 69, 61, 54, 60, 61, 54, 63, 54, 62, 65,63, 52, 49, 66, 62, 63, 55, 60,

57, 52, 55, 59, 57, 66, 57, 68, 69,58, 65, 65, 57, 68, 58, 73, 70, 53, 57, 69, 64, 61, 58, 55, 59, 70,51,

55, 60, 58, 60, 67, 62, 56, 53, 66, 61, 59, 62, 57, 52, 52, 75,58, 63, 54, 67, 62, 55, 67, 60, 61, 61, 51,

61, 59, 52, 61, 52, 58,57, 69, 58, 50, 60, 58, 67, 59, 57, 52, 62, 58, 57, 61, 66, 48, 58,56, 64, 57, 69,

63, 66, 63, 55, 61, 56, 55, 63, 48, 59, 57, 60, 55,54, 49, 55, 60, 60, 62, 63, 55, 64, 52, 65, 55, 71, 60,

65, 54, 62,63, 59, 56, 61, 62, 57, 60, 49, 61, 62, 60, 62, 70, 62, 54, 63, 60,62, 60, 58, 55, 62, 55, 56,

57, 55, 58, 57, 50, 61, 61, 63, 56, 48,66, 64, 58, 49, 57, 58, 62, 62, 64, 47, 56, 54, 58, 66, 58, 58,

69,68, 57, 55, 59, 54, 52, 60, 68, 61, 59, 62, 56, 59, 57, 58, 59, 54,63, 51, 66, 67, 58, 62, 60, 60, 64,

49, 63, 57, 67, 58, 55, 59, 64,63, 55, 65, 69, 56, 63, 64, 59, 57, 55, 57, 48, 61, 60, 63, 60, 60,58, 66,

56, 52, 62, 59, 59, 73, 62, 63, 57, 62, 57, 64, 58, 62, 56,61, 55, 61, 62, 59, 64, 56, 53, 70, 51, 65, 58,

54, 63, 66, 57, 63,58, 58, 61, 60, 61, 63, 55, 52, 58, 68, 66, 59, 58, 57, 61, 52, 60,60, 59, 60, 54, 67,

66, 62, 59, 68, 59, 64, 62, 56, 54, 54, 52, 61,63, 61, 54, 51, 53, 61, 59, 59, 70, 58, 64, 63, 60, 60, 59,

62, 59,61, 57, 62, 61, 52, 63, 58, 56, 62, 70, 57, 59, 64, 61, 65, 56, 58,66, 50, 58, 52, 56, 62, 50, 59,

55, 63, 51, 64, 61, 63, 56, 55, 64,66, 68, 66, 57, 52, 58, 63, 65, 52, 67, 59, 70, 62, 61, 65, 57, 62,57,

62, 56, 68, 61, 56, 60, 59, 61, 66, 56, 54, 59, 51, 65, 54, 57,62, 64, 61, 60, 54, 62, 53, 57, 50, 56, 52,

55, 57, 58, 54, 60, 64,57, 58, 67, 57, 69]

data_2 = [46, 55, 39, 43, 49, 49, 47, 43, 42, 46, 50, 40, 46, 35, 43, 40, 46, 36, 44, 40, 34, 50, 37, 37,

45, 50, 55, 42, 58, 49, 44, 50, 59, 48, 49, 40, 48, 47, 41, 54, 44, 55, 37, 46, 52, 43, 36, 58, 46, 44,

45, 45, 45, 35, 43, 45, 45, 51, 32, 42, 40, 44, 43, 43, 46, 49, 51, 40, 47, 41, 46, 42, 39, 45, 40, 52,

48, 43, 38, 43, 52, 43, 32, 40, 46, 40, 50, 40, 40, 53, 39, 43, 36, 44, 48, 40, 48, 51, 42, 44, 47, 42,

35, 40, 63, 39, 34, 41, 36, 37, 48, 55, 53, 45, 40, 34, 38, 44, 45, 53, 51, 44, 38, 50, 50, 44, 53, 43,

45, 42, 45, 50, 45, 51, 47, 49, 49, 33, 51, 46, 37, 40, 40, 55, 46, 44, 44, 52, 39, 49, 44, 37, 46, 50,

49, 37, 51, 39, 47, 37, 45, 54, 42, 44, 39, 43, 44, 52, 32, 48, 53, 39, 46, 45, 42, 48, 39, 46, 50, 49,

60, 42, 46, 44, 38, 45, 47, 45, 45, 58, 41, 48, 37, 35, 47, 48, 41, 39, 36, 46, 45, 46, 40, 46, 39, 44,

41, 54, 40, 47, 50, 33, 39, 38, 40, 49, 41, 50, 45, 43, 43, 42, 43, 48, 34, 48, 37, 46, 44, 51, 51, 34,

49, 33, 41, 37, 39, 37, 50, 47, 54, 45, 45, 46, 40, 44, 31, 41, 55, 44, 51, 57, 37, 55, 42, 42, 49, 49,

37, 42, 53, 51, 47, 39, 42, 50, 40, 42, 37, 34, 40, 44, 61, 49, 35, 44, 41, 58, 50, 41, 47, 45, 43, 51,

45, 48, 52, 48, 46, 43, 47, 34, 53, 47, 49, 41, 47, 33, 39, 55, 34, 48, 36, 42, 48, 44, 46, 50, 43, 39,

44, 47, 46, 36, 42, 50, 44, 46, 52, 50, 38, 49, 32, 42, 36, 44, 47, 43, 40, 50, 45, 38, 46, 49, 42, 46,

41, 53, 54, 42, 44, 42, 53, 48, 44, 55, 45, 47, 45, 49, 44, 47, 48, 48, 28, 46, 40, 49, 45, 47, 41, 45,

35, 45, 44, 38, 55, 46, 47, 46, 46, 37, 47, 40, 45, 49, 51, 44, 38, 39, 41, 43, 49, 39, 43, 39, 44, 46,

51, 42, 39, 43, 41, 44, 43, 48, 40, 47, 45, 42, 48, 51, 42, 45, 38, 48, 45, 47, 49, 37, 47, 43, 45, 50,

97

33, 47, 42, 46, 37, 39, 40, 29, 33, 36, 45, 44, 57, 37, 41, 39, 57, 44, 39, 41, 40, 41, 37, 49, 45, 38,

50, 32, 47, 45, 47, 44, 46, 47, 52, 37, 55, 47, 55, 49, 39, 44, 43, 30, 38, 48, 32, 43, 40, 32, 49, 42,

42, 41, 45, 46, 36, 46, 45, 49, 31, 46, 49, 53, 33, 44, 43, 46, 46, 42, 45, 53, 45, 35, 50, 40, 42, 47,

42, 45, 48, 45, 48, 47, 58, 40, 36, 47, 47, 40, 49, 46, 41, 38, 52, 56, 50, 42, 43, 47, 47, 41, 58, 39,

46, 38, 40, 51, 42, 50, 51, 58, 43, 56, 41, 47, 52, 58, 49, 42, 33, 44, 40, 45, 37, 36, 39, 41, 46, 45,

54, 56, 53, 40, 45, 51, 34, 48, 30, 42, 47, 44, 49, 47, 42, 38, 46, 40, 54, 50, 44, 44, 44, 44, 41, 35,

51, 42, 33, 43, 41, 50, 46, 41, 36, 39, 46, 38, 47, 46, 43, 33, 41, 43, 46, 39, 41, 47, 34, 39, 36, 53,

40, 43, 52, 44, 51, 34, 49, 47, 40, 52, 53, 53, 55, 49, 32, 47, 34, 42, 51, 44, 45, 29, 37, 44, 49, 45,

40, 54, 38, 40, 34, 37, 36, 51, 49, 44, 45, 42, 46, 41, 46, 37, 44, 50, 43, 35, 45, 38, 43, 47, 62, 44,

47, 43, 52, 39, 28, 46, 42, 59, 50, 43, 47, 53, 43, 43, 43, 46, 44, 44, 43, 42, 46, 44, 45, 55, 42, 43,

42, 46, 44, 44, 52, 49, 52, 45, 42, 53, 43, 40, 45, 42, 50, 41, 43, 41, 46, 55, 42, 43, 36, 38, 43, 49,

39, 47, 50, 33, 41, 35, 43, 41, 49, 45, 44, 43, 40, 47, 41, 49, 51, 42, 49, 30, 40, 53, 39, 38, 47, 35,

45, 39, 46, 41, 41, 42, 47, 51, 34, 48, 45, 53, 51, 41, 47, 51, 42, 55, 46, 48, 40, 57, 40, 46, 36, 41,

48, 44, 46, 49, 47, 35, 48, 43, 47, 39, 49, 45, 48, 46, 59, 46, 44, 32, 53, 44, 46, 36, 46, 57, 38, 33,

49, 49, 39, 38, 49, 57, 32, 49, 54, 46, 40, 38, 36, 49, 37, 48, 65, 35, 44, 43, 44, 43, 42, 52, 47, 44,

42, 43, 32, 45, 48, 43, 37, 49, 55, 42, 48, 41, 47, 32, 51, 49, 44, 34, 45, 41, 49, 58, 36, 38, 34, 52,

55, 46, 51, 39, 50, 45, 47, 37, 43, 46, 48, 40, 39, 52, 47, 42, 42, 45, 47, 43, 53, 44, 44, 58, 42, 45,

42, 33, 39, 34, 46, 39, 36, 48, 51, 51, 57, 48, 49, 46, 51, 46, 44, 46, 56, 50, 43, 38, 46, 44, 51, 59,

38, 51, 46, 44, 55, 45, 49, 44, 40, 47, 47, 37, 41, 54, 48, 43, 58, 36, 37, 34, 38, 39, 53, 55, 41, 37,

58, 46, 48, 31, 42, 46, 52, 54, 52, 37, 46, 44, 51, 46, 59, 40, 48, 52, 45, 44, 50, 47, 52, 48, 41, 29,

35, 43, 38, 33, 54, 45, 41, 44, 45, 37, 41, 48, 42, 41, 56, 40, 48, 48, 48, 54, 37, 50, 39, 49, 39, 40,

43, 38, 46, 47, 45, 48, 54, 45, 40, 54, 50, 46, 46, 45, 50, 40, 49, 54, 42, 41, 46, 47, 52, 38, 44, 49,

41, 49, 46, 43, 33, 41, 50, 51, 45, 50, 39, 44, 46, 39, 48, 47, 50, 54, 39, 38, 43, 47, 39, 43, 39, 37,

53, 35, 45, 45, 36, 54, 31, 44, 35, 65, 37, 43, 42, 53, 43, 34, 41, 40, 53, 44, 39, 51, 46, 51, 37, 40,

40, 33, 41, 44, 37, 44, 44, 47, 34, 48, 36, 44, 41, 53, 50, 30, 51, 50, 46, 34, 49, 47, 57, 40, 44, 47,

50, 48, 51, 53, 36, 60, 48, 47, 57, 55, 34, 44, 44, 47, 45, 35, 39, 44, 52, 46, 40, 37, 45, 48, 36, 49,

44, 41, 54, 45, 51, 39, 51, 42, 46, 43, 36, 52, 43, 52, 35, 41, 46, 55, 46, 42, 52, 43, 46, 57, 32, 53,

45, 34, 55, 54, 43, 37, 54, 40, 34, 51, 54, 34, 49, 47, 39, 40, 32, 44, 56, 44, 39, 50, 43, 43, 49, 41,

49, 44, 32, 43, 41, 44, 43, 42, 55, 53, 54, 41, 38, 39, 48, 32, 55, 36, 42, 51, 45, 48, 48, 45, 41, 42,

42, 60, 46, 49, 32, 42, 49, 41, 51, 48, 54, 44, 47, 34, 43, 43, 43, 43, 54, 49, 48, 51, 31, 44, 41, 39,

43, 59, 52, 38, 44, 48, 42, 44, 45, 47, 47, 42, 50, 36, 49, 40, 30, 43, 53, 39, 43, 27, 53, 47, 53, 43,

57, 37, 55, 44, 37, 48, 43, 42, 44, 49, 43, 49, 51, 33, 50, 51, 52, 45, 42, 51, 56, 39, 47, 38, 47, 36,

53, 48, 50, 34, 44, 44, 41, 52, 52, 50, 51, 41, 51, 40, 48, 47, 57, 62, 49, 40, 53, 41, 46, 44, 40, 44,

44, 43, 41, 49, 43, 44, 43, 34, 47, 37, 55, 40, 37, 44, 52, 59, 38, 50, 46, 34, 41, 47, 37, 50, 42, 47,

53, 46, 51, 46, 43, 44, 46, 43, 50, 46, 45, 42, 37, 53, 52, 46, 43, 38, 44, 47, 43, 40, 52, 47, 46, 53,

42, 35, 45, 49, 47, 44, 49, 49, 37, 39, 55, 50, 50, 53, 52, 31, 35, 34, 42, 41, 34, 48, 33, 46, 40, 41,

39, 45, 38, 42, 35, 48, 43, 45, 31, 52, 31, 45, 43, 56, 34, 51, 46, 40, 44, 49, 36, 42, 38, 46, 42, 45,

44, 49, 52, 36, 46, 33, 45, 49, 45, 47, 50, 47, 43, 41, 51, 37, 46, 46, 34, 41, 43, 47, 45, 54, 52, 55,

44, 40, 42, 37, 41, 45, 37, 46, 39, 50, 35, 38, 52, 43, 51, 47, 42, 43, 34, 46, 44, 33, 43, 48, 55, 34,

60, 44, 50, 42, 41, 45, 50, 40, 51, 57, 45, 52, 46, 53, 44, 42, 46, 39, 42, 37, 41, 40, 42, 42, 42, 37,

41, 47, 45, 46, 40, 41, 49, 38, 45, 39, 32, 45, 40, 54, 47, 46, 47, 35, 48, 50, 39, 34, 53, 50, 46, 42,

50, 44, 41, 50, 41, 49, 42, 47, 44, 46, 56, 46, 45, 48, 44, 45, 50, 49, 49, 54, 48, 49, 43, 52, 41, 46,

36, 40, 34, 44, 47, 51, 47, 48, 40, 44, 50, 38, 36, 48, 58, 40, 43, 42, 45, 47, 52, 47, 46, 43, 55, 54,

47, 46, 49, 41, 51, 50, 52, 38, 42, 48, 48, 34, 47, 41, 39, 45, 45, 44, 47, 40, 45, 46, 45, 34, 51, 37,

43, 41, 56, 56, 42, 40, 44, 46, 47, 45, 48, 46, 45, 42, 35, 57, 38, 31, 50, 51, 37, 46, 54, 47, 38, 42,

98

43, 43, 47, 44, 35, 53, 54, 50, 38, 36, 41, 50, 35, 45, 41, 44, 42, 42, 41, 49, 45, 40, 48, 47, 49, 48,

43, 37, 41, 39, 53, 45, 42, 42, 47, 42, 49, 47, 48, 48, 47, 44, 52, 39, 41, 54, 46, 48, 39, 38, 46, 40,

41, 49, 46, 44, 51, 52, 54, 51, 46, 40, 47, 45, 34, 49, 50, 43, 41, 50, 42, 42, 34, 51, 46, 37, 25, 44,

37, 39, 56, 58, 49, 35, 47, 45, 41, 48, 47, 50, 48, 45, 53, 37, 50, 36, 40, 50, 40, 48, 47, 43, 41, 38,

43, 44, 35, 53, 46, 46, 41, 42, 45, 56, 40, 38, 58, 39, 49, 42, 39, 44, 37, 46, 43, 38, 34, 47, 41, 47,

40, 39, 50, 44, 45, 38, 47, 53, 43, 43, 56, 40, 51, 45, 48, 45, 44, 49, 52, 42, 41, 42, 44, 48, 34, 34,

57, 50, 41, 45, 48, 35, 49, 46, 51, 51, 45, 42, 37, 51, 40, 50, 40, 51, 47, 52, 35, 43, 46, 35, 40, 47,

54, 46, 50, 41, 32, 51, 47, 52, 39, 41, 49, 48, 37, 47, 45, 42, 36, 44, 44, 49, 33, 44, 40, 54, 41, 53,

48, 41, 39, 54, 43, 38, 44, 46]

data_3 = [28, 28, 25, 40, 51, 34, 24, 43, 35, 29, 22, 31, 36, 26, 25, 36, 37, 26, 25, 26, 24, 23, 28, 23,

24, 28, 18, 19, 28, 38, 35, 29, 33, 17, 31, 36, 16, 34, 16, 30, 29, 28, 28, 30, 24, 33, 18, 22, 11, 31,

20, 29, 17, 27, 25, 24, 37, 34, 20, 20, 25, 18, 23, 38, 29, 37, 31, 38, 33, 7, 20, 39, 26, 42, 27, 27, 39,

33, 39, 43, 38, 38, 11, 46, 20, 46, 25, 20, 18, 22, 18, 34, 25, 30, 27, 27, 38, 29, 32, 22, 32, 34, 29,

38, 35, 26, 22, 29, 10, 30, 25, 32, 38, 31, 32, 40, 25, 24, 27, 23, 33, 33, 45, 29, 34, 27, 35, 41, 31,

25, 23, 31, 35, 22, 23, 35, 30, 18, 27, 31, 30, 32, 31, 33, 16, 26, 20, 36, 28, 23, 23, 25, 30, 20, 41,

38, 27, 27, 26, 41, 14, 23, 28, 30, 27, 28, 39, 32, 36, 30, 28, 30, 39, 26, 22, 26, 37, 39, 34, 30, 24,

27, 33, 27, 28, 36, 40, 35, 32, 30, 31, 28, 34, 30, 31, 24, 29, 35, 27, 38, 23, 25, 29, 31, 31, 23, 40,

21, 20, 20, 25, 30, 36, 22, 32, 40, 28, 31, 32, 45, 35, 38, 37, 44, 34, 24, 32, 18, 31, 36, 28, 29, 29,

32, 29, 26, 40, 40, 25, 27, 39, 31, 19, 40, 28, 26, 31, 27, 35, 27, 27, 21, 22, 42, 23, 33, 30, 30, 45,

33, 26, 39, 23, 30, 37, 30, 20, 33, 23, 33, 31, 34, 27, 23, 30, 32, 34, 33, 32, 30, 46, 18, 27, 24, 30,

28, 22, 25, 24, 38, 32, 27, 32, 29, 32, 25, 26, 21, 27, 22, 42, 28, 30, 21, 45, 34, 43, 33, 25, 25, 34,

20, 44, 42, 28, 39, 15, 40, 37, 26, 22, 30, 36, 30, 29, 33, 39, 30, 18, 33, 44, 27, 32, 28, 28, 29, 23,

31, 33, 25, 36, 32, 29, 31, 26, 29, 34, 36, 27, 34, 17, 34, 39, 44, 30, 36, 29, 39, 26, 19, 36, 36, 28,

34, 19, 22, 29, 22, 26, 37, 36, 29, 33, 35, 29, 28, 24, 43, 31, 25, 30, 29, 19, 20, 35, 33, 32, 32, 26,

26, 35, 24, 33, 26, 31, 43, 27, 33, 28, 31, 32, 38, 36, 23, 35, 22, 36, 32, 42, 40, 11, 27, 29, 34, 30,

30, 32, 31, 31, 37, 26, 22, 34, 35, 36, 35, 26, 39, 32, 29, 30, 34, 32, 31, 27, 25, 26, 42, 39, 32, 46,

38, 28, 37, 27, 29, 24, 20, 29, 32, 37, 39, 41, 34, 23, 20, 26, 35, 21, 23, 44, 26, 28, 40, 34, 36, 28,

35, 26, 48, 32, 28, 28, 35, 24, 40, 25, 28, 43, 20, 39, 24, 30, 19, 26, 17, 26, 15, 26, 24, 34, 26, 35,

47, 32, 46, 48, 33, 30, 43, 21, 38, 41, 39, 34, 41, 30, 33, 23, 24, 34, 30, 29, 32, 31, 28, 27, 28, 42,

35, 30, 31, 44, 26, 36, 40, 40, 30, 31, 32, 32, 17, 45, 31, 29, 44, 27, 27, 22, 47, 35, 30, 31, 30, 24,

14, 21, 28, 26, 25, 21, 19, 33, 33, 40, 22, 39, 32, 37, 20, 35, 26, 29, 34, 23, 10, 20, 31, 29, 30, 25,

35, 33, 35, 22, 20, 33, 40, 31, 28, 31, 40, 27, 24, 35, 16, 14, 21, 23, 35, 32, 32, 31, 41, 29, 33, 27,

39, 30, 40, 21, 31, 17, 37, 19, 31, 39, 28, 37, 29, 25, 39, 40, 24, 15, 26, 38, 35, 24, 39, 21, 39, 27,

19, 25, 17, 38, 34, 36, 28, 21, 31, 35, 38, 36, 36, 23, 34, 28, 38, 31, 25, 30, 21, 31, 36, 32, 28, 23,

32, 44, 33, 43, 25, 29, 40, 14, 30, 28, 30, 30, 31, 26, 15, 37, 27, 33, 42, 36, 28, 33, 37, 29, 36, 47,

26, 23, 36, 27, 26, 42, 27, 32, 30, 43, 32, 37, 23, 29, 30, 23, 30, 13, 26, 22, 33, 23, 27, 32, 33, 38,

41, 30, 30, 20, 22, 28, 26, 32, 24, 23, 28, 33, 27, 37, 36, 15, 24, 30, 40, 39, 28, 22, 22, 23, 22, 39,

40, 29, 23, 38, 26, 41, 38, 28, 24, 25, 35, 19, 23, 35, 37, 34, 34, 34, 27, 36, 30, 33, 26, 36, 26, 30,

29, 23, 27, 43, 40, 38, 31, 35, 35, 38, 42, 42, 21, 34, 26, 45, 35, 26, 24, 29, 31, 28, 26, 30, 37, 34,

33, 24, 26, 31, 28, 33, 29, 33, 32, 22, 38, 22, 28, 39, 20, 30, 25, 24, 30, 24, 27, 23, 29, 36, 20, 33,

36, 26, 20, 41, 35, 21, 33, 25, 27, 21, 26, 20, 24, 35, 36, 17, 34, 17, 33, 31, 16, 15, 24, 41, 29, 18,

31, 30, 38, 28, 25, 42, 22, 30, 40, 22, 26, 28, 19, 42, 25, 36, 21, 31, 32, 32, 34, 26, 21, 31, 30, 22,

28, 25, 29, 32, 34, 41, 34, 31, 23, 24, 17, 35, 30, 39, 27, 16, 31, 31, 28, 35, 32, 39, 29, 29, 34, 23,

30, 33, 33, 23, 27, 19, 40, 24, 31, 34, 28, 22, 28, 31, 40, 22, 36, 21, 33, 33, 26, 31, 34, 25, 33, 30,

32, 40, 24, 30, 27, 36, 27, 26, 32, 28, 39, 25, 25, 34, 34, 29, 25, 24, 30, 31, 32, 34, 23, 33, 26, 32,

99

18, 25, 18, 37, 37, 31, 31, 30, 27, 36, 18, 38, 22, 34, 17, 31, 26, 39, 32, 28, 29, 22, 35, 32, 21, 32,

24, 33, 22, 34, 30, 20, 26, 32, 27, 6, 29, 15, 36, 30, 26, 28, 38, 33, 26, 26, 24, 43, 40, 29, 36, 27, 31,

25, 29, 33, 18, 47, 30, 24, 27, 33, 27, 29, 26, 27, 26, 33, 26, 29, 25, 40, 31, 35, 16, 33, 23, 21, 39,

25, 41, 24, 22, 13, 34, 30, 22, 31, 35, 25, 35, 41, 50, 37, 35, 22, 15, 30, 34, 37, 45, 35, 23, 27, 26,

29, 27, 34, 38, 27, 34, 24, 34, 31, 32, 27, 23, 42, 24, 30, 32, 43, 17, 30, 31, 30, 32, 9, 28, 34, 38, 32,

28, 26, 36, 27, 25, 24, 23, 34, 28, 32, 38, 35, 29, 26, 22, 26, 36, 38, 30, 30, 40, 18, 39, 22, 30, 19,

30, 26, 27, 31, 48, 33, 27, 31, 30, 30, 31, 35, 17, 37, 29, 28, 39, 32, 34, 33, 38, 24, 24, 23, 15, 26,

31, 35, 29, 25, 23, 28, 24, 16, 23, 19, 42, 34, 13, 29, 29, 33, 15, 37, 37, 38, 19, 41, 35, 34, 33, 15,

31, 27, 34, 38, 30, 30, 42, 31, 28, 32, 23, 23, 29, 41, 36, 52, 36, 40, 31, 36, 21, 28, 26, 26, 30, 22,

41, 26, 31, 36, 24, 29, 25, 32, 30, 37, 23, 34, 31, 24, 31, 28, 23, 34, 25, 30, 31, 25, 30, 36, 34, 30,

21, 35, 30]

Решение

data_1 = данныеизусловия

data_2 = данныеизусловия

data_3 = данныеизусловия

D1 = 0.0033 #данныеиззадачи 8

D2 = 0.0016 #данныеиззадачи 8

D3 = 0.0016 #данныеиззадачи 8

#находимсреднююпосещаемостьпорайонам

А1 = sum(data_1)/len(data_1)

А2 = sum(data_2)/len(data_2)

А3 = sum(data_3)/len(data_3)

#находимрейтинг

R1 = A1/D1

R2 = A2/D2

R3 = A3/D3

#Есливывестиих, томожемувидетьследующиерезультаты:

# 18075.252525252527, 27833.333333333332, 37355.20833333333

#Изнихвидно, чтонаибольшийрейтингимееттретийрайон.

Вусловиисказано, чтопервойцифройидетномеррайона. онполучилсяравен 3.

Ивторойцифройрейтингсотброшеннойчастьюпослеточки = 37355. Значитответ 3,37355

Ответ: 3,37355

Задача 10. Рестораниликафебыстрогопитания?

Условие.

Мыопределилирайон, вкоторомвыгоднееоткрыватьновуюточкуобщепита,

теперьнужнорешить, какоготипабудетпредприятие: кафебыстрогопитания,

рестораниликафе.

100

Вамдано 2 списка:

● check — показательсреднегочеказаказапокаждомузаведению.

● clients — количествопосетителейзачаспокаждомузаведению.

Определите,

какраспределяютсядолиразличныхтиповпредприятийобщественногопитания,

существующихнатерритории, если принято считать, что:

● Кафе быстрого питания, когда: check<=250,clients>=20

● Кафе: check>250 and check<1000, clients>=10

● Ресторан: check>=1000,clients>=3

Найдите по каждой категории (bistro — Кафе быстрого питания, cafe — Кафе,

restoraunt — Ресторан):

● количество заведений;

● среднее значение по среднему чеку (среднее значение показателя средний чек по

категории);

● среднее число посетителей.

В ответе через запятую укажите среднее значение средних чеков и среднюю

посещаемость для категории с наименьшей конкуренцией (меньшим количеством заведений)

на исследуемой территории.

Примечание.У значений отбросьте дробную часть (например: 836,6983 получится

836).

Пример ответа: 7665,75, (где 7665 — среднее значение средних чеков, а 75 — средняя

посещаемость)

Данные.

check = [266, 427, 213, 282, 9920, 276, 240, 447, 234, 862, 684, 257, 485, 244, 263, 283, 255, 177,

238, 888, 178, 3509, 180, 409, 285, 152, 157, 197, 215, 232, 665, 154, 163, 226, 150, 276, 200, 764,

235, 5448, 179, 172, 295, 279, 195, 276, 293, 545, 230, 6444, 4444, 279, 236, 903, 6838, 226, 961,

399, 863, 419, 5063, 290, 152, 389, 997, 616, 959, 277, 926, 687, 172, 239, 494, 4660, 3343, 203,

169, 852, 290, 981, 190, 158, 170, 303, 795, 159, 819, 262, 260, 222, 219, 592, 210, 199, 223, 158,

652, 3407, 295, 258, 209, 193, 459, 157, 231, 241, 289, 181, 196, 866, 230, 368, 587, 788, 916,

1846, 2941, 351, 829, 6216, 767, 255, 685, 220, 248, 776, 521, 277, 244, 257, 282, 1935, 6662, 230,

285, 8613, 229, 208, 152, 384, 567, 6761, 285, 287, 873, 519, 166, 1370, 234, 752, 2272, 8482, 184,

3752, 262, 235, 152, 915, 182, 754, 224, 384, 876, 164, 212, 175, 769, 663, 891, 340, 1807, 285,

239, 625, 739, 494, 261, 726, 193, 803, 284, 535, 731, 990, 7076, 487, 257, 4353, 923, 378, 292,

993, 891, 5939, 214, 218, 340, 183, 325, 838, 178, 382, 285, 952, 265, 826, 526, 282, 172, 167, 151,

864, 215, 279, 999, 173, 197, 238, 203, 229, 195, 537, 180, 272, 640, 974, 464, 851, 272, 756, 595,

240, 266, 263, 168, 171, 249, 152, 864, 625, 919, 205, 707, 180, 894, 999, 2231, 780, 230, 729, 296,

692, 238, 177, 968, 183, 265, 897, 441, 160, 296, 7460, 582, 931, 216, 192, 2231, 359, 9161, 150,

212, 549, 416, 169, 187, 1858, 7999, 272, 257, 202, 158, 238, 243, 685, 4710, 271, 599, 886, 419,

101

790, 208, 275, 231, 427, 5137, 165, 8849, 8435, 203, 266, 430, 217, 293, 188, 172, 216, 763, 9922,

9209, 263, 297, 226, 268, 268, 286, 1170, 10057, 289, 227, 234, 174, 154, 160, 226, 463, 809, 530,

298, 242, 698, 540, 414, 10029, 9406, 259, 174, 223, 364, 3749, 519, 505, 7518, 281, 772, 399, 774,

159, 194, 184, 279, 253, 1680, 7249, 551, 8087, 278, 373, 694, 289, 5027, 8635, 301, 267, 358, 298,

281, 262, 172, 407, 265, 290, 693, 781, 528, 594, 680, 233, 943, 169, 607, 419, 428, 166, 160, 7018,

283, 164, 415, 726, 8835, 987, 176, 546, 441, 214, 750, 209, 236, 532, 736]

clients = [17, 18, 22, 12, 3, 14, 22, 10, 21, 13, 17, 17, 18, 27, 16, 16, 11, 23, 25, 16, 22, 4, 24, 13,

11, 20, 22, 20, 27, 23, 18, 20, 25, 21, 26, 14, 21, 12, 22, 5, 23, 22, 18, 16, 24, 18, 10, 19, 21, 4, 5,

18, 20, 17, 5, 27, 14, 17, 19, 16, 5, 10, 23, 19, 10, 17, 17, 17, 15, 18, 22, 24, 18, 5, 4, 22, 21, 18, 14,

17, 22, 21, 25, 10, 15, 22, 15, 17, 16, 21, 23, 19, 20, 27, 21, 21, 18, 4, 11, 18, 22, 24, 15, 27, 22, 21,

15, 27, 24, 11, 26, 11, 18, 16, 10, 3, 3, 13, 15, 3, 13, 16, 17, 27, 20, 18, 10, 14, 24, 16, 15, 3, 3, 21,

14, 4, 23, 24, 27, 11, 14, 5, 10, 12, 17, 19, 21, 4, 22, 17, 4, 3, 24, 5, 13, 22, 22, 12, 20, 15, 27, 15,

14, 26, 22, 23, 13, 18, 13, 16, 4, 19, 22, 12, 18, 13, 17, 17, 23, 14, 10, 19, 10, 16, 4, 10, 17, 3, 17,

14, 16, 11, 10, 3, 26, 24, 19, 27, 19, 18, 22, 18, 10, 19, 17, 14, 19, 16, 25, 26, 25, 19, 21, 10, 12, 25,

25, 24, 20, 24, 25, 11, 22, 14, 14, 19, 19, 19, 17, 17, 10, 20, 12, 15, 26, 22, 21, 23, 17, 19, 13, 24,

18, 25, 15, 13, 5, 17, 26, 16, 17, 14, 22, 27, 16, 27, 15, 12, 13, 27, 19, 4, 17, 10, 27, 25, 4, 14, 3, 22,

22, 12, 11, 21, 23, 5, 5, 12, 16, 25, 22, 21, 21, 14, 5, 17, 11, 16, 17, 17, 22, 17, 20, 12, 5, 24, 3, 4,

22, 17, 19, 20, 17, 20, 22, 20, 18, 5, 4, 18, 17, 23, 17, 10, 17, 3, 4, 11, 23, 20, 27, 24, 20, 26, 14, 10,

17, 11, 27, 14, 19, 16, 3, 4, 16, 21, 24, 16, 3, 13, 19, 3, 12, 17, 11, 12, 25, 25, 20, 14, 17, 3, 5, 14, 4,

14, 19, 11, 17, 3, 3, 18, 17, 18, 13, 17, 18, 24, 12, 12, 17, 12, 19, 17, 12, 15, 21, 17, 24, 14, 15, 19,

23, 22, 3, 17, 24, 17, 15, 4, 13, 21, 14, 16, 22, 18, 22, 20, 16, 17]

Решение

check = данныеизусловия

clients = данные из условия

#переменные для подсчета по всем районам

#type_1 - количество, check1 - сумма чеков, clients1 - сумма клиентов

type_1 = 0

check1 = 0

clients1 = 0

type_2 = 0

check2 = 0

clients2 = 0

type_3 = 0

check3 = 0

clients3 = 0

for i in range(len(check)):

if check[i]<=250 and clients[i]>=20:

type_1+=1

check1+=check[i]

clients1+=clients[i]

elif check[i]>250 and check[i]<1000 and clients[i]>=10:

type_2+=1

check2+=check[i]

clients2+=clients[i]

elif check[i]>=1000 and clients[i]>=3:

type_3+=1

102

check3+=check[i]

clients3+=clients[i]

#выводим общее количество заведений, средний чек и среднее число клиентов по каждой

категории

print(type_1,check1/type_1,clients1/type_1)

print(type_2,check2/type_2,clients2/type_2)

print(type_3,check3/type_3,clients3/type_3)

Результат, следующий:

135 197.8074074074074 23.081481481481482

215 530.6 15.130232558139534

50 5775.26 3.9

Наименьшее количество заведений имеет третья категория “ресторан”. Отбрасываем

у значений дробную часть и получаем ответ 5775,3(где 5775— среднее значение средних

чеков, а 3— средняя посещаемость)

Ответ:5775.3

Задачи командного этапа

Легенда.

В компании AltFuture стартует новый проект! Создан отдел неЛинейного счастья.

Отдел ведет работу по исследованию условий создания комфортной городской среды

обитания. Градоначальники, заботящиеся о достойном жизнеобеспечении своих граждан,

стали обращаться в новый отдел за советом и анализом ситуации.

Однажды в отдел неЛинейного счастья пришел мэр города Энска. Современный город

— это экосистема. Мэр и администрация Энскастараются создавать в нем наиболее

благоприятные условия для жизни. Junior-стажерам необходимо провести исследование,

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

рекомендации по проектированию или реинжинирингу1 (реконструкции) объектов городской

инфраструктуры.

Вариативность.

Энск несуществующая территория: карта города, данные о погодных условиях,

природе и рельефе, объектах жизнеобеспечения, жителях, отзывы жителей разных районов,

1Реинжиниринг - фундаментальное переосмысление и радикальное перепроектирование для достижения

максимального эффекта производственно-хозяйственной и финансово-экономической деятельности.

103

сайт города Энск – являются синтетическими2 (искусственными, сгенерированными на

компьютере). Для каждого финала генерируются новая матрица данных.

Генеральная задача командного этапа.

Познакомиться с информацией, размещенной на сайте города Энск. Прочитать

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

Выбрать район для исследования. Используя сайт, собрать данные (парсинг,

скрапинг3данных) об объектах городской инфраструктуры выбранного для исследования

квартала. Провести анализ собранных данных. Выяснить, настроение жителей города: что

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

вызывают недовольство. Построить графики, иллюстрирующие результаты анализа данных.

Разработать рекомендации по устранению проблем в том или ином районе. Предложенные

изменения должны укладываться в определенную сумму условных денежных единиц,

выделяемых мэрией Энска, а некоторые решения предполагать вариативность в зависимости

от разных параметров. Оформить отчет об исследовании в виде интерактивной публикации

– вычислительного эссе или представить презентацию с обзором выявленных проблем и

методами их решения

Кроме данных о городе Энск, размещенных на веб-ресурсе, команде Junior-стажеров

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

отыскать всех двойников города Энск по различным параметрам: погодные условия, рельеф,

интересы и занятия жителей, плотность населения, любимые места отдыха горожан,

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

наиболее острых проблем города.

Задача 1. Получение данных в Google Collab.

Основная цель первой задачи – знакомство участников со способами работы с

инструментами GoogleCollab.

Условие задачи.

Необходимо скопировать интерактивную тетрадку шаблон Google Collab к себе на

диск по инструкции из предоставленного файла. Инструкция для задачи представлена в

приложении 1.

2Синтетические (данные, объекты) – это искусственные данные, а точнее «любые данные, применимые к

данной ситуации, которые не получены прямым измерением». 3Веб-скрапинг (парсинг) данных – это извлечение, сбор любой открытой информации с веб-сайта, позволяет

быстро получить и сохранить структурированные данные веб-ресурса.Веб-скрапинг может быть сделан

вручную пользователем компьютера, однако термин обычно относится к автоматизированным процессам,

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

104

Задача 2. Анализ статьи мэра

Эта задача также относится к вводным и меняется в зависимости от команды и этапа

финала. Каждая команда получает ссылку на комплекс входных данных, оформленный в

виде страницы некоторого сайта. Пример оформления входных данных можно увидеть, если

перейти по ссылке ниже.

Пример входныхданных.

https://yupest.github.io/nti/site/final1/district2.html

Описание задачи.

Создайте копию на своем диске предоставленной интерактивной тетради с

переменными в GoogleCollab, для итогового эссе, правильно настройте ее для командной

работы.

Проанализируйте обращение мэра на сайте Дистрикта, выявите по данным мест в

Дистрикте (ниже статьи мэра) какая именно проблема существует в районе из описанных в

выступлении мэра.

Сформулируйте несколько предположений(гипотез), с чем связана данная проблема

в Дистрикте, на основе информации, предоставленной на сайте данных.

Запишите свои предположения в рабочую тетрадь.

В ответе к данному шагу укажите номер Дистрикта, данные которого представлены

на сайте.

Примечание:номер можно определить по выявленной проблеме района.

Решение

Проанализировав статью мэра и данные с сайта, можно определить номер дистрикта.

Про первый Дистрикт мэр говорит: “В одном из районов (District 1) города построен

современный развлекательный центр «Остров пиратов» …” но такого места на сайте нет,

соответственно это не наш дистрикт.

Про третий Дистрикт сказано: “В районе District 3, построен новый жилой квартал

«ГотемСити» …”, но он тоже не представлен на сайте, что позволяет сказать, что это тоже

не анализируемый дистрикт.

Исходя из наблюдений, можно сказать, что Дистрикт 2 является районом,

представленным на сайте, это подкрепляется также тем, что на сайте есть место, о котором

говорит мэр в своей статье (рис. 43).

105

Рис. 43. Искомый район города

Выводы

Прочитав обращение мэра и комментарии пользователей сайта, мы можем

сформулировать главную проблему, связанную с нашим районом, которая волнует жителей

на данный момент:

● что не так с ЦПКиО? Почему он не может по-прежнему собирать огромное

количество людей?

На основе тех же комментариев можем сделать несколько предположений (гипотез) о

причинах возникновения проблемы:

● наиболее часто встречающаяся жалоба – доступность парка;

● отсутствие развития парка, как места отдыха горожан;

● также жалуются на неухоженность данного объекта;

Важной ремаркой будет то, что проблемы, которые были перечислены выше,

присутствовали ещё в 2017 году, а последний комментарий, относящийся к этим

проблемам,появился в 2020 году.

При этом стоит отметить, что горожан полностью устраивает местоположение

данного городского объекта: "Хочется, чтобы парк развивался, местоположение огонь!".

Ответ.

Дистрикт 2

106

Задача 3. Парсинг сайта.

Сайт, пример которого приведен во второй задаче является основой для множества

последующих задач и, соответственно, используется как набор входных данных.

Входные данные.

Сайт для парсинга (см. пример по ссылке из задачи 2, стр. 53).

Условие задачи.

Сайты являются ценным источником информации для исследователей, потому что

содержат не только данные о местах города, но и пользовательские данные.

Однако, для того чтобы получить эту информацию в удобном для анализа виде и

сэкономить время сбора информации, необходимо пользоваться специализированными

инструментами.

Вам предлагается воспользоваться инструментами парсинга (Google Colab и

библиотеки bs4 и requests): извлечь информацию из содержимого элемента html или значений

атрибутов, обращаясь к ним с помощью функции find_all(), на вход которой прописаны теги

и атрибуты (если атрибуты есть) и сделать преобразование типов в соответствии с типом

информации.

При парсинге данных определите у элемента "категория места" значения элементов,

в котором она расположена:

● имя тега;

● имя атрибута;

● значение атрибута;

● и последним словом одно из двух:

o имя атрибута, если значение "категория места" находится в значении атрибута;

o слово "text", если значение категорий находится в содержимом элементе.

В ответе укажите путь к значениям категории мест в порядке, перечисленном выше,

через точку с запятой без пробелов.

Например, если бы необходимо было получить названия мест, то ответ выглядел бы

так: h2,name,locations,text.

Примечание. Какие-то значения могут остаться незаполненными, если их нет. В

ответе обязательно соблюдайте порядок значений в соответствии с представленным

форматом! Пробелов рядом с запятыми быть не должно, но они могут присутствовать между

словами одного значения, если это значение имеет несколько слов, например, значение

атрибута из 2 слов:mycategory - запишется через пробел.

Решение

from bs4 importBeautifulSoup

107

import requests

URL = "https://yupest.github.io/nti/site/final1/district2.html"

html = requests.get(URL).text

soup = BeautifulSoup(html, 'lxml')

categories = [r for r insoup.find_all(attrs={"name": "category"})]

categories[0]

<img alt="Жилойквартал" name="category"

src="../images/Жилойквартал/Жилойквартал1.jpg"/>

Ответ: img,name,category,alt

Задача 4. Парсинг для извлечения данных

Задача является естественным продолжением предыдущей задачи.

Входные данные.

Сайт для парсинга из задачи 2.

Условие задачи

Сайты являются ценным источником информации для исследователей, потому что

содержат не только данные о местах города, но и пользовательские данные.

Однако, для того чтобы получить эту информацию в удобном для анализа виде и

сэкономить время сбора информации, необходимо пользоваться специализированными

инструментами. Вам предлагается воспользоваться инструментами парсинга (Google Collab

и библиотеки bs4 и requests): извлечь информацию из содержимого элемента html или

значений атрибутов, обращаясь к ним с помощью функции .find_all(), на вход которой

прописаны теги и атрибуты (если атрибуты есть) и сделать преобразование типов в

соответствии с типом информации.

Информация, которую необходимо получить и ее тип:

● категория места - строковый тип данных (str) - как вы можете заметить, на сайте

пользователям не представлена категория мест, ее можно узнать только просмотрев

код страницы

● отзывы пользователей по каждому месту - тип данных строковый (str)

● оценка отзывов (rating) - целочисленный тип данных (int)

Для удобства поиска путей (тегов и атрибутов) к информации вы можете просмотреть

код страницы по ссылке в 1 шаге или в переменной soup.

Тексты отзывов и их оценка вам необходима для реализации последующих этапов.

Однако, является не обязательным условием. Если парсинг этой информации не получился,

то в дальнейшем вы сможете вручную скопировать нужную информацию с сайта, но такой

подход, возможно, увеличит время исполнения задачи.

108

Решение

locations = [r.textfor r insoup.find_all('h2')]

locations = locations[2:]

reviews = [r.textfor r insoup.find_all("p", {"class": "review"})]

locations_coordinates = []

lattitudes = [float(r.text) for r insoup.find_all('span', {'name':'lattitude'})]

longitudes = [float(r.text) for r insoup.find_all('span', {'name':'longitude'})]

foriinrange(len(lattitudes)):

locations_coordinates.append([lattitudes[i], longitudes[i]])

likes = [int(r.text) for r insoup.find_all('span', {'name':'count_likes'})]

density = [int(el.div['style'][7:][:-1]) forelinsoup.find_all('div', {'class':'pipe line'})]

После выполнения кода получаем массивы необходимых данных (рис. 20), а именно:

● категория места: строковый тип данных (str). Как вы можете заметить, на сайте

пользователям не представлена категория мест, ее можно узнать только просмотрев

код страницы;

● отзывы пользователей по каждому месту: тип данных строковый (str);

● оценка отзывов (rating): целочисленный тип данных (int)

Рис. 44. Пример полученных данных.

Задача 5. Анализ зеленых насаждений городской среды

Входные данные.

Фотография района с квадрокоптера (первое фото в слайдере в оглавлении сайта

вашего дистрикта).

Условие задачи.

На основе фотографии района с квадрокоптера определить отношение зеленых

насаждений к другим объектам.

Для анализа изображения воспользуйтесь сервисом по определению цветов с

картинки (например: https://hysy.org/get_colors):

1) установите максимальный размер кисти;

2) выберите 8 цветов палитры;

3) скачайте с сайта своего Дистрикта фотографию с квадрокоптера и загрузите ее в

сервис;

109

4) сложите процентные значения зеленых цветов, отличные от 0%, получившиеся при

анализе фото сервисом;

5) постройте диаграмму пирог, показывающую отношение зеленых насаждений района

к "не зеленым". Отобразите результат в своем эссе;

6) на основе получившейся диаграммы сделайте вывод об уровне озеленения города;

7) оформите выводы в эссе, прикрепите к ним диаграмму.

Решение.

Фотография района Дистрикта выглядит следующим образом (рис. 45):

Рис. 45. Фотография района

При загрузке изображения на сервис определения цветов с нужными настройками

получаем следующий результат (рис. 46):

110

Рис. 46. Результат анализа цветов

Исходя из результата можно сделать следующий вывод: есть только один зеленый

цвет, содержание которого более 0%. Это первый цвет (рис. 47).

Рис. 47. Зеленый цвет, содержание которого больше 0

На результате видно, что его содержание 75%, соответственно нам нужно построить

круговую диаграмму, где зеленых насаждений будет 75%, а “не зеленых” - оставшиеся 25%.

Воспользуемся тетрадкой Google Collab и напишем код для ее создания.

importmatplotlib.pyplotasplt

green = 75.03

other = 24.96

values = [green, other]

labels = ["зеленый " + str(green) + "%", "незеленый " + str(other) + "%"]

plt.pie(values, labels=labels)

plt.title("District 2")

plt.show();

111

Рис. 48. Результат работы программы

Вывод

Из представленной в слайдере сайта картинке мы получаем соотношение зеленых

насаждений к “не зеленым”. На основании данного соотношения можно сделать вывод, что

уровень озеленения в Дистрикте довольно хороший (3/4 от общего), этот показатель гораздо

лучше показателя в 2019 году, что несомненно говорит о том факте, что власти города

прислушиваются к пожеланиям горожан.

Задача 6. Анализ зеленых насаждений (нахождение аналога)

Задача не может быть решена без результатов предыдущей задачи. Такой подход к

построению серии последовательных задач позволяет косвенно контролировать выбор

командами решаемых задач, способствует концентрации внимания.

Входные данные.

Диаграмма-пирог с результатом анализа насаждений в Дистрикте (задача 5, рис. 48)

Условие задачи.

Найдите город-аналог (рис. 49) со схожим процентным содержанием зеленых

насаждений по сравнению с вашим районом. В ответе укажите название найденного города.

Рис. 49. Города-аналоги предложенного района.

112

Решение.

Для решения этой задачи возьмем диаграмму, получившуюся в задаче 5 (рис. 24)

На основе диаграммы и сравнения её с образцами из условия,можно сделать вывод,

что наиболее схожее процентное содержание зеленых насаждений в городе Уфа. Значения

почти равны и отличаются лишь на сотые доли.

Ответ.

Уфа

Задача 7. Интересы Дистрикта

Входные данные.

Набор исходных данных представляет собой заранее подготовленный dataset в

отдельном файле, который участники могут посмотреть и скачать через электронную среду.

Формат файла: *.csv, что позволяет разработать не только программное решение задачи, но

и найти решение с помощью MicrosoftExcel.

Условие задачи.

Проанализируйте интересы исследуемого района города N на основе данных,

представленных в файле интересов Дистрикта.

Найдите 5 типов интересов, которые чаще всего встречаются в Дистрикте.

Постройтестолбчатыйграфикинтересов.

Решение

import pandas as pd

import collections

importmatplotlib.pyplotasplt

defget_top(filename, most_common = 5):

df = pd.read_csv(filename)

column = df.columns[0]

c = collections.Counter()

for word in df[column]:

c[word] += 1

c[column] += 1

answer = []

for place inc.most_common(most_common):

answer.append(place[0])

return answer

origin = get_top('interest_nsk.csv')

print(';'.join(origin))

leisure = []

leisure_weight = []

for place inc.most_common(5):

leisure.append(place[0])

leisure_weight.append(place[1])

113

plt.figure()

plt.bar(leisure, leisure_weight)

plt.show()

Результат работы программы представлен на рис. 50.

Рис. 50. Результаты анализа интересов жителей района

На графике можно увидеть, что жителям анализируемого Дистрикта наиболее

интересны: доступная среда, скалодром, тир, кафе и кино

Задача 8. Интересы Дистрикта (поиск аналога)

Входные данные.

График интересов Дистрикта (задача 7, рис. 50), файл интересов Дистрикта, файлы

интересов трех других городов, представленные отдельными dataset-файлами.

Условие задачи.

Проанализируйте данные в файлах по интересам трех других городов. Составьте

рейтинг из 5 приоритетных интересов жителей.

Сравните результаты интересов вашего Дистрикта и получившиеся топы интересов

трех других городов. Определите город(город-аналог), наиболее похожий по интересам на

ваш Дистрикт.

В ответе к данному шагу укажите три приоритетных часто встречающихся интереса

в городе-аналоге через, без пробелов.Например: санки;кофе;кактусы

114

Решениезадачи.

import pandas as pd

import collections

defget_top(filename, most_common = 5):

df = pd.read_csv(filename)

column = df.columns[0]

c = collections.Counter()

for word in df[column]:

c[word] += 1

c[column] += 1

answer = []

for place inc.most_common(most_common):

answer.append(place[0])

return answer

origin = get_top('interest_nsk.csv')

others = []

closest = 0

closest_index = 0

foriinrange(1, 4):

others.append(get_top('interest_{}.csv'.format(i)))

cnt = 0

for place in origin:

if place inothers[-1]:

cnt += 1

ifcnt> closest:

closest_index = i - 1

closest = cnt

cnt = 0

print(';'.join(others[closest_index][:3]))

Ответ.

доступная среда;тир;скейтпарк

Задача 9. Публикация аналитических выводов

Входные данные.

График интересов Дистрикта, полученный при решении задачи 7.

Условие задачи.

На основе полученного аналитиком команды графика интересов вашего Дистрикта

сделайте выводы по интересам жителей вашего района и опубликуйте их в тетради вместе с

графиком.

Решение.

На графике интересов Дистрикта (Рис. 50) отображены 5 наиболее популярных мест

среди жителей района.

115

Вывод.

Проанализировав график интересов жителей Дистрикта, мы можем заметить

следующее.

Самым популярным интересом является “доступная среда” — это может

свидетельствовать о вовлеченности граждан в дела города и неравнодушие к людям с

ограниченными возможностями, а также о том, что в городе доступная среда не

сформирована.

Интересы “скалодром”, “тир” и “кино” относятся к развлекательным, соответственно

жителям не хватает именно таких мест, это следует учесть при реконструкции города и

запланировать подобные элементы инфраструктуры.

Интерес к “кафе” говорит о том, что в городе мало мест для питания, это тоже стоит

учитывать при формировании новой инфраструктуры Дистрикта.

Задача 10. Визуализация мест

Входные данные.

Карта дистрикта, координаты мест, названия точек, категория точек, число лайков

точки, группированные в dataset-файлы, интерактивная тетрадь с переменными.

Условие задачи.

Создайте визуализацию всех точек района по их координатам на карте, такие точки

называют геометками. При визуализации геометок отобразите популярность и тип каждой

метки.

Для реализации в Google Collab: чтобы узнать, в каких переменных содержатся

нужные данные, не забывайте пользоваться функцией find_vars(17) в вашей интерактивной

тетрадке. Создайте визуализацию геоточек (по координатам: широта и долгота) на карте с

ранжированием по популярности и типу мест. Для этого используйте подложку -

изображение с сайта вашего Дистрикта (третье фото в слайдере в оглавлении страницы). Тип

места — это категория (вы можете использовать переменную результата парсинга или взять

значение из готовых данных). Популярность места определяется числом лайков. Узнайте

уникальное число категорий, чтобы решить задачу классификации категорий на карте.

Дизайнер создает иконки для маркеров по числу уникальных категорий,

различающихся по цвету, форме или цвету и форме одновременно. Для этого загрузите

иконки на хостинг картинок. Скопируйте ссылки на иконки и присвойте их в соответствии с

нужными категориями мест. Размер иконки должен показывать популярность места. А

значит, нужно задать значение лайка - размеру маркера. Отобразите карту в своем ноутбуке

Google Collab.

116

Альтернативное решение без программирования: Вам предложено изображение

карты с красными маркерами - местами (шаблон карты меток).

Чтобы узнать какая точка к какому месту относится - рассмотрите интерактивную карту

(последний слайд) в слайдере. При клике на точки отображается названия мест. Изучите

таблицу мест (файл с 3 столбцами: название мест, их категория и количество лайков) и

определите количество уникальных категорий. В графическом редакторе нанесите поверх

этого изображения ваши иконки, отличающиеся для каждой категории по форме, цвету или

форме и цвету одновременно. Размером иконки покажите популярность места. Готовую

карту поместите в Google Collab.

В ходе этого задания определите категорию и название самого популярного места.

Формат ответа: категория-название. Через тире, без пробелов, при этом, если одна из

частей ответа состоит из 2х и более слов пробел между ними сохраняется. Пробел при этом

должен быть один!

Например:кафе-улыбка радости парк-динамо развлекательный центр-мир детства

кафе-кафе радость

Решение.

Используя все входные данные о Дистрикте и предварительно отрисовав иконки для

каждой категории места получаем следующую карту (рис. 51):

117

Рис. 51. Карта района с метками

Из нее явно сказать, какая из точек наиболее популярно нельзя. Поэтому мы заново

просматриваем количество «лайков» у каждого места. В жилом комплексе “Ласточка” 97

«лайков» что является наибольшим значением среди всех выделенных жителями мест.

Ответ: жилой комплекс-ласточка.

Задача 11. Визуализация мест.

Входные данные.

Карта Дистрикта с геометками (задача 10, рис. 51).

Условие задачи.

Разместите получившуюся при решении задачи 10 карту Дистрикта в эссе (тетрадь

Google Collab), сделайте выводы о корректности расстановки геометок.

Ответ.

Исходя из этой карты, мы видим, что ЦПКиО имеет самую маленькую геометку, хотя

его местоположение достаточно хорошее.

Задача 12 Частотный анализ отзывов.

Входные данные.

Данные по отзывам мест (входной datasetзадачи 4).

Условие задачи.

Альтернативный способ получения данных по отзывам мест: если вы пропустили

задачу 4 или не смогли её решить, можно собрать все отзывы с сайта (см. задачу 2) вручную,

т. е. скопировать тексты отзывов.

Пользователи на сайте делятся своим мнением в виде отзывов о различных местах

Дистрикта.

Сгенерируйте облако слов по всем отзывам, чтобы распределить слова отзывов по

частоте их упоминания. Исключите такие слова как: место, здесь, очень. Возьмите для

анализа отзывов только слова длиной от 4 букв и больше.

Определите ключевое существительное, которое пользователи используют чаще

всего. Если самое упоминаемое слово не является существительным, исключите его из

выборки и сгенерируйте облако слов еще раз. Укажите существительное в ответе, сохраняя

форму слова.

Решение.

from bs4 importBeautifulSoup

import requests

118

defisNum(string):

digits = [iforiinrange(10)]

foriin digits:

if str(i) in string: returnTrue

returnFalse

URL = "https://yupest.github.io/nti/site/final1/district2.html"

html = requests.get(URL).text

soup = BeautifulSoup(html, 'lxml')

symbols_to_be_removed = ['.', ',', ')', ':', ';', '!', "?", "-", "«", "»", '\r\n', '"']

frequency_list = {}

for j in reviews:

review = j

foriinsymbols_to_be_removed:

review = review.replace(i, "")

for string inreview.split(" "):

string = string.lower()

iflen(string) >4andnotisNum(string):

if string infrequency_list.keys():

frequency_list.update({string: int(frequency_list.get(string)) + 1})

else:

frequency_list.update({string: "1"})

frequency_words = ""

foriinrange(len(frequency_list)):

metric = frequency_list.popitem()

foriinrange(int(metric[1])):

frequency_words += metric[0] + " "

print(metric)

Рис. 52. Результат работы программы составления облака слов.

Так как в ответе требуется указать существительное, то необходимо исключить такие

слова: здесь, много, очень, детская, больше, хорошо. После этого мы можем заметить, что

наиболее большим словом из оставшихся является: площадка

Ответ: площадка

Задача 13. Семантический анализ отзывов

119

Входные данные.

Данные по отзывам мест (задача 4, или скопированные с сайта вручную в один файл),

данные по оценке отзывов (задача 4)

Условие задачи.

Альтернативный способ получения данных по отзывам мест: если вы пропустили

задачу 4 или не смогли её решить, можно собрать все отзывы с сайта вручную, т. е.

скопировать тексты отзывов. Затем добавить во втором столбце оценку по каждому отзыву,

если у вас не вышло извлечь эти данные парсингом сайта.

Семантический анализ подразумевает распределение отзывов пользователей по

настроению, которое бывает негативным и позитивным.

Отзывы имеют оценку пользователей. Считается, что рейтинг от 3 и ниже определяет

отзыв как негативный, а позитивные имеют оценку 4 или 5.

Распределите отзывы пользователей с сайта дистрикта города N по настроению.

Постройте облака слов к каждому из настроений, чтобы найти главную позитивную

сущность (существительное слово) и негативную. Исключите из выборки слово "место,

очень, здесь". Возьмите слова от 4 букв.

В ответе напишите эти слова в виде: негативное слово;позитивное слово.

Слова указываются через «;» и соблюдается их порядок (сначала негативное, затем

позитивное). Ответ вводится без пробелов.Например: мусор;скамейка

Решение.

positive = []

negative = []

locations_blocks = soup.find_all("div", {"class": "col-md-4 project-item mix"})

user_ratings = [r.textfor r insoup.find_all("span", {"class": "rating"})]

foriinrange(len(user_ratings)):

if int(user_ratings[i]) >3:

positive.append(reviews[i])

else:

negative.append(reviews[i])

positive_frequency_list = {}

negative_frequency_list = {}

symbols_to_be_removed = ['.', ',', ')', ':', ';', '!', "?", "-", "«", "»", '\r\n', '"']

for j in positive:

review = j

foriinsymbols_to_be_removed:

review = review.replace(i, "")

for string inreview.split(" "):

string = string.lower()

iflen(string) >= 4andstring.lower() != "очень"andstring.lower() != "место"andstring.lower()

!= "здесь"andnotisNum(string):

if string inpositive_frequency_list.keys():

positive_frequency_list.update({string: int(positive_frequency_list.get(string)) + 1})

120

else:

positive_frequency_list.update({string: "1"})

for j in negative:

review = j

foriinsymbols_to_be_removed:

review = review.replace(i, "")

for string inreview.split(" "):

string = string.lower()

iflen(string) >= 4andstring.lower() != "очень"andstring.lower() != "место"andstring.lower()

!= "здесь"andnotisNum(string):

if string innegative_frequency_list.keys():

negative_frequency_list.update({string: int(negative_frequency_list.get(string)) + 1})

else:

negative_frequency_list.update({string: "1"})

positive_words = ""

negative_words = ""

print("Positive: ")

foriinrange(len(positive_frequency_list)):

metric = positive_frequency_list.popitem()

print(metric)

foriinrange(int(metric[1])):

positive_words += metric[0] + " "

print("Negative: ")

foriinrange(len(negative_frequency_list)):

metric = negative_frequency_list.popitem()

print(metric)

foriinrange(int(metric[1])):

negative_words += metric[0] + " "

Рис. 53. Результат работы программы

В условии сказано, что нам необходимо существительное, поэтому исключаем слова:

чтобы, было, утрам, меня, много. После этого мы можем заметить, что наиболее большим

словом из оставшихся является: парк

Из прошлой задачи, мы выяснили, что наиболее популярным словом в позитивных

отзывах является “площадка”, соответственно ответом будет: парк;площадка

121

Ответ

парк;площадка

Задача 14. Анализ отзывов (завершение)

Входные данные.

Облако часто упоминаемых слов (задача 12), Облако слов позитивного настроения

(задача 13), Облако слов негативного настроения (задача 13)

Условия задачи.

По результатам анализа отзывов добавьте в эссе получившиеся облака слов и выводы,

которые по итогу решения данных задач можно сформулировать

Решение.

from wordcloud import WordCloud

import matplotlib.pyplot as plt

wordcloud = WordCloud(background_color='white').generate(frequency_words)

plt.imshow(wordcloud, interpolation='bilinear')

plt.axis('off')

plt.show()

wordcloud = WordCloud(background_color='white').generate(positive_words)

plt.imshow(wordcloud, interpolation='bilinear')

plt.axis('off')

plt.show()

wordcloud = WordCloud(background_color='white').generate(negative_words)

plt.imshow(wordcloud, interpolation='bilinear')

plt.axis('off')

plt.show()

122

Рис. 54. Результат работы программы, составляющую комплекс облаков слов.

Выводы.

Не беря в расчет наречия и рассматривая только существительные, можно четко

проследить корреляцию наиболее встречающегося негативного слова "парк" с отзывами

пользователей об этом месте. Наиболее встречающееся позитивное слово "площадка" в

совокупности с прилагательным "детская" наталкивает на мысль, что у многих, кто оставлял

позитивные отзывы, есть дети, что позволяет уже дальше делать выводы по поводу среднего

возраста, проживающего в городе населения, а также оценить потребности именно для этих

возрастных категорий граждан.

Задача 15. Посещаемость мест

Входные данные.

Посещаемость мест по дням недели. Задача для аналитика команды.

Условие задачи.

На основе данных посещаемости мест с сайта необходимо найти самое посещаемое

место в вашем Дистрикте.

123

Данные представляют собой процент посещаемости каждого места в вашем районе по

дням недели.

Постройте столбчатую диаграмму по среднему значению посещаемости мест в

Дистрикте. Найдите самое посещаемое место в вашем Дистрикте города N.

В ответе запишите название найденного места.

Решение

density_by_object = []

foriinrange(0, len(locations) * 7, 7):

density_by_object.append(density[i:i+7])

average_density = [round(sum(i) / 7, 2) foriindensity_by_object]

plt.bar(locations, average_density, width=.5)

plt.gca().set_xticklabels(locations, rotation=30, horizontalalignment='right')

plt.title("Средняя посещаемость объектов", fontsize=22)

plt.ylabel("чел/день")

plt.ylim(0, max(average_density))

plt.show()

print("Самоепосещаемоеместо -", locations[average_density.index(max(average_density))])

print(max(average_density))

Рис. 55. Диаграмма средней посещаемости объектов

На графике видно, что самым посещаемым местом является - Галерея Детроит.

Ответ: Галерея Детроит

124

Задание 16. Посещаемость мест

Входные данные.

Столбчатая диаграмма по среднему значению посещаемости мест в Дистрикте (задача

15, рис. 55)

Условия задачи.

Оформите результаты анализа посещаемости мест Дистрикта в эссе, добавьте в него

получившуюся диаграмму и сделайте выводы.

Решение. Разместить в тетради диаграмму (рис. 55).

Выводы

Самым непопулярным местом является парк культуры и отдыха, о котором и говорит

мэр. Популярными местами являются: галерея Детроит, изумрудный город, Тридевятое

королевство.

Если посмотреть на отзывы этих мест, то видна взаимосвязь между отзывами жителей

Дистрикта и средней частотой посещения того или иного места, что говорит о полезности

отзывов для сбора причин популярности и антипопулярности мест.

Задача 17. Центрированная карта

Входные данные.

Граф дорог Дистрикта (рис. 56)

Рис. 56. Граф дорого Дистрикта

Условие задачи.

125

Центрированной точкой считается та, из которой сумма расстояний до остальных

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

точками района(графа) представленной ниже. При этом перекресток точкой не считается.

Определите номер самой центрированной точки по району, если их несколько, то укажите

одну(любую) из них.

Решение

defDijkstra(start, finish):

global graph, size

d = [float('inf') foriinrange(size)]

parent = [Noneforiinrange(size)]

visited = [Falseforiinrange(size)]

d[start] = 0

foriinrange(size):

vertex = -1

for j inrange(size):

ifnot visited[j] and (vertex == -1or d[j] < d[vertex]):

vertex = j

if d[vertex] == float('inf'):

break

visited[vertex] = True

for j inrange(size):

if graph[vertex][j] and (d[vertex] + 1) < d[j]:

d[j] = d[vertex] + graph[vertex][j]

parent[j] = vertex

return d[finish]

graph = [

[0,0,0,0,0,0,0,0,1,0,0,0,0,1,0],

[0,0,1,0,0,0,0,0,0,0,0,1,0,0,1],

[0,1,0,0,1,0,1,0,0,0,1,0,1,0,0],

[0,0,0,0,1,0,0,1,0,0,0,0,0,0,0],

[0,0,1,1,0,0,1,0,0,0,0,0,0,0,1],

[0,0,0,0,0,0,0,0,0,1,0,0,1,1,0],

[0,0,1,0,1,0,0,0,0,0,0,0,0,1,0],

[0,0,0,1,0,0,0,0,0,0,0,0,0,0,1],

[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,1,0,0,0,0,0,0,0,0,0],

[0,0,1,0,0,0,0,0,0,0,0,0,0,0,0],

[0,1,0,0,0,0,0,0,0,0,0,0,0,1,0],

[0,0,1,0,0,1,0,0,0,0,0,0,0,0,0],

[1,0,0,0,1,1,1,0,0,0,0,1,0,0,0],

[0,1,0,0,1,0,0,1,0,0,0,0,0,0,0]]

size = len(graph)

road_sum = []

126

for _frominrange(size):

d = []

for _to inrange(size):

d.append(Dijkstra(_from, _to))

road_sum.append(sum(d))

fori, value inenumerate(road_sum):

print("For vertex # {}: {}".format(i, value))

Рис. 57. Результат работы программы поиска центрированной точки

Из решения видно, что центрированной точкой является точка под номером 13.

Ответ: 13

Задача 18. Непопулярность точки

Входные данные.

Посещаемость мест по дням недели для аналитика или файл с плотностью района,

название проходного места (результаты решения задачи 17)

Условия задачи.

Дополнительное пояснение по входным данным в интерактивной тетрадке и

получению данных из нее:

● чтобы получить координаты мест необходимо после переменной указать

descret_coords в квадратных скобках. Например, data['descret_coords'], где data–

название вашей переменной с плотностью, выведет список всех координат;

● чтобы узнать посещаемость по часам по одному конкретному месту,

необходимо обратится к нему по его координатам. Например, если координаты

места равны 1 и 2, то, чтобы получить посещаемость по каждому из 24 часов

127

этой точки, обратитесь data['distrib'][1][2], где data - название вашей

переменной с плотностью.

Сравните данные посещаемости (по любому из файлов) центрированной точки (если

их несколько, то выбранной вами в задаче 17) и самого посещаемого места. Сделайте

соответствующие выводы.

Сделайте предположения почему центрированная точка может оказаться не самой

посещаемой.

Опубликуйте свои выводы в эссе.

Вычислите у центрированной точки максимальное число посещений за день и

укажите его в ответе к данному заданию.

Решение.

find_vars(18)

coordinates = data_2_nsk["descret_coords"]

print(coordinates)

density_central_by_day = data_2_nsk['distrib'][4][18]

sum_central = 0

max_by_day = max(density_central_by_day)

foriindensity_central_by_day:

sum_central += i

density_most_visited_by_day = data_2_nsk['distrib'][3][8]

sum_most_visited = 0

foriindensity_most_visited_by_day:

sum_most_visited += i

print("Max visitors coeff: " + str(max_by_day))

print("Most visited average by day visitors coeff: " + str(sum_most_visited / 24))

print("Central average by day visitors coeff: " + str(sum_central / 24))

Рис. 58. Результат работы программы анализа непопулярности точек

Ответ:7

128

Вывод

Проанализировав посещаемость центрированной точки и сравнив ее с

посещаемостью самой популярной точки, нами было замечено, что самая посещаемая точка

не является центрированной.

Проанализировав полученные данные и результаты исследований из задач 1–17

можно сделать вывод, что центрированной точкой является тот самый проблемный парк, с

котором нам просит помочь мэр Дистрикта. Жители его не любят по некоторым причинам и

именно поэтому не посещают.

Задача 19. Плотность района

Входные данные.

Dataset-файл с массивами, информирующими о плотности района

Условие задачи.

Дополнительное пояснение по входным данным в интерактивной тетрадке и

получению данных из нее:

● чтобы получить координаты мест необходимо после переменной указать

descret_coords в квадратных скобках. Например, data['descret_coords'], где data

- название вашей переменной с плотностью, выведет список всех координат;

● чтобы узнать посещаемость по часам по одному конкретному месту,

необходимо обратится к нему по его координатам. Например, если координаты

места равны 1 и 2, то, чтобы получить посещаемость по каждому из 24 часов

этой точки, нужно обратитесь data['distrib'][1][2], где data - название вашей

переменной с плотностью.

Рассчитайте плотность Дистрикта города N по данным плотности района.

Проанализируйте данные по плотности Дистрикта. В каждой ячейке матрицы

представленной в файле храниться информация о плотности в определенной точке города в

определенное время (усредненно за год).

Укажите два числа через запятую (в итоге дробное число):

● усредненное значение плотности в районе в 14:00

● усредненное значение плотности для всего района

При этом укажите только целую часть, дробную часть получившихся значений

отбросьте (например, 29,87 при отбрасывании дробной части станет 29).

Например:23,28 где 23 - усредненное значение плотности в районе в 14:00, а 28 - значение

плотности для всего район

Решение.

129

import pickle

import pandas as pd

defget_mean_day_data(filename):

data = None

withopen(filename, 'rb') asfile:

data = pickle.load(file)

my_series = pd.Series(data)

distrib = [0foriinrange(24)]

day_amount = 0

for days inmy_series['distrib']:

for day in days:

distrib += day

day_amount += 1

distrib /= day_amount

returndistrib

region_density = get_mean_day_data("data_2_nsk.pickle")

region_mean = sum(region_density) / len(region_density)

print(','.join([str(int(region_density[14])), str(int(region_mean))]))

Ответ

5,3

Задача 20. Поиск аналогичного по плотности района

Входные данные.

Dataset-файл с массивами, информирующими о плотности района, файлы с информацией о

плотности трех других городов

Условие задачи.

Дополнительное пояснение по входным данным в интерактивной тетрадке и

получению данных из нее:

● чтобы получить координаты мест необходимо после переменной указать

descret_coords в квадратных скобках. Например, data['descret_coords'], где data -

название вашей переменной с плотностью, выведет список всех координат;

● чтобы узнать посещаемость по часам по одному конкретному месту, необходимо

обратится к нему по его координатам. Например, если координаты места равны 1 и 2,

то, чтобы получить посещаемость по каждому из 24 часов этой точки, нужно

обратитесь data['distrib'][1][2], где data - название вашей переменной с плотностью.

Проанализируйте данные о средней плотности из районов трех других городов и

плотности вашего Дистрикта.

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

знаков после запятой.

130

Сравните усредненную плотность своего района и районов других городов.

Определите город аналог для вашего Дистрикта, это тот город из трех рассмотренных, у

которого показатель плотности наиболее близок к значению плотности в вашем Дистрикте

Определите номер города-аналога плотности Дистрикта по номеру в имени файла

(для задачи 25)

В ответ укажите:

● усредненное значение плотности вашего Дистрикта

● усредненное значение плотности города аналога

Формат ответа: усредненное значение вашего района-усредненное значение

найденного города аналога. Через тире, без пробелов, при этом между целой частью числа и

дробной ставьте точку. Пробелов не должно быть в ответе.

Например: 23.23-24.45

Решение.

importpickle

importpandasaspd

defget_mean_day_data(filename):

data = None

withopen(filename, 'rb') asfile:

data = pickle.load(file)

my_series = pd.Series(data)

distrib = [0foriinrange(24)]

day_amount = 0

for days inmy_series['distrib']:

for day in days:

distrib += day

day_amount += 1

distrib /= day_amount

returndistrib

region_density = get_mean_day_data("data_2_nsk.pickle")

region_mean = sum(region_density) / len(region_density)

min_diff = None

other_cities_mean = []

twin_mean = 0

foriinrange(1, 4):

city_density = get_mean_day_data('data_othrer_city{}.pickle'.format(i))

other_cities_mean.append(sum(city_density) / len(city_density))

ifmin_diff != None:

ifabs(region_mean - other_cities_mean[-1]) <min_diff:

min_diff = abs(region_mean - other_cities_mean[-1])

twin_mean = other_cities_mean[-1]

else:

min_diff = abs(region_mean - other_cities_mean[-1])

twin_mean = other_cities_mean[-1]

131

s_region_mean = str(region_mean)

s_twin_mean = str(twin_mean)

print('-'.join([s_region_mean[:s_region_mean.find('.') + 3], s_twin_mean[:s_twin_mean.find('.') +

3]]))

Ответ: 3.40-3.40

Задача 21. Посещаемость города-аналога

Входные данные.

Dataset-файл с массивами, информирующими о плотности района, столбчатая

диаграмма по среднему значению загруженности мест в Дистрикте (задача 15, рис. 56)

Условие задачи.

Задание программиста: построить столбчатую диаграмму по показателю о средней

посещаемости мест Дистрикта.

Задание аналитика: взять данные из задачи 15, рис. 55, а данные по текущему шагу

взять изрезультатов работы программиста команды по этому же заданию. Сравните

полученные результаты по вашему Дистрикту из двух источников и сделайте выводы по

точкам с низкой посещаемостью и максимальной. Оформите результаты сравнения в

итоговом эссе.

Решение

Столбчатая диаграмма в задании 15, рис. 31.

importmatplotlib.pyplotasplt

defcalculateVisitors():

places_average_density = []

foriinrange(20):

total_sum = 0

for j inrange(20):

sum = 0

for k inrange(24):

sum += series["distrib"][i][j][k]

sum /= 24

total_sum += sum

total_sum /= 20

places_average_density.append(total_sum)

returnplaces_average_density

withopen('data_othrer_city2.pickle', 'rb') as f:

data = pickle.load(f)

f.close()

series = pd.Series(data)

places = [str(i) foriinrange(1, 21, 1)]

print(calculateVisitors())

132

plt.bar(places, calculateVisitors(), width=.5)

plt.gca().set_xticklabels(places)

plt.title("Средняя посещаемость объектов города-аналога за 20 дней", fontsize=22)

plt.ylim(0, max(calculateVisitors()))

plt.show()

Рис. 59. Средняя посещаемость объектов города-аналога.

find_vars(21)

withopen('data_2_nsk.pickle', 'rb') as f:

data = pickle.load(f)

f.close()

series = pd.Series(data)

places = [str(i) foriinrange(1, 21, 1)]

print(calculateVisitors())

plt.bar(places, list(calculateVisitors()), width=.5)

plt.gca().set_xticklabels(places, rotation=30, horizontalalignment='right')

plt.title("Средняя посещаемость объектов города Энск 2 Дистрикта за 20 дней", fontsize=22)

plt.ylim(0, max(calculateVisitors()))

plt.show()

Рис. 60. Средняя посещаемость объектов Дистрикта 2 г. Энск.

В целом данные по коэффициенту посещаемости за 20 дней не сильно отличаются,

однако можно заметить, что в целом коэффициент посещаемости объектов в городе Энск

выше на ~29%.

Задача 22. Настроение города

133

Условие задачи.

Напишите функцию, которая по условию, указанному ниже, расшифровывает

цветовой код улицы.

На вход подается цвет в формате RGB, например (55, 99, 20), а также массив значений

цветового кода.

Массив значений цветового кода:colors = ["элегантность", "сдержанность",

"спокойствие", "стабильность", "эйфория", "нежность", "надежность", "великодушие",

"экстравагантность", "превосходство", "величие", "бойкость", "благосостояние",

"благородство", "плодовитость"]

Для определения настроения нужно вычислить некоторый "индекс" цвета. Его

нахождение возможно с помощью следующего алгоритма:

Если r+g+b< 255

то index = (r+g+b)//(255//длина массива colors) #здесь // - деление без остатка

Иначе Если r+g< 255

то index = (r+g)//(255//длина массива colors)

Иначе Если g+b< 255

то index = (g+b)//(255//длина массива colors)

Иначе

index = max(r, g, b) //(255//длина массива colors)

Полученный индекс будет являться индексом слова-настроения соответствующего

цвету.

Для ответа запишите значение цвета одним словом. Например: величие.

Решение.

defcolor_code(rgb):

r, g, b = rgb

colors = ["элегантность", "сдержанность", "спокойствие", "стабильность", "эйфория",

"нежность", "надежность", "великодушие", "экстравагантность", "превосходство",

"величие", "бойкость", "благосостояние", "благородство", "плодовитость"]

index = 0

if (r+g+b) <255:

index = (r+g+b)//(255//len(colors))

elif (r+g) <255:

index = (r+g)//(255//len(colors))

elif (g+b) <255:

index = (g+b)//(255//len(colors))

else: index = max(r,g,b)//(255//len(colors))

return colors[index]

defget_each_color(rgb):

rgb = rgb.replace('(', '')

rgb = rgb.replace(')', '')

134

rgb = rgb.replace(' ', '')

returnlist(map(int, rgb.split(',')))

print(color_code(get_each_color(input())))

Задача 23. Исследование климата

Входные данные.

Dataset-файлы с климатическими условиями Дистрикта и климатическими условиями

трех других городов

Условие задачи.

Вычислите среднее значение температуры воздуха анализируемого вами района

города N по данным, представленным в соответствующем файле.

По полученному среднему значению температуры Дистрикта найдите его

"климатический" двойник (наиболее похожее значение) среди данных о районах других

городов. Для нахождения двойника необходимо найти среднюю температуру для районов

трех других городов. Округлите все результаты до двух знаков после запятой.

Укажите два числа: первым укажите среднее значение температуры (среднее

климатическое района) вашего Дистрикта, вторым - его двойника. В качестве разделителя

между целой и дробной частью числа используйте точку, а между значениями температуры

используйте «;».

Примерответа: 23.23;4.45

Решение.

importpandasaspd

our_mean = None

df = pd.read_csv('nsk_temp.csv')

our_mean = df['temp'].mean()

twin = 0

other_means = []

foriinrange(1, 4):

df = pd.read_csv('other_city{}.csv'.format(i))

other_means.append(df['temp'].mean())

min_d = abs(our_mean - other_means[0])

twin = other_means[0]

for mean inother_means:

ifabs(our_mean - mean) <min_d:

min_d = abs(our_mean - mean)

twin = mean

print("{:.2f};{:.2f}".format(our_mean, twin))

Ответ:28.67;27.57

135

Задача 24. Исследование климата

Входные данные.

Среднее климатическое района: результаты, полученные при решении задачи 23.

Условие задачи.

Внесите в итоговую публикацию получившиеся ранее значение средней температуры

воздуха исследуемого Дистрикта

Ответ: средняя температура воздуха в анализируемом Дистрикте составляет 23.23.

Задача 25. Настроение города

Входные данные.

В качестве входных данных нужно взять ответ, полученный при решении 20 задачи,

а именно: номер города аналога Дистрикта по посещаемости, работоспособный код по

определению настроения города можно получить из решения задачи 22.

Условие задачи.

По номеру города аналога, возьмите из таблицы ниже координату точки. Номер

соответствует номеру внутри файла анализируемых данных.

Таблица 3. Координаты некоторых точек городов-аналогов

Отыщите эту точку на Google Картах, перейдите в режим панорамы. Сделайте

принтскрин улицы. И с помощью сервиса определения главных цветов (см. задачу 5)

определите три ключевых цвета улицы.

С помощью созданного в задаче 22кода расшифруйте полученный цветовой код.

Запишите в эссе результаты расшифровки цветового кода улицы, добавьте принскрин

улицы, название места с карты и сделайте вывод о том, имеет ли смысл скопировать этот

цветовой код в вашем Дистрикте.

Решение.

Номер города, усредненное значение плотности которого является аналогом

Дистрикта 2, – 1, поэтому координаты улицы: 59°56'49.3"N 30°20'02.6"E

Название места: Центральный р-н, Санкт-Петербург, 191186.

Основные 3 цвета улицы и дистрикта представлены ниже, как и сама панорама улицы.

Вывод можно сделать следующий, дистрикту не хватает плодовитости.

136

defcolor_code(rgb):

r, g, b = rgb

colors = ["элегантность", "сдержанность", "спокойствие", "стабильность", "эйфория",

"нежность", "надежность", "великодушие", "экстравагантность", "превосходство",

"величие", "бойкость", "благосостояние", "благородство", "плодовитость"]

index = 0

if (r+g+b) <255:

index = (r+g+b)//(255//len(colors))

elif (r+g) <255:

index = (r+g)//(255//len(colors))

elif (g+b) <255:

index = (g+b)//(255//len(colors))

else: index = max(r,g,b)//(255//len(colors))

return colors[index]

defget_each_color(rgb):

rgb = rgb.replace('(', '')

rgb = rgb.replace(')', '')

rgb = rgb.replace(' ', '')

returnlist(map(int, rgb.split(',')))

region_rgb = ["(50,100,50)", "(150,150,150)", "(200,200,200)"]

print("ЦветовыекодыДистрикта 2:")

for color inregion_rgb:

print(color_code(get_each_color(color)))

rgb = ["(100,100,100)", "(150,150,150)", "(100,150,200)"]

print("\nЦветовыекодыулицы:")

for color inrgb:

print(color_code(get_each_color(color)))

Рис. 61. Текстовый результат работы программы

137

Рис. 62. Снимок экрана улицы и его цветовой анализ

Рис. 63. Фотография дистрикта и её цветовой анализ

Вывод

Проанализировав цветовую палитру города аналога (рис. 61, 62), мы пришли к

выводу, что городу Энску не стоит копировать полученный цветовой код, ведь в основном,

в палитре города (рис. 63) аналога преобладает серый и его оттенки.

Задача 26. Центрированная карта

Входные данные.

Карта Дистрикта с геометками(см. задачу 10), граф дорог Дистрикта (рис. 56)

Условие задачи.

Соотнесите точки из графа ниже с точками на графической карте с геометками вашего

района, получившейся на шаге 18. И отобразите все дороги между инфраструктурными

точками. Разместите новую карту района в своем эссе (тетрадь Google Collab).

Решение.

На карте ниже (рис. 64) представлены места и соединяющие их дороги на основе

представленного в условии задачи графа (рис. 56).

138

Рис. 64. Места Дистрикта и соединяющие их дороги

Задача 27. Добавление дорог

Входные данные.

Самая посещаемая точка, самая центрированная точка, граф дорог в Дистрикте

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

Условие задачи.

Модифицируйте карту Дистрикта таким образом, чтобы самая посещаемая точка

стала самой центрированной. Для этого вы можете добавить новые дороги между пунктами.

Решение.

На рис. 65 все дороги ведут в центрированную точку. Черным цветом помечены новые

дороги. Красным – имеющиеся дороги.

139

Рис. 65. Дополнительные дороги на карте города

Задание 28. Сопоставление негативных и позитивных отзывов

Входные данные.

Отзывыо значимых точках района (задача 4), результаты анализаотзывов(задача 4)

Условия задачи

Семантический анализ подразумевает распределение отзывов пользователей по

настроению: негативному и позитивному.

Отзывы имеют оценку пользователей. Считается, что рейтинг от 3 и ниже определяет

отзыв как негативный, а позитивные имеют оценку 4 или 5.

Проанализируйте количество негативных и позитивных отзывов в Дистрикте.

Составьте диаграмму-пирог по анализу количества негативных и позитивных отзывов

и разместите ее в своем эссе (тетрадь Google Collab).

По итогу анализа укажите количество негативных и количество позитивных отзывов.

Форма ответа: количество негативных отзывов,количество позитивных отзывов через

запятую (В итоге дробное число).

Например:

140

13,32 где 13 - количество негативных отзывов, а 32 - положительных

26,19 где 26 - количество негативных отзывов, а 19 - положительных

Решение.

user_ratings = [r.textfor r insoup.find_all("span", {"class": "rating"})]

negative = 0

positive = 0

user_ratings_dict = {}

foriinuser_ratings:

if int(i) >3:

positive += 1

else:

negative += 1

ifnotiinuser_ratings_dict.keys():

user_ratings_dict.update({i: 1})

else:

user_ratings_dict.update({i: user_ratings_dict.get(i) + 1})

print(str(negative) + "," + str(positive))

labels = user_ratings_dict.keys()

values = user_ratings_dict.values()

colors = ['gold', 'yellowgreen', 'lightcoral', 'lightskyblue', 'white']

plt.pie(values, labels=labels, colors=colors,

autopct='%1.1f%%', shadow=True, startangle=140)

plt.axis('equal')

plt.show()

Рис. 66. Диаграмма распределения оценок

Отзывов с оценкой:

1 - 6.7%

2 - 6.7%

141

3 - 13.3%

4 - 44.4%

5 - 28.9%

Ответ: 12,33

Задание 29. Улучшение системы дорог

Входные данные.

Список дорог, которые нужно добавить к имеющимся (задача 27), карта Дистрикта с

геометками и дорогами (рис. 65)

Условия задачи.

Нанесите на созданную вами карту с геометками и дорогами дополнительные дороги,

которые спроектировали на шаге 27. Выделите их цветом или формой.

Решение

Решение показано на рис. 65. Черным цветом помечены существующие дороги.

Задание 30. Оформление вычислительного эссе

Входные данные.

Графический материал, полученный в ходе работы всеми участниками команды.

Условия задачи.

В результате выполнения командой заданий появилось несколько графических

объектов. Добавьте на них подписи, визуализируйте ответ при помощи выделения нужно

столбца или сектора на них, установите на графике метки

Данные, появляющиеся в ходе работы:

● задача 5: диаграмма-пирог с результатом анализа насаждений в Дистрикте;

● задача 7:график интересов Дистрикта;

● задача 12:облако часто упоминаемых слов;

● задача 13:облако слов позитивного настроения, облако слов негативного настроения;

● задача 15:столбчатая диаграмма по среднему значению загруженности мест в

Дистрикте;

● задача 21:график плотности мест Дистрикта;

● задача 28:диаграмма-пирог по анализу количества негативных и позитивных отзывов.

Примечание. У вас могут появиться дополнительные графики, которые вы захотите

вставить в заключительное эссе, их тоже необходимо отредактировать.

Решение (примеры)

1. Изменить график интересов Дистрикта (рис. 67)

142

Рис. 67. Отредактированный график интересов Дистрикта

2. График по среднему значению загруженности мест в Дистрикте (рис. 68)

Рис. 68. Отредактированный график загруженности мест Дистрикта

Задание 31. Новые объекты городской инфраструктуры

Входные данные.

Все материалы полученные в процессе исследования Дистрикта.

Условия задачи.

Исходя из полученных данных в ходе анализа по Дистрикту города N (погода,

плотность, его текущая инфраструктура и т. п.), выбрать места куда лучше всего установить

новые объекты городской инфраструктуры. Обосновать потребность в новых объектах не

только логически, но и результатами анализа данных по району. Показать, как может

143

меняться настроение города в зависимости от места и положения установленного вами

объекта.

Нанести новые объекты на итоговую карту Дистрикта.

Оформить все выводы в эссе.

Подготовиться к защите и демонстрации своего вычислительного эссе: итоговой

тетради в Google Collab. На демонстрацию тетради вам выделяется 5 минут.

Рекомендованное количество докладчиков: два (например, журналист и аналитик).

Решение.

Так как жителям не нравился парк ЦПКиО, в частности из-за того, что он был

построен давным-давно,что понятно из статьи мэра;а также исходя из интересов жителей к

скалодрому, тиру и кино, можно предложить добавить торгово-развлекательный комплекс

возле ЦПКиО, который за счет того, что у парка удачное расположение, тоже станет

центрированным, а также, поднимет популярность посещения парка, если в нем расположить

тир. Внутри ТРЦ можно обустроить кафе и скалодром. После активного отдыха, просмотра

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

несколько потребностей жителей Дистрикта.

Для удовлетворения потребностей жителей в доступной среде предлагаем создавать

ТРЦ сразу с учетом данного фактора и реконструировать парк так, чтобы ветки не мешали

ни ходьбе, ни проезду, и сделать в парке новые ровные дорожки.

Можно предложить добавить еще один парк, в этот раз уже за пределами города:

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

популярных запросов пользователей значилась комфортная среда и кафе, можно

расположить кафе рядом со всеми значимыми объектами инфраструктуры, будь то жилой

квартал или развлекательный центр. Также среди цветовых кодов была “бойкость”, в связи с

чем можно принять решение добавить спорткомплекс в относительной доступности,

который включает стадион, бассейн, скалодром, тир и т.д.

Задание 33. Манипуляторы

Условия задачи

Для того, чтобы территория процветала, и среда обитания населения города была

комфортной, а люди счастливыми, необходимо наделить район объектами в соответствии с

интересами населения. Каждый объект имеет оценку, указывающую на степень одобрения

его жителями района –"баллы счастья" (можно посмотреть условие задачи 9 первой

попытки).

144

Администрация может разместить в районе:

● пункты сбора раздельного мусора (waste) - 12 баллов за один пункт;

● открыть общепиты/фудкорты (cafe) - 12 баллов за одно предприятие;

● настроить вай-фай на площадках (wifi) - 12 баллов за одну площадку;

● элитные магазины (shop) - 17 баллов за 1 магазин;

● сделать парковки (parking) - 16 баллов за одну парковку;

● открыть почтовые отделения (postoffice) - 21 балл за 1 офис;

● открыть развлекательные пункты тира (tir) - 16 баллов за 1 пункт;

● сделать площадки скалодрома (scaladrom) - 18 баллов за 1 скалодром;

● открыть поликлиники (polyclinic) - 15 баллов за 1 поликлинику.

Кроме того, умные решения требуют финансовых затрат, которые у нас ограничены.

Городом для администрации района выделено — 282 000 условных денежных единиц (уде),

при этом:

● на пункт мусора затрачивается 7000 уде;

● на предприятие общественного питания - 5000 уде;

● на wi-fi точку - 15000 уде;

● магазин - 15000 уде;

● парковка - 8000 уде;

● почтовое отделение - 7000 уде;

● тир – 1500 уде;

● скалодром – 5000 уде;

● поликлиника – 12000 уде.

Определите оптимальное количество умных решений достаточных для обеспечения

комфортной среды обитания района и укладывающихся в бюджет.

Параметр необходимого уровня комфорта устанавливается таким образом, чтобы его

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

довольны обустройством и жизнеобеспечением территории): 550, 450, 500, 480.

Для ввода ответа к этой задаче - введите в поле ввода на сайте

(https://yupest.github.io/nti/sliders/check2.html) количество каждых объектов через пробел.

Если значения являются решением задачи, то ниже поля ввода появится код. Скопируйте код

и вставьте его в качестве ответа к этой задаче

Решение.

fromipywidgetsimport Dropdown, Checkbox, HBox, VBox, Text, Button

fromIPython.displayimport display, clear_output

145

defcounts_of_points(waste = 5, cafe = 5, wifi = 5, shop = 5, parking = 5, post_office = 5, tir = 5,

scaladrom=5, polyclinic=5):

mwaste = waste*7000

mcafe = cafe*5000

mwifi = wifi*15000

mshop = shop*15000

mparking = parking*8000

mpost_office = post_office*7000

mtir = tir*1500

mscaladrom = scaladrom*5000

mpolyclinic = polyclinic*12000

spends = [mwaste, mcafe, mwifi, mshop, mparking, mpost_office, mtir, mscaladrom,

mpolyclinic]

maxspend = 282000

title_1 = "Текущиетраты %d!"%sum(spends) ifsum(spends) <maxspendelse"Текущиетраты

%d! Превышаютлимит %s"% (sum(spends) , str(maxspend))

max_happy = waste*12 + wifi*12 + cafe*12 + shop*17 + parking*16 + post_office*21 + tir*16

+ scaladrom*18 + polyclinic*15

other_centers = [550, 450, 500, 480, max_happy ]

explode = explode = (0, 0, 0, 0, 0.1)

title_2 = "Счастьяслишкоммало!"ifmax(other_centers[:-1]) >other_centers[-1]

else"Счастьяскольконадо!"

plt.figure(figsize = (10, 4))

plt.subplot(1,2,1)

plt.pie(spends,labels=['waste', 'cafe', 'wifi', 'shop', 'parking', 'post_office', 'tir', 'scaladrom',

'polyclinic'], autopct='%1.1f%%',

shadow=True, startangle=90)

plt.title(title_1)

plt.subplot(1,2,2)

plt.pie(other_centers,labels=other_centers, explode = explode, autopct='%1.1f%%',

shadow=True, startangle=90)

plt.title(title_2)

plt.tight_layout()

plt.show()

importmatplotlib.pyplotasplt

fromipywidgetsimport interact, interactive, fixed, interact_manual

fromIPython.displayimport display

w = interactive(counts_of_points, shop = (0,10), parking = (0,10), post_office = (0,10), tir = (0,10),

polyclinic = (0,10), scaladrom=(0,10), waste = (0,10), cafe = (0,10), wifi = (0,10))

display(w)

146

Рис. 69. Результат работы программы построения диаграмм с манипуляторами.

Исходя из интересов жителей Дистрикта было решено, что нужно больше тиров и

скалодромов.

Оптимальныйрасходыопределяютсятак:

● 2 waste - 24

● 10 cafe - 120

● 2 wifi - 24

● 3 shop - 51

● 3 parking - 48

● 3 post_office - 61

● 14 tir - 224

● 13 scalodrom - 234

● 1 hosptal - 15

По сумме вышло ровно 282 уде. Индекс счастья - 801

Ответ:2 10 2 3 3 3 14 13 1

147

Во время решения задач командного этапа ребятам предстоит самим определить

соответствующий направленности задачи навык. Пример такого сопоставления для задач

отборочного тура приведен в таблице ниже.

Сопоставление типов задач и методов их решения

№ Основное метод

решение

Альтернативный

подход к решению

Тип задачи Пример задачи из

отборочного тура

1 Создание

тетрадки Google

Colab

Создание

публикации в Power

Poin (крайне не

желательный вариант, но

возможный вариант)

Осуществление

вычислений,

оформление публикации

исследования

Как общая задача,

рассмотрен в пробных

задачах финала и

видео-инструкции к ним.

2 Парсинг данных с сайта

Найти и скопировать нужные данные с

сайта в ручную

Задача на нахождение тегов определенных

данных

Задача 1. Сбор

данных

См. Приложение 2 к

данному документу.

3 Вычисления в тетрадке на

языке (Python)

Расчеты в Excel Задачи на нахождение плотности (населения,

застройки,

транспортных развязок и т.п.), определение

климатической зоны,

калькулятор перевода

для единиц измерения.

Задача 2. Плотность

населения

4 Построение

облака слов

(Python)

Сервис в интернете:

https://wordscloud.pyt

honanywhere.com

Задачи на обработку

текстов отзывов и

выделение наиболее часто употребляемых в

них слов. Построение

облака слов.

Задача 3. Анализ

отзывов

5 Построение линейчатых

графиков Python

Графики и анализ данных в Excel

Задачи на построение рейтинга, анализ

погодных условий,

расписания работы (временных интервалов)

и т.п.

Задача 4.

Формирование

рейтинга

6 Построение

столбчатых графиков

(Python)

Графики и анализ

данных в Excel

Задачи на определение

рейтингов, наибольших и наименьших значений

различных категорий,

установления лидеров и т.п.

Задача 5.

Посещаемость

развлекательных

центров

7 Построение

круговых

диаграмм (Python)

Графики и анализ

данных в Excel

Задачи на определение

секторов: мнения

аудитории, погодные условия, распределение

средств на различные

нужды и т.п.

Задача 6. Анализ

целевой аудитории

8 Построение интерактивных

диаграмм с

манипуляторами (Python)

Решить аналитически Задачи с параметрами: изменение параметра

влияет на результат,

оптимальный результат подбирается

Задача 7.

Проектирование

парковых зон

148

регулированием

различных параметров

через интерфейс манипуляторов

9 Задачи на работу

с массивами и

списками (Python)

Анализ данных в

Excel

Задачи на анализ данных

в массивах. Как правило,

поиск мест (точек) на координатной

плоскости, отвечающих

определенным характеристикам.

Задача 8.

Замечательные

места

10 NumPy: сложные

задачи (Python)

Нет аналога Задачи на анализ

пространственно

временных данных

Задача 9. Как найти

проходное место?

11 Работа с картами

библиотека

Нет аналога Задача разметки карты:

указания на ней дорого,

типов объектов городской

инфраструктуры при

помощи специальных

меток

Задача будет

рассмотрена во время

подготовки к финалу

12 Обработка

графиков в

графическом редакторе Paint.

Любой графический

редактор, в котором

удобно работать

В задачу входит

обработка построенных

программистом графиков в иллюстрации

Задача будет

рассмотрена во время

подготовки к финалу

Журналист данных

Дизайнер

Аналитик

Программист