Символьное моделирование
- моделирование на
основе символьных вычислений. |
Символьные вычисления
Символьные вычисления
(symbolic computation) - обработка выражений и их элементов
как последовательностей символов (в отличие от численных вычислений,
которые оперируют стоящими за математическими выражениями численными
значениями).
Современные символьные вычисления
представляют собой динамично развивающуюся область компьютерного
моделирования.
Разработкой символьных методов
моделирования занимается
компьютерная алгебра.
Символьное
моделирование осуществляется на основе
систем
компьютерной алгебры
(computer algebra system, CAS):
-
Maple,
-
Mathematica
-
Sage,
-
Maxima,
-
Reduce и др.
Большинство задач, решаемых системами
компьютерной алгебры, носят математический характер: раскрытие
произведений и степеней, факторизация, дифференцирование,
интегрирование, расчет пределов функций и последовательностей, решение
уравнений, оперирование с рядами и др.
Универсальность
символьных вычислений делает их эффективным инструментом в
моделировании лингвистических феноменов.
Уже MATHLAB (одна из первых систем
компьютерной алгебры), была создана в рамках исследования
искусственного интеллекта (MITRE) на основе языка LISP.
Лингвистика (наряду с биологией,
социологией и логистикой) - одна из из самых перспективных
областей научного изучения символьных
вычислений и сама может и должна опереться на разработки компьютерной
алгебры.
Образцом (моделью) инструментария
символьного моделирования
может служить инструментарий, включающий:
-
систему компьютерной алгебры
Mathematica,
-
язык программирования Wolfram
Language,
-
Wolfram|Alpha,
-
CDF (формат вычисляемых документов)
-
Wolfram Programming Cloud.
Данный инструментарий разработан под
руководством Стивена Вольфрама. |
Гипотеза
Ньюэлла — Саймона
Гипотеза о физической символьной системе
(гипотеза Ньюэлла — Саймона) — физическая
символьная система имеет необходимые и достаточные средства для
произведения основных интеллектуальных операций.
Пояснение:
-
без символьных вычислений невозможно выполнять осмысленные действия,
-
способность выполнять символьные вычисления достаточна для
выполнения осмысленных действий.
-
если человек или машина действуют осмысленно, то значит, они
выполняют символьные вычисления.
-
так как компьютер способен к подобным вычислениям, то на его основе
может быть создан искусственный интеллект.
Гипотеза Ньюэлла — Саймона сформулирована
Алленом Ньюэллом и
Гербертом Саймоном в 1976 году.
Основанием для гипотезы стало успешное применение созданной Ньюэллом и
Саймоном программы — универсального решателя задач — для моделирования
рассуждений человека.
Болььшая
часть исследований искусственного интеллекта пошла именно по пути
создания символьных систем.
Независимо от того, справедлива ли эта гипотеза, символьные вычисления —
общепризнная эффективная парадигма.
|
Стивен В ольфрам
Стивен
Вольфрам (Stephen Wolfram) за невероятные успехи в
образовании получил в детстве прозвище «маленького Эйнштейна». В 15 лет опубликовал
статью по физике элементарных частиц.
За работы в физике
элементарных частиц, космологии и информатике получил «грант для
гения» от фонда Макартуров.
Занимался разработкой систем компьютерной
алгебры, моделями клеточных автоматов.
Основал компанию Wolfram Research и в 2009
представил базу знаний и набора вычислительных алгоритмов WolframAlpha
Автор концепции A
New Kind of Science
Научный консультант фильма
«Прибытие»
Женат, отец четверых детей.
|
Рекомендуемые материалы
Mathematica
Mathematica
(CAS):
-
система компьютерной алгебры
-
построенная на базе проблемно-ориентированного языка функционального программирования
высокого уровня Mathematica.
-
предназначенная для
решения различных задач (в том числе и лингвистических) в диалоговом
режиме без традиционного программирования.
См:
http://www.wolfram.com/mathematica/
Mathematica задумана для автоматизации
исследовательских практик в самых разных областях и поэтому изначально обладала универсальностью и функциональной избыточностью при
дружественном интерфейсе, простоте освоения и высокой скорости
вычислений.
Mathematica
(язык) — интерпретируемый язык
функционального программирования, на котором написана (большая
часть)
CAS
Mathematica
(часть написана на языке С).
Mathematica поддерживает процедурное
программирование, объектно-ориентированный подход, отложенные
вычисления, задания правилл работы с теми или иными выражениями (метамоделирование).
|
Ключевым элементом системы Mathematica
является
Wolfram Language.
В 2018 год с версиями 11.3 языка Wolfram
Language и Mathematica |
Wolfram Language
Wolfram Language
(http://www.wolfram.com/language/)
– мультипарадигмальный (общецелевой) язык символьных
вычислений, функционального и логического программирования с
возможностью реализовывать произвольные структуры и данные.
Wolfram Language
основан на современной математизированной формальной логике,
которая используется как внутри математики (исследование оснований математики), так и
вне ее (автоматическая обработка текста и речи, теоретическая
информатика, искусственный интеллект).
Универсальность Wolfram Language обеспечивается богатством
интегрированных в него многочисленных
специализированных данных, алгоритмов, баз знаний,
призванных репрезентировать «полную вычислимую модель мира»
и максимально автоматизировать моделирование его объектов,
процессов, отношений.
Лингвистические приложения:
Ресурсы по Wolfram Language на русском языке
В 2018 год с версиями 11.3 языка Wolfram Language и
Mathematica
На
Wolfram Language и Mathematica основана
Wolfram|Alpha
21.05.2019
Wolfram
Research бесплатно предоставляет свой движок Wolfram Engine (скачать)
всем разработчикам собственных проектов.
Именно
он реализует
Wolfram Language, который доступен в виде песочницы.
Бесплатный Wolfram Engine также имеет полный доступ к базе знаний Wolfram и
ее предварительно подготовленным нейронным сетям. Но для его использования
вам необходимо оформить бесплатную подписку на Wolfram
Cloud.
Стивен
Вольфрам: Wolfram Engine -
в основе
всех наших продуктов позволит
облегчить для всех использование языка Wolfram Language в
любых проектах и дать возможность создавать системы,
использующие преимущества его вычислительного интеллекта.
Wolfram
Language используется в поисковых системах DuckDuckGo
и Microsoft Bing, в Amazon Alexa и Siri от Apple.
08.10.2019
Курс
«Основы эффективной работы с Wolfram»: видеолекции и задачи
|
Wolfram|Alpha
Wolfram|Alpha
(http://www.wolframalpha.com/)
– вычислительная система знаний (computational knowledge engine),
вычисляющая ответы на пользовательские запросы (в том числе заданные на
естественном языке), основываясь на собственной базе знаний и сетевых
ресурсах, библиотеке алгоритмов и NKS-подходе для ответов на запросы.
Wolfram|Alpha, в частности, используется
Siri –персонального помощника для iOS.
Wolfram|Alpha является попыткой практической реализации концепции A
New Kind of Science |
New Kind
of Science
A
New Kind of Science (Наука нового типа) —
книга Стивена Вольфрама о вычислительных системах и вычислениях в
широком ряде дисциплин (лингвистика, биология, экология, социология...).
Основным предметом «нового вида науки»
Вольфрама является изучение простых абстрактных правил (элементарных
компьютерных программ) независимо от компонентов изучаемой системы или
деталей её устройства.
Рассматриваются одномерные, двумерные и
трёхмерные клеточные автоматы, мобильные автоматы, одномерные и
двумерные машины Тьюринга, варианты систем замещения и сетевых систем,
примитивные рекурсивные функции, вложенные рекурсивные функции,
комбинаторы, тег системы, машины с регистрами...
Аргументируется достаточность простых
программ для улавливания сути практически любой сложной системы.
Stephen Wolfram A. New Kind of Science / Электрон. изд. – Режим доступа:
https://www.wolframscience.com/
|
Computable Document Format
Mathematica и Wolfram|Alpha сочетают
возможности выполнения сложных символьных вычислений (и числовых
расчетов) с представлением результатов в виде набора мультимедийных
моделей (графика, звук, анимация, интерактивность и др.).
Во многом это обеспечивается
использованием открытого формата вычисляемых документов (Computable
Document Format
или
CDF),
разработанного с целью облегчения создания динамически сгенерированного
мультимедийного интерактивного контента.
22.07.2011 Wolfram Research
представила CDF (Computable Document Format, формат вычисляемых документов) - новый открытый формат электронных документов. CDF-документы отображаются в браузере, но необходимо установить бесплатное дополнение CDF Player
(100 MB).
22.12.2017 CDF Player
(больше 1000 MB)
|
Формат CDF, благодаря интеграции с Wolfram
Language, Mathematica и Wolfram|Alpha, расширяет коммуникативный канал
обычного текстового и графического материала до функциональности
интерактивного приложения и предоставляет возможность управлять
содержимым и генерировать результаты в режиме реального времени.
Встроенная возможность производить
вычисления на материале контента (текстовом, числовом, формульном,
табличном, графическом, картографическом, инфографическом и т.п.)
позволяет не только анализировать материал, но из представленной
информации получать новые знания.
Файлы в формате CDF можно включать в
веб-страницы или просматривать непосредственно в браузере как
полноэкранные документы, их содержимое обновляется с использованием
встроенной вычислительной подсистемы при взаимодействии с графическими
элементами пользователя.
CDF-Player
(http://www.wolfram.com/cdf-player)
целиком содержит библиотеку времени исполнения системы Mathematica,
содержимое документа может генерироваться в ответ на действие
пользователя с помощью любых алгоритмов или функций визуализации. Это
делает CDF особенно удобным для визуализации материала, оперирующего
большим числом разнообразных данных.
|
CDF-Player
генерирует
содержимое документа в ответ на действие
пользователя с помощью любых алгоритмов или функций визуализации. Это
делает CDF особенно удобным для визуализации материала, оперирующего
большим числом разнообразных данных.
Общий алгоритм (метамодель) создания в Mathematica
интерактивной лингвистической CDF-модели на основе набора произвольных
данных и без традиционного программирования:
-
генерация набора случайных данных
(с помощью встроенного генератора на основе описанных в
документации синтаксических конструкций);
-
копирование готового
кода;
-
графическое отображение
полученного набора данных на основе выбора встроенных объектов;
-
вычисление и копирование готового кода;
-
символьные вычисления на основе
выбора нужных функций и условий синтаксиса;
-
визуализация и копирование
готового кода;
-
добавление в графическое
отображение различных элементов;
-
преобразование графического
отображения в интерактивную модель на основе определения
элементов управления, набора данных, изменяемых переменных,
начальных значений, диапазонов изменений значений.
-
вычисление и
копирование готового кода.
-
оформление интерактивной модели и
добавление опции инициализации;
-
преобразование интерактивной
модели в формат CDF.
http://www.wolfram.com/cdf/
|
Wolfram
Demonstrations Project & Contributors
В Интернете представлены сотни
интерактивных моделей, полученных в результате символьных вычислений в
Mathematica (http://demonstrations.wolfram.com/).
В
несколько десятков из них моделирует различные аспекты Textual Analysis
и School Language Arts (раздел Our World, подраздел Linguistics).
Данные модели могут быть использованы в
иллюстративном качестве для исследовательской или образовательной
деятельности, они также могут представлять интерес в качестве объектов
изучения и основы для собственного лингвистического моделирования на
основе символьных вычислений, особенно в контексте преподавания
компьютерной лингвистики для студентов гуманитарных специальностей.
Открыт доступ к
Wolfram Programming Cloud (облако
программирования Wolfram), который позволяет в любом браузере и с любого
устройства создавать готовые CDF-документы, приложения, работать с
прямым API, создавать автоматически генерируемые отчеты, отсроченные
задания, веб-страницы и многое другое. |
Wolfram
SystemModeler
Wolfram SystemModeler -
платформа компьютерного моделирования
физико-технических и био-химических объектов и систем.
Wolfram
SystemModeler
разработан Wolfram Research
http://wolfram.com/system-modeler/index.ru.html
http://www.wolfram.com/system-modeler/modeling-tools-comparison/
Wolfram
SystemModeler основан на языке Modelica.
Modelica
(https://www.modelica.org/) —
язык моделирования сложных
физических систем (содержащих механические,
электрические, электронные, гидравлические, тепловые, энергетические
и др. компоненты). Modelica (как язык моделирования)
отличается от стандартных языков программирования тем, что:
-
классы Modelica не компилируются в
обычном смысле, но преобразуются в объекты, которые затем
используются специализированным процессором, который
манипулирует уравнениями в символьном виде.
-
хотя классы могут содержать
алгоритмические компоненты, аналогичные операторам или блокам в
языках программирования, их основное содержание составляют
множества уравнений, которые не задают заранее определенную
причинно-следственную связь (causality).
Обзор возможностей языка
Modelica
Modelica Language Specification 3.4. |
Wolfram
SystemModeler
предоставляет интерактивную графическую среду для математического и
компьютерного моделирования, а также множество конфигурируемых
библиотек компонентов.
Стандартная библиотека
Modelica Standard Library (https://www.modelica.org/libraries
) содержит
тысячи типичных элементов моделей и функций из различных областей.
Конференции
2018 по моделированию на
Modelica:
Vitaliy Kaurov Modeling a Pandemic like Ebola with
the Wolfram Language
Перевод в виде документа Mathematica,
который содержит весь код использованный в статье
можно (архив, 100 МБ).
|
|