ТЕМА 26

Подобни документи
Slide 1

Годишното тематично разпределение по Компютърно моделиране за 4. клас N седмица Тема очаквани резултати Методи бележки и коментари Първи учебен срок Т

Homework 3

Microsoft PowerPoint - Model_Dec_2008_17_21

Slide 1

ЦЕНТЪР ПО ИНФОРМАТИКА И ТЕХНИЧЕСКИ НАУКИ УЧЕБНА ПРОГРАМА Утвърждавам: Декан: CS 206 ИЗКУСТВЕН ИНТЕЛЕКТ Приета: прот. 8 от г.; Актуализирана

МИНИСТЕРСТВО НА ОБРАЗОВАНИЕТО И НАУКАТА

Проектиране на непрекъснат ПИД - регулатор. Динамичните свойства на системите за автоматично регулиране, при реализация на първия етап от проектиранет

В настоящата тема ще разгледаме представянето на числата в изчислителните устройства. Ще покажем представянето на числата в позиционните бройни систем

Microsoft PowerPoint - Ppt ppt [Read-Only]

Microsoft Word - document.rtf

Microsoft Word - VM22 SEC55.doc

Microsoft Word - VM22 SEC66.doc

Microsoft Word - KZ_TSG.doc

Синтаксис за дефиниране на функции Трифон Трифонов Функционално програмиране, спец. Информатика, 2015/16 г. 6 януари 2016 г. Трифон Трифонов (ФП-И 15/

EventPlus.bg - бъдете видими за организатори на събития

Microsoft Word - module 3.doc

C++

ОСНОВНО УЧИЛИЩЕ ПРОФ. ПЕНЧО НИКОЛОВ РАЙКОВ гр. ТРЯВНА УТВЪРДИЛ Директор:... (Виолета Иванова) ГОДИШНО ТЕМАТИЧНО РАЗПРЕДЕЛЕНИЕ по учебния предмет КОМПЮ

ТЕМАТИЧНО РАЗПРЕДЕЛЕНИЕ ПО ОБРАЗОВАТЕЛНО НАПРАВЛЕНИЕ МАТЕМАТИКА месец Тема Образователно ядро Очаквани резултати Приложение 1 Кое къде е По колк

Mathematica CalcCenter

Програмиране на Паскал

BULGARIAN PARTICIPATION IN THE SPS AND PS EXPERIMENTS

СТАНОВИЩЕ

doll Механична кукла Механичните кукли автоматично повтарят предварително зададена последователност от движения. В Япония има традиции в изработката н

Microsoft Word - PRMAT sec99.doc

IATI Day 1 / Senior Задача Activity (Bulgarian) X INTERNATIONAL AUTUMN TOURNAMENT IN INFORMATICS SHUMEN 2018 При лошо време навън Лора и Боби обичат д

ÒÅÑÒÎÂÅÒÅ: ÇÀ ÈËÈ ÏÐÎÒÈÂ

10. Линейни оптимизационни модели – обща постановка

Slide 1

Модул 3: Artenvielfalt Опазване на растенията Време 3 часа Място На открито: в Ботаническата градина Умения Критично мислене, оценяване на връзката ме

1 Термодинамика на идеалния газ: между молекулите няма взаимодействие. Изотермичното свиване нe води до промяна на вътрешната енергия. RT pv E E U R c

8. Вземане на последователни решения в обкръжение на риск. Конструиране на дърво на решенията

Управление на перална машина с размита логика Пералните машини в наши дни са обикновен уред в дома. Най-голяма изгода, която потребителя получава от п

Лекция Класификация с линейна обучаваща машина Обучаващата машина може да бъде дефинирана като устройство, чиито действия са повлияни от миналия опит

Slide 1

Microsoft Word - Techn zad 2017-M1

Основен вариант за клас Задача 1. (4 точки) На графиката на полином a n x n + a n 1 x n a 1 x + a 0, чиито коефициенти a n, a n 1,..., a 1

Препис:

ТЕМА 26 Генетични алгоритми Знания, които не са във явна форма. Представляват фамилия от изчислителни модели за оптимизация, основани на свойствата на биологичния прототип. Предложени са от Дхон Холанд и Голдберг от университета в Мичиган (1970г) В тесен смисъл ген. алг. се заглеждат като прилагане на модела на Холанд - алгоритъм, който се опитва да получи достатъчно добри решения. чрез създаване на структури от данни, коти да ги представят. Оценяват се тези структури, комбинират се решенията за получаване на нови структури и т.н. В широк смисъл, ген. алг. е всеки, базиран на популации изчислителен модел, който използва оператори за селекция и рекомбинация за да генерира нови точки в пространството на търсене. Основни понятия - хромозома - структура от данни, моделираща биологична хромозома, която представлява потенциално решение на разглеждания проблем. В нея са кодирани параметрите на задачата. - ген - параметър от задачата; изграждат елемент на хромозомата - алел - стойност на признака кодиран даден ген - популация - множество от хромозоми, представляващи възможни решения на определен етап от генетичния алгоритъм. - пространство на търсене - пространство на възможните решения. - оценъчна функция или функция на приспособеност. - специално създавана функция, с която се измерва качеството на решението. Тя е важен компонент в генетичния алгоритъм и се създава за всяка конкретна задача. Обикновено дава част от описанието на проблема и е близо до целта на алгоритъма. Тя трябва да се изчислява бързо и трябва да позволява намиране на разнообразни решения. Еволюционният процес, който генерират генетичните алгоритми съответства на процес на търсене в пространството от възможни решения. - рекомбинация - процес, в който възникват нови комбинации от гени. - репродукция - създаване на нови хромозоми в резултат на рекомбинация на гени на родителски хромозоми. - кодиране - кодирането на гените, първата стъпка, която се прилага при решаване на задача с генетичен алгоритъм. В класическия вариант предложен от Холанд за кодиране се използва 0, 1, # (0 или 1). Например: 0##11#00 Начина на кодиране на гени: - двоично - последователност от 0 и 1. Този начин на кодиране дава много на брой възможни хромозоми, дори и със малък брой гени. От друга страна, често не е естествено тъй като ползват двоичните еквиваленти да двоичните числа. Освен това при генетични оператори може да се попадне в средата на едно число. При представяне на числата се използва двоичната бройна система, но тук има един недостатък - не се осигурява един бит разлика между записванията на две съседни числа. Например двоичното представяне на седем е 0111 а на осем - 1000.

Възможността за по-големи разлики от един бит между две съседни двоични числа представлява проблем при редица задачи с използване на генетични алгуритми. Въведен е кода на Грей, при който разликата между две съседни числа е винаги един бит. (презентация 5). - кодиране на пермутации - представя хромозомата като поредица от числа, задаващи номера на гена в хромозомата. - кодиране по стойност - представлява директно задаване на стойности. Кодирането по стойност се използва при специализирани проблеми. - дървовидно кодиране - всяка хромозома представлява дърво от някакъв тип обекти. Това кодиране често се използва при разработки на езика LISP. Основни операции в генетичните алгоритми -селекция - метод за избор на родителски хромозоми, които да участват при формиране на новото поколение. Всички хромозоми се подлагат на оценяване чрез фитнес функция, до колко отговарят на изискванията на задачата. След това, обикновено се селектират най-добрите. За да се разшири пространството на търсене в някои случаи се избират и не толкова добри индивиди, като така се очаква да се получи поколение по-разнообразно и с по-добри качества на следващите стъпки от алгоритъма. Съществуват много методи за селекция - кръгова рулетка, турнир и др. + селекция по кръгова рулетка - тук всяка от хромозомите участва със стойността на своята фитнес функция. Така, че колкото по-голяма е тази стойност, толкова по-голям шанс има хромозомата да бъде избрана, тъй като съответния сектор е по-голям. Основен недостатък на този вид селектиране, е че се намалява шанса на хромозомите с по-ниски стойности на фитнес функцията да бъдат избрани. Когато хромозомите имат приблизително еднакви стойности на фитнес функцията, техният шанс е почти равен и тогава се стига до случайно търсене. Едно от решенията на проблема е, със всяка хромозома да се асоциират две стойности. Тази на фитнес функцията и една нормализирана оценка наречена "сила" на хромозомата. За определяне на силата се използват следните методи: 1) линейна нормализация - хромозомите се подреждат по низходящите стойности на фитнес функциите си. На тази с най-висока стойност се присвоява произволно определена константа и всяка следваща хромозома получава стойност, която е намалена от тази на предходната с друга на константа. 2) рамкиране - използва се най-ниската стойност на фитнес функцията за разглежданите хромозоми и на всяка от тях се присвоява сила, която е разликата между стойността на фитнес функцията i и тази минимална стойност. Така че с тези две стойности се постига по-добър подбор и по-качествена селекция. + селекция турнир - избират се по случаен начин две хромозоми. Избира се някакъв праг свързан със задачата, например K и се генерира случайно число k в интервала (0,1). Ако k e по-малко от K се избира първата хромозома, а в противен случай - втората. Елитарност - за да се съхранят добри решения (хромозоми) за следващите поколения, се въвежда параметър, с който се задава какъв процент от тях да премине в новата генерация. Така хромозоми с високи оценки се запазват за постигане на по-добро крайно решение.

