Дослідження ефективності застосування марковських прихованих моделей для побудови голосових компонент інтерфейсу користувача з програмними додатками

Існуючі технології інтерфейсів, критерії та оцінка їх ефективності. Голосовий інтерфейс та його практичне застосування, особливості реалізації в AutoCAD. Методика побудови та оцінювання ефективності, а також розробка програм з голосовим інтерфейсом.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык украинский
Дата добавления 30.10.2014
Размер файла 1,1 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

2) Google Voice Search (компанія «Google»). Раніше пошук застосовувався виключно в мобільних пристроях. З недавнього часу голосовий пошук від Google вбудований в браузер Google Chrome, що дозволяє використовувати цей сервіс на різних платформах.

Характеристики:

- Підтримка російської мови;

- Можливість вбудовувати розпізнавання мови на веб-ресурси;

- Голосові команди, словосполучення;

- Для роботи необхідно постійне підключення до мережі Інтернет.

3) Горинич ПРОФ 3.0 - перша російськомовна система автоматичного розпізнавання мови для диктування і голосового управління комп'ютером з підтримкою російської мови для операційної системи Windows XP.

Характеристики:

- Дикторозалежність;

- Мовна залежність (російська мова та англійська мова);

- Точність розпізнавання залежить від ядра системи американської програми «Дракон диктат»;

- Надає засоби голосового управління окремими функціями операційної системи, текстових редакторів і прикладних програм;

- Вимагає навчання.

4) VoiceNavigator (компанія «Центр мовних технологій») високотехнологічне рішення для контакт-центрів, призначене для побудови систем голосового самообслуговування. VoiceNavigator дозволяє автоматично обробляти виклики за допомогою технологій синтезу і розпізнавання мови. VoiceNavigator - це веб-навігація по веб-ресурсам за допомогою голосу. Розробка дозволяє управляти навігацією сайту за допомогою мовних команд.

Характеристики:

- Дикторонезалежність;

- Стійкість до оточуючих шумів і перешкод в телефонному каналі;

- Розпізнавання російської мови працює з надійністю 97% (словник 100 слів).

5) Speereo розпізнавання мови (російська ІТ компанія «Speereo Software»). Програмний продукт для розробки додатків в індустрії мобільних пристроїв і персональних комп'ютерів. Розпізнавання мови відбувається безпосередньо на пристрої, а не на сервері, що є ключовою перевагою, на думку розробників.

Характеристики:

- Розпізнавання російської мови працює з надійністю близько 95%;

- Дикторонезалежність;

- Словниковий запас близько 150 тис. слів;

- Одночасна підтримка декількох мов;

- Компактний розмір двигуна.

6) Sakrament ASR Engine (розробка компанії «Сакрамент») - технологія розпізнавання мови використовується при створенні засобів голосового управління - програм, керуючих діями комп'ютера або іншого електронного пристрою за допомогою голосових команд, а також при організації телефонних, довідкових та інформаційних служб.

Характеристики:

- Дикторонезалежність;

- Мовна незалежність;

- Точність розпізнавання досягає 95-98%;

- Розпізнавання мови у вигляді виразів і невеликих пропозицій;

- Немає можливості навчання.

7) Dragon NaturallySpeaking (компанія «Nuance») - світовий лідер у програмному забезпеченні по розпізнаванню людської мови. Можливість створювати нові документи, відправляти електронну пошту, управляти популярними браузерами та різноманітними додатками за допомогою голосових команд.

Характеристики:

- Відсутня підтримка російської мови;

- Точність розпізнавання до 99%.

8) ViaVoice (компанія «IBM») являє собою програмний продукт для апаратних реалізацій. Компанія Provox технології на основі цього ядра створила систему для диктування звітів лікарів-радіологів VoxReports.

Характеристики:

- Точність розпізнавання досягає 95-98%;

- Дикторонезалежність;

- Словник системи обмежений набором специфічних термінів.

1.5 Реалізація голосового інтерфейсу в AutoCAD

Було проведено тестування впровадження голосового інтерфейсу в системі автоматичного проектування фірми Autodesk AutoCAD. Ця програма оснащена розвиненим графічним Windows інтерфейсом і програмним інтерфейсом для розробки різних додаткових модулів, за допомогою яких можна повністю управляти процесом в система автоматичного проектування. Знання принципів роботи проектувальника в AutoCAD дало можливість виявити недоліки розглянутої система автоматичного проектування, які можна поліпшити, застосувавши голосовий інтерфейс. Такі функції, як включення прив'язок, виклик і робота з видами, робота з шарами, відміна команд, не мають прямого відношення до проектування, і при їх викликах традиційними методами відбувається уповільнення процесу проектування, так як порушується семантичний зв'язок дій людини через певний інтерфейс управління комп'ютером і оптимальним є перенесення виклику цих дій на інший інформаційний канал. Дуже зручною буде організація відповідності між звуковим і візуальним символом (іконки з панелі інструментів). А найголовніше ці поліпшення можуть бути потрібні людям, які працюють з цією системою автоматичного проектування. Чому «можуть бути»? Та тому що голосовий інтерфейс розглядається як додатковий, і людина буде вибирати, чим користуватися.

В AutoCAD існує рядок введення команд. Він є центральною ланкою в схемі управління системи автоматичного проектування. Через нього проходять на обробку усі команди фахівців, що надходять в AutoCAD, незалежно від того були вони введені з клавіатури, миші або через діалогове вікно. У цьому рядку також зберігається поточний стан системи (поточна команда). Якщо голосовий інтерфейс буде використовувати для спілкування з системою автоматичного проектування цей рядок, то він не буде створювати перешкоди в роботі іншим інтерфейсам. Таким чином, ми отримали багатомодульний інтерфейс. За попередніми результатами досліджень запропонована концепція використання голосового інтерфейсу в системі автоматичного проектування AutoCAD повністю себе виправдала, ведуться роботи з подальшого вдосконалення програмного забезпечення та принципів застосування голосового інтерфейсу [8, C. 209].

