Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лачинов В.М., Поляков А.О. Інформодинаміка [укр.язык].doc
Скачиваний:
31
Добавлен:
02.05.2014
Размер:
5.23 Mб
Скачать

12.6. Попереднє обговорення результатів

12.6.1. Правила конструювання відкритих систем.

Що ж ми отримали – систему своєрідних аксіом? Деякий феноменологічний опис систем? І як цим користуватися? Ми отримали в точності і буквально те, що шукали – правила конструювання відкритих систем, причому загальні, не залежні від матеріалу, компонентів, способів конструювання, включаючи в останні і всі варіанти еволюції.

Абсолютно зрозуміло, що використовувати ці правила як кроки чи блоки деякого алгоритму конструювання не вийде просто по суті відкритості конструйованих систем. Зі всього “звичного”, правила понад усе схожі на передумови і післяумови структурного програмування.

Дійсно:

  • правило доповнення – суперглобальна передумова;

  • правила шкал і структурного резонансу – глобальні передумови;

  • правило трійки – локальна передумова;

  • правило гіперрезонансу – глобальна післяумова тощо.

Проте і тут тільки схожість – структурний алгоритм із них (правил) теж не побудувати. І не можна, і не треба! Сам процес конструювання по суті невідокремлюваний від процесу існування, життєвого циклу системи. І конструювання це по суті своїй не алгоритм в процедурному сенсі, а процес підгонки, узгодження об’єктів.

Щоб здійснити конструювання треба задати описи об’єктів і правила їх роботи. Щоб перейти до рівня процедур, тобто кроків конструювання, треба задати значення, причому значення в узагальненому сенсі, тобто включаючи діапазони, умовні значення, підстановки тощо.

І лише здійснивши вищезгадані маніпуляції, ми виходимо на рівень роботи з конкретними даними, на обробку поточного стану потоку даних. Адже ми все це вже зустрічали – в попередніх розділах, конкретно – в конструкції qWord. Таким чином, ми можемо зробити ряд важливих висновків, а саме з’ясувати, нарешті, вид загальної теорії відкритих систем і встановити допустимий рівень формалізації цієї теорії.

Перше. Адекватною мовою опису і конструювання відкритих систем є мова об’єктних породжуючих W-граматик {195. Єдиний спосіб опису відкритих систем, це їх створення, породження. Вінер і Колмогоров про це попереджали, але з міркувань скоріше загальнофілософських. Тут ми це не постулювали, але вивели логічно з природних феноменів.}. При цьому об’єкт треба розуміти в розширювальному сенсі, як динамічний, здатний “розкриватися”, тобто змінювати свою структуру не тільки “по волі конструктора або системи”, але і “сам по собі”. Правила ТСУ – це універсальний набір гіперправил такої W-граматики. Крім того, це і правила підключення метаправил і глобальні обмеження. Відмітимо, правила взагалі будь-якою можливою, тобто здатною діяти W-граматики.

Інакше кажучи, ТСУ це і є найбільш загальне формулювання теорії відкритих систем в “максимально допустимому ступені формалізації”. Той самий кодекс Генерального Конструктора, згідно якому створюються і працюють всі об’єкти, що мають властивості “внутрішньої організації”, “самоорганізації”, “розвитку” і так далі, включаючи і всю “Всесвіт-як-ціле”.

З іншого боку за допомогою однієї тільки ТСУ нічого сконструювати не можна – за визначенням самої ж ТСУ; для цього треба приєднати додаткові аксіоми і правила – “другу половину граматики”. Це означає, що загальної теорії систем як єдиного логічного формалізму, того, що традиційно вважається “строгою формально-аксіоматичною теорією” просто не існує. Не вдаватимемося до термінологічної полеміки – залишимо “все як є”, а за ТСУ – її власну, окрему назву.

Друге. Нам вдалося встановити вид “одиниці інформації”. Якщо біт є одиницею “потоку даних”, чи простого “виду інформації” , то для кожного “більш високо організованого виду інформації”, , “одиницею” треба вважати мінімальне (найменше, достатнє для побудови самоподібної структури) бінарне дерево.

Для це вже “парний конус” чи інфокварк. Це максимальна структура, яка може бути “укладена в 3-вимірну пам’ять”, тобто в реальний фізичний “живий” або “неживий” пристрій. Сказане зовсім не означає, що в пам’яті не можна моделювати складніші структури, але витрати на механізм моделювання неминуче будуть рости швидше, ніж за експонентою, крім того, вся конструкція неминуче розвалиться від одного єдиного збою, одноразової втрати одного біта.

