Skip to content
UKENRU
Kyiv, Ukrainemail@dvornichenko.com
Михайло Дворниченко Архітектор рішень · SK.AI
Home Blog Всі записи

Як обрати PowerSim 8 Academic і PowerSim 8 Academic SDK

Логотип Studio 8Вітаю всіх, хто читає цю статтю. Якщо ви відкрили цю сторінку, то вас, найпевніше, цікавить практична інформація про PowerSim 8. Добре вас розумію: сам колись був у такій самій ситуації, і, на жаль, пошук в інтернеті не давав тих результатів, на які я сподівався.

Отже, до справи. Науково-дослідний інститут, у якому я працюю, придбав PowerSim 8 SDK, щоб розробляти й тестувати різні економічні моделі в динаміці.
Зізнаюся, раніше ми працювали з PowerSim 2.5, і нас усе влаштовувало. Та згодом ми побудували модель такого масштабу, що версія 2.5 видала помилку про перевищення допустимої кількості змінних. Хитрими маніпуляціями з dll (не обійшлося без бубна) обмеження на кількість змінних ми таки зняли. І не встигли економісти нарадуватися з такого дива, як PowerSim невдовзі почав глючити. Будуєш собі модель — і в якийсь момент вилітає помилка пам’яті, а середовище закривається (звісно, без збереження). Ясна річ, так працювати було неможливо.
І ось одного дня нам виділили фінансування на купівлю ліцензійного PowerSim 8. Грошей, звісно, дали обмежену суму, тож і вибір довелося обмежити.
Вивчивши опис на сайті PowerSim.com, ми зупинилися на академічній версії продукту разом з академічним SDK. Ось тут і починається найцікавіше!
Увага! Коли обираєш академічну ліцензію, на сайті бачиш таку таблицю (дані станом на 14.10.2011):

Prices for Studio 8 Academic products

Licencetype
Number oflicenses AcademicStandard  Add-onFeature Pack Standard withFeature Pack
Single User 1 license Euro   186,- Euro 117,- Euro    303,-
Bundle 32 licenses Euro 1.225,- Euro 671,- Euro 1.896,-
Student PC-Pack From 16 licenses From Euro   408,- From Euro 223,- From Euro 631,-
SDK 1 license Euro 1.190,- Euro 653,- Euro 1.843,-

 

Здавалося б, простіше нікуди. Ми обрали для себе таке: Academic Standard Bundle + SDK. І це була наша фатальна помилка!
Річ у тім, що до цієї конфігурації не входить пакет доповнень FeaturePack.
А без доповнень ви отримуєте максимально урізану версію PowerSim, у якій бракує більшості зручних функцій (зокрема й математичних).

Наприклад, маємо формулу: (TotalOborot-TotalOborotReal)
У TotalOborot зберігається діапазон значень. Власне, його можна було б задати вручну ось так: ({0.1,0.5,0.9}-{0.444,2.33,2}) — і все було б добре, якби модель трималася на кількох змінних.
А тепер уявіть модель, у якій понад 2000 змінних (саме така модель у нас). Причому діапазони значень має задавати користувач. Для таких задач у PowerSim є функція XLDATA(“file.xls”;”SheetName”;”A1:A10″) — вона витягає дані з файлу xls або xlsx.
І здавалося б, усе мало б чудово працювати, якщо записати формулу: (XLDATA(“file.xls”;”SheetName”;”A1:A10″)-XLDATA(“file.xls”;”SheetName”;”B1:B10″)). Але натомість з’являється помилка: ‘XLData’ cannot be used in composite expressions. Тобто вкладати функції не можна.
Рятує тут функція XLRANGE(), яку вкладати можна, АЛЕ ВОНА ВХОДИТЬ ДО ПОСТАВКИ FeaturePack 3. Скористатися нею ми не могли, бо FeaturePack не купували. Але діватися було нікуди: довелося викручуватися й створювати додаткові Auxiliary, у яких прописували функцію xldata();. А далі використовували ці Auxiliary з даними як звичайні змінні. У підсумку головна формула набувала вигляду (TotalOborot-TotalOborotReal).
Такий підхід працює, але “роздуває” кількість змінних у n-ний степінь.
Висновок: не скупіться й купуйте PowerSim Academic Standard with Feature Pack.

Тепер щодо PowerSim 8 Academic SDK.
Відповім на запитання, яке сам собі ставив до купівлі: “А що вміє цей SDK?”. Інформації виявилося вкрай мало — і на офіційному сайті, і в інтернеті загалом.
Особливо мене хвилювало, чи можна створити модель без візуального редактора. Тобто програмно згенерувати файл моделі й мати змогу редагувати наявний.
Так ось: такої функціональності SDK не дає!
Через SDK можна працювати з моделлю на рівні читання даних. Можна також звертатися до ядра PowerSim, щоб порахувати задані дані, а от вносити зміни до самої моделі (наприклад, змінити формулу), НЕМОЖЛИВО!.
Принаймні в мене це не вийшло. Якщо ж комусь це вдалося — напишіть, будь ласка, яким чином.

Michael Dvornichenko Архітектор рішень · SK.AI

Leave a comment

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *