You are on page 1of 25

Въведение в изкуствения

интелект
Понятието „изкуствен интелект“
Проблемите при изясняване на определението на изкуствения интелект
често се свежда до определяне на това какво представлява интелектът
въобще.
Възникват редица въпроси относно това до каква степен е възможно:
- моделиране на човешкия интелект и неговите творчески
характеристики,
- строежа на нервните клетки
- начините на съхраняване на знания.
Няма единно определение за понятието Изкуствен интелект (ИИ), тъй като
то е свързано с недостатъчно добре определение понятие Естествен
интелект. Поради това е трудно да се отговори на въпроса „Кой
програмен продукт е реализация на система с ИИ?“
Най-известното определение за изкуствения интелект е така
наречения Тюрингов тест:
Поставяме нещо зад една завеса и то разговаря с нас. Ако не
можем да различим, че това не е човек, то това е изкуствен
интелект. Тази дефиниция е по-стара от петдесет години.

“Изкуственият интелект е наука за концепциите, които позволяват на


компютрите да правят такива неща, които за хората изглеждат
разумни” (П.Уинстън).
Едно възможно неформално определение е:

Изкуственият интелект е наука за:


• възгледите (принципите, концепциите),
• методите и средствата за създаване на интелигентни (разумни)
компютърни програми,
• изследване на естествения интелект чрез компютърни
системи.
Изкуственият интелект може да се разглежда, като свойство на
компютърните системи да получават някои от тези резултати, които
се пораждат в процеса на творческата дейност на човека.
Къде се използва изкуствен интелект?
• банки
• „игрите“ на борсата
• управление на собствеността
• при разпознаване на текст и глас
• медицинска диагностика
• в националната сигурност
• военното дело
• прогнозите на времето
• образованието
• разпознаване на образи и изображения
• роботика
• автоматизиран онлайн асистент, осигуряващ обслужване на клиенти на
уебстраница (едно от най-примитивните приложения на изкуствения
интелект)
• и др.
Философия и етика
Съществуват три важни философски въпроса, свързани с изкуствения интелект:
• Изкуственият интелект постижим ли е? Възможно ли е една машина да реши
всеки проблем, с който човешко същество може да се справи, или съществуват
твърди граници на възможностите ѝ?
• Интелигентните машини опасни ли са? Как можем да подсигурим етичните
им поведение и експлоатация?
• Може ли една машина да притежава идентични на човека разум и съзнание?
Машините заслужават ли да имат права и могат ли съзнателно да навредят на
някого?
Ефектът на изкуствения интелект: Машините са интелигентни, но външните
наблюдатели не го осъзнават. Когато Deep Blue бие Гари Каспаров в игра на
шах, машината се е държала интелигентно. Въпреки това, външните
наблюдатели често подценяват ИИ, спорейки че той не е „истински“;
следователно „истинският“ интелект е това, което различава хората от
машините.
„Изкуственият интелект е всичко онова, което не е постигнато досега“.
Основните направления в областта на ИИ от гледна точка на тяхното
практически приложение са следните:
• Системи, подпомагащи вземането на решенията;
• Експертни системи;
• Разпознаване и идентификация на обекти;
• Анализ и синтез на човешката реч;
• Автоматичен превод от един естествен език на друг;
• Автоматично разсъждение и доказване на теореми;
• Нелинейни управления и роботика;
• Машинно обучение;
• Неврони мрежи и генетични алгоритми;
• Решаване на задачи чрез търсене;
• Машинно зрение, виртуална реалност и обработка на изображения;
• Изкуствен интелект в игрите и Ботове в компютърните игри;
• Изкуствено творчество;
• Философски изследвания на изкуствения интелект.
• Интелектът работи със знания, а компютърът не може обхване много
голям обем от знания или да ги представи компактно и структурирано
както човека.
• Търси се компютърен аналог на човешкия интелект, наричан Изкуствен
интелект, който да замества човека само в отделни тясно специализирани
дейности.
• В това направление са постигнати редица успехи с помощта на
експертните системи (ЕС).
• ИИ е интердисциплинарна наука, обединяваща аспекти на различни
научни области:
- философия, - психология, - биология,
- лингвистика, - логика, - математика,
- информатика и др.
Целите на ИИ най-често те се отнасят до:
• Адекватно моделиране на възможностите на човешкия интелект при
създаването на компютърни програми;
• Издигане на технологиите на компютърната информатика на качествено
ново интелектуално равнище;
• Изследване на естествения интелект въз основа на създадените модели;
целта на това изследване е откриването на принципните механизми в
основата на човешката дейност;
• Основната цел е компютърните системи да станат по-полезни.
Резултати са постигнати по различни приложно-изследователски теми, които
са част от споменатите направления или се обособяват като самостоятелни.
• Дескриптивната логика е мощен способ за представяне на обяснителни
знания, който оперира с концепти;
• Логиките на пространството и времето позволяват разработване на
динамични модели;
• Онтологичните методи са изключително полезни за представяне на
знанията на концептуално ниво и в Уеб среда;
• Моделирането на разсъжденията на базата на прецеденти (case-based-
reasoning) в базата от знания се позволява ефективно използване на
предишен опит.
• Разсъжденията в условията на неопределеност се моделират чрез
Бейсови мрежи – статистически метод за намиране на закономерности в
данните;
• Пътят за решаване на проблемите с извличане на знания все по-успешно
се осъществява чрез методите на машинното обучение, които се базират
на невроните мрежи и генетични алгоритми;
• Все по-широко практическо приложение намират мултиагентните
системи. Те се използват за управление на военни автономни средства,
космически апарати, интелигентни домашни уреди и др.
• Системите с ИИ (СИИ) са способни да извършват дейности, които са
характерни за хората и са считани за интелектуални. СИИ притежават
специфични характеристики, които ги отличават от традиционните
системи като:
- Използване на знания;
- Извършване на логически извод;
- Планиране на последователността на действията;
- Обосноваване на решенията;
- Обучение и самообучение.
• Стандартните програмни системи имат два функционални модула –
програмен и за обработка на данни.
• СИИ имат три функционални модула – един програмен и два отделни за
обработка на знания и данни:
• База от знания (БЗ) – съхраняват се знанията на СИИ. Съществена черта на
БЗ е наличието на голям брой връзки между елементите;
• База от данни (БД) – съхраняват се конкретните данни за решаваната
задача;
• Програмен процесор (ПП) – осигурява различните дейности на СИИ:
 Логически процесор (ЛП) – това са програмите, които обработват
знанията и данните и реализират логически извод въз основа на
знанията от БЗ; функции на СИИ като планиране на действията,
обяснение на взетото решение, натрупване и актуализация на
знанията и самообучение;
 Изпълнителен процесор (ИП) – извършване на необходимите
действия върху знанията и данните, зададени от потребителя и
планирани от ЛП;
 Интерфейс – осигурява връзката с потребителя (има възможности за
Структура на система с изкуствен интелект
Данни и знания
• За правилното разбиране на СИИ е важно да се изяснят понятията данни
и знания.
• Под данни се разбират числа, текст, графика, звук и др. обекти, които са
кодирани най-често с 0 и 1, с цел удобство при обработката и получаване
на резултати.
• Компютърът е средство, с което може да се обработват данни.
• Информацията от тях извлича човекът, който знае смисъла им.
При този контекст в понятието „данни“ се влага по-широк смисъл – вид
информация. Казва се, че „има данни за нещо“, т.е. налична е
информацията.
Отношението между данни и знания е основен проблем на
информатиката. Тези две понятия изразяват две страни на категорията
информация.
• Знанията са общата , относително постоянна и неизменяема част от
информацията .
• Данните могат да се разглеждат като допълнение на знанията, тъй като
носят конкретна информация за всеки обект. Те са относително по-
динамичната част от информацията.
В този смисъл данните и знанията се допълват взаимно, но са различни
части на информацията за даден проблем като цяло.
Примери:
1. r е радиус на окръжност и е равен на 1 см. са данни.
2. Дължината на всяка окръжност се намира по формулата l=2πr е знание.
Съществената разлика между данни и знания е:
върху данните се извършват действия,
знанията се използват за взимане на решение, правене на логически
извод или заключение, съставяне на план, намиране на конкретни
данни и т.н., т.е. те съдържат информация за връзките между данните.
Типове знания
Знанията се разделят най-общо на формализирани (общодостъпни) и
неформализирани (евристични) знания.
• Формализирани – знанията, които могат да се извлекат от
съществуващата информация. Те са добре структурирани и
детерминирани;
• Неформализирани – знания, които се основават на практическия опит.
Тези знания:
 не са добре структурирани,
 трудно се подават на теоретична обосновка,
 използват емпирични методи, но водят до полезни практически
резултати при решаването на задачите.
Опитът показва, че в повечето случай човек използва именно такива
знания в ежедневната си дейност.
Знанията могат да се разделят и на следните три основни типа:
• Фактологически знания (знания за обекти и факти) – това са знания за обекти и
факти, за характеристиките на обединяващите ги класове обекти и факти.
Те не отразяват връзките между тези елементи. Служат за предоставяне на
свойствата и характеристиките на обектите и са най-близки до данните.
Използват се в началните етапи от работата на системата за разпознаване на
заявките към системата и при извличане на информация от обектите.
• Знания за връзките между обектите и фактите – отразяват връзките между
обектите на предметната област и между отделните компоненти на тези обекти.
Те представляват правила, методи и др. Знанията за връзките между обекти и
факти служат за интерпретация на знанията от първия вид и се делят на две
групи:
 Знания за вертикалните връзки, наричани още класифициращи връзки – общите
признаци, родово-видовите връзки, наследяването на свойствата;
 Знания за хоризонталните връзки – ситуационните и причинно-следствените
отношения.
• Метазнания – това са знания за знанията от първите два вида – за
тяхното представяне, за начина на тяхното използване и изменение, а в
някои случаи дори и общи знания за предметната област.
Метазнанията са знания от „по-високо“ ниво. Характерно за тях е, че
или са вградени в програмната част, или се използват предимно от
логическия процесор (механизма за извод) на системата.
В някои случаи метазнанията, или част от тях, са организирани отделно
и са част от базата от знания.
Eвристики и евристично
програмиране
Знанията от гледна точка на решаването на задачите от дадена предметна
област се разделят на:
• Факти - общоизвестните в предметната област истини или
обстоятелства;
• Eвристика - включва емпиричните алгоритми, основани на
неформални съображения, които ограничават разнообразието и
осигуряват целенасоченост на поведението на решаващата система,
без да гарантират получаването на най-доброто решение.
Евристиките са правила, подсказани от опита, чието прилагане в повечето
случай води до добър резултат.
Евристичните методи са приблизителни в смисъл, че не изискват точни
данни и решенията могат да бъдат получени с определена степен на
сигурност.
Тези методи използват критерии като „много“, „малко“, „лошо“.
Целта на евристичните методи е да се разработи прост процес, който да
генерира точни резултати в приемлив период от време.
Евристичните методи се представят в две основни категории:
• методи предимно за търсене и формиране на навици и умения
(нагласа) за евристично мислене
• методи за стимулиране в процес на непосредствено търсене на
решения.
Възможни са и други класификации на евристичните методи.
Примери за евристики:
- Не инвестирай преди да си проучил пазара.
- Продавай акциите, ако цената им пада.
- Популяризирай търговската марка, за да увеличиш клиентите си.
- В условия на инфлация, купувай злато.
- Ходи навреме на работа, за да не те уволнят дисциплинарно.
Логическата структура на евристиките е:
„Ако <условието е изпълнено>,
то <действай както следва …>“
Критериите при вземането на решение, когато се използва евристика са:
• Оптималност: Когато съществуват няколко решения за даден проблем,
евристиката гарантира ли, че ще бъде намерено най-доброто решение?
Наистина ли е необходимо да се намери най-доброто решение?
• Пълнота: Ако съществуват няколко решения за даден проблем, може ли
евристиката да ги намери всички? Наистина ли имаме нужда от всички
решения? Много евристики са предназначени само за намиране на едно
решение.
• Точност и прецизност: Може ли евристиката да осигури доверителен
интервал за предполагаемото решение?
• Време за изпълнение: Дали това е най-известната евристика за решаване
на този вид проблеми? Някои евристики са по-бързи от други евристики.
Някои евристики може да са съвсем малко по-бързи от класическите
методи.
Евристично програмиране – когато евристиките се комбинират с процедури
за извличане на решения, базирани на правила.
• Но за разлика от алгоритмичното програмиране, евристиките не гарантират
оптималност на решението, а само удовлетвореност (приемливост).
• Евристичното програмиране е клон на изкуствения интелект, който
използва евристика – common-sense правила, извлечени от опита - за
решаване на проблеми.
• Евристичното програмиране се характеризира с програми, които са
самообучаващи се; Те се подобряват от опита.
• Евристичните програми не винаги постигат най-добрия резултат, но
обикновено водят до добър резултат.
• Много експертни системи използват евристично програмиране.

You might also like