Єдиний спосіб уникнути цієї неприємності – будувати всі складні моделі з “конусів”, організовуючи їх за законом того ж конуса і не використовувати складніші структури. Тому ми і назвали первинний конус інфокварком.

Третє. Будь-яка високоорганізована система класу неминуче повинна мати топологію організації пам’яті вказаного вище вигляду незалежно від способу конструювання. Інакше вона просто нежиттєздатна, а про еволюцію вже і говорити не доводиться.

Пригадаємо тепер, що граматика – це інструмент, придатний не тільки для синтезу, але і для аналізу, власне тому ми з повним правом можемо називати ТСУ теорією.

Четверте. Якщо ми вивчаємо чи конструюємо систему, що має властивості самоорганізації, розвитку, інтелекту, то використання яких-небудь структур даних, окрім топологічних, неприпустиме. Будь-які складніші структури виникають і існують тільки як моделі, що інтерпретуються в процесі взаємодії системи з оточенням.

У певному значенні, структури “більш ніж топологічні” можуть існувати тільки як процес інтерпретації. Інакше, при “жорсткому закріпленні” за структурами яких-небудь метричних властивостей, відбувається або самозамикання системи в жорстку структуру “когерентну самій собі”, нездібну до розвитку, або деструкція, розпад системи на “менш ніж слабо зв’язані” складові, на групи елементів, що вже не підкоряються ніякій загальній структурі.

12.6.2. Деструкція при метризації даних.

Необхідно ще раз пояснити, чому і як неминуча деструкція при “метризації” даних. Цю метризацію намагалися і намагаються робити практично всі дослідники відкритих систем.

Натовпи активно охочих бути обдуреними невпинно множаться, спробам побудувати якщо не універсальне, то найбільш правильне подання, модель інформаційного об’єкта, просторову модель даних зі всіма їх закономірностями – нема числа (і схоже, не буде!).

Швидше за все, проблема “не стільки в самій проблемі”, скільки в психології. Як ми вже говорили вище, фахівці з теорії управління “і самі все знають”, програмісти-практики, створюючі і супроводжуючі інформаційні системи теж самі знають – “треба просто підправити модель даних і реструктурувати БД” своїми власними руками, а ще краще – чим-небудь адаптивно-алгоритмічним. І назвати все це системою, заснованою на знаннях (от так, відразу в множині!) або інтелектуальною (див. частина I).

На жаль, сам факт обговорення сумнівності “метризації структури даних” чи теза про початкову відсутність такої в Природі і можливості не більше ніж підбору взаємного розташування об’єктів для отримання правдоподібних висновків на обмеженому числі реалізацій, швидше за все, викличе неприйняття у більшості практиків, що роблять на цій метризації те, що наукою назвати не можна, а тільки кар’єрою – мовляв, черговий фокус теоретиків, не заважайте працювати, давайте краще самі навчіться робити що-небудь корисне.

Тим часом, все так воно і є в найстрогішому сенсі – привласнення деякої метрики, поняття відстані, а то й норми тому, що за визначенням не може мати цих властивостей, та ще й з подальшим аналізом і виявленням законів і закономірностей. Але довільно вигаданий спосіб метризації в машині додатково може перетворитися в щось дивовижне.

Тут ми вимушені нагадати, що переважна більшість навіть кваліфікованих програмістів і управлінців мають вельми відносну уяву і про фізичну архітектуру комп’ютерів, і про архітектуру операційних оболонок, із якими вони працюють. Навіть більше того, навряд чи багато фахівців із баз даних добре уявляють собі, як працює їх система “від тексту до виконання”.

А суть проблеми полягає в трьох речах:

  • самій ідеї, конструкції адресної (фон Нойманівської) машини;

  • ідеї моделі даних, системі аксіом цієї моделі;

  • в організації взаємодії цих двох конструкцій.

Взаємодіють-то в реалії не дві концепції, а безліч механізмів їх реалізації, допоміжних, а то і зовсім сторонніх. Додамо до цього, що парадигм моделей даних і їх реалізацій достатньо багато. Пригадаємо, що одна частина тих, що працюють з цією кухнею переконана, що треба просто “правильно створювати і супроводжувати” моделі даних, інша частина сподівається винайти “загальну модель”, можливі і інші аналогічні за перспективами надії.