Кръстосване При кръстосване се обменят гени на родителските хромозоми. - Едноточково - избира се по една точка от двете хромозоми с една и съща стойност. Новото поколение се получава, като се смесят гените преди и след точката на кръстосване. Не е добре всички хромозоми да се кръстосват. Препоръчва се част от старата популация да оцелее. - Кръстосване в две и n точки - Шаблонно кръстосване - техниката работи отново с две родителски хромозоми и един създаден шаблон. В шаблона гените приемат по случаен начин единица или нула. Първия наследник приема от първия родител гените за които има в шаблона единица. А от втория родител гените за които в шаблона има нула. Втория наследник - обратно. Приема от родител 1 гените за които има в шаблона 0, а от втория родител гените със единица в шаблона. Използват се и други методи на кръстосване. Вероятност за кръстосване - показва колко често ще се извършва кръстосване. Ако вероятността е нула, цялото ново поколение е точно копие на старото. Ако е 100%, цялото поколение ще бъде създадено чрез кръстосване. Мутация Обикновено се прилага за да се обогати новата генерация. Необходима е когато родителските хромозоми имат един и същи ген в някоя от позициите си. Мутацията е промяна на гените на случаен принцип. Така, че при двоично кодиране, тя се реализира със инвертиране на бит (от 0 в 1 или обратно). При кодиране на пермутации, мутацията представлява размяна на два гена в хромозомата. При символни стойности, се заменя избран символ в хромозомата със друг и т.н. Вероятност за мутация - означава колко често, части от хромозомата ще мутират. Мутацията е въведена за предпазване на генетичния алгоритъм от попадане в локален екстремум, но не трябва да се появява твърде често, защото тогава, генетичния алгоритъм се превръща в произволно търсене. Тя се прилага на по-късен етап от изпълнението на генетичния алгоритъм, когато пространството на търсене е намалено. В началото на генетичния алгоритъм е по-важно кръстосването. Това означава, че с развитието на алгоритъма се повишава скоростта на мутация, а на кръстосване намалява. Схема - схемата е шаблон образуван от 1, 0 и *, като * може да съдържа 1 или 0. Например, схемата позволява да се представят множество от хромозоми. Схемата 8 звездички, представя всички двоично кодирани хромозоми с дължина 8, т.е. 2 на 8-ма степен броя хромозоми. Опростен модел на еволюцията, с цел решаване на конкретна задача. Етап: 1) Представят се потенциалните решения, като хромозоми или инициализиране

на популация. Всички хромозоми зе инициализират случайно, чрез генератор на случайни числа. 2) Изчислява се значението на фитнес функцията за всяка хромозома. Изчислява се и средата за популацията приспособеност за същия критерии. Мярката за класификация е процентното отношение между двете величини. Хромозомите са с по-висока стойност на този критерии от определена зададена стойност, ще участват в процеса на рекомбинация с по-голяма вероятност. 3) Селекция на хромозоми отговарящи на критерия за годност (фитнес функцията). (един добър размер на популация е 20-30 хромозома) 4) Чрез генетични оператори се създава следващо поколение, като се следи за поява на нежелани свойства. Например такива, които променят изискванията на задачата. 5) Заменят се индивиди от популацията с техни потомци, като се отчита фитнес функцията. В някой случаи се отстраняват по-силни индивиди, като се очаква съхранените по-слаби да допринесат по-късно за по-точно решение. За генетичните алгоритми е характерно: - многопосочно търсене - обработва се множество от възможни решения в отделни точки от пространството на търсене. Заедно с това се обменя информация между посоката на търсене, тъй като обменените гени при кръстосване придават тази информация. Генетичните алгоритми не отхвърлят веднага безперспективните решения в противоположност в пример на евристичното търсене. Това е така, понеже не се прилага система за подреждане на следващите състояния. Тук просто се формира нова популация, всеки индивид от която има принос за ново решение. Генетичните алгоритми са адаптивни. Те могат да се обучават да натрупват факти и знания без предварително да ги имат. Те започват само със критерии за избор, който в процеса на решение се усъвършенства. Генетичните алгоритми са пример как може да се преодолее детерминирания подход в програмирането, чрез залагане на самообучение и адаптация, започвайки от минимални знания. - Генетичните алгоритми се използват за решаване на оптимизационни задачи. Примери са алгоритми за поддръжка на невронни мрежи. Три тежести: 1) за подбор на параметрите на невронната мрежа - брой на скритите слоеве, бройн на невроните в тях. 2) подбор на правило за обучение и на параметрите участващи в него. 3) за анализ на невронни мрежи - използват се за изясняване какво и защо прави невронната мрежа, като така стават обясни решенията по класификация с невронни мрежи. Онтология. Обща теория на видовете съществуващи неща и отношения. Предлага се следната класификация:

- Общи онтологии. Предметно независими и съдържат категории от по-високо ниво като пространство, време, събитие и т.н. Една такава онтология е известната CYC. Проект, който има за цел да събере всички познати понятия на човечеството в една база. Представени са 10 на 5 степен категории и 10 на 6-та степен аксиоми. Създаден е специален език за достъп CYCL (L - language), който е базиран на предикатната логика и има синтаксис подобен на LISP. Всъщност се предполага, че тази база от знания ще бъде достъпна от разнообразни програмни средства работещи със знания и ще играе ролята на база от начални знания. - Предметни онтологии Съставляват речник за решаването на конкретна задача или свързан със даден предметна област. - Приложни отологии Описват концепции и понятия зависещи от конкретна област и съответстващи на ролите, които играят обектите при изпълнение на определена дейност Може да се каже, че онтологията е експлицитно, т.е. явно представяне по формален начин на концептуализацията на предметната област.