2. Методика побудови та оцінювання ефективності голосового інтерфейсу

2.1 Попередній аналіз сигналу

Голосовий сигнал, що надійшов з мікрофона, оцифровується і являє собою набір безлічі значень, число яких, як правило, коливається від 8000 до 22050 в секунду в залежності від частоти дискретизації сигналу. Отриманий масив даних із-за високої розмірності не придатний для подальшого використання в незмінному вигляді, і тому необхідно провести параметричне представлення цих даних. Параметричне перетворення повинне задовольняти не тільки вимогам щодо скорочення розмірності даних, а й зберігати при цьому істотну для розпізнавання інформацію про мови. Крім того, обчислювані на основі аудіоданих параметри повинні бути максимально інваріантні до особливостей вимови дикторів, гучності мови і наявності шумів. Це дозволить подальшим етапам аналізу промови працювати з даними, які є компактними, що містять ключові особливості мови і властивості яких залишаються незмінними при зміні диктора або акустичної обстановки.

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

Мел-частотні кепстральні коефіцієнти MFCC (Mel-frequency cepstral coefficients) - це своєрідне уявлення енергії спектра сигналу. Плюси його використання полягають у наступному:

1) використовується спектр сигналу (тобто розкладання по базису ортогональних синусоїдальних функцій), що дозволяє враховувати хвильову «природу» сигналу при подальшому аналізі;

2) спектр проектується на спеціальну mel-шкалу, дозволяючи виділити найбільш значущі для сприйняття людиною частоти;

3) кількість обчислюваних коефіцієнтів може бути обмежене будь-яким значенням, що дозволяє «стиснути» фрейм і, як наслідок, кількість оброблюваної інформації.

Спосіб обчислення кепстральних коефіцієнтів являє собою послідовність з кількох етапів, представлених на рис. 2.1.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Рисунок 2.1 - Процес обчислення Мел-частотних кепстральних коефіцієнтів

В якості першого кроку обчислення кепстра розглядається процедура збільшення енергії в високочастотних сегментах. Необхідність цього кроку продиктована тим, що вокалізовані сегменти, такі як, наприклад, голосні, мають меншу частоту і містять більше енергії, ніж високочастотні сегменти. Така нерівномірність у розподілі енергії по різним частотам пояснюється будовою мовного апарату людини. Подолання цього «Спектрального нахилу» (spectral tilt) за допомогою збільшення енергії не вокалізірованних сегментів дозволяє збільшити їх вагу при розпізнаванні.

Збільшення енергії в цих сегментах досягається шляхом застосування фільтра, який відсікає постійну складову сигналу:

y[n] = x[n]x [n ?1]

де б ? [0,9; 1], вектори x і y представляють значення сигналу до і після застосування фільтра.

Наступним етапом обчислення є розбиття сигналу на фрагменти довжиною N відліків і з кроком K відліків. В якості віконної функції використовується вікна Хеммінга. Результатом такого перетворення на i-ой ітерації буде добуток значень сигналу y [n] і значень функції вікна Хемминга w[n]:

y [n] = y [n] w [n],

До отриманих фрагментів сигналу застосовується швидке перетворення Фур'є:

Далі формується набір фільтрів, які перекриваються, розташованих згідно Mel-шкалі, перетворення частот який описується наступним рівнянням:

Відліки, включені в кожен фільтр, перераховуються з урахуванням трикутного вікна, визначається енергія на виході кожного фільтра S(n) і робиться логарифмуванння виходу кожного фільтра.

Зрештою, описані вище перетворення можна записати в наступному вигляді:

Поряд з коефіцієнтами даного вектора прийнято використовувати значення «Дельт», що відбивають швидкість і прискорення, з якими змінюються значення даних векторів MFCC при переході від одного сегмента промови до іншого [34, 936 c.].

2.2 Приховані марківські моделі

В якості математичного апарату, який застосовується для розпізнавання голосових команд, пропонується використати приховані марківскі моделі (ПММ) які являють собою універсальний інструмент опису стохастичних процесів. Для роботи з ними не існує точних математичних моделей, а їх властивості міняються з плином часу відповідно до деяких статистичних законів [24].

Достоїнствами методу прихованих моделей Маркова є:

- швидкий спосіб обчислення значень функцій відстані (ймовірності);

- істотно менший обсяг пам'яті, в порівнянні з методом «динамічної деформації часу», необхідний для зберігання еталонів команд.

Основними недоліками:

- велика складність його реалізації;

- необхідність використання великих фонетично збалансованих мовних корпусів для навчання параметрів.

При практичній роботі з прихованими марківськими моделями доводиться вирішувати ряд ключових завдань:

1) вибір системи параметричних векторів, наприклад, для розпізнавання мовлення використовуються кепстральні коефіцієнти (MFCC), коефіцієнти лінійного передбачення (LPC??) і ряд інших;

2) розробка алгоритму нормалізації параметричних векторів;

3) вибір кількості станів моделі N і числа компонент гаусом суміші M;

4) первісна сегментація навчальних векторів для знаходження наближених значень математичних очікувань гаусівських сумішей на початковому кроці навчання і т.д.

Необхідно зауважити, що немає універсального алгоритму визначення вищеперелічених параметрів і в кожному конкретному випадку, в залежності від розв'язуваної задачі, може знадобитися проведеня величезної кількості експериментів, перш ніж будуть досягнуті необхідні результати точності розпізнавання [26].

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

Схематичне зображення діаграми переходів між станами ПММ приведено на рис. 2.2.

Рисунок 2.2 - Діаграма переходів між станами прихованої марківської моделі

