Введение
На наших глазах происходит глубокая интеграция и трансформация различных отраслей хозяйства, областей деятельности, сегментов науки и техники на платформе инфокоммуникационных технологий (ИКТ, или просто ИТ). Это радикально меняет жизнь человека, среду его обитания, способы общения. Также меняется и сама вычислительная техника.
Наибольшую долю рынка ИКТ традиционно занимают задачи прикладного характера, направленные на внедрение вычислительной техники и получение от нее реальной отдачи. Вместе с тем естественно возникшее и стремительно развивающееся разделение труда в инфокоммуникационной (ИК) индустрии и то, что область ИКТ еще не оформилась как традиционная наука, несут в себе значительные технологические риски и угрозы. Отсутствует даже единый термин, отражающий все аспекты деятельности в ИК-области.
Тенденция к созданию глубоко интегрированных прикладных систем на ИК-платформе предполагает системный подход к проектированию с равными приоритетами разработчиков всех ключевых профилей. Сегодня такие комплексные системы ассоциируются с КФС (или CPS), социокиберфизическими системами (СКФС, SCPS) и «Интернетом вещей» (IoT).
В данной статье мы обсудим общие технические и технологические проблемы создания КФС и IoT-систем прежде всего со стороны их «вычислительной» природы и вопросов подготовки ИТ-специалистов нового поколения для успешных разработки и использования таких систем.
Введение
Однажды мы решили рассказать на Хабре, как устроена система адаптивных рекомендаций на Stepik.org. Первые две статьи этого цикла были написаны ещё летом по горячим следам моего бакалаврского диплома на матмехе СПбГУ, первая была в целом про рекомендательные системы в онлайн-образовании, во второй мы немного заглянули под капот и рассказали об архитектуре нашей рекомендательной системы. Третья часть, в которой мы наконец дойдём собственно до адаптивных рекомендаций, писалась плохо, во многом потому, что эта часть платформы меняется очень быстро. Но теперь я готова опубликовать и её.
Зачем нужно адаптивное обучение и где его используют
У адаптивного обучения есть множество преимуществ. С одной стороны, оно подстраивается под уровень знаний, скорость и персональные предпочтения учащегося, то есть терпеливо «ведёт» его по пути обучения в индивидуальном темпе. Проще говоря, такое обучение становится персонализированным и сулит успех в освоении той или иной дисциплины.
С другой стороны, такая система становится помощником для преподавателей, а также экономит им время на проверку заданий, избавляет от необходимости «усреднять» программу под класс или группу.
Фото: fizkes / Shutterstock
Не система, а просто мечта, правда? Почему же тогда она не используется в наш технологичный век повсеместно?
Дело в том, что с внедрением адаптивного обучения не всё так просто.
Где можно использовать адаптивное обучение
Обычно системы адаптивного обучения используют в точных или естественных науках. Объясняется это просто: успехи и результаты студентов там значительно проще измерить. А вот гуманитарные дисциплины «вписать» в такую систему труднее, хотя и не невозможно.
«Кандидатом для адаптивного обучения может стать любой предмет, который можно представить в формате микроконтента и оценить при помощи объективных вопросов. Системы адаптивного обучения хорошо подходят для вводных курсов в определённую область знаний, поскольку их цель — формирование базы для освоения предмета», — сказал Skillbox Media Дмитрий Бубнов, директор компании ENBISYS — разработчика отечественной платформы адаптивного обучения Plario.
Есть и ещё одна особенность систем адаптивного обучения: они не подходят для тех предметов, где нужны физические навыки. Простой пример, который приводят специалисты ENBISYS, — такая система не научит студентов медвуза делать уколы. А вот вводный курс по биологии освоить поможет. Впрочем, это недостаток любого дистанционного обучения.
Проще говоря, адаптивное обучение подходит для теоретической части программы.
Примеры использования систем адаптивного обучения
В мире существует немало примеров внедрения систем адаптивного обучения. Считается, что самые активные страны — участницы этого процесса — США, Австралия и Великобритания.
В России адаптивные системы тоже внедряют. Например, системы адаптивного обучения или их элементы уже есть в Skysmart и «Яндекс.Практикуме». Постепенно к процессу внедрения адаптивного обучения присоединяются и вузы.
Так, подобную технологию разработали и апробировали для курса «Общая химия» в МИСиС. Процесс строился по модели «перевёрнутый класс», когда основной теоретический материал студенты осваивают самостоятельно, а аудиторные часы предполагают общение с преподавателем и более глубокое погружение в предмет.
В результате удалось не только повысить успеваемость студентов, но ещё и «выровнять» их уровень знаний, отметили в вузе. Более того, студенты, по словам разработчиков, начали проявлять живой интерес к дисциплине, хотя раньше химия их не привлекала.
Одна из самых известных российских разработок — платформа Plario, созданная совместно с Томским государственным университетом. Принцип платформы разработчики формулируют так: искусственный интеллект определяет начальный уровень знаний студента, а затем сам выравнивает его до необходимого среднего уровня. Делает он это с помощью индивидуального трека для каждого пользователя.
«Система автоматически проверяет задания, так что преподавателю остаётся следить за прогрессом и объяснять студентам самые трудные и непонятные места, которые легко можно выявить по статистике, предоставляемой системой. Так преподаватель освобождается от рутинной работы и получает больше времени для научной и творческой работы с талантливыми студентами», — объяснил Дмитрий Бубнов.
Изначально Plario создавалась как тренажёр по математическим дисциплинам, а образовательный контент для платформы разрабатывали специалисты ТГУ по ими же созданной методике. Причина выбора предмета — слишком разнородные знания студентов на старте.
Разработчики считают, что с восполнением пробелов платформа успешно справляется. Её эффективность оценивают ещё и с точки зрения скорости освоения материала — сообщают, что при использовании платформы скорость увеличивается на 25%.
Зачем нужна адаптивность?
Когда говорят о преимуществах онлайн-обучения, часто в их числе упоминают массовость. Действительно, сложно сравнивать пропускную способность очного курса в университете, пусть даже потокового, и массового онлайн-курса, практически не имеющего ограничений для масштабирования — разница в размере аудитории составит порядки.
Но эта черта является также и недостатком онлайн-образования: в случае занятий в аудитории преподаватель может подстраивать свои лекции под студентов: провести опрос в начале семестра, следить на занятиях, все ли понимают материал, даже общаться с отдельными студентами лично, если они что-то не усвоили или, наоборот, хотят больше углубиться в какие-то темы. Разумеется, в случае массового онлайн-курса ресурсов преподавателя на подобное взаимодействие не хватает, а студенты оказываются в строгих рамках линейно составленного курса без возможности подробнее разобрать сложные задания или пропустить простые.
Тем не менее, существуют способы реализовать что-то подобное и в автоматическом (массовом) режиме. Эти способы можно разделить на три основные группы:
- Дифференцированное обучение. Самый простой способ подстроить материал под уровень знаний учащегося: преподавателем заранее создаётся несколько фиксированных учебных траекторий разной сложности, а студент выбирает для себя подходящую и далее учится по ней в обычном, линейном режиме. Например, серия учебников для разного уровня знания языка.
- Персонализированное обучение. В этом случае траектория строится в процессе обучения в зависимости от результатов учащегося в промежуточных тестированиях. Правила о том, в какой момент проводить тестирование и что советовать изучать дальше при разных результатах, заранее задаёт преподаватель. Получается что-то похожее на дерево решений, по которому студенты будут идти по-разному в зависимости от своих успехов, но само дерево должно быть продумано и создано преподавателем.
- Адаптивное обучение. Самая интересная с точки зрения алгоритмов группа. Траектория также строится в процессе обучения, но не требует начальной разметки от преподавателя, а использует максимум информации о том, как студент изучает материал и как этот материал изучали до него. Далее в статье об этом будет рассказано подробнее.
Метрики
Основные метрики для оценки качества адаптивных рекомендаций — это, во-первых, доля решённых уроков от числа рекомендованных (по сути retention), и во-вторых, разница между предсказанным результатом решения и реальным (из модели на основе шахматного рейтинга).
Доля решённых уроков больше говорит о том, насколько полезными и подходящими по сложности пользователи считают рекомендации. Эту метрику мы вычисляем регулярно по итогам последних 7 дней, и она с конца прошлого года выросла с 60 до 80 процентов.
Вторая же метрика, ошибка предсказания, скорее характеризует точность внутренней машинерии адаптивной системы. При этом её сложнее интерпретировать, ведь изменяя модели для предсказания реакции пользователя и для оценки фактического поведения пользователей, мы можем получить значительные изменения в этой метрике, которые едва ли будут показывать, лучше стала модель или хуже по сравнению с предыдущей версией. Потому что оцениваем ошибку мы теперь тоже по-другому.
Например, если раньше значения predicted_score и real_score лежали в интервале , а в новой версии — в , абсолютные значения ошибки драматично вырастут, но это не будет значить, что нужно срочно откатываться. Разумеется, пример утрированный, но подобные причины изменения ошибки нужно учитывать при анализе метрик.
Как я писала, эти две метрики являются основными, но не исчерпывающими. Также мы отслеживаем состояние системы по количеству запросов рекомендаций (порядка нескольких тысяч в неделю), по скользящему среднему ошибки предсказания по нескольким дням (помогает выявить тенденцию к улучшению или ухудшению, сгладив пики), по времени обработки запроса новой рекомендации (ну по этому параметру всегда есть к чему стремиться ).
Также мы проводим A/B-тестирование для сравнения работы разных моделей. Тогда, помимо вышеперечисленных метрик для ежедневного мониторинга, дашборд может расширяться специфичными метриками для конкретного эксперимента. Тем не менее, решение о том, какую модель оставлять, обычно принимается исходя из основных метрик.
Возможно, вам также будет интересно
В статье рассматриваются наиболее востребованные речевые технологии и решаемые с их помощью задачи в различных отраслях и сферах нашей жизни.
В статье представлен обзор отечественного рынка промышленных барьеров искробезопасности, приведены их технические характеристики, функциональные возможности и особенности.
Конференция по программным продуктам компаний Citect и Kepware
3 декабря, 201219 октября 2012 года в Москве прошла VIII международная конференция «Новые продукты для автоматизации производства и объектов инфраструктуры. Последние новости от Citect и Kepware». Организатором конференции выступила компания «РТСофт».
Программное обеспечение Citect хорошо известно в мире и широко применяется для создания автоматизированных систем управления зданиями и сооружениями, в электроэнергетике, металлургической, нефтегазовой и атомной промышленности и других отраслях. Компания Kepware является законодателем мод в сфере OPC-технологий и мировым лидером в сфере поставок OPC-серверов. …
Пример профиля подготовки КФС-специалиста
Сегодня представлен целый ряд предложений по наполнению учебной программы подготовки КФС-специалиста. Они различаются объемом (от вводных курсов до полноценных магистерских программ), наполнением (зависит от трактовки термина КФС), степенью связи с компьютингом. Подробный обзор учебных программ представлен в .
Широту взглядов на наполнение области КФС и ее взаимосвязь со смежными дисциплинами, в том числе на взаимоподчиненность и связь с сегментами компьютинга, демонстрируют документы комитетов ТК 194 «Кибер-физические системы» Росстандарта РФ и ISO/IEC JTC 1/SC41 “Internet of Things and digital twin”.
В перечисляются следующие разделы подготовки КФС-специалиста:
- математика, статистика;
- электроника, компьютерная архитектура;
- компиляторы, операционные системы;
- встроенное ПО;
- оптимизация;
- модели вычислений, формальные методы;
- Интернет и веб-ПО, беспроводная связь;
- информационная безопасность;
- системы управления, системная инженерия;
- человеко-машинное взаимодействие;
- работа в команде, управление проектами;
- управление развертыванием и конфигурирование;
- процессный подход, проблемы жизненного цикла;
- стандарты, экологичность и др.
Одним из наиболее полных и интересных документов, предлагающих развернутый набор компетенций специалиста по КФС, можно считать . Приведем примеры из раздела “Foundations for a CPS curriculum”:
- Базовые вычислительные концепции, помимо тех, что рассматриваются во вводных курсах по программированию, такие как ВсС, структуры данных, теория автоматов и ПИ.
- Организация вычислений с учетом особенностей и ограничений объектов физического мира, что предполагает понимание:
- свойств физического мира;
- организации и особенностей ВсС РВ;
- ограничений вычислительных ресурсов, таких как энергопотребление и размер памяти.
- Владение дискретной математикой и такими разделами непрерывной математики, как дифференциальные уравнения, вероятностные и случайные процессы, линейная алгебра.
- Проектирование вычислительной компоненты КФС, объединяющее:
- применение датчиков, исполнительных устройств, алгоритмов управления, коммуникационных протоколов и систем, вычислений, предполагающее их междоменное и межуровневое (cross-cutting) взаимодействие;
- учет центральной роли взаимодействия между физическими и вычислительными аспектами;
- контроль над коммуникационными сетями, получением данных от датчиков, обработкой сигналов и выдачей управляющих воздействий с учетом ограничений РВ.
- Моделирование неоднородных и динамических систем, объединяющих управление, вычисления и связь, с акцентом на неопределенность свойств объекта и гетерогенность системы, включая такие методы, как линейное и нелинейное моделирование, стохастические модели, дискретно-событийные и гибридные модели, а также связанные с ними методологии проектирования, основанные на оптимизации, теории вероятностей и динамическом программировании.
- Методы проектирования КФС, особенно для критически важных по безопасности, надежности и отказоустойчивости применений, требующие охвата фаз жизненного цикла от технического задания до тестирования, сертификации и сопровождения, включая вопросы формальной верификации и валидации, а также возможности адаптации, позволяющие обеспечивать эволюционирование системы.
Контекст адаптивности
Ниже я привел цитату из книги «Адаптивный интернет» (The Adaptive Web) 2007 года, которая говорит о значимости контекста в адаптивных руководствах мобильных устройств. Она объясняет адаптивность с точки зрения мобильных систем в качестве контекстно-зависимых вычислений, т.е. возможности использовать информацию в текущем контексте, чтобы адаптировать взаимодействие пользователя и представлять информацию согласно текущей ситуации пользователя.
Здесь говорится, что понимание контекста местоположения и истории пользователя сейчас намного проще, чем когда-либо ранее. Мы можем использовать тот факт, что куда бы мы ни пошли – мы всегда носим с собой мобильный телефон. Смартфон включает технологии и информацию о пользователе, которую дизайнеры могут использовать чтобы понять контекст. Сложнейшие передовые технологии у пользователя в кармане не только позволяют дизайнерам анализировать, идет ли пользователь, стоит, или находится в громком или тихом окружении, но также помогает им понимать точное расположение человека внутри торгового центра, например, вплоть до определенного прохода.
Приложение может анализировать точное местоположение пользователя в магазине, чтобы предоставить адаптированную под данное состояние информацию.
AislePhone, израильский стартап, который на данный момент находится на стадии бета-тестирования, разрабатывает платформу для точного определения положения в магазине, которая может определять точное местоположение вплоть до определенного прохода. С этой технологией поход за покупками с мобильным телефоном в руках станет привычным действием, так как мобильные приложения для супермаркетов и прочих крупных торговых центров будут использовать данные о местоположении и пользователе чтобы улучшить процесс совершения покупок, становясь личным карманным торговым ассистентом.
Google Indoor Maps позволяет пользователям просматривать и управлять планами этажей нескольких типов коммерческих зданий, таких как аэропорты, торговые центры и универмаги, через Google Maps.
Эта технология не только знает ваше местоположение в помещении, но также и то, на каком этаже вы находитесь. В зависимости от того, какие данные доступны, карта показывает примечательные места в здании, в котором вы находитесь, например, магазины, комнаты отдыха или ближайшие ресторанчики.
С такой технологией в универмагах больше не будет необходимости в картах типа «вы здесь». Вы сможете определять свое местоположение и ориентироваться при помощи смартфона, и данный опыт взаимодействия будет адаптироваться под ваши потребности. Например, приложения будут предлагать вам актуальные скидки, пока вы прогуливаетесь через торговый центр, или выделять магазины, отталкиваясь от знания вашего пола и возраста.
Как устроено адаптивное обучение
Строится адаптивное обучение по модели адаптации, которая учитывает, что и как нужно изменить под конкретного студента. Для этого есть два основных источника данных:
- Модель предметной области — сюда относятся данные об изучаемом предмете: темы, проекты, ссылки и так далее. Система позволяет связать разные элементы дисциплины и построить переход между ними.
- Модель студента — то есть текущие знания ученика, информация о том, как он учится (какие ошибки делает, с какой скоростью выполняет задания и так далее), его характеристики (например, предпочтения и степень мотивации).
При этом объекты адаптации могут быть разными. Например, компания Pearsons приводит такую классификацию:
Контент.
Система, которая адаптирует контент, базируется на ответах учеников. Если допущена ошибка, то она даёт подсказки либо разбивает какой-то навык на небольшие блоки. Проще говоря, меняет темп обучения.
Так, после неправильного ответа студент получает конкретную помощь: это может быть напоминание («не забудь, что X зависит от Y»), обратная связь («кажется, ты забыл, что…»), дополнительные материалы (тексты, видео, пошаговые инструкции). В некоторых случаях система предлагает обратиться к преподавателю. А вот самым сложным механизмом для адаптированного контента считается скаффолдинг.
Тестирование.
В зависимости от ответа ученика система предлагает вопросы разной сложности — например, если человек верно ответил на вопрос, следующий будут уже сложнее. А если допустил ошибки — проще.
Исследователи Pearsons разделяют тестирование на «практическое» (тесты идут после небольшого блока информации) и «уровневое» (тест предлагается после определённого модуля или нескольких блоков — то есть стоит особняком).
Порядок представления материалов.
Эта система считается самой сложной из трёх. Пока студент взаимодействует с учебным материалом, она собирает информацию о нём — например, ответы на вопросы, число попыток и так далее. Эти данные анализируются, а затем система предлагает учащемуся нужный именно ему контент.
Максимально упрощённый пример будет выглядеть так: ученик пропустил объяснение какой-то темы из-за болезни. Через год началось изучение другой темы, которая основывается на пропущенной им. Адаптивная система, которая меняет последовательность учебных материалов, определит пробел в знаниях и предложит сначала изучить пропущенную тему.
Одна система может использовать разные объекты адаптации. Так, американский сервис Knowre для изучения математики предлагает и адаптированный контент (то есть видео и инструкции в помощь учащимся), и адаптированную последовательность, поскольку анализирует действия пользователя и предлагает нужную ему практику.
Кроме того, для каждого уровня образования характерны свои объекты адаптации. Так, в школах предпочитают адаптацию контента, а в университетах — скорее адаптацию порядка предоставления учебных материалов.
История адаптивного проекта
- 1 марта 2016 — появился первый прототип адаптивных рекомендаций в Stepik (который в те времена ещё назывался Stepic)
- 21 марта 2016 — начало бета-тестирования (русскоязычный задачник по Python)
- 11 августа 2016 — интеграция адаптивной системы в PyCharm Edu 3, инструмент для обучения языку Python от JetBrains
- Сентябрь 2016 — пик активности пользователей в связи с тем, что за достижение определённого уровня “адаптивных” знаний по Python давалась скидка на обучение программированию по онлайн-программе Computer Science Center и Академического университета. Исправили несколько смешных багов.
- Декабрь 2016 – март 2017 — конкурс на создание адаптивного контента, о котором мы уже подробно писали на Хабре.
В таблице ниже перечислены основные адаптивные курсы на Stepik и немного информации об их использовании.
Курс | Уроки | Учащиеся | Реакции на уроки |
---|---|---|---|
Adaptive Python | 382 | 1874 | 22904 |
Адаптивный тренажер Python | 55 | 2298 | 20546 |
Pokemon! Gotta Catch ‘Em All | 101 | 243 | 7661 |
Adaptive GMAT Data Sufficiency Problems | 265 | 29 | 94 |
ПДД 2017 | 800 | 560 | 17649 |
Оптимальные системы управления
Определение 1
Оптимальное управление – это задача проектирования системы, которая обеспечивает для заданного объекта управления или процесса управляющую последовательность воздействий, обеспечивающих минимум или максимум заданной совокупности критериев качества системы.
Чтобы спроектировать оптимальную систему управления необходима полная информация об оптимальном управлении, задающих и возмущающих воздействиях, конечном и начальном состоянии оптимального управления. После этого выбирается критерий оптимальности. В некоторых случаях требования к отдельным показателям качества противоречивы. Оптимальная система управления должна иметь минимально возможную ошибку не только в случае отработки конкретного действия, но и в течение всего периода работы системы. Оптимальное функционирование системы автоматического управления определяется особенностями управления во времени — алгоритмом или программой управления. Чтобы оценить оптимальности системы управления используются интегральные критерии, которые вычисляются как сумма значений выбранного параметра качества все время управления. Существуют следующие виды оптимальных систем управления:
- Системы, которые оптимальны по быстродействию. Данные системы способны обеспечивать минимальное время перевода оптимального управления из одного состояния в другое. В таких системах управления длительность самого процесса управления минимальна. Самым простым примером является система управления двигателем, которой обеспечивается минимальное время его разгона до установленной частоты вращения, при этом учитываются все ограничения.
- Системы оптимальные по расходу ресурсов. Такая система управления двигателем, например, может обеспечивать минимальный расход топлива за все время управления.
- Системы управления оптимальные по точности или потерям управления. Такие системы обеспечивают минимальные ошибки на основании критерия.
В принципе, задача проектирования оптимальной системы автоматического управления может быть решена простым методом перебора вариантов. В данном случае каждый метод требует больших затрат по времени, но благодаря современным электронно-вычислительным машинам процесс упрощается. Чтобы решить задачи оптимизации разработаны специальные методы вариационного исчисления, к которым относятся метод динамического программирования, метод максимума и т.п. Данные методы позволяют учитывать все ограничения реальных систем.
Адаптивное мышление
В отличие от привычных настольных компьютерных систем, мобильные устройства обычно используются во множестве различных ситуаций. Однако, мобильные приложения сегодня не всегда используют информацию о контексте их использования, и таким образом они могут использоваться только для специфичных целей. Например, приложение с городскими картами или местными предприятиями можно использовать в различных случаях: прогуливаясь по городу или сидя дома, с или без сетевого подключения.
Современные пользователи могут настраивать системы своих устройств согласно предпочтениям и настройкам, а также выбирая те приложения, которые оптимально соответствуют их потребностям. Даже после выполнения процессов дизайна, ориентированных на пользователя, которые обеспечивают определенную степень приемлемости для пользователей и дают глубокое понимание контекста, все равно невозможно предугадать требования всех пользователей и отобразить все эти требования в одной наилучшей или оптимальной конфигурации системы.
«Адаптивное мышление» – это тип мышления, который предоставляет инструменты, необходимые для существенного улучшения опыта пользовательского взаимодействия и предполагаемой цели продукта, используя технологию, которая всегда доступна. Оно подразумевает изучение среды и пользователя, а также адаптацию под его текущие потребности и ситуацию. Поэтому, дизайнеры должны сначала разрабатывать контекст использования, а потом создавать набор функций, которые будут выполняться в соответствующих ситуациях.
В качестве поучительного примера можно привести случай использования адаптивного мышления для создания мобильного приложения для программы обмена велосипедами. Система обмена велосипедами, также известная, как аренда велосипедов, становится все более и более популярной в крупных городах всего мира. Обмен велосипедами позволяет снизить количество пробок на дороге и уровень загрязнения воздуха, и побуждает жителей городов поддерживать здоровый образ жизни.
Пользователь, который хочет взять в аренду велосипед, может использовать мобильное приложение, чтобы найти ближайшую точку аренды, где есть доступные велосипеды. Если пользователь не ориентируется по городу, он может использовать это приложение для поиска пути к точке аренды; это является основной функцией данного приложения. Адаптивная система включается, когда пользователь прибывает на точку аренды велосипедов, и автоматически предлагает дополнительные опции, т.е. адаптируется к ситуации. Например, она может предложить пользователю быстрый способ арендовать велосипед, функцию, которая была недоступна в приложении, пока пользователь не прибыл на точку. На протяжении срока аренды, система будет предугадывать потребности пользователя, предлагая ему ближайшие точки аренды с доступными местами для парковки, где можно вернуть велосипед, а также будет показывать текущий баланс срока аренды.
Приложение для обмена велосипедами может адаптироваться и показывать пользователю различные опции в зависимости от его местоположения и статуса аренды.
Используя такие возможности устройства, как A-GPS, используя сетевое подключение и понимание жизни пользователя в любой данный момент времени через жизненный цикл продукта, адаптивный дизайн предоставляет пользователям мобильного приложения надежные дополнения к программе аренды велосипедов.
Адаптивный и отзывчивый дизайн
Адаптивная система – это та, которая автоматически адаптируется под пользователя согласно изменяющимся условиям. Отзывчивый дизайн (или адаптивный шаблон) – это подвид адаптивного дизайна, подход в веб-дизайне, согласно которому сайт создается таким образом, чтобы предоставлять оптимальный опыт просмотра на большинстве устройств. В своей статье в журнале UX под названием «Многоэкранная экосистема» (The Multiscreen Ecosystem), я рассказывал о том, как отзывчивые вебсайты могут также быть адаптивными благодаря пониманию контекста использования мобильного устройства и созданию контекстных путей.
Механизмы адаптивного обучения
Адаптивное обучение на Stepik сделано в виде рекомендательной системы, которая советует пользователю, какой урок ему стоит изучить следующим, в зависимости от его предыдущих действий. Пока рекомендации даются в рамках материалов выбранного курса (например, тренажер по Python), но в скором будущем станут доступны также рекомендации в рамках произвольной темы (например, C++ или интегралы). В перспективе любую тему можно будет изучить в адаптивном режиме.
Зарегистрированному пользователю для начала обучения в адаптивном режиме достаточно нажать кнопку “Учиться” в адаптивном курсе (она станет доступна после записи на курс).
Получив рекомендованный к обучению материал (урок), пользователь может отреагировать на него одним из трех способов:
- пройти урок (решить задачи в нём),
- пометить урок как слишком простой,
- пометить урок как слишком сложный.
После получения реакции сведения о знаниях пользователя и о сложности урока обновляются, и пользователь получает новую рекомендацию.
Для адаптивных рекомендаций используется два метода (“хендлера”): на основе сложности и на основе зависимостей между темами (подробнее о хендлерах можно почитать во второй статье цикла).
Под капотом рекомендаций на основе сложности лежит две идеи:
- Item Response Theory. Эта психометрическая парадигма с непереводимым на русский язык названием может быть сформулирована очень просто: вероятность, что учащийся решит задачу, выражается как некоторая функция от параметров учащегося и задачи. В качестве параметров можно использовать, например, как-то вычисленные уровень знаний пользователя и сложность задачи, а также то, насколько мы уверены в этих значениях.
-
Шахматный рейтинг Эло. Модель для оценки рейтинга шахматистов, разработанная Арпадом Эло в 1960-х годах, работает следующим образом: каждому новому игроку назначается рейтинг по умолчанию (например, ноль), а затем после каждой игры рейтинги обоих игроков обновляются. Для этого сначала вычисляется матожидание результата игры для каждого из игроков ( в случае проигрыша игрока A, — в случае победы, — ничьи), а затем рейтинги обновляются в зависимости от разницы между предсказанным результатом игры и фактическим.
Формула для предсказания результата ,
для обновления рейтинга ,
где , — рейтинги игроков A и B, — обновленный рейтинг игрока A, — фактический результат игры для игрока A. Коэффициент характеризует нашу уверенность в оценке рейтинга: если мы еще мало знаем об игроке, его рейтинг должен меняться быстро, но когда речь идет об опытном мастере, одна игра, далекая от предсказания, не должна сильно изменить рейтинг.
В результате слияния этих двух идей получаем следующую модель работы системы. Пользователей и уроки мы рассматриваем как “игроков”, реакцию пользователя на рекомендацию урока — как результат “игры”, а предсказываем мы этот результат на основе некоторых параметров учащегося и урока. Основные черты этой модели мы взяли из научной статьи о Maths Garden, сервисе для изучения арифметики для детей. Для рекомендации мы подбираем такой урок, вероятность решить который для пользователя близка к оптимальной.
Помимо сложности уроков мы хотим учитывать также разметку контента темами. Мы используем граф знаний из Wikidata, и даём возможность авторам уроков тегировать их темами двух типов:
- темы, к которым этот урок относится (которые в нём разъясняются),
- темы, знание которых необходимо для понимания этого урока.
Например, в случае, если пользователь пометил урок как слишком сложный, мы можем посоветовать ему изучить темы, которые необходимы для данного урока.
Выводы
Для повышения качества проектирования КФС нам видится необходимым вести работу по следующим направлениям:
Повышение качества проектирования вычислительной компоненты КФС.
ВС в КФС являются заказными в силу уникальности требований. Их проектирование остается крайне трудозатратным процессом с низкой степенью повторного использования и, как правило, недостаточно высоким качеством. Мы видим возможности решения этих проблем в усилении этапов архитектурного/микроархитектурного проектирования, формализации абстракций и инструментов проектирования на базе единой системы понятий в сфере компьютинга. Необходимо существенно повысить прозрачность и степень повторного использования всех проектных решений, принимаемых до этапа реализации. Требуется увеличивать глубину проработки функциональной и логической организации системы с качественным содержательным документированием. Специалисты должны осваивать и развивать соответствующие методики и инструменты.
Повышение качества подготовки ИТ-специалистов.
Необходимо усиливать учебные программы ИТ-специалистов в части знаний и навыков по опорным технологиям вычислительной техники. Например, необходимо знакомить прикладных ИТ-специалистов с базовыми механизмами системной вычислительной платформы.
Подготовка КФС-специалистов.
Сегодня в проектировании КФС центральная роль все чаще переходит от прикладных специалистов к ИТ-специалистам. Однако существует явный дефицит КФС-специалистов с глубоким пониманием компьютинга. Эксперименты по подготовке таких специалистов в ведущих вузах продолжаются уже около 10 лет . Наиболее удачные, на наш взгляд, наборы компетенций представлены выше. На повестке дня стоит создание реальных образовательных программ, позволяющих с приемлемым качеством охватить весь необходимый объем знаний.
Направление проектирования КФС активно развивается в Университете ИТМО. На мегафакультете компьютерных технологий и управления представлены основные направления компьютинга и другие важнейшие сегменты проектирования КФС (автоматика, мехатроника, «умные производства»). Специалисты мегафакультета развивают методы проектирования КФС, участвуют в создании конкретных систем. Совместно с ведущими научными и индустриальными фирмами-партнерами университет формирует магистерские образовательные программы, направленные на подготовку специалистов по различным аспектам создания КФС, IoT и ВсС.
Заключение
Сегодня мы только начинаем рассматривать потенциал использования сенсоров и технологий для объединения устройств и людей. Термин «интернет вещей» относится к уникально идентифицируемым объектам, которые подключены к сети. Например, умный цветочный горшок, который посылает сигнал, что пора полить цветы. Нет никаких сомнений, что адаптивный дизайн сыграет ключевую роль в создании будущих устройств и функциональных пользовательских интерфейсов, которые предоставят пользователю интуитивный контроль над его окружением в любой ситуации или обстоятельствах.
Это перевод статьи под названием “Creating An Adaptive System To Enhance UX” от Avi Itzkovitch. Перевели в компании UXDepot с одобрением издания Smashing Magazine.