\chapter{Agentn� syst�my}
\section{Inteligentn� agent}
Pokud mluv�me o~agentn�ch syst�mech, je nutn� p�edem si vyjasnit z�kladn� pojem agent. Bohu�el neexistuje p�esn� obecn� p�ij�man� definice. Pro ��ely t�to pr�ce m��eme pou��t nap��klad tu, kterou pou��v� Michael Wooldrige v~\cite[kap. 1]{weiss}:  �\emph{Agent} je po��ta�ov� program, kter� je \emph{um�st�n} v~n�jak�m \emph{prost�ed�} a~kter� je schopen \emph{autonomn�ho jedn�n�} v~tomto prost�ed� za ��elem dosa�en� ur�en�ch c�l�.� Autonomi� se zde mysl� schopnost samostatn�ho jedn�n� bez z�sahu �lov�ka nebo jin�ch program�. Tato definice se zat�m vyh�b� pojmu \emph{inteligentn�}, tomu se budeme v�novat pozd�ji.

Agent z~definice m� tedy ur�it� druh �idel, kter�mi m��e z�skat n�kter� �daje o~sv�m okol�, omezen� seznam akc�, kter� m��e prov�d�t a~jist� algoritmus, kter� ur�uje jakou z~akc� (pokud v�bec n�jakou) v~aktu�ln�m �ase za zji�t�n�ch podm�nek prov�st.

Komplexnost rozhodovac�ho procesu z�vis� mimo jin� i~na prost�ed�. To m��eme klasifikovat z~mnoha pohled�. Zda lze �i nelze z�skat �pln� informace o~jeho sou�asn�m stavu, jestli je deterministick� nebo nedeterministick�, tedy jestli stejn� akce povede v�dy ke stejn�mu kone�n�mu stavu. D�le je mo�n� rozli�it mezi statick�m a~dynamick�m prost�ed�. Ve statick�m prost�ed� jsou ve�ker� zm�ny stavu d�lem pouze agenta, zat�mco dynamick� okol� se m�n� a� agent jedn� nebo ne. Podobn�ch rozd�len� existuje mnoho, ale toto pro p�edstavu posta��. Nejl�pe �iditeln� je samoz�ejm� prost�ed�, kter� je pln� popsateln�, deterministick� a~statick�, bohu�el ��zen� dopravy je p��padem p�esn� opa�n�m.

Naprosto typick�m p��kladem jednoduch�ho agenta um�st�n�ho v~prost�ed� je termostat ovl�daj�c� topen� za ��elem udr�en� st�le teploty v~m�stnosti. Tento agent m� jedno �idlo, kter�m ur�uje jestli je teplota ni��� ne� nastaven� po�adovan�, a~dv� mo�n� akce: zapnut� a~vypnut� vyt�p�n�. Rozhodovac� proces se pak skl�d� ze dvou pravidel:
%\begin{equation*}
\begin{align*}
\text{n�zk� teplota} & \longrightarrow \text{zapnout vyt�p�n�} \\
\text{spr�vn� teplota} & \longrightarrow \text{vypnout vyt�p�n�}
\end{align*}
%\end{equation*}

Takto postaven� program se d� pova�ovat za agenta, ale pravd�podobn� jen m�lokdo by ho ozna�il za agenta inteligentn�ho. Probl�m je u� samotn� definice inteligence. Proto se omez�me na to, �e inteligentn� agent je takov�, kter� dok�e flexibiln� reagovat. Flexibilita znamen� t�i vlastnosti:
\begin{description}
	\item[reaktivita] -- inteligentn� agent vn�m� sv� okol� a~dle takto z�skan�ch �daj� reaguje na jeho zm�ny tak, aby splnil sv� nastaven� c�le;
	\item[proaktivita] -- inteligentn� agent je schopn� p�edv�dat chov�n� syst�mu a~na z�klad� t�chto p�edpov�d� aktivn� jednat tak, aby splnil sv� nastaven� c�le;
	\item[soci�ln� schopnosti] -- inteligentn� agenti na sebe mohou vz�jemn� p�sobit tak, aby splnili sv� nastaven� c�le.