Знаходження моделі в деякому стані i відповідність певній стаціонарності сигналу спостерігається на обмеженому часовому інтервалі. З'являється проста фізична інтерпретація ПММ: розглядається процес, який іноді стрибкоподібно змінює свої характеристики.

При здійсненні чергового переходу в стан i в момент часу t відбувається генерація вихідного вектора xt, який називають параметричним вектором, відповідно до багатомірної функції розподілу ймовірностей fj (x).

Результатом роботи прихованої марківської моделі є послідовність векторів (спостережень) {x1, x2,, xT} довжиною T. Перевагою ПММ є можливість обробки послідовностей і сигналів різної довжини, що утруднено при роботі з штучними нейронними мережами, зокрема.

Функція щільності ймовірностей fj (x) для стану j описується, як правило, виваженою гаусівською сумішшю:

де M - кількість компонент суміші;

wi - вага компонента суміші;

pi (x) - нормальний розподіл для D-мірного випадку. Функція pi (x) описується наступним вираженням:

де D - розмірність вектора;

мi - вектор математичного очікування;

уi - матриця коваріації [24].

Робота з прихованими марковскими моделями, як і з будь-якою іншою адаптивною експертною системою, здійснюється в два етапи:

1) навчання - визначення параметрів моделі - алгоритм Баума-Велч

2) визначення - яка ймовірність того, що спостережувана послідовність векторів {x1, x2,…, xT} була згенерована даною моделлю - алгоритм максимуму правдоподібності (Вітербі). Далі наводиться короткий опис вищеперелічених чисельних алгоритмів.

Навчання прихованої марківської моделі. Процес навчання прихованої марківської моделі полягає у визначенні за допомогою набору навчаємих зразків наступних параметрів:

- матриці ймовірностей переходів між станами;

- параметрів гаусівських сумішей (математичне очікування, матриця коваріації і ваги) для кожного стану[26].

Для вирішення цих задач спільно застосовуються два ітераційних алгоритми: forward-backward і Baum-Welch re-estemation.

В алгоритмі forward-backward вводяться дві функції: прямого поширення ймовірності aj (t) і зворотнього вj (t). Значення величини aj (t) являє собою ймовірність спостереження послідовності векторів {x1, x2,, xt} і знаходження ПММ в стані j в момент часу t:

Величини aj (t) і aj (t -1) пов'язані ітераційним виразом:

де Aij - ймовірність переходу зі стану i в стані j;

fj (xt) - ймовірність спостереження вектора xt в стані j.

Зворотня функція вj (t) являє собою ймовірність знаходження ПММ в стані j в момент часу t з подальшим спостереженням послідовності {x t+1, xt +2,, xT}:

Величини вj (t) і вj (t + 1) пов'язані аналогічним чином:

Величини aj (t) і вj (t) дозволяють визначити ймовірність знаходження ПММ в стані j в момент часу t при спостереженні послідовності {x1, x2,, xt}:

де P = aN (T) - загальна ймовірність спостереження послідовності {x1, x2,, xt} даної ПММ.

Алгоритм Баума-Велч на черговому кроці навчання дозволяє, використовуючи вищенаведені вирази, зробити переоцінку параметрів моделі[24].

Нехай є R навчальних зразків, тоді ймовірність переходу зі стану i в стан j визначається як:

Для кожного стану j і для кожної компоненти гаусовської суміші m математичне сподівання, матриця коваріації і вага визначаються наступними виразами:

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

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

2.3 Алгоритм Вітербі

Алгоритм Вітербі - алгоритм пошуку найбільш відповідного списку станів (званого шляхом Вітербі), який в контексті ланцюгів Маркова отримує найбільш ймовірну послідовність подій, що відбулися.

Він є алгоритмом динамічного програмування. Алгоритм використовується в CDMA і GSM цифрового зв'язку, в модемах і космічних комунікаціях. Він знайшов застосування в розпізнаванні мови та письма, комп'ютерній лінгвістиці та біоінформатиці, а також в алгоритмі згорткового декодування Вітербі.

Алгоритм робить кілька припущень:

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

- дві послідовності повинні бути вирівняні: кожна спостережувана подія має відповідати рівно одній прихованій події;

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

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

Для реалізації алгоритму Вітербі необхідно вибрати послідовність станів Q = {q1, q2, qф}, яка з найбільшою ймовірністю породжує зазначену послідовність.

Вводяться змінні:

дt (i) = max P (qt = Si | q1q2 qt-1, o1o2 ot, л),

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

Отже, алгоритм Вітербі:

1 крок. Для всіх i від 1 до N:

д1(i)=рibi(o1)

ш1(i)=0

2 крок. Для всіх j від 1 до N і t від 2 до T:

3 крок. Отримуємо найбільшу ймовірність спостереження послідовності o1o2 oT, яка досягається при проходженні якоїсь оптимальної послідовності станів Q* = {q*1, q*2, q*T}, для якої на цей момент відомо тільки останній стан:

4 крок. Відновлюємо оптимальну послідовність станів (зворотній прохід). Для всіх t від T-1 до 1 (крок =-1):

q*t = шt+1(q*t+1)

Алгоритм Вітербі досить простий у реалізації (використовується динамічне програмування) і працює за час, пропорційний добутку кількості станів ПMM на число фреймів. Однак не завжди нам досить знати найвірогідніший шлях; наприклад, при тренуванні акустичної моделі потрібна оцінка ймовірності кожного стану на кожному фреймі. Для цього використовується алгоритм Forward-Backward.

Однак акустична модель - це всього лише одна зі складових системи. Що робити, якщо словник розпізнавання складається не з двох слів, як в розглянутому вище прикладі, а з сотень тисяч або навіть мільйонів? Багато хто з них будуть дуже схожі за вимовою або навіть збігатися. Разом з тим, при наявності контексту роль акустики падає: невиразно вимовлені, зашумлені або неоднозначні слова можна відновити «за змістом». Для обліку контексту знову-таки використовуються ймовірнісні моделі. Наявність фіксованого контексту задає розподіл ймовірностей для наступного слова, яке відображає як семантику, так і морфологію. Такий тип мовних моделей називається n-gram language models.

