Введение
Окружающая среда решения проблем (ОСР) – это законченное, интегрированное и специализированное компьютерное программное обеспечение для решения задач одного класса, сочетающее автоматизированные методы решения проблем с удобными для пользователя инструментами, направленными на поддержку процесса решения. ОСР может также помогать пользователям в формулировании задач, выборе алгоритмов, моделировании численных значений и анализе результатов.
Цель ПСЭ
В 1990-х годах было представлено множество специализированных программных средств (СПС). Они используют терминологию соответствующей области и часто оснащены современными графическими пользовательскими интерфейсами. Цель – сделать программное обеспечение удобным для специалистов, не являющихся экспертами в области информатики. СПС доступны для решения общих задач, таких как визуализация данных или решение больших систем уравнений, а также для узких областей науки или техники, например, проектирование газовых турбин.
История
The Problem Solving Environment (PSE) был выпущен спустя несколько лет после появления Fortran и Algol 60. Считалось, что эта система с языком высокого уровня приведет к исчезновению профессии программиста. Однако, к удивлению, PSE получил распространение, и даже ученые использовали его для написания программ. В 1960 году была представлена среда решения проблем для параллельных научных вычислений, ставшая первой организованной коллекцией с минимальной стандартизацией. PSE параллелизует и интегрирует множество отдельных численных расчетов в промышленный последовательный код оптимизации. Он реализован в пакете NAG IRIS Explorer для решения задач EHL и задач, связанных с параллелизмом, и может использовать библиотеки gViz для организации всей коммуникации между PSE и моделью. Также используется MPI — часть библиотек NAG, — что позволяет получать значительно более быстрые и качественные решения за счет объединения максимальных уровней непрерывности.
Сетевые ПСЭ для мобильных устройств
Для проблемно-сложных вычислений (ПСЭ) требуется большое количество ресурсов, что создает нагрузку даже на самые мощные современные компьютеры. Преобразование ПСЭ в программное обеспечение, пригодное для использования на мобильных устройствах, является важной задачей, стоящей перед программистами сегодня. Распределенные вычисления рассматриваются как решение проблемы реализации ПСЭ на мобильных устройствах. Это становится возможным благодаря "Брокерской службе". Эта служба инициируется устройством-запускающим, которое отправляет необходимую информацию для решения задачи ПСЭ. Брокерская служба затем разбивает задачу на подзадачи и распределяет информацию между различными подчиненными устройствами для их выполнения.
Будущее улучшение
Сначала решать задачи 2D EHL было сложно из-за высокой стоимости и ограниченной вычислительной мощности. Разработка параллельных 2D кодов EHL и появление более производительных компьютеров открыли возможность решения задач 2D EHL. Данные о трении и смазочных материалах требуют повышенной защиты, учитывая их конфиденциальность. Учет результатов моделирования может быть затруднен, поскольку они выполняются быстро и в большом количестве. Эту проблему можно решить с помощью системы регистрации или "реестра". При совместной работе с ПЭП, используемыми несколькими пользователями, возникают трудности с отслеживанием изменений, в частности, с определением конкретных изменений и времени их внесения. Решить эту проблему также можно с помощью реестра изменений. Во-вторых, в рамках дальнейшего развития сетевых ПЭП для мобильных устройств, группа планирует генерировать новые сценарии путем изменения доступных управляющих переменных. Изменяя эти переменные, программное обеспечение моделирования способно создавать сценарии на основе друг друга, что позволяет более детально изучить условия в каждом из них. Ожидается, что изменение трех переменных позволит получить двенадцать различных сценариев. Переменными, представляющими для нас интерес, являются стабильность сети и мобильность устройств. Мы полагаем, что именно эти переменные окажут наибольшее влияние на производительность сети. В ходе исследования производительность будет оцениваться по времени выполнения задачи как основному показателю.
Парк ПСЭ
По мере усложнения ПСЭ потребность в вычислительных ресурсах резко возросла. В то же время, по мере того как приложения ПСЭ проникают в более сложные области и среды, создание самих ПСЭ становится все более трудоемким и сложным. Хирумичи Кобаси и его коллеги разработали ПСЭ, предназначенное для создания других ПСЭ. Это получило название "мета-ПСЭ" или ПСЭ-создатель. Так и появился ПСЭ Парк.
Основные положения
Архитектура PSE Park подчеркивает гибкость и расширяемость. Эти характеристики делают его привлекательной платформой для пользователей с разным уровнем подготовки, от начинающих до разработчиков. PSE Park обеспечивает это благодаря своему репозиторию функций. Репозиторий содержит модули, необходимые для создания PSE. Некоторые из самых базовых модулей, называемые Ядрами, используются в качестве основы для PSE. Более сложные модули доступны для использования программистами. Пользователи получают доступ к PSE Park через консоль, связанную с программистами. После регистрации пользователь получает доступ к репозиторию. Сервер PIPE используется как посредник между пользователем и PSE Park. Он предоставляет доступ к модулям и собирает выбранные функции в PSE. Разработчики могут разрабатывать функции или даже целые PSE для включения в репозиторий. Пользователи начального и продвинутого уровня могут использовать эти готовые PSE для своих целей. Учитывая такую архитектуру, PSE Park требует облачной вычислительной среды для поддержки огромного объема обмена данными, возникающего при использовании и разработке PSE.
Сервер PIPE
PIPE Server отличается от других серверов способом обработки промежуточных результатов. Поскольку PIPE Server выступает посредником в мета-PSE, любые результаты или переменные, сгенерированные основным модулем, извлекаются как глобальные переменные для использования следующим ядром. Последовательность или иерархия определяется пользователем. При этом переменные с одинаковыми именами преобразуются в новый набор переменных. Важной особенностью PIPE Server является также то, что он выполняет каждый модуль или ядро независимо. Это означает, что язык каждого модуля не обязан совпадать с языками других модулей в PSE. Модули реализуются в соответствии с определенной иерархией. Эта функция предоставляет огромную гибкость разработчикам и пользователям с различным опытом в программировании. Модульный формат также позволяет легко расширять и модифицировать существующие PSE.
Ядра
Для регистрации ядро должно быть полностью определено. Определения входов и выходов позволяют серверу PIPE определять совместимость с другими ядрами и модулями. Любое неполное определение отмечается сервером PIPE как признак несовместимости.
Регистрационный двигатель и консоль
Регистрационный механизм отслеживает все ядра, которые могут быть использованы в PSE Park. Также ведется история их использования. Для лучшего понимания ядер или модулей может быть разработана карта ядер. Консоль — это основной интерфейс пользователей с PSE Park. Она отличается высокой наглядностью и графическим представлением, что позволяет пользователям лучше понимать взаимосвязи между модулями и ядрами в контексте работающих PSE.