RANet "в картинках"
Сопроводительная информация (например, к спектру)
Вершиной бумажной эры регистрации экспериментальных зависимостей было внедрение планшетных самописцев, которые кроме собственно измеренной кривой в уголке стандартного листа бумаги сами рисовали табличку со значениями параметров записи. Там же было несколько полей, которые экспериментатор заполнял вручную.
Сразу после этого при исследовательских установках появились ПК, и, казалось бы, должна была наступить новая эра. Вместо этого мы попали в затянувшееся Средневековье.
Да, появились возможности обработки — это здорово, но в плане хранения данных подавляющее большинство программ предлагают просто кальку с вышеописанной бумажной технологии. На экране появляется табличка, часть полей заполнена, часть нужно заполнить руками, а потом эта табличка хранится вместе с оцифрованной кривой, предъявляется Вам по первому требованию, и ... всё! Потеряно несколько преимуществ бумаги, не столь важных для поточных однообразных измерений, но абсолютно критичных для исследовательской работы.
Первое — это толерантность бумажного листа по отношению к изменениям в структуре сопроводительной информации. Если в табличке не было предусмотрено поле для ширины щели, её можно было написать рядом, и при этом она навечно оставалась вместе с главным объектом хранения. А если потом оказалось важным что-то другое (температура образца, погода за окном...), то то же место можно было использовать для других параметров.
Проблема частично решается добавлением в программу поля для ввода произвольного текстового комментария. Однако при этом теряется ряд преимуществ формализованного хранения параметров (например, нормализация оптического спектра с поправкой на ширину щели). И кроме того становится очень неудобным, когда почти вся сопроводительная информация вынужденно переползает в неформализованный комментарий. Это происходит, когда ту же программу удаётся использовать на принципиально другой установке, с другим физическим смыслом параметров и результата. И это как раз наш случай, поскольку программа RA (как и её предшественница SOS) изначально предназначена для использования на очень разных установках, каждая из которых, к тому же, иногда существенно модифицируется.
Поэтому RA (как и SOS) использует древовидный самодокументируемый формат хранения сопроводительной инфомации:
Термин "самодокументируемый формат" означает, что для каждого элемента данных его наименование и тип (числовой, текстовый,...) хранятся вместе с его значением. (В отличие от фиксированного формата, при котором в файлы данных записываются только значения данных, а то, как они называются, и как с ними обращаться, жёстко "зашито" в программу.)
На вышеприведённом рисунке изображены отдельные неделимые объекты (в рамках) и связи между ними (направленные стрелки с именами).
Наиболее сложный объект изображён вверху и содержит внутри себя
оцифрованную кривую, этикетку #2010.6.8.2
, время начала
и конца записи,... Но он бессмысленен без знания условий записи.
То, что подвешено к объекту запись #2010.6.8.2
, называется в RA
атрибутами этого объекта. Атрибут может иметь имя и
значение. У объекта запись #2010.6.8.2
имеется атрибут
gain
со значением 20000
. Здесь всё просто.
Пользователь будет видеть это на экране (см. также следующий рисунок)
в привычном виде gain=20000
.
Другой атрибут с именем modulation
имеет своим значением
объект типа кластер. Кластер изображён маленьким пустым кружком
и не имеет никакого внутреннего содержания, но ему в свою очередь приписаны
атрибуты amp
и freq
. Сам по себе пустой
кластер не несёт никакой информации, но кластер с атрибутами имеет
вполне понятный смысл и значимость. Пользователь увидит его на экране
в виде "папки", которую можно раскрыть и получить список
атрибутов (см. рисунок ниже).
Атрибут с именем sample
имеет значением объект с
этикеткой W60.2
— так назывался образец. На самом
деле это кластер с этикеткой, и он в свою очередь может
иметь атрибуты. Мы обсудим это в следующем подразделе.
Все вышеперечисленные атрибуты характерны для методики,
могли быть предусмотрены на стадии разработки консоли прибора (т.е. той
части программы, которая собственно создаёт запись) и могут приписываться
к записи автоматически. А вот отмечать погодные условия пришло в голову
экспериментатору недавно, и атрибут meteo
с текстовым
значением он добавил сам. Все атрибуты равноправны. То, что последний
нарисован на схеме пунктиром, всего лишь подчёркивает важное свойство
программы:
RA позволяет пользователю добавлять к записям сколько угодно и каких угодно атрибутов. Программа хранит имена, данные им пользователем, и типы их значений вместе со значениями. И, конечно, имеется средство для просмотра и редактирования &ndash: навигатор, которое для нашего сильно упрощённого примера выглядит так:
Другие кластеры полезной информации
В примере из предыдущего подраздела указан лишь некий код W60.2
(маркировка, идентификатор, номер...) образца, на котором сделана запись.
Это значит, что где-то ещё — в рабочем журнале, картотеке, на клочке бумаги,
на коробочке с образцом, ..., а обычно, частью тут, частью там —
у Вас хранится сопроводительная информация к этому образцу.
Когда с образцами работает несколько человек во всём этом неминуемо
возникает путаница. Почему бы не хранить эту информацию тут же, в программе:
Большое значение может иметь также история образца. RA автоматически записывает свои действия, в которых этот образец фигурирует. А экпериментатор может вносить в этот список действия произведённые помимо RA. Например:
Имея перед глазами такую информацию, нетрудно понять, что причина различия между спектрами, снятыми на одном образце, в одинаковых условиях и с интервалом в несколько дней заключается в том, что в промежутке образец был отожжён.
Естественные связи
Ну и наконец, если слить эти картинки воедино, получается то, что в кругах, занимающихся искусственным интеллектом, называется онтологией:
Обратите внимание: это уже не древовидная структура. Некоторые ветки склеились, а связи, для наглядности отмеченные красным, ведут "назад", образуя в этом лабиринте циклические пути.
Такое представление информации и по структуре и по способам работы с ней похоже Всемирную Паутину (Интернет).