**Warsztaty: Implementacja kwantowego modelu perceptronu na komputerach kwantowych IBM**

### Cel warsztatów
Warsztaty mają na celu wprowadzenie uczestników do świata obliczeń kwantowych oraz naukę implementacji kwantowego modelu perceptronu z wykorzystaniem komputerów kwantowych IBM. W trakcie dwudniowego spotkania uczestnicy zdobędą teoretyczną wiedzę oraz praktyczne umiejętności niezbędne do pracy z kwantowymi modelami obliczeniowymi.

### Czas trwania
Warsztaty odbywają się w ciągu dwóch dni, po 6 godzin każdego dnia z przerwami na odpoczynek i lunch.

### Wymagania
Warsztaty wymagają sali wyposażonej w komputery dla każdego uczestnika lub możliwości korzystania z własnych laptopów. 

## Dzień 1: Wprowadzenie i podstawy

### Przypomnienie zagadnień
- **Kubity i stany kubitu**: Omówienie podstawowych jednostek informacji kwantowej, ich reprezentacji i właściwości.
- **Splątanie kwantowe**: Wyjaśnienie fenomenu splątania oraz jego znaczenia w obliczeniach kwantowych.
- **Bramkowy model obliczeń**: Przedstawienie zasad działania komputerów kwantowych opartych na bramkach.
- **Obwody kwantowe**: Budowa i analiza podstawowych obwodów kwantowych.
- **Perceptron**: Przypomnienie klasycznego perceptronu oraz zasad jego działania i uczenia.
- **Python**: Krótkie przypomnienie podstawowej składni języka Python, niezbędnej do implementacji obwodów kwantowych.

### Teoria
- **Bramkowe komputery kwantowe**: Szczegółowy opis budowy i zasad działania komputerów kwantowych opartych na bramkach.
- **Ograniczenia komputerów kwantowych**: Omówienie problemów i ograniczeń związanych z obecnym stanem technologii kwantowej.
- **Źródła błędów w komputerach bramkowych**: Analiza typowych źródeł błędów w obliczeniach kwantowych i ich wpływu na wyniki.
- **Kwantowy model perceptronu**: Budowa, elementy składowe oraz przykładowe obwody kwantowego perceptronu.

### Praktyka
- **Uzyskanie dostępu do IBMQ**: Proces rejestracji i uzyskania dostępu do platformy IBMQ.
- **Podstawy biblioteki `qiskit`**: Wprowadzenie do biblioteki Qiskit, narzędzia do programowania komputerów kwantowych.
- **Podstawowe operacje w portalu IBMQ**: Nauka monitorowania i zarządzania obliczeniami kwantowymi za pomocą portalu IBMQ.
- **Symulatory architektur komputerów bramkowych**: Implementacja pierwszego programu na symulatorze kwantowym.
- **Symulatory lokalne vs chmurowe**: Porównanie lokalnych i chmurowych symulatorów kwantowych.
- **Implementacja programu uruchamianego na komputerze bramkowym**: Praktyczna realizacja przygotowania stanu splątanego.

## Dzień 2: Implementacja i uczenie kwantowego perceptronu

### Praktyka
- **Implementacja składowych perceptronu**: Tworzenie i testowanie podstawowych elementów kwantowego perceptronu.
- **Obserwacje działania modelu dla losowo dobranych wag**: Analiza wyników działania perceptronu z losowo wybranymi wagami.
- **Implementacja algorytmu uczenia kwantowego perceptronu**: Kodowanie i testowanie algorytmu uczącego perceptronu.
- **Uczenie modelu, weryfikacja wyników**: Proces uczenia modelu perceptronu i ocena jego skuteczności.

### Zagadnienia dodatkowe
- **Model bramkowy vs wyżarzanie kwantowe**: Porównanie dwóch podejść do obliczeń kwantowych: modelu bramkowego i wyżarzania kwantowego.
- **Algorytm QAOA**: Przegląd algorytmu Quantum Approximate Optimization Algorithm (QAOA) i jego zastosowań.

Te warsztaty oferują unikalną okazję do zgłębienia zarówno teoretycznych, jak i praktycznych aspektów kwantowego uczenia maszynowego, z naciskiem na perceptron kwantowy. Dzięki bezpośredniemu dostępowi do technologii IBMQ, uczestnicy będą mogli na własne oczy przekonać się, jak wyglądają i działają współczesne komputery kwantowe.