А зараз пригадаємо, “звідки взялася” адреса – в “безадресній” машині Тьюрінга треба багато разів ганяти стрічку назад-вперед від найпершої комірки до останньої.

Адреса є ім’ям, а не просто номером комірки, в якій зберігається значення. Хай в деякій програмі описаний масив А[100,100], тоді при зверненні до масиву з підпрограми, що працює з матрицями елементи А[n,n], n 100 мають сенс (семантику) діагональних елементів, тобто свою внутрішню інтерпретацію, весь масив має інтерпретацію як матриця (тобто отримує метрику матричного простору).

У багатьох стандартних програмах (і не тільки матричних) безпосередньо використовується значення відстані між елементами {196. Те, що механізм кеша може “розкидати” елементи у фізичній пам’яті тут якраз не істотно, він же й повертає їх на своє місце в моделі даних.}. Важливо тільки стежити (і при написанні і при виконанні програми) за правильним використанням призначеної і поточної (усередині вкладеної програми) інтерпретації.

Нарешті, протягом усього часу виконання програми виконуюча система повинна стежити, щоб не з’явилися звертання а[n,m], m>100, в “стародавніх системах” це цілком покладалося на програміста. Тобто адреса має ще і зовнішню інтерпретацію, кожне розіменування (доступ до даних) повинно відповідати самому зовнішньому своєму опису, інакше кажучи, адреса володіє всіма властивостями імені, а саме власне даними, локальною (поточною) і глобальною інтерпретацією.

Саме метричні властивості моделей даних перших мов програмування забезпечили успіх на ранніх етапах комп’ютерних технологій і, значною мірою, визначили весь їх розвиток і продовжують визначати.

Дуже просто вдається встановити взаємооднозначну відповідність метрики моделі даних із одного боку – з метрикою об’єкта, тобто “власне даних” (векторів, матриць тощо.), з іншого – з метрикою адресного простору фізичної машини. Це дозволяє розіменувати відразу всі структури і на всю глибину прямо на вході в блок, “автоматично” обчислити адреси “ніби усіх елементів даних відразу”, тобто встановити індекси, зсуви і лічильники.

Попутно це стало рішенням найбільш складного в ті часи питання – при малих обсягах пам’яті виявилося можливим зберігати дані на повільних пристроях, але за рахунок організації зберігання компенсувати (частково) цю повільність.

Але через цю простоту властивості моделі даних, та й сам факт її існування “загубилися”, пройшли непоміченими для широких мас і користувачів і навіть розробників комп’ютерних технологій. Затребувалася ж модель даних, коли з’явилося завдання створення інформаційних систем, що працюють із нечисловими даними, або числовими, але такими, що інтерпретуються не за “позицією в моделі”, а згідно вказаних (у запиті чи програмі) відношень.

Цілком розумним і природним виявилося використати те що вже є і “показало себе в роботі” подання, але з урахуванням властивостей самого модельованого інформаційного об’єкта. А саме: “у бік адресації” – так само як і раніше (у випадку з матрицями) мати можливість переобчислення адрес; “у бік об’єкта” – мати “достатньо природне”, знайоме, звичне подання, наприклад, у вигляді бухгалтерської відомості чи сторінки гросбуха. Тобто побудувати своєрідний “уніфікований контейнер” (чи систему таких), який можна “обробляти автоматично”, але класти туди все що буде потрібно.

Так з’явилася реляційна модель даних. Вважатимемо, що все пов’язане з побудовою реляційної моделі добре відоме читачеві і розглянемо тільки деякі властивості моделі. Хай, наприклад, у Вашому університеті бухгалтерія встановила доплату двірникам. Тоді в розширеній моделі даних – наскрізній бухгалтерській відомості з’явиться колонка (нове відношення), що має як значення даних для “не всіх двірників”, – “порожнє значення”. Відмітимо, не нуль, що підсумовується з рештою виплат, а окреме значення – “порожньо”. Це добре видно, якщо доплата сезонна, тоді в опис відношення (колонки) повинна бути включена умова різної для різних категорій працівників обробки “порожнього значення”.

Крім явної зміни моделі – появи нової колонки виникає ще і “заховане”, неявне відношення з параметром “календарна дата”. Причому, за самим визначенням моделі, система не може нічим допомогти користувачеві, окрім як багато разів запитати чи “повністю Ви описали знову введену колонку?”.