\end{description}

Po�adavky na vysokou reaktivitu a~proaktivitu jdou proti sob�. Je t�eba naj�t vyv�en� pom�r mezi ob�ma. Extr�mn� reaktivn� agent toti� na z�klad� neust�le p�ij�man�ch podm�t� st�le kon� n�jakou akci. Ov�em t�mto zp�sobem se m��e dostat do stavu, kdy podm�ty zp�sobuj� st��dav� zam��en� agenta na r�zn� c�le, kterou nejsou slu�iteln� a~t�m p�dem ani jeden z~c�l� nem��e b�t nikdy uskute�n�n. Na druhou stranu p��li� proaktivn� agent se zam��� na jeden c�l a~kv�li tomu ignoruje, �e po��te�n� podm�nky, kter� ho k~pln�n� c�le dovedly, u� nejsou platn�. Naj�t proto tu spr�vnou m�ru je obt�n� �loha.

Mezi soci�ln� schopnosti nepat�� jen rutinn� v�m�na informac�, kterou dne�n� po��ta�e prov�d�j� prakticky neust�le, ale p�edev��m schopnost vyjedn�vat a~spolupracovat p�i pln�n� spole�n�ch nebo individu�ln�ch c�l�. Mezi b�n� akce tak pat�� navrhov�n� zm�n spolu s~p��nosem, kter� by tato zm�na p�inesla, jejich zva�ov�n� a~n�sledn� p�ijet�, odm�tnut� �i sestaven� protin�vrhu vedouc�ho ke kompromisu.

\section{Komunikace mezi agenty}

Agenti mezi kter�mi prob�h� komunikace mus� b�t schopn� zast�vat v~dialogu aktivn�, pasivn� nebo p��padn� ob� role. Aby toto bylo mo�n�, budeme p�edpokl�dat, �e agenti mohou p�ij�mat a~zas�lat zpr�vy jistou komunika�n� s�t�. 

Michale N. Huhns a~Larry M. Stephens v~\cite[kap. 2]{weiss} uv�d�j�, �e zpr�vy zas�lan� agenty lze d�lit na dva z�kladn� typy: \emph{prohl�en�} a~\emph{dotazy}. Ka�d� agent by m�l b�t schopen p�ij�mat informace. Agent zast�vaj�c� pasivn� roli v~dialogu je nav�c schopen odpov�dat na ot�zky, to znamen� um�t p�ijmout a~zpracovat dotaz a~odpov�d�t na n�j odes�lateli n�jak�m prohl�en�m. Aktivn� agent je pak takov�, kter� sestavuje a~odes�l� dotazy a~prohl�en� p�ij�m�. D�ky tomu aktivn� agenti mohou m�t jistou formu kontroly nad pasivn�mi. 

V~p��pad� rovnocenn�ch agent� je nutn�, aby v�ichni zvl�dali jak aktivn�, tak pasivn� roli v~dialogu.

Pro umo�n�n� komunikace mezi agenty se definuje spole�n� komunika�n� protokol. Ten m��e m�t bin�rn� �i n-�rn�. Bin�rn� umo��uje komunikaci v�dy jen mezi dv�ma agenty, n-�rn� dovoluje jednomu agentovi rozeslat zpr�vu n�kolika p��jemc�m z�rove�. Protokol je ur�en datovou strukturou skl�daj�c� se z~p�ti polo�ek
\begin{enumerate}
	\item odes�latel
	\item p��jemce (p��jemci)
	\item jazyk v~protokolu
	\item k�dovac� a~dek�dovac� funkce
	\item akce, kter� by m�la b�t vykon�na p��jemcem
\end{enumerate}

