Это коллекция проектов, которые я разработал для курсов «Интеллектуальная система и представление знаний» и «Автоматическое мышление» на втором и младшем курсах бакалавриата по информатике в УДК (Испания). Проекты следующие:
Автоматизированный композитор канонов с несколькими голосами с использованием программирования набора ответов , который учитывает множество мелодических ограничений и предпочтений. В нем используются инструменты гринго, застежка, питон и лилипонд. Предоставляется короткий пример аудиофайла, созданного с использованием одного из предоставленных файлов настроек. Использование Python, clasp, gringo и lilypond.
Решатель Сокобана с помощью эвристического поиска , который решает игру Сокобан. С помощью кода, извлеченного непосредственно из книги Рассела и Норвиг03, мы с моим партнером разработали конкретную область применения и подходящую эвристику. Для поиска можно использовать Greedy, BSF, DSF и A*. Цель состоит в том, чтобы переместить игрока (@) ВВЕРХ, ВНИЗ, ВЛЕВО и ВПРАВО, чтобы собрать цели (.). Стены (#) нельзя перемещать, а объекты ($) — можно. Выбранная эвристика – минимальные расстояния до целей.
Решатель головоломок Hitori , который преобразует упрощенную версию головоломки Hitori в набор логических предложений CNF на основе правил игры, вызывает решатель пропозициональной выполнимости (SAT) и создает решение. Использование Python и picosat.
Вероятностное рассуждение с наборами ответов , которое вычисляет вероятности различных событий в игре «Теория большого взрыва» «Камень, бумага, ножницы, ящерица, Спок». Использование P-лога.
Проект средства доказательства теорем , который проверяет, следует ли заключение из посылок, с помощью средства доказательства теорем для исчисления предикатов под названием Prover9. Это программное обеспечение принимает список формул в логике первого порядка и решает, действительна ли формула или нет, путем опровержения с использованием разрешения.
8 решатель головоломок с помощью эвристического поиска , который находит решение для игры. С помощью кода, взятого непосредственно из книги Рассела и Норвига03, мы разработали конкретную область и подходящую эвристику. Для поиска можно использовать Greedy, BSF, DSF и A*. Лучшей эвристикой, опробованной на практике, было расстояние до такси.
Поиск по дорожной карте Румынии , который находит маршрут в Бухарест из Арада (желательно самый короткий). С помощью кода, взятого непосредственно из книги Рассела и Норвига03, мы разработали конкретную область и подходящую эвристику. Для поиска можно использовать Greedy, BSF, DSF и A*. В качестве эвристики использовалось расстояние по прямой.
Свяжитесь с Даниэлем Руисом Пересом для получения запросов, отчетов об ошибках и хороших шуток.
Программное обеспечение в этом репозитории доступно по лицензии GNU General Public License версии 3. Дополнительную информацию см. в файле LICENSE.