Але нічого не захищає систему і від важчих речей. “Хитрий” користувач або програміст може використати для доступу до даних номер колонки – мови і системи часто цього не забороняють. Після вставляння нової колонки зрозуміло, що відбудеться, добре, якщо система нарахує, наприклад зарплату в нормо-годинах, тобто наслідки будуть очевидними і вловимими.

Це, власне, і означає, що спрацьовують “метричні” властивості моделі. Щоб цього не відбувалося доступ до даних, у загальному випадку, допустимий тільки “через модель”, тобто через імена і описи колонок, яким би неефективним і неприродним це не здавалося.

Нескладно уявити, що відбудеться в складнішій “багатошаровій” реляційній моделі, тим більше в постреляційних “багатовимірних” системах, але і це ще не все – існує і динаміка доступу і дані що “розділяються” при множинному доступі.

Для розваги читач може проекспериментувати з “практично необмеженими можливостями” такого механізму, як непряме ім’я – адже це не заборонено в Cache’, а тим часом його вживання дозволяє створювати не тільки “неіснуючі”, тобто що не мають місця в моделі даних відношення, але й динамічні (тимчасові) послідовності таких відношень. Нагадаємо, що в Cache’ внутрішня модель даних не реляційна, побудована на механізмі B*-дерев, постреляційне подання вживається тільки для зовнішньої моделі.

У цілому виходить, що “винна” не “погана” модель даних, а навпаки, “дуже багата можливостями”. У одному випадку – чисто реляційних систем, властивості моделі виявляються безпосередньо пов’язаними з механізмами адресації, в іншому – така можливість з’являється за допомогою механізмів типу непрямого імені, але суть то в тому, що сам формалізм моделі не може “захистити себе” від неправильного вживання, такого просто не може бути у формалізмі за визначенням.

Залишається один реальний шлях – той, що ми прослідкували в ієрархії систем, що ускладнюються, здатних до розвитку, до еволюції, а саме – механізм організації даних не повинен містити в собі ніяких “прихованих можливостей”, ніяких властивостей окрім тих, що дозволяють описувати топологію даних; сам процес побудови моделі повинен явно розгортатися у вигляді послідовності звернень до механізму управління даними і до механізму опису семантики, тобто послідовності розіменувань.

Ну а те, що, метризовані бази даних і аналогічні конструкції сьогодні забезпечують прийняття якихось корисних рішень – так це сьогодні, коли до проблем інтелектуальних вони не доросли, складність завдань не перевищує “умоглядних” здібностей споживачів їх результатів. І взагалі дачні будиночки можна будувати на основі мінімального здорового глузду, але для солідної споруди зазвичай необхідно спочатку скористатися БНІПом {197. Якщо Ви, з якої-небудь причини ніколи нічого не будували, то пояснюємо: БНІП (будівельні норми і правила) – основний закон проведення такого роду робіт, сформований в буквальному розумінні “на кістках” перших будівельників і порушників цього основного закону.}.

12.6.3. Зв’язок з теоремою Геделя і традиційними формалізмами.

Розглянемо ще раз дію правила 0, але вже як правила Повноти (або достатності) контексту Оточення.

ТСУ стверджує, що за наявності повного контексту і правильно вибраних шкал будь-яке явище реального світу має адекватне компактне відображення у відповідній проблемній (наочній) галузі на інформаційному рівні (чи утворює наочну галузь) і компактний цілісний образ на рівні інтелекту.

Але вірно і зворотне: за відсутності хоч би однієї координати первинного опису чи деформації (зсуві, наприклад) однієї з шкал ніякого компактного опису (подання рівня ) і навіть образу (подання ) може або не бути, або виникне “помилковий” образ, а скоріш за все їх множина.

Інакше кажучи, міра і як феномен взагалі, і в сенсі математичному, виникає лише в адекватному контексті. У разі “урізання контексту” її може і не бути ні в якому сенсі. Назвемо цей ефект правилом антипроективності.

Іншими словами не всі явища можуть бути досліджені покомпонентно, за проекціями (круг таких явищ розглядається різними математичними дисциплінами), але не може бути в природі явищ, що не мають адекватного образу.

Але тоді, через ту ж ТСУ, для стійкого образу, що має стійкий (при достатньо широкому контексті) прообраз у вигляді структури наочної галузі, існує спосіб підбору метричних шкал і арифметичних уявлень, що дозволяє отримати його компактне відображення у вигляді формальної математичної моделі. Причому, незалежно від того, наскільки складним був процес “початкової структуризації” образу.

Вам вже зрозуміло, що вийшло?

Ну, чим не симпатичне комплементарне доповнення {198. Це не тавтологія, комплементарність – поняття що по суті не передбачає внутрішньої симетрії. Про це нижче, в остаточному обговоренні аксіоматики і наслідків побудови інформодинаміки. Це стосується взаємодії тріад основної суті, законів і співвідношень невизначеності.} теореми Геделя, особливо в її конструктивному формулюванні – майже дзеркальне відображення. Відзначимо ще раз, що вийшло-то все це без яких-небудь постулатів, чисто механічно, з факту наявності в природі гармонійного ряду, резонансу, доповнення, принципу рекурсії і феномена структури.

Структура в ТСУ, відмітьте, ніяк “строго не визначається”, вартує тільки це зробити і ТСУ (за своїми ж власними правилами) реструктурується в точній відповідності з цим постулатом.

Якщо вже говорити про якесь “загальне визначення” структури, то це те, що:

  • виникає і існує під впливом внутрішніх і зовнішніх процесів, так би мовити “природним чином”;

  • володіє властивістю компактності {199. А також “компактизації” об’єкта. Якщо два чи більше об’єктів укладаються механізмом ідентифікації в одну структуру, то вони структурно стають “одним об’єктом”.};

  • володіє властивістю стійкості стосовно оточення у всьому діапазоні розгляду (по всіх координатах, включаючи тимчасові), включаючи так само і “деякі розширення” цього діапазону (відкритість).

У якомусь сенсі це визначення схоже з визначенням топологічної структури – цілком можна ввести за відомою аналогією поняття “конструктивної топології”.

Ще одна дуже сильна схожість, вірніше властивість, успадкована від топології, – координата зв’язності.

Структура компактна і навіть усюди щільна і стійка до будь-яких змін (дій) оточення може “триматися” на одній координаті, вилучення якої чи навіть “мале” зрушення шкали приведе до повного руйнування структури по всіх рівнях відразу – до повного хаосу.

Можна навіть припустити, продовжуючи міркування в правилах ТСУ, існування в реальному світі деякої “струнної топології”, заснованої на “абсолютно міцних” нитках, – так би мовити, міркуючи рекурсивно, але, відмітьте, знову з тих же міркувань ТСУ – без будь-яких “основоположних постулатів”.

Завершимо цей короткий огляд аналогій ТСУ з точними науками порівнянням самих елементарних, першоосновних для них понять.

У ТСУ поняття “малості” взагалі має сенс тільки усередині “контексту оточення проблеми” – тобто навколишнього тексту разом із контекстами. Поняття тексту тут включає і всі предмети матеріального світу, що “мають стосунок до питання” в їх “природній структуризації”. У свою чергу, нуль і нескінченність у ТСУ розглядаються як дві “комплементарні компоненти оточення”, але компоненти за своєю суттю конструктивні.

У математиці ж ці поняття є системоутворюючими постулатами – звідси і “комплементарність властивостей” цих систем. Звідси і характерні особливості моделей, що виходять.

У ТСУ природним чином отримується механізм виникнення порядку з хаосу, а також і всі інші механізми вищого порядку, аж до інтелекту. У математиці (з неї самої) такого виникнути не може, та й ні в якій іншій “строгій”, “постулатній” теорії – якщо таку хтось придумає.

З іншого боку, математика дуже швидко і просто “згортає” багато які дуже складні кількісно об’єкти до мінімальних структур (формули, рівняння, функціонали тощо.). І якщо ми захочемо досліджувати такі “тільки засобами ТСУ”, то процес може бути дуже складним і тривалим. Більше того, є випадки і класи об’єктів для яких один єдиний збій приведе до того, що процес “провалиться в нескінченність” і навіть відомо в яку – не “менше ніж у трансфінітну”. І, починаючи з деякого рівня складності, таких об’єктів – більшість.

Відмітимо, що сам цей ефект дуже просто відловлюється з допомогою ТСУ. Хто не згоден, що “дуже просто” – пропонується пригадати:

  • класичне доведення теореми Геделя;

  • скільки треба вивчити, щоб цей доведення сприйняти й зрозуміти на формальному рівні.

Далі пропонується прикинути, скільки дослідників математично грамотних з толком користувалися цим знаннями і не розбивали лоб об наслідки дії згаданої теореми?