2.4 Методика GOMS

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

Ефективність відноситься до основних критеріїв якості інтерфейсу людини з системою. Цей критерій цілком піддається кількісній оцінці, що дозволяє дати рекомендації щодо поліпшення інтерфейсу.

Ефективність - це вплив інтерфейсу на швидкість, повноту і точність досягнення користувачем цільових результатів.

Для оцінки ефективності інтерфейсу людини з системою, що реалізований у вигляді комп'ютерної програми можна виділити два показники:

1) Час виконання операцій для досягнення цілей користувача;

2) Символьна ефективність інтерфейсу.

Отримання значень цих показників і розрахунок цих значень для деяких ідеальних інтерфейсів дозволяє визначити можливість і шляхи подальшого поліпшення існуючого інтерфейсу.

У методиці GOMS (модель цілей, об'єктів, методів і правил відбору) розрахунок ефективності інтерфейсу ґрунтується на понятті ментальних операцій та їх послідовній розстановці.

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

Operators (оператори) - елементарні моторні, пізнавальні дії, які використовуються для досягнення цілей (наприклад, «клікнути» маніпулятором «Миша», натиснути клавішу Insert). Оператори не розкладені. Передбачається, що користувачеві потрібно певну кількість часу, щоб виконати кожен оператор.

Methods (методи) - це опис процедури для досягнення цілей. По суті, метод є алгоритмом, щоб користувач запам'ятав послідовність під цілей і операторів, необхідних для досягнення бажаної мети. Наприклад, один із способів досягнення мети «Видалити слово» це поставити курсор в початок слова за допомогою миші і натиснути комбінацію клавіш Ctrl + Delete. Інший спосіб досягти тієї ж мети - за допомогою клавіш зі стрілками поставити курсор в початок слово і натиснути комбінацію клавіш.

Selection Rules (правила вибору) - визначають, які методи повинні бути використані для досягнення даної мети, в залежності від контексту. Правила вибору звичайно приймають форму умовного оператора, наприклад, «якщо слово буде розташовано менш ніж на три лінії від поточного положення курсору, тоді використовуємо метод» видалення слова-використання клавіш зі стрілками», інакше використовуємо метод» видалення слова - використання миші».

Розробники методики GOMS під час її створення помітили, що час, потрібний для виконання якоїсь задачі системою «користувач - комп'ютер», є сумою всіх тимчасових інтервалів, які потрібні були системі на виконання послідовності елементарних жестів, що складають дану задачу. Хоча для різних користувачів час виконання того чи іншого жесту може сильно відрізнятися, дослідники виявили, що для більшої частини порівняльного аналізу задач, що включають використання клавіатури і графічного пристрою введення, замість проведення вимірювань для кожного окремого користувача можна застосувати набір стандартних інтервалів. За допомогою ретельних лабораторних досліджень був отриманий набір тимчасових інтервалів, необхідних для виконання різних жестів. Нижче, у табл..2.1, наводиться оригінальна номенклатура, в якій кожен інтервал позначений однією буквою (Card, Moran і Newell, 1983).

Таблиця 2.1 - Набір тимчасових інтервалів, необхідних для виконання різних жестів

Жест

Опис

К=0,28с

Натискання клавіші. Час необхідний, щоб нажати на клавішу.

Р=1,1с

Вказівка. Час, необхідний користувачу, щоб вказати на якусь позицію на екрані монітору.

Н=0,4с

Переміщення. Час, необхідний користувачу, щоб перемістити руку з клавіатури на мишу, або навпаки.

М=1,35с

Ментальна підготовка, тобто це час, який необхідний користувачу, щоб психологічно підготовитись до наступної дії.

R

Відгук комп'ютера. Час очікування користувача відгуку від комп'ютера.

На практиці вказані значення можуть варіюватися в широких межах. Для досвідченого користувача, здатного друкувати зі швидкістю 135 слів / хв., Значення K може становити 0.08 с, для звичайного користувача, що має швидкість 55 слів / хв., - 0.2 с, для середнього недосвідченого користувача, що має швидкість 40 слів / хв., - 0.28 с, а для початківця - 1.2 с. Не можна сказати, що швидкість набору не залежить від того, що саме набирається. Для того щоб набрати одну букву з групи випадково взятих букв, більшості людей потрібно близько 0,5 с. Якщо ж це якийсь заплутаний код (наприклад, адреса електронної пошти), то у більшості людей швидкість набору складе близько 0.75 символів в секунду. Значення K включає в себе і той час, який необхідно користувачеві для виправлення відразу помічених помилок. Клавіша <Shift> вважається за окреме натискання.

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

Обчислення часу, необхідного на виконання тієї чи іншої дії (наприклад, «перемістити руку з графічного пристрою введення на клавіатуру і набрати букву»), за допомогою моделі GOMS починаються з перерахування операцій зі списку жестів моделі GOMS (табл. 2.1), які складають цю дію. Перерахування рухів (K, P і H) - це досить проста частина моделі GOMS. Складнішим, в моделі швидкості друку GOMS, є визначення точок, в яких користувач зупиниться, щоб виконати несвідому ментальну операцію, - інтервали ментальної підготовки, які позначаються символом M. Основні правила, що дозволяють визначити, в які моменти будуть проходити ментальні операції, представлені в табл. 2.2

Правила розстановки ментальних операцій представлена далі у табл. 2.2.

Таблиця 2.2 - Правила розстановки ментальних операцій

Правило

Опис

Правило 0. Початкова розстановка операторів М

Оператори M слід встановлювати перед усіма операторами K (натискання клавіші), а також перед усіма операторами P (вказівка ??за допомогою ГУВ), призначеними для вибору команд; але перед операторами P, призначеними для вказівки на аргументи цих команд, ставити оператор M не слід.

Правило 1. Видалення очікуваних операторів М

Якщо оператор, наступний за оператором М, є повністю очікуваним з точки зору оператора, що передує М, то цей оператор М може бути видалений.

Правило 2. Видалення операторів M всередині когнітивних одиниць

Якщо рядок виду MKMKM К… належить когнітивної одиниці, то слід видалити всі оператори М, крім першого. Когнітивної одиницею є безперервна послідовність символів, що вводять, які можуть утворювати назва команди або аргумент.

Правило 3. Видалення операторів M перед послідовними роздільниками

Якщо оператор K означає зайвий роздільник, що стоїть в кінці когнітивної одиниці (наприклад, роздільник команди, наступний відразу за роздільником аргументу цієї команди), то слід видалити оператор M, що стоїть перед ним.

Правило 4. Видалення операторів М, які є переривниками команд

Якщо оператор K є роздільником, вартим після постійної рядка), то слід видалити оператор M, що стоїть перед ним. (Додавання роздільника стане звичним дією, і тому роздільник стане частиною рядка і не вимагатиме спеціального оператора М.) Але якщо оператор K є роздільником для рядка аргументів чи будь-який інший змінною рядка, то оператор М слід зберегти перед ним.

Правило 5. Видалення перекривають операторів М

Будь-яку частину оператора М, яка перекриває оператор R, що означає затримку, пов'язану з очікуванням відповіді комп'ютера враховувати не слід.

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

Щоб зробити правильну оцінку часу, необхідного на виконання завдання за допомогою конкретного інтерфейсу, перш за все слід визначити мінімальну кількість інформації, яку користувач повинен ввести. Ця мінімальна кількість не залежить від виду інтерфейсу [5, 272 c.].

3. Розробка програм з голосовим інтерфейсом

3.1 Вибір інструментальної платформи

Для програмної реалізації голосового інтерфейсу використовуються:

1) JDK (J2SE);

2) Eclipse;

3) Sphinx-4;

4) JSAPI (Included in Sphinx);

5) Apache Ant.

Далі більш детально розглянемо:

1) JDK - Java Development Kit (засіб розробки на Java). Java дозволяє створювати самодостатні програми для різних операційних систем як то Windows, Linux тощо. Крім того, в даний час Java широко застосовується для програмування різних пристроїв, наприклад, мобільних телефонів, на ній також пишуться комп'ютерні ігри для них, створюють також програми для інтернету - аплети і програми для серверів - сервлети та JSP (Java Server Pages).

Мова значно запозичила синтаксис із C і C++. Зокрема, взято за основу об'єктну модель С++, проте її модифіковано. Усунуто можливість появи деяких конфліктних ситуацій, що могли виникнути через помилки програміста та полегшено сам процес розробки об'єктно-орієнтованих програм. Ряд дій, які в С/C++ повинні здійснювати програмісти, доручено віртуальній машині. Передусім, Java розроблялась як платформо-незалежна мова, тому вона має менше низькорівневих можливостей для роботи з апаратним забезпеченням. За необхідності таких дій java дозволяє викликати підпрограми, написані іншими мовами програмування.

Java - проста, об'єктно-орієнтована, інтерпретована, надійна, безпечна, архітектурно-нейтральна, переносна, високоефективна багатопотокова і динамічно-орієнтована мова. Цей набір слів достатньо точно описують мову Java. Розглянемо кожне з них.

Об'єктно-орієнтована

Термін «об'єктно-орієнтована мова» для програміста означає, що при розробці додатків він оперує, головним чином, даними і засобами їхньої обробки, а не мислить на мові процедур (як робиться це в Pasсal і С).

Інтерпретована

Java - мова, що інтерпретується. Компилятор Java створює байт-код для віртуальної машини Java (JVM - Java Virtual Machine), а не «нинішній» машинний код для машини, на якій працює програма. Щоб запустити програму на Java, необхідно використати інтепретатор Java, що буде виконувати інструкції відкомпільованого байт-коду.

Архітектурно-нейтральна і переносима

Програми на Java компілюється в байт-код архітектурно-нейтрального формату, тому додатки на Java можуть працювати на будь-якій платформі, для якої реалізована виртуальна машина Java. Це особливо важливо для додатків, що функціонують в мережі Internet або інших неоднорідних мережах. Архітектурно-нейтральний підхід також корисний і поза сферою діяльності мережевих додатків. Для розробника додатків на сучасному ринку програмного забезпечення, виникає потреба створювати свої додатки таким чином, щоб вони працювали на комп'ютерах PC, Mac і робочих станціях UNIX. З урахуванням відмінностей в роботі UNIX, Windows95 і Windows NT на платформі PC і нових PowerPC Macintosh стає все важче виробляти програмне забезпечення для всіх можливих платформ. Однак якщо додаток написаний на Java, він може працювати на всіх платформах.

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

Динамічна і розподілена

Java - це динамічна мова. Кожний клас Java може бути завантажений працюючим інтерпретатором Java в будь-який момент часу. Внутрішні бібліотеки теж завантажуються динамічно.

Java є так званою розподіленою мовою. Це означає, що він забезпечує широку підтримку роботи в мережі на високому рівні. Наприклад, клас URL разом з відповідними класами пакету java.net дозволяє читати інформацію з віддаленого файлу також легко, як з локального.

Розподілена природа Java виявляється особливо яскраво в поєднанні з можливостями динамічного завантаження класів. Саме сполучення цих двох властивостей дозволяють інтепретатору Java завантажувати і запускати на виконання програми з Internet.

Проста

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

Стійка

Мова Java служить для написання дуже надійного або стійкого програмного забезпечення. Java строго типізована мова, що допускає достатньо простору перевірку можливої невідповідності типів на етапі компіляції. Автоматичний «збір сміття» в Java відвертає втрати блоків в пам'яті і інші фатальні помилки, пов'язані з її виділенням і вивільненням.

Безпечна

Одна з найбільш розрекламованих рис Java - безпека. Вона має дуже велике значення, оскільки Java використовується в мережах. Java розроблась з урахуванням вимог безпеки і в ній реалізовано декілька рівнів безпеки, призначених для захисту користувачевої системи від зловмисних програм.

Високоефективна

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

Багатопотокова

Java - багатопотокова мова. Вона забезпечує підтримку багатьох потоків виконання, що одночасно розв'язують різноманітні задачі. Одна з переваг багатопоточності полягає в поліпшенні інтерактивності графічних додатків[22].

Технологія Java™ складається з двох елементів: мови програмування - Java та програмної платформи підтримки мови Java. Однією з таких платформ є Eclipse.

2) Eclipse - спільнота розробників відкритого вихідного коду, чиї проекти націлені на побудову відкритої платформи для розробки, що складається з розширюваного середовища розробки, інструментарію та бібліотек для побудови, розгортання та управління програмним забезпеченням в період його життєвого циклу[21].

3) Sphinx-4 - це модульна і переносна система, яка об'єднує шаблони проектування з існуючих проектів, з достатньою гнучкістю, щоб підтримувати області інтересів дослідників, які розвиваються. Система модульна, тому що вона включає в себе роздільні системи, присвячені специфічним задачам, і вона переносимо, тому що модулі можуть бути легко замінені під час виконання. Щоб застосувати цю систему і забезпечити дослідників робочою системою, Sphinx-4 включає в себе безліч модулів, які реалізовують сучасні методи розпізнавання мови.

4) JSAPI (Included in Sphinx) - це програма, яка дозволяє безлічі програм використовувати одні й ті ж функції[31].

5) Apache Ant - це заснований на Java набір інструментів для зборки додатків.

Ant - це тегова мова. Він обробляє XML-файли, організовані особливим чином. Кожен тег по суті є Java-класом, і є можливість створювати свої теги або розширювати можливості вже наявних.

Ant - це багатоплатформний, заснований на використанні командного рядка продукт, і тому, можлива інтеграція з іншими операційними системами.

Замість того щоб наслідувати функції командного рядка, Ant заснований на Java-класах. Конфігураційний файл влаштований у вигляді XML, з якого можна викликати розгалужену систему цілей, що складається з безлічі дрібних завдань.

Кожна задача є об'єктом, який успадковує відповідний інтерфейс класу Task. Все це дає можливість переносити програму з платформи на платформу. І якщо дійсно необхідно викликати який-небудь процес у Ant є задача <exec>, яка дозволяє це зробити в залежності від платформи[30].

3.2 Вимоги до програм та інструкція користувача

Розроблені програми відповідають наступним вимогам:

- відповідність призначенню та структурі інтерфейсу;

- мінімізація витрат ресурсів користувача;

- гнучкість;

- максимальна концентрація користувача на задачі;

- врахування професійних навичок користувача;

- легкість користування і простота навчання;

- надійність.

Для коректної роботи програми «Голосовий калькулятор» необхідно:

1. якщо на комп'ютері користувача не встановлено програмне забезпечення Java, необхідно завантажити та виконати інсталяцію поточної версії Java з сайту Oracle;

2. необхідно підключити мікрофон, та впевнитись, що він працює;

3. після запуску програми зачекати 10-15 с. розпочати введення даних за допомогою голосових команд, клавіатури та мишки.

3.3 Опис розроблених програм з голосовим інтерфейсом

Для дослідження та визначення ефективності голосового інтерфейсу, було розроблено 4 програми з впровадженим в них голосовим інтерфейсом:

1) «Голосовий калькулятор», який включає в себе, окрім стандартних методів вводу та редагування інформації, аналогічні голосові команди;

2) «Голосовий калькулятор - 2», який включає в себе, окрім стандартних методів вводу та редагування інформації, службові голосові команди;

3) «Голосовий блокнот», який включає в себе, окрім стандартних методів редагування інформації, службові голосові команди;

4) «Голосовий знімок екрану», який включає в себе, окрім стандартних методів управління програмою, службові голосові команди.

В якості математичного апарату, що застосовується для розпізнавання голосових команд в Sphinx-4, застосовуються приховані марківскі моделі та алгоритм Вітербі.

Далі більш детально розглянемо розроблені програми з впровадженим в них голосовим інтерфейсом:

1) Програма «Голосовий калькулятор-1» включає в себе, окрім стандартних методів вводу та редагування інформації, 27 голосових команд: plus, minus, clear, a back, b back, a clear, b clear, a One, a Two, a Three, a Four, a Five, Six, a Seven, a Eight, a Nine, a Zero, b One, b Two, b Three, b Four, b Five, b Six, b Seven, b Eight, b Nine, b Zero. Зовнішній вигляд програми зображено на рис. 3.1.

Рисунок 3.1 - Зовнішній вигляд програми «Голосовий калькулятор»

В процесі роботи програми «Голосовий калькулятор» будуть одержані наступні результати:

1. за допомогою голосових команд та клавіатури вводяться дані;

2. команда «Plus» або «Minus» проводить розрахунки та на екран виводиться результат.

Код програми представлений у додатку К.

Архітектуру та функціональну структуру програми «Голосовий калькулятор» зображено на рис. 3.2 та рис. 3.3.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Рисунок 3.2 - Архітектура програми «Голосовий калькулятор»

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Рисунок 3.3 - Функціональна структура програми «Голосовий калькулятор»

2) Програма «Голосовий калькулятор - 2» включає в себе, окрім стандартних методів вводу та редагування інформації, 9 голосових команд: one, two, one back, two back, plus, minus, clear, one clear, two clear. Зовнішній вигляд програми зображено на рис. 3.4.

Рисунок 3.4 - Зовнішній вигляд програми «Голосовий калькулятор - 2»

В процесі роботи програми «Голосовий калькулятор» будуть одержані наступні результати:

1. за допомогою голосових команд та клавіатури вводяться дані;

2. команда «Plus» або «Minus» проводить розрахунки та на екран виводиться результат.

Код програми представлений у додатку Л.

Архітектуру та функціональну структуру програми «Голосовий калькулятор - 2» зображено на рис. 3.5 та рис. 3.6.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Рисунок 3.5 - Архітектура програми «Голосовий калькулятор - 2»

3) Програма «Голосовий блокнот» включає в себе, окрім стандартних методів редагування інформації, 5 голосових команд: select, copy, past, cut, time. Ці голосові команди є службовими і призначені для більш ефективної роботи з програмою. Зовнішній вигляд програми зображено на рис. 3.6.

Рисунок 3.6 - Зовнішній вигляд програми «Голосовий блокнот»

В процесі роботи програми «Голосовий блокнот», використовуючи голосові команди, клавіатуру та мишку, будуть одержані наступні результати:

1. виділяється текст;

2. копіюється або вирізається текст;

3. вставляється текст.

Код програми представлений у додатку М.

4) Програма «Голосовий знімок екрану» включає в себе, окрім стандартних методів управління, 2 голосові команди: save, clip. Зовнішній вигляд програми зображено на рис. 3.7.

Рисунок 3.7 - Зовнішній вигляд програми «Голосовий знімок екрану»

В процесі роботи програми «Голосовий знімок екрану», використовуючи голосові команди та мишку, будуть одержані наступні результати:

1. зроблено знімок екрану;

2. зберігання зображення.

Код програми представлений у додатку Н.

Висновки і перспективи подальших досліджень

Робота присвячена актуальній темі дослідження ефективності застосування марківських прихованих моделей для побудови голосових компонент інтерфейсу користувача з програмними додатками.

Ефективність розраховано з використанням модифікованої методики GOMS на прикладах 4 програмних додатків, розроблених для данної дипломної роботи, в яких для розпізнавання голосових команд використовуються приховані марківські моделі.

В результаті досліджень були отримані наступні наукові результати:

1) виявлено, що межі ефективності інтерфейсу користувача з програмними додатками залежать від засобів взаємодії користувача з програмою. У дослідженні розглядались наступні засоби:

- клавіатура;

- маніпулятор «миша»;

- голосові команди;

- змішані варіанти вищеперерахованих засобів.

2) визначено, що використання голосової складової з кількістю команд більше ніж 9 не підвищує ефективність використання інтерфейсу користувача з операційною системою;

3) використання голосової складової з кількістю команд менше за 9 підвищує ефективність використання традиційного інтерфейсу на 4%;

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

В подальших дослідженнях на обрану тему важливо було б зробити порівняльний аналіз ефективності ПММ для побудови голосового інтерфейсу користувача з програмними додатками.

Перелік посилань

1) Беллман Р.Э. Динамическое программирование и уравнения в частных производных / Р. Беллман, Э. Энджел. - М.: ИЛ, 1960. - 400 с.

2) Бідюк П.І. Проектування комп'ютерних інформаційних систем: Навчальний посібник / П.І. Бідюк, Л.О. Коршевнюк. - К.: НТУУ «КПІ», 2011. - 340 с.

3) Винцюк Т.К. Анализ, распознавание и интерпретация речевых сигналов / Т.К. Винцюк. - К.: Наукова думка, 1987. - 264 с.

4) Джелинек Ф. Распознавание непрерывной речи с помощью статистических методов / Джелинек Ф. // Статистическая теория распознования речи. - 1976. - Т. 64, №4. - С. 131-160.

5) Раскин Д. Интерфейс: новые направления в проектировании компьютерных систем / Д. Раскин. - СПб: Символ-Плюс, 2004. - 272 с.

6) Сидорова Е.В. Используем сервисы Google: электронный кабинет преподавателя / Е.В. Сидорова. - БХВ-Петербург: Росийская академия образования. Институт педагогического образования. Лаборатория информатизации непрерывного педагогического образования, 2010. - 288 с.

7) Федотова Е.Л. Интерактивный голосовой интерфейс. Технологии и системы: учеб. пособие / Е.Л. Федотова. - М.: ИНФРА-М, 2009. - 352 с.

8) Фролов К.Ф. Основные тенденции развития речевого интерфейса / К.Ф. Фролов. - СПб.: СПИИРАН, 2004. - 210 с.

9) Baker J.K. Stochastic modeling for automatic speech understanding/ J.K. Baker. - New York: Academic Press, 1975. - P. 521-542.

10) Hinton G. Deep neural networks for acoustic modeling in speech recognition: The shared views of four research groups. Signal Processing Magazine / [Hinton G., Deng, L., Yu D. et al.]. - USA: IEEE, 2012. - P. 82-97.

11) Itakura F. Minimum prediction residual principle applied to speechrecognition / F. Itakura. - USA: IEEE, 1975. - P. 67-72.

12) Mohri M., Pereira F., Riley, M. (2008). Speech recognition with weighted finite-state transducers / Mohri M., Pereira F., Riley M. - Springer Berlin Heidelberg: Springer Handbook of Speech Processing, 2008. - P. 559-584.

13) Reidhammer K. Revisiting Semi-continuous Hidden Markov Models / Reidhammer K., Bocklet T., Ghoshal A., Povey D. - USA: Proc. IEEE Int'l Conference on Acoustics, Speech, and Signal Processing (ICASSP), 2012. - P. 4721-4724.

14) Vaseghi Saeed Advanced digital signal processing and noise reduction / Vaseghi Saeed. - Chichester: IEEE Transactions on Audio, 2006. - P. 1556-1572.

15) Виды и типы пользовательского интерфейса [Електронний ресурс]. - Режим доступу: http://interfyeis.blogspot.com/2012/03/blog-post_07.html.

16) Интерфейс и его виды [Електронний ресурс]. - Режим доступу: http://fim.mdpu.org.ua.

17) Класификация систем распознования речи [Електронний ресурс]. - Режим доступу: http://fetmag.mrsu.ru/2010-2/pdf/SpeechRecognition.pdf

18) Лекции по интерфейсам пользователя. [Електронний ресурс]. - Режим доступу: http://www.studfiles.ru/dir/cat32/subj1173/file9485/view99700.html.

19) Методи і критерії оцінки ІК [Електронний ресурс]. - Режим доступу: http://www.simulation.kiev.ua/dbis/lection17.html#05.

20) Основные задачи и ключевые понятия речового интерфейса [Електронний ресурс]. - Режим доступу: http://www.bsu.by/Cache/pdf/180353.pdf.

21) Офіційний сайт Eclipse [Електронний ресурс]. - Режим доступу: http://eclipse.org.

22) Офіційний сайт Oracle [Електронний ресурс]. - Режим доступу: http://www.oracle.com.

23) Понятие пользовательского интерфейса. Типы пользовательских интерфейсов [Електронний ресурс]. - Режим доступу: http://bricks.narod.ru/tp/31_pon.htm.

24) Применение скрытых марковских моделей для распознавания звуковых последовательностей [Електронний ресурс]. - Режим доступу: http://izvestia.asu.ru/2012/1-2/info-comp/TheNewsOfASU-2012-1-2-info-comp-03.pdf.

25) Разработка и программная реализация модульной интегрируемой системы предоставления средств голосового интерфейса для разработки программного обеспечения [Електронний ресурс]. - Режим доступу: http://www.hse.ru/data/2013/06/02/1285462387/MS_Ilskiy_Andrey.doc.

26) Распознавание речи от Яндекса [Електронний ресурс]. - Режим доступу: http://habrahabr.ru/company/yandex/blog/198556.

27) Речевые технологии [Електронний ресурс]. - Режим доступу: http://speech2b.ru/rus/applications.

28) Центр речевых технологии [Електронний ресурс]. - Режим доступу: http://www.speechpro.ru.

29) Юзабилити. Кратко о фактах. [Електронний ресурс]. - Режим доступу: http://ru.scribd.com/doc/28794871.

30) ANT [Електронний ресурс]. - Режим доступу: http://www.bsu.by/sm.aspx? guid=87873.

31) CMU Sphinx. Open Source Toolkit For Speech Recognition [Електронний ресурс]. - Режим доступу: http://cmusphinx.sourceforge.net.

32) Sphinx-4 - гибкая система с открытым кодом для распознавания речи [Електронний ресурс]. - Режим доступу: http://masters.donntu.edu.ua/2013/fknt/savkova/library/translation.htm.

Размещено на Allbest.ru


Подобные документы

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

    автореферат [283,0 K], добавлен 11.04.2009

  • Призначення і основні характеристики систем автоматизації конструкторської документації. Основні методи створення графічних зображень і геометричних об’єктів. Методи побудови та візуалізація тривимірних об’єктів. Опис інтерфейсу користувача системи.

    дипломная работа [1,7 M], добавлен 26.10.2012

  • Принципи побудови тривимірних зображень у ГІС засобами комп’ютерної графіки. Інформативність та точність моделей, створених на основі растрових і векторних програм. Технологія побудови 3D-карт за допомогою "ArcGIS/3D Analyst" та "MapInfo"/"Поверхность".

    дипломная работа [700,6 K], добавлен 10.05.2015

  • Методи первинної обробки даних - згладжування та характеристика сплайнів. Загальна характеристика об'єктно-орієнтованої мови Java. Принципи побудови графічного інтерфейсу. Розробка алгоритму програми та інтерфейсу користувача програмного продукту.

    дипломная работа [3,3 M], добавлен 10.10.2013

  • Проектування інтерфейсу користувача. Стилі взаємодії користувача з програмними системами. Стилі представлення інформації і доцільність графічного представлення даних. Правила проектування засобів підтримки користувача, вбудованих в програмне забезпечення.

    доклад [1,2 M], добавлен 08.12.2008

  • Шаблони багатошарової архітектури. Методика застосування LINQ to SQL при розробці програмного забезпечення засобами Visual Studio. Підвищення ефективності навчального процесу, шляхом розробки та застосування засобів візуалізації технології LINQ to SQL.

    дипломная работа [1,3 M], добавлен 24.01.2015

  • Інтерфейс RS-232C як найбільш широко поширений стандартний послідовний метод зв'язку між мікрокомп'ютерами і периферійними пристроями, його призначення та сфери практичного застосування, оцінка основних переваг та недоліків, особливості реалізації.

    реферат [55,3 K], добавлен 26.03.2011

  • Інтерфейс Centronics як радіальний, асинхронний, паралельний інтерфейс, особливості та сфери його застосування, характеристика та аналоги. Послідовність погодження режиму передачі. Перспективи інтерфейсу IEEE 1284, порівняльні характеристики з USB.

    реферат [575,3 K], добавлен 25.03.2011

  • Розробка програмного додатку - гри "Jump way", яка поєднала в собі сучасні методи побудови 2D ігор. Обґрунтування вибору мови програмування. Проектування UML-діаграм класів. Користувацький інтерфейс. Програмна реалізація гри. Інструкція користувача.

    курсовая работа [1,2 M], добавлен 09.01.2017

  • Знайомство з графічним інтерфейсом користувача Linux, призначення менеджерів вікон, менеджерів дисплея, а також інших складових системи X Window. Мережна архітектура типу "клієнт-сервер". Перемикання між різними консолями і праця в будь-якій з них.

    реферат [16,6 K], добавлен 15.03.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.