Василий Буров
В предыдущем номере "КвШ" с нами поделилась впечатлениями о Софтулийских играх 1998 года их участница Анна Шмелева. Сегодня один из отцов-основателей первого российского конкурса программистов рассказывает о "софтулийском долгоборье" и приглашает читателей к участию в марафоне.
Чем отличается настоящий программист от обычного человека?
Не только тем, что он знает языки программирования и умеет укрощать непокорную
Windows. Отличается он еще и тем, что любит решать интересные интеллектуальные
задачки.
Именно такие задачки мы и хотим предложить читателям на страницах
нашего журнала. Их авторы - специалисты ведущих компьютерных фирм, так что все
задания будут так или иначе связаны с реальной жизнью. Победители получат ценные
призы.
Сейчас вашему вниманию предлагаются задания, подготовленные
компанией "МедиаЛингва". Эта компания специализируется в области так называемого
искусственного интеллекта, и предлагает для разминки несколько простых и не
совсем простых заданий из этой области. Эти задания предлагались на заочном
туре Софтулийских игр 98. Так что сейчас у вас есть прекрасная возможность проверить
свой уровень, да и просто с интересом и пользой провести время.
ПризыПервое место - электронный англо-русский словарь "МультиЛекс 2.0 Профессиональный". |
ЗАДАНИЯ
1. Игра "Угадай животное" - вариант 1.
Компьютер угадывает животное, задуманное пользователем. Приблизительный сценарий игры: компьютер задает вопросы, на который пользователь может давать ответы "да" или "нет", и угадывает животное. Начальные вопросы задаются о признаках животного (оно серое?) или о конкретных животных (это слон?), последний вопрос - всегда о конкретном животном (это бегемот?). Если вопросы кончились, а животное не угадано, компьютер спрашивает, чем оно отличается от того, которое, по его мнению, подошло, добавляет имя животного и его признак в базу данных и в следующий раз сумеет отличить на этом шаге новое животное.
Оценка сложности задания - 4 балла.
2. Игра "Угадай животное" - вариант 2.
Пользователь угадывает "задуманное" программой животное. Программа может отвечать "да", "нет", "не знаю". Пользователь может использовать (по своему усмотрению!) признаки животных, их синонимы, вводя их с клавиатуры, а не выбирая из фиксированных списков. Реализация не должна давать слишком высокий процент ответов "не знаю" - игра должна быть осмысленной. Желательно, чтобы при правильном угадывании пользователь вознаграждался - поздравлениями, картинкой (например, изображением животного) или звуком.
Оценка сложности - 10 баллов.
3. Игра "Чепуха" - синтез изображений.
Игра позволяет синтезировать изображения. Пользователь (пользователи) по очереди выбирает части тела нового существа, а программа собирает эти изображения в единое целое. При сборке изображения должна поддерживаться гладкость, то есть должны правильно состыковываться размеры рук, ног, шеи и так далее. Также желательна цветовая гладкость - отсутствие резких перепадов цвета и тона.
Оценка сложности - 10 баллов.
4. Игра "Чепуха" - синтез текстов.
1-й вариант - синтез пародийных компьютерных или бульварных новостей.
Программа должна собирать несколько десятков типов новостей, подставляя случайным образом их части. Каждая новость должна состоять из одного-двух предложений и заголовка. Заголовки должны соответствовать содержанию новости, сами новости должны быть после подстановки частей грамматически правильными, на литературном русском языке, и выглядеть естественно. Не должно быть явной повторяемости, то есть список типов и наборы частей должны быть достаточно богатыми. Ненормативная лексика, жаргон и грубый юмор не допускаются. Нежелательно употребление имен известных персон в обидном контексте, "обидных" и "кровожадных" высказываний.
Оценка сложности - 7 баллов.
2-й вариант - синтез пародийных гороскопов.
По заданию пользователем своих "параметров" и по текущей дате синтезируются гороскопы. Гороскопы должны быть грамматически правильными и выглядеть естественно. Ненормативная лексика и грубый юмор не допускаются.
Оценка сложности - 6 баллов.
3-й вариант - синтез анекдотов.
Пользователь выбирает действующих лиц, и, возможно, ситуацию из предложенных списков. Программа формирует анекдот на заданную тему и с заданными участниками. Тексты анекдотов должны варьироваться не только подстановками участников, но и конкретными грамматическими конструкциями. Набор типов должен быть достаточно большим, чтобы исключить очевидную повторяемость. Получаемый текст должен быть грамматически гладким (учет пола и числа участников и т. п.). Ненормативная лексика, сальности и грубый юмор не допускаются. Возможен автоматический вариант синтеза, без выбора пользователем.
Оценка сложности - 5 баллов.
5. Словесный счетчик посетителей для Web-страниц.
Программа должна по задаваемому извне числу, например 52151, синтезировать всегда грамматически правильную фразу в формате: "Вы - пятьдесят две тысячи сто пятьдесят первый посетитель нашей страницы".
Оценка сложности - 3 балла. То же для английского языка - 2 балла.
Как выполнять задания?Можно выполнить любое из заданий по выбору, можно - несколько. Задания ранжированы по степени трудности, по десятибалльной шкале. Результаты будут оцениваться по степени трудности задания и по степени законченности решения, а затем присвоенные баллы будут суммироваться, если участником прислано несколько заданий. Экспертами будут выступать специалисты компании "МедиаЛингва", работающие в области искусственного интеллекта. |
6. Распознаватель чисел и дат.
Задача, обратная к заданию 5, - необходимо распознавать числа
или даты, записанные словами, и переводить в числовую форму. При этом числа
должны распознаваться во всех формах, которые встречаются в текстах (пятидесяти
пяти, двух тысяч пятисот одного, восьмого марта, к одиннадцатому сентября).
Оценка сложности: распознавание чисел - 9 баллов; распознавание дат - 4 балла.
Ждем ваших решений. Успешной работы!
С уважением, Василий Буров