Въведение в изкуствения интелект. История на ИИ. Видове ИИ. Приложения

 

 Презентация 1

Презентация 1

Приложение на изкуствения интелект в програмирането

Изкуственият интелект вече е неразделна част от програмирането и софтуерната индустрия. Той не просто помага — той променя начина, по който се създават приложения, игри, уебсайтове, роботи и дори научни открития. Докато традиционното програмиране изисква човекът да напише всяка команда, ИИ може да анализира, допълва и оптимизира кода, да предлага решения и да генерира нови идеи. Това превръща ИИ в мощен партньор, който работи заедно с програмиста.

1. ИИ като интелигентен помощник при писане на код

Днес много разработчици използват ИИ инструменти, които:

  • предлагат следващи редове код
  • откриват грешки още докато пишеш
  • обясняват непознати команди
  • превеждат код от един език на друг

Реални примери

  • Програмист пише функция в Python — ИИ предлага по‑кратка и по‑ефективна версия.
  • Ученик не знае как да направи цикъл в JavaScript — ИИ му дава пример и обяснение.
  • Разработчик пише игра — ИИ автоматично предлага код за движение на герой или за колизии.

Това ускорява работата и прави програмирането по‑достъпно за начинаещи.

2. ИИ за откриване на грешки и подобряване на качеството

Големи компании използват ИИ, за да анализират огромни проекти с милиони редове код.

Реални примери

  • Microsoft използва ИИ, за да открива грешки в Windows преди да стигнат до потребителите.
  • Google използва ИИ, за да намира уязвимости в сигурността на Chrome.
  • GitHub използва ИИ, за да предупреждава програмистите, ако използват опасни или остарели функции.

ИИ може да открие проблеми, които човек трудно би забелязал.

3. ИИ в разработката на игри

Гейм индустрията е една от областите, в които ИИ има огромно влияние.

Реални примери

  • В Minecraft ИИ се използва за генериране на безкрайни светове.
  • В The Sims ИИ управлява поведението на героите, така че да изглеждат „живи“.
  • В FIFA ИИ контролира играчите, които не управляваш ти.
  • В Assassin’s Creed ИИ създава реалистични тълпи, които реагират на действията на играча.
  • В No Man’s Sky ИИ генерира цели планети, животни и екосистеми.

Дори ученици могат да използват ИИ, за да:

  • измислят сюжет за игра
  • създадат дизайн на герой
  • генерират текстури или музика
4. ИИ в уеб разработката

ИИ помага на уеб разработчиците да създават сайтове по‑бързо и по‑качествено.

Реални примери

  • ИИ може да генерира HTML/CSS код по описание: „Направи ми страница с меню, заглавие и три секции.“
  • ИИ може да предложи по‑добър дизайн или цветова схема.
  • ИИ може да тества сайта за грешки и да предложи подобрения.
  • ИИ може да генерира примерни текстове, изображения и икони.

Това позволява дори начинаещи да създават професионално изглеждащи сайтове.

5. ИИ в роботиката и автоматизацията

Програмирането на роботи става много по‑лесно с помощта на ИИ.

Реални примери

  • Роботи в заводи използват ИИ, за да разпознават предмети и да ги подреждат.
  • Домашни роботи (като прахосмукачки) използват ИИ, за да картографират стаята.
  • Дронове използват ИИ, за да избягват препятствия.
  • Образователни роботи (като LEGO Mindstorms) могат да бъдат програмирани с помощта на ИИ, който предлага код за движение, сензори и реакции.
6. ИИ в науката и медицината

Програмистите, които работят в науката, използват ИИ за задачи, които човек трудно би изпълнил.

Реални примери

  • ИИ анализира медицински снимки и открива заболявания по‑рано от лекар.
  • ИИ помага на учени да откриват нови лекарства.
  • ИИ модели предсказват времето и климатичните промени.
  • Астрономи използват ИИ, за да откриват нови галактики и екзопланети.

Това показва, че програмирането + ИИ може да спасява животи.

7. ИИ в бизнеса и ежедневието

Почти всяко приложение, което използваме, има ИИ „под капака“.

Реални примери

  • YouTube препоръчва видеа чрез ИИ.
  • TikTok избира съдържание според интересите на потребителя.

  • Google Maps използва ИИ, за да предлага най‑бързия маршрут.
  • Онлайн магазини използват ИИ, за да препоръчват продукти.
  • Банки използват ИИ, за да откриват измами.
  • Преводачи като Google Translate използват ИИ за разбиране на текст.

Всичко това е възможно благодарение на програмисти, които работят с ИИ модели.

8. ИИ като творчески партньор

Освен технически задачи, ИИ помага и в творчеството.

Реални примери

  • ИИ може да генерира музика за игра или видео.
  • ИИ може да създава изображения, лога и дизайни.
  • ИИ може да пише истории, диалози и сценарии.
  • ИИ може да създава 3D модели за игри и анимации.
  • ИИ може да генерира идеи за проекти, упражнения или учебни задачи.

Така програмирането става по‑креативно, по‑забавно и по‑достъпно.

Изкуственият интелект не заменя програмиста — той го допълва, ускорява и вдъхновява. Колкото по‑добре разбираме как работи кодът, толкова по‑ефективно можем да използваме ИИ като партньор в създаването на нови идеи, приложения и решения.

Програмирането и ИИ вървят ръка за ръка — и бъдещето принадлежи на тези, които умеят да използват и двете.

 

Да преговорим: Основни понятия в програмирането
  • Какво е програмиране: Програмирането е процесът на създаване на инструкции, които компютърът изпълнява. Тези инструкции се наричат код. Компютърът не може да „отгатва“ – той изпълнява точно това, което му кажем, и в точния ред.
  • Алгоритъм: Алгоритъмът е подредена последователност от стъпки за решаване на даден проблем. Пример: рецепта, инструкции за сглобяване, маршрут в навигацията.
  • Команди: Това са отделните инструкции, които казват на компютъра какво да прави – да премести герой, да изчисли число, да покаже текст и др.

  • Последователност: Кодът се изпълнява отгоре надолу. Ако редът е грешен, резултатът също ще е грешен.

  • Условия (if / else): Позволяват на програмата да взема решения. Пример: „Ако има слънце → излизам навън. Иначе → оставам вкъщи.“
  • Цикли (loops): Използват се, когато трябва да повторим действие много пъти. Пример: „Повтаряй 10 пъти: нарисувай квадрат.“
  • Променливи: Място в паметта, където се съхранява информация, която може да се променя. Примери: точки в игра, име на играч, брой животи.

  • Събития: Нещо, което „задейства“ действие – например кликване на бутон, натискане на клавиш, стартиране на програмата.

Блоково програмиране (Scratch, Blockly): използва цветни блокчета, които се сглобяват като пъзел. Подходящо е за визуално мислене, разбиране на логиката, създаване на игри, анимации и истории.

Основни категории блокове: Motion – движение; Looks – външен вид; Events – събития; Control – цикли и условия; Variables – променливи.

Скриптови езици (Python, JavaScript)
  • Python: лесен за четене, подходящ за начинаещи, използва се в наука, уеб, автоматизация, ИИ
  • JavaScript: езикът на уеб страниците, позволява създаване на интерактивни елементи, работи директно в браузъра

Как мисли компютърът: Компютърът изпълнява точно това, което му кажем; не разбира двусмислици; работи бързо, но буквално. Затова програмистът трябва да мисли логично, ясно и последователно.

Практически задачи за програмиране:

Зад. 1. Програмиране с блокове (изберете 1 от двата варианта) (20 т.):
Вариант 1: Интерактивна история в Scratch

Цел: да създадеш кратка интерактивна история/мини‑игра с избор (вижте примера в дясно).

Задача: Създай проект в Scratch, в който:

  • има поне 2 героя
  • има поне 3 различни фона (сцени)
  • играчът прави избор, който променя хода на историята
  • използвай по твоя преценка събития, условия, цикли и променливи

 

 

Вариант 2: Последователни действия с Blockly

Задача: Подредете необходимите блокчета, за да накарате робота да се движи и да събира метални части.

 

Зад. 2. Скриптови езици за програмиране (60 т.):
Зад. 2 a). Генератор на случайни истории (20 т.):

Цел: да създадеш програма, която генерира забавни истории с помощта на списъци и случайност.

Задача: Напиши Python програма, която:

  • съдържа 3 списъка (герои, места, действия)
  • използва модула random
  • отпечатва различна история при всяко стартиране

Примерно решение на задачата вижте отдясно.

Зад. 2 b). Познай числото (20 т.):

Цел: Да се създаде Python програма, която да генерира случайно число в интервала от 1 до 10, а потребителят да въвежда предложения за числото, докато то съвпадне с генерираното число.

За генериране на случайното число се използва библиотеката random, която се добавя допълнително.

Примерно решение на задачата вижте отдясно.

Зад. 2 c). Компютърна графика (10 т.):

Цел: Представете си, че сте дигитални дизайнери за модна марка и трябва да създадете уникален геометричен десен.

Задачата ви е да експериментирате с ъгъла (вместо 49, пробвайте 59, 90, 91, 45) и с дължината на стъпката, за да получите ваш уникален дизайн.

Примерно решение на задачата вижте отдясно.

Зад. 2 d). Дебъгване на код (10 т.):

Цел: Откриване на грешки в код.

Даден ви е готов код на Javascript, който трябва да изчертае цветен квадрат. В кода има грешка, която трябва да коригирате, за да ви се изчертае цветния квадрат. Вижте кода в дясно.

tina=new Turtle()
tina.pencolor('ready')
for (i = 0; i < 4; i++) {
  tina.pendown();
  tina.forward(100);
  tina.left(90);
}

Оценяване:

Максимален брой точки: 80

 

66 - 80 точки - (6)

51 - 65 точки - (5)

36 - 50 точки - (4)

20 - 35 точки -  (3)

До 19 точки -  (2)