Рус Eng Cn Перевести страницу на:  
Please select your language to translate the article


You can just close the window to don't translate
Библиотека
ваш профиль

Вернуться к содержанию

Современное образование
Правильная ссылка на статью:

Задачи по теме «Искусственный интеллект» в школьной информатике

Лялин Андрей Васильевич

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

610000, Россия, Кировская область, г. Киров, ул. Московская, 36

Lialin Andrei Vasilevich

Senior Lecturer of Applied Mathematics and Computer Science Department, Vyatka State University

610000, Russia, Kirov region, Kirov, Moskovskaya str., 36

lialinandrei@rambler.ru

DOI:

10.25136/2409-8736.2022.4.39551

EDN:

IPGOTT

Дата направления статьи в редакцию:

24-12-2022


Дата публикации:

31-12-2022


Аннотация: Искусственный интеллект – направление информатики, в котором пишут программы и создают устройства, имитирующих интеллектуальные функции человека. Эти программы и устройства используются в самых разных областях, например, в технике, науке, искусстве, играх, медицине, торговле, финансах, образовании. Если в стандарты высшего образования уже включены дисциплины с названиями «Основы искусственного интеллекта», «Интеллектуальные информационные системы», «Интеллектуальный анализ данных» и «Машинное обучение», то в школе искусственный интеллект не рассматривается, ни на теоретическом уровне, ни на практическом. Поэтому предметом исследования является содержание темы «Искусственный интеллект» в школьном курсе информатики. В результате теоретического анализа школьных и вузовских образовательных стандартов и учебных пособий, а также наблюдения за обучением был получен положительный ответ на вопрос о возможности изучения темы «Искусственный интеллект» в школьном курсе информатики. Оказалось, что из этой сложной темы можно выбрать задачи, которые, после упрощения и адаптации, будут интересны и доступны школьникам. В статье для примера приводится четыре такие задачи, а именно, на кластеризацию, классификацию, распознавание и управление. Их решение позволяет не только познакомить учеников с новым и перспективным направлением информатики, но и приближает обучение к деятельности учёного, а значит, развивает их интеллект.


Ключевые слова:

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

Abstract: Artificial intelligence is a branch of computer science in which programs are written and devices are created that imitate the intellectual functions of a person. These programs and devices are used in a variety of areas, such as technology, science, art, games, medicine, commerce, finance, education. If the disciplines with the names «Fundamentals of Artificial Intelligence», «Intelligent Information Systems», «Data Mining» and «Machine Learning» are already included in the standards of higher education, then artificial intelligence is not considered at school, neither at the theoretical level, nor at the practical level. Therefore, the subject of this research is the content of the topic «Artificial Intelligence» in the school course of computer science. As a result of a theoretical analysis of school and university educational standards and teaching aids, as well as observation of learning, a positive answer was received to the question of the possibility of studying the topic «Artificial Intelligence» in the school course of computer science. It turned out that from this complex topic, you can choose tasks that, after simplification and adaptation, will be interesting and accessible to schoolchildren. In the article, for example, four such tasks are given, namely, clustering, classification, recognition and control. Their solution allows not only to introduce students to a new and promising area of informatics, but also brings learning closer to the activities of a scientist, and therefore develops their intelligence.


Keywords:

school informatics, artificial intelligence, word tasks, motivation, scientific method, development of intelligence, clustering, classification, recognition, training neural networks

Введение

Искусственный интеллект – одно из самых перспективных направлений информатики. Здесь создают программы, которые распознают текст и речь, переводят с одного языка на другой, выявляют плагиат, рекомендуют фильмы, книги или музыку, ищут информацию в Интернете, управляют роботами, прогнозируют курс акций, доказывают теоремы, играют в шахматы, выносят медицинский диагноз и так далее и так далее. А в нескольких словах, здесь изучают то, «как заставить компьютеры делать вещи, которые в настоящее время лучше делают люди» [1, с.3].

Интеллектуальные системы являются обязательной и фундаментальной областью в рекомендациях по преподаванию информатики, составленных объединённой комиссией ACM и IEEE Computer Science [2]. По ним обучают студентов многих американских и европейских высших учебных заведений.

Однако в российских школьных учебниках по информатике тема искусственного интеллекта затрагивалась давно и только дважды. Это учебник В. А. Каймина 1989 г. [3] и учебник И. Г. Семакина 1998 г. [4]. В том и другом дан общий обзор и рассказано о языке программирования Пролог.

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

Пример 1. Кластеризация

Кластеризация – это разбиение объёктов на группы. Каждая группа должна состоять из схожих объектов, а объекты из разных групп существенно отличаться.

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

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

Рисунок 1. Оценки пользователей за два фильма.

Конечно, когда пользователей и фильмов больше, визуально разбиение не сделать. Для этого придумано множество алгоритмов кластеризации.

Например, алгоритм кластеризации с помощью минимального остовного дерева. На точках строим минимальное остовное дерево. Пусть их необходимо разделить на k кластеров. Тогда из дерева удаляем (k-1) самых длинных рёбер. Оно распадается ровно на k поддеревьев, которые и будут кластерами.

Задание

1. Дайте определение минимального остовного дерева. Вы должны понимать все слова, которые встретится в определениях.

2. Сформулируйте известный алгоритм Крускала для построения минимального остовного дерева.

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

Пример 2. Классификация

Классификация ­­– это отнесение нового объекта к одному из данных классов.

Один из самых простых алгоритмов классификации называется алгоритмом k ближайших соседей.

Например, мы хотим построить систему, которая решает, выдавать человеку кредит или не выдавать, относится он к классу «хороших» или к классу «плохих» клиентов.

Нам известна история банка (рис. 2). Клиенты, обозначенные зелёными кружками, в прошлом возвращали деньги, а красными – не возвращали.

Рисунок 2. История банка.

Приходит новый клиент – жёлтый кружок. Что с ним делать? Находим k его ближайших соседей. Пусть k=3. Если среди них больше зелёных, то одобряем кредит, а если больше красных – отказываем.

Конечно, реальные системы включают тысячи клиентов и смотрят не только на их расходы и доходы.

Задание

1. Пусть новый клиент имеет доход 14, а расход 2. В алгоритме k ближайших соседей параметр k=5. Какой ответ выдаст алгоритм для этого клиента и почему?

2. Почему параметр k лучше брать нечётным?

3. Пользователь вводит доход и расход клиента. Программа, с помощью алгоритма k ближайших соседей при k=3, сообщает, выдавать ему кредит или нет. Решите задачу в МS Excel. Данные возьмите с рисунка. Сохраните их на листе.

Пример 3. Распознавание

В текстовом файле хранится «картинка» из черных и белых клеток (рис. 3). Чёрные клетки обозначены 1. Белые – 0. Мы считываем её в двумерный массив.

Рисунок 3. Пример «картинки» и текстового файла для неё.

Задание

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

Рисунок 4. Примеры написания цифр.

Пример 4. Управление

Пусть у хулигана есть три детектора. Детектор силы срабатывает, если прохожий может защитить себя. Детектор людей – если на улице есть кто-то ещё, кроме прохожего. Детектор денег – если закончились деньги. Детектор, который сработал, выдаёт сигнал 1. Иначе – 0.

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

Задание

Постройте и обучите «вручную» нейронную сеть, которая будет управлять таким поведением хулигана. На ёё входе – три детектора. На выходе – один командный сигнал. Он равен 1, если хулиган нападает, и 0 – если нет.

Подсказка. Здесь достаточно взять нейронную сеть, состоящую всего из одного слоя и одного нейрона.

Выводы

Нетекстовая задача уже сформулирована на языке той области знаний, средствами которой она может быть решена, а текстовая задача требует перевода её условия на этот язык [6, с. 10].

Например, следующая задача из школьного учебника по информатике под авторством К.Ю. Полякова и Е.А. Еремина является нетекстовой. «Заполните массив случайными числами в диапазоне 20..100 и посчитайте отдельно число элементов с чётными и нечётными значениями» [7, с.170].

В своей работе [8] польский педагог В.Оконь озвучил и обосновал следующий тезис.

Образование тем успешнее и тем больше развивает интеллект, чем больше ученик попадает на тот путь, по которому идёт учёный в ходе исследования (рис.5).

Рисунок 5. Полный цикл научного познания

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

Они окажутся выключенными из самого первого, важного и интересного шага на этом пути. У них не будет «условий и возможностей учиться самим ставить проблемы и формулировать специальные вопросы – налицо явная ущербность в развитии мыслительной культуры» [9].

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

Библиография
1. Гаврилов А. В. Системы искусственного интеллекта / А. В. Гаврилов. – Новосибирск: Изд-во НГТУ, 2001. – 67 с.
2. Computing Curricula Computer Science 2013. URL: https://www.acm.org/binaries/content/assets/education/cs2013_web_final.pdf (дата обращения 29.12.2022).
3. Каймин В. А. Основы информатики и вычислительной техники. Учебник для 10-11 классов / В. А. Каймин, А. Г. Щеголев, Е. А. Ерохина, Д. П. Федюшин. – М.: Просвещение, 1989. – 272 с.
4. Семакин И.Г. Информатика. Учебник по базовому курсу (7-9 классы) / И. Г. Семакин, Л. А. Залогова, С. В. Русаков, Л. В. Шестакова – М.: Лаборатория Базовых Знаний, 1998. – 464 с.
5. Ясницкий Л. Н. Искусственный интеллект. Элективный курс / Л. Н. Ясницкий. – М.: БИНОМ. Лаборатория знаний, 2011. – 240c.
6. Фридман Л.М. Основы проблемологии / Л.М. Фридман. – М.: Синтег, 2001. – 228 с.
7. Поляков К. Ю. Информатика. 10 класс. Часть 2 / К. Ю. Поляков, Е. А. Еремин. – М.: Бином. Лаборатория знаний, 2015. – 304 c.
8. Оконь В. Основы проблемного обучения / В. Оконь. – М.: Просвещение, 1968. – 208 с.
9. Юлов В. Ф. Мышление в контексте сознания / В. Ф. Юлов. – М.: Академический проект, 2003. – 496 с.
References
1. Gavrilov A. V. Systems of artificial intelligence / A. V. Gavrilov. – Novosibirsk: Publishing house of NSTU, 2001. – 67 p.
2. Computing Curricula Computer Science 2013. URL: https://www.acm.org/binaries/content/assets/education/cs2013_web_final.pdf (accessed 12/29/2022).
3. Kaymin V. A. Fundamentals of informatics and computer technology. Textbook for grades 10-11 / V. A. Kaymin, A. G. Shchegolev, E. A. Erokhina, D. P. Fedyushin. – M.: Enlightenment, 1989. – 272 p.
4. Semakin I.G. Computer science. Basic course textbook (grades 7-9) / I. G. Semakin, L. A. Zalogova, S. V. Rusakov, L. V. Shestakova – M .: Basic Knowledge Laboratory, 1998. – 464 p.
5. Yasnitsky L. N. Artificial intelligence. Elective course / L. N. Yasnitsky. – M.: BINOM. Knowledge Laboratory, 2011. – 240c.
6. Fridman L.M. Fundamentals of problemology / L.M. Friedman. – M.: Sinteg, 2001. – 228 p.
7. Polyakov K. Yu. Informatics. Grade 10. Part 2 / K. Yu. Polyakov, E. A. Eremin. – M.: Binom. Knowledge Laboratory, 2015. – 304 p.
8. Okon V. Fundamentals of problem-based learning / V. Okon. – M.: Enlightenment, 1968. – 208 p.
9. Yulov V. F. Thinking in the context of consciousness / V. F. Yulov. – M.: Academic project, 2003. – 496 p.

Результаты процедуры рецензирования статьи

Рецензия скрыта по просьбе автора