Среда решения проблем (PSE) — это законченное, интегрированное и специализированное компьютерное программное обеспечение для решения одного класса проблем, объединяющее автоматизированные методы решения проблем с ориентированными на человека инструментами для руководства разрешением проблем. PSE также может помогать пользователям в формулировании решения проблем. PSE также может помогать пользователям в формулировании проблем, выборе алгоритма, моделировании числовых значений, а также просмотре и анализе результатов.
Многие PSE были введены в 1990-х годах. Они используют язык соответствующей области и часто используют современные графические пользовательские интерфейсы . Цель состоит в том, чтобы сделать программное обеспечение простым в использовании для специалистов в областях, отличных от компьютерных наук . PSE доступны для общих задач, таких как визуализация данных или больших систем уравнений, а также для узких областей науки или техники, таких как проектирование газовых турбин . [1]
Problem Solving Environment (PSE) была выпущена через несколько лет после выпуска Fortran и Algol 60. Люди думали, что эта система с языком высокого уровня приведет к ликвидации профессиональных программистов. Однако, как ни странно, PSE была принята, и даже несмотря на то, что ученые использовали ее для написания программ. [2]
Среда решения проблем для параллельных научных вычислений была представлена в 1960 году, где это были первые организованные коллекции с незначительной стандартизацией. [2] В 1970 году PSE изначально исследовался для предоставления высококлассного языка программирования, а не Fortran, [ требуется ссылка ] также появились библиотеки пакетов для построения графиков. Разработка библиотек продолжалась, и были введены Emergence of Computational Packages и Graphical systems, которые являются визуализацией данных. К 1990-м годам гипертекст, point-and-click перешли к взаимодействию. Двигаясь дальше, наконец-то появилась индустрия «программных частей». [2]
В течение нескольких десятилетий, в последнее время, было разработано много PSE для решения проблем, а также для поддержки пользователей из разных категорий, включая образование, общее программирование, изучение программного обеспечения CSE, выполнение заданий и Grid/Cloud вычисления. [ необходима цитата ]
Программное обеспечение оболочки GOSPEL является примером того, как PSE может быть разработано для моделирования EHL с использованием ресурса Grid. С помощью PSE можно визуализировать ход оптимизации, а также взаимодействовать с другими симуляциями. [3]
PSE распараллеливает и встраивает множество отдельных числовых вычислений в промышленный последовательный код оптимизации. Он встроен в пакет NAG IRIS Explorer для решения проблем EHL и параллелизма и может использовать библиотеки gViz для запуска всей коммуникации между PSE и симуляцией. Он также использует MPI — часть библиотек NAG — что дает значительно более быстрые и лучшие решения путем объединения максимальных уровней продолжения. [3]
Более того, система разработана так, чтобы позволить пользователям управлять симуляциями с использованием визуализированных выходных данных. Примером является использование локальных минимумов или наложение дополнительных деталей при локальном входе и выходе из симуляции, и она может представить информацию, которая производится в любом резком виде, а также по-прежнему позволяет управлять симуляцией. [4]
PSE требуют большого количества ресурсов, которые нагружают даже самые мощные компьютеры сегодня. Перевод PSE в программное обеспечение, которое может использоваться для мобильных устройств, является важной задачей, с которой сталкиваются программисты сегодня. [5]
Grid-вычисления рассматриваются как решение проблем спасения PSE для мобильных устройств. Это стало возможным благодаря «брокерской службе». Эта служба запускается инициирующим устройством, которое отправляет необходимую информацию для PSE для решения задачи. Затем брокерская служба разбивает ее на подзадачи, которые распределяют информацию по различным подчиненным устройствам, которые выполняют эти подзадачи. [5] Для брокерской работы требуются репозиторий активных агентов (AAR) и таблица распределения задач (TAT), которые оба работают для управления подзадачами. Keep-Alive Server подключается для обработки связи между брокерской службой и подчиненными устройствами. Keep-Alive Server полагается на легковесное клиентское приложение, установленное на участвующих мобильных устройствах.
Безопасность, прозрачность и надежность — это проблемы, которые могут возникнуть при использовании сети для PSE на базе мобильных устройств. [5]
Происходит революция в области сетевого обучения и электронного обучения для образования, но очень сложно собирать данные об образовании и данные о деятельности учащихся. TSUNA-TASTE, разработанная T. Teramoto, PSE для поддержки процессов образования и обучения. Эта система может создать новую идею электронного обучения, поддерживая учителей и учащихся в компьютерном образовании. Она состоит из четырех частей, включая агентов учащихся, сервер поддержки образования, систему баз данных и веб-сервер. Эта система делает электронное обучение более удобным, поскольку информация раньше хранится и собирается для учащихся и учителей. [ необходима цитата ]
Поддержка генерации параллельных программ с помощью компьютера (P-NCAS) — это PSE, которая создает новый способ сокращения сложных задач программирования для компьютерного программирования. Эта программа может избежать или уменьшить вероятность поломки огромного программного обеспечения компьютера, что ограничивает неопределенность и крупные аварии в обществе. Более того, проблемы с частными дифференциальными уравнениями (PDE) могут быть решены параллельными программами, которые генерируются поддержкой P-NCAS. P-NCAS использует Single Program Multi Data (SPMD) и использует метод декомпозиции для распараллеливания. Они позволяют пользователям P-NCAS вводить проблемы, описанные PDES, алгоритмом и схемой дискретизации и т. д., а также просматривать и редактировать все детали с помощью визуализации и окон для редактирования. Наконец, параллельная программа будет выведена на языке C P-NCAS, а также будет включать документы, которые показывают, что все было введено в начале. [6]
Сначала было сложно решать двумерные задачи EHL из-за расходов и доступной вычислительной мощности. Разработка параллельных двумерных кодов EHL и более быстрых компьютеров теперь проложила путь к возможности решения двумерных задач EHL. Данные о трении и смазке требуют более высокого уровня безопасности, учитывая их чувствительность. Учет моделирования может быть затруднен, поскольку они выполняются быстро и тысячами. Эту проблему можно решить с помощью системы регистрации или «каталога». Совместные PSE с несколькими пользователями столкнутся с трудностями отслеживания изменений, особенно с тем, какие именно изменения были сделаны и когда эти изменения были сделаны. Эту проблему также можно решить с помощью каталога внесенных изменений. [3]
Во-вторых, будущее улучшение PSE на основе Grid для мобильных устройств, группа стремится генерировать новые сценарии посредством манипулирования доступными контрольными переменными. Изменяя эти контрольные переменные, программное обеспечение для моделирования может создавать сценарии друг из друга, что позволяет более тщательно изучать условия в каждом сценарии. Ожидается, что манипулирование тремя переменными сгенерирует двенадцать различных сценариев. [5]
Переменные, которые мы хотим изучить, — это стабильность сети и мобильность устройств. Мы считаем, что эти переменные окажут наибольшее влияние на производительность сети. Наше исследование будет измерять производительность, используя время выполнения задачи в качестве основного результата. [5]
По мере усложнения PSE потребность в вычислительных ресурсах резко возросла. И наоборот, с внедрением приложений PSE в области и среды растущей сложности создание PSE стало утомительным и трудным.
Хирумичи Кобаши и его коллеги разработали PSE, предназначенный для создания других PSE. Это было названо «мета PSE» или PSE. Так родился PSE Park. [ необходима цитата ]
Архитектура PSE Park подчеркивает гибкость и расширяемость. Эти характеристики делают ее привлекательной платформой для различных уровней знаний, от пользователей начального уровня до разработчиков. [ необходима цитата ]
PSE Park предоставляет их через свой репозиторий функций. Репозиторий содержит модули, необходимые для создания PSE. Некоторые из самых базовых модулей, называемых ядрами, используются в качестве основы PSE. Более сложные модули доступны для использования программистами. Пользователи получают доступ к PSE Park через консоль, связанную с программистами. После регистрации пользователя он/она получает доступ к репозиторию. В качестве посредника между пользователем и PSE Park используется сервер PIPE. Он предоставляет доступ к модулям и конструирует выбранные функции в PSE. [ необходима цитата ]
Разработчики могут разрабатывать функции или даже целые PSE для включения в репозиторий. Пользователи начального и экспертного уровня могут получить доступ к этим готовым PSE для своих собственных целей. Учитывая эту архитектуру, PSE Park требует облачной вычислительной среды для поддержки огромного обмена данными, который происходит во время использования и разработки PSE. [ необходима цитата ]
PIPE Server отличается от других серверов тем, как он обрабатывает промежуточные результаты. Поскольку PIPE Server действует как посредник в meta-PSE, любые результаты или переменные, сгенерированные основным модулем, извлекаются как глобальные переменные для использования следующим основным модулем. Последовательность или иерархия определяются пользователем. Таким образом, переменные с одинаковыми именами пересматриваются в соответствии с новым набором переменных. [ необходима цитата ]
Еще одной важной характеристикой PIPE Server является то, что он выполняет каждый модуль или ядро независимо. Это означает, что язык каждого модуля не обязательно должен быть таким же, как и у других в PSE. Модули реализуются в зависимости от определенной иерархии. Эта функция обеспечивает огромную гибкость для разработчиков и пользователей с различным опытом программирования. Модульный формат также позволяет легко расширять и изменять существующие PSE. [ необходима цитата ]
Для регистрации ядро должно быть полностью определено. Определения входов и выходов позволяют серверу PIPE определять совместимость с другими ядрами и модулями. Любое отсутствие определения помечается сервером PIPE как несовместимое. [ необходима цитата ]
Механизм регистрации отслеживает все ядра, которые могут использоваться в PSE Park. Также создается история использования. Может быть разработана карта ядер, чтобы помочь пользователям лучше понять ядро или модуль. Консоль — это основной интерфейс пользователей с PSE Park. Она очень наглядна и схематична, что позволяет пользователям лучше понимать связи между модулями и ядрами для PSE, над которыми они работают. [ необходима цитата ]