DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

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

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Лабораторна робота №3: Моделювання простих форм цілеспрямованої поведінки

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
Комп’ютерні науки
Кафедра:
Не вказано

Інформація про роботу

Рік:
2014
Тип роботи:
Лабораторна робота
Предмет:
теорія інтелектуальних систем
Група:
КН-1
Коротко про документ

Про що ця робота

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

У роботі розглядаються

  • Стохастичні автомати
  • Цілеспрямована поведінка
  • Випадкове середовище
  • Моделювання поведінки
  • Програмна симуляція
  • Теорія інтелектуальних систем

Зміст і розділи

  1. Мета роботи
  2. Програмна реалізація агентів
  3. Функції симуляції та статистичної обробки
  4. Головна функція експерименту
  5. Висновок
Для кого:Студенти технічних спеціальностей вищих навчальних закладів, які вивчають дисципліну теорії інтелектуальних систем та штучного інтелекту.
Викладачі:Бочкарьов

Ключові поняття

стохастичний автоматагентсередовищесимуляціямоделюванняймовірністьдисперсіяалгоритмфункціястан

Частина тексту файла (без зображень, графіків і формул):

‘МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ „ЛЬВІВСЬКА ПОЛІТЕХНІКА”  Лабораторна робота №3 з дисципліни " Теорія інтелектуальних систем" Львів – 2014 Назва: Моделювання простих форм цілеспрямованої поведінки. Дослідження роботи стохастичного автомату зі змінною структурою у випадковому середовищі з перемиканням станів. МЕТА: Змоделювати та дослідити роботу стохастичного автомату зі змінною структурою у випадковому середовищі з перемиканням станів. N Модель оптимальної поведінки Кількість станів середовища Кількість доступних агенту дій  1 W1 3 3   // random agent int randomAgent (void) { return uRand(nA); } int perfectAgent (void) { if (env) paction = argmax(cePa[ceState],nA); else paction = argmax(sePa,nA); return paction; } int SA (void) { int _action = action; if (response > 0) // 1 -> reward { if (state < memSize) state++; // step up in current branch } else // 0 -> penalty { if (state == 1) { // change action (change branch of automaton) if (action == (nA-1)) _action = 0; else _action = action + 1; } else state--; // step down in current branch } return _action; } int agent (int _ag) { int _a = 0; switch (_ag) { case 0: _a = randomAgent(); break; case 1: _a = perfectAgent(); break; case 2: _a = LSA(); break; case 3: _a = TLA(); break; case 4: _a = ILA(); break; default: printf("lab2 error: wrong agent code specified\n"); } return _a; } // ---------------------------------------------------------------------------- // simulation void simulation (int _i) { initAgent(agt); sumR = 0.0f; avrR = 0.0f; for (t=0; t < T; t++) { // get action of agent action = agent(agt); // get response of environment response = environment(env); // calculate cumulative results sumR = sumR + (float)response; avrR = sumR / ((float)t + 1); // save results _sumR[t][_i] = sumR; _avrR[t][_i] = avrR; } } void getMeanValues (void) { for (t=0; t < T; t++) { float tmps1 = 0.0f; float tmps2 = 0.0f; for (int i=0; i < n; i++) { tmps1 += _sumR[t][i]; tmps2 += _avrR[t][i]; } sumRm[t] = (float)tmps1 / (float)n; avrRm[t] = (float)tmps2 / (float)n; } } // ---------------------------------------------------------------------------- // get variances of simulation results void getVarianceValues (void) { for (t=0; t < T; t++) { float tmps1 = 0.0f; float tmps2 = 0.0f; for (int i=0; i < n; i++) { tmps1 += (sumRm[t] - _sumR[t][i]) * (sumRm[t] - _sumR[t][i]); tmps2 += (avrRm[t] - _avrR[t][i]) * (avrRm[t] - _avrR[t][i]); } sumRv[t] = (float)tmps1 / (float)(n-1); avrRv[t] = (float)tmps2 / (float)(n-1); //sumRv[t] = (float)tmps1 / (float)n; //avrRv[t] = (float)tmps2 / (float)n; } } // ---------------------------------------------------------------------------- // main int main(int argc, char* argv[]) { int i; // init random-number generator srand((unsigned)time(NULL)); // init environment if (env == 0) seInit(); else ceInit(); // save parameters of experiment saveParameters(); // run experiment for random agent agt = 0; for (i=0; i < n; i++) simulation(i); getMeanValues(); getVarianceValues(); saveResultsRA(); // run experiment for perfect agent agt = 1; for (i=0; i < n; i++) simulation(i); getMeanValues(); getVarianceValues(); saveResultsPA(); // run experiment for Stohactic automaton agt = LATYPE; for (i=0; i < n; i++) simulation(i); getMeanValues(); getVarianceValues(); saveResultsSA(); return 0  Рис.1 Діаграма для SA, PA, RA Кількість доступних агенту дій p(a0) = 0.445540 p(a1) = 0.252510 p(a2) = 0.188360 Висновок: на цій лабораторній роботі я змоделював та дослідити роботу стохастичного автомату зі змінною структурою у випадковому середовищі з перемиканням станів.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

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

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!