„Roj častíc“ ako najjednoduchšia metóda evolučného programovania, založená na myšlienke možnosti riešenia optimalizačných problémov modelovaním správania skupín zvierat. Schéma algoritmu, zostavenie programového kódu a vývojového diagramu.
Odoslanie dobrej práce do databázy znalostí je jednoduché. Použite nižšie uvedený formulár
Študenti, postgraduálni študenti, mladí vedci, ktorí využívajú vedomostnú základňu pri štúdiu a práci, vám budú veľmi vďační.
Hostené na http://www.allbest.ru/
Úvod
Od čias Lamarcka sa rozvoj živého sveta považuje za proces neustáleho zdokonaľovania (prispôsobovania) jedincov pod vplyvom prostredia. Modelovaním výberu najlepších plánov ako procesu evolúcie v populácii jednotlivcov je možné získať riešenie optimalizačného problému nastavením počiatočných podmienok pre evolučný proces, osídlením virtuálneho vesmíru tvormi - nosičmi informácií a špecifikovaním cieľa. evolučného procesu.
Kopírovaním akcií prírody človek vytvára stále dokonalejšie optimalizačné algoritmy. Na ich tvorbu sa najčastejšie využívajú príklady z prírody, napr.: genetický kód alebo správanie vtákov, simulácia migrácií rýb či ochladzovania kovu a pod.
V súčasnosti sú optimalizačné algoritmy široko používané vo výrobe a obchode, pretože umožňujú nielen šetriť hotovosť, ale aj čas, ktorého je neustále nedostatok.
Vo výrobe sa vďaka optimalizácii rieši veľa problémov spojených s takými vecami ako odstávka strojov, preplnenie skladu, či presmerovanie náhradných dielov na iné stroje v prípade poruchy.
Pre túto prácu bola zvolená metóda optimalizácie „roj častíc“. Algoritmus metódy je vďaka svojej jednoduchosti a rýchlosti považovaný za veľmi sľubný pre problémy plánovania.
1 . Formulácia problému
1.1 Matematický model
Metóda „roja častíc“ je najjednoduchšia metóda evolučného programovania, ktorá sa objavila v polovici 90. rokov, založená na myšlienke, že optimalizačné problémy je možné riešiť modelovaním správania skupín živočíchov. Metóda je založená na skutočnosti, že pri vytváraní kŕdľa majú vtáky tendenciu k určitému „ťažisku“, pričom postupne spomaľujú rýchlosť letu.
Keď svorka hľadá potravu, členovia svorky skontrolujú okolie a samostatne sa pohybujú po svorke. Každý zástupca má určitý stupeň voľnosti alebo náhodnosti v pohybe, čo mu dáva možnosť nájsť nahromadenie potravy. Takže skôr či neskôr jeden z nich nájde niečo jedlé a keďže je súčasťou balenia, informuje ostatných. Zvyšok sa potom môže priblížiť aj k zdroju potravy a už každý zástupca si vďaka miere voľnosti a náhodnosti svojho pohybu môže nájsť novú akumuláciu potravy.
Pri implementácii tohto algoritmu je viacrozmerný vyhľadávací priestor zaplnený rojom častíc (elementárnych riešení). Súradnice častíc v priestore jednoznačne určujú riešenie optimalizačného problému. Každá z častíc je okrem súradníc opísaná aj rýchlosťou pohybu a zrýchlením. V procese pohybu častice „prečesávajú“ priestor roztoku a tým nachádzajú aktuálne optimum, ku ktorému sa v ďalšom kroku ponáhľajú ostatné častice. Každá častica si pamätá svoju najlepšiu polohu, o ktorej sa údaje prenášajú susedným časticiam, ktoré majú tendenciu k tejto hodnote.
Na zavedenie náhodnej zložky do procesu vyhľadávania je možné zahrnúť „bláznivé“ častice, ktorých zákon pohybu sa líši od zákona pohybu zvyšku.
2 . Implementácia algoritmu
2.1Schéma algoritmu
Schéma algoritmu je nasledovná:
1. Vytvorí sa počiatočná „náhodná“ populácia častíc.
2. Pre každú časticu sa vypočíta účelová funkcia.
3. Najlepšia častica z hľadiska účelovej funkcie je vyhlásená za "ťažisko".
4. Do tohto „centra“ sa ponáhľajú vektory rýchlosti všetkých častíc, pričom čím ďalej je od neho častica, tým väčšie zrýchlenie má.
5. Vykoná sa výpočet nových súradníc častíc v priestore roztoku.
6. Kroky 2-5 sa opakujú stanovený počet krát alebo kým nie je splnená podmienka zastavenia.
7. Posledné „ťažisko“ je vyhlásené za nájdené optimálne riešenie.
2. 2 Kódprogramy
#include
#include
#include
#include
const int n=200;
const int m=200;
int i, j, k, t = 200;
dvojité F (dvojité x)
return pow(pow(x, 3) - 125,2);
(dvojité V[n] [m];
double bottom_limit=1, upper_limit=300;
double best_pos[n] [m];
dvojitá bunka[n][m]; // pole genotypov
double best_cel=1000; // najlepšia globálna hodnota
const double C1=0,7, C2=1,2, w=0,93;
double **X=new double*[n];
pre (i=0; i X[i]=nový double[m]; srand(čas(NULL)); // inicializácia polohy a rýchlostí častíc pre (i=0; i pre (j=0; j X[i] [j]=dolný_limit + (horný_limit - dolný_limit)*rand()/RAND_MAX; // Inicializácia s najhorším genotypom častice best_pos[i][j]=1000; pre (k=0; k // vyplnenie poľa genotypov pre (i=0; i pre (j=0; j // určenie aktuálneho genotypu cel[i][j]=F(X[i][j]); // uložiť hodnotu najlepšieho genotypu pre každú časticu ak (cel[i][j] best_pos[i][j]=cel[i][j]; if (najlepší_pos[i][j] best_cel=best_pos[i][j]; printf("%f\n",x); // Aktualizácia rýchlosti a polohy častíc pre (i=0; i pre (j=0; j R1 = 1.*rand()/RAND_MAX; R2 = 1.*rand()/RAND_MAX; V[i] [j] = w*V[i] [j] + C1*R1*(najlepšia_celka - X[i] [j]) + C2*R2*(najlepšia_pozícia[i] [j] - X[i ][j]); X[i] [j] = X[i] [j] + V[i] [j]; 2.3 Bloková schéma algoritmu Hostené na http://www.allbest.ru/ Hostené na http://www.allbest.ru/ 3
.
Teoretický odhad zložitosti optimalizačného algoritmu Pre teoretické posúdenie zložitosti algoritmu je potrebné určiť počet elementárnych operácií, ktoré je potrebné vykonať na vyriešenie problému pomocou tohto algoritmu. Pod elementárnymi operáciami rozumieme operácie, ktoré môžu byť reprezentované ako elementárne konštrukcie daného jazyka (ale nie nevyhnutne vo forme jedinej strojovej inštrukcie), konkrétne za jednu elementárnu operáciu budeme považovať nasledovné: 1) operácia priradenia ab; 2) operácia indexovania poľa a[i]; 3) aritmetické operácie *,/,-,+; 4) porovnávacie operácie a< b; 5) logické operácie alebo, a nie. Cyklus for nie je elementárnou operáciou, pretože môže byť reprezentovaný ako; Konštrukcia slučky teda vyžaduje 2*N základných operácií: F
"cyklus" = 2*
N+
N*
f telo cyklu. Pre náš program teda dostaneme: F=9+ // konštanty 2*200+200*(2*200+(8+6)*200)+ // inicializácia polohy a rýchlosti 2*200+200*(2*200+200*(2*200+200*(6+20))+ // vyplnenie poľa genotypu a najlepších hodnôt 2*200+200*(2*200+200*(4+4+10+2+16)) // rýchlosť aktualizácie a polohy Výsledkom teoretického výpočtu bola zložitosť tohto programu F= 528800809 základných operácií. Záver modelovanie programového algoritmu V poslednej dobe sa začalo objavovať veľa nových algoritmov, ktoré sú založené na napodobňovaní prírody, ale nie každý algoritmus sa môže pochváliť takou jednoduchou implementáciou a originalitou nápadu. Vzhľadom na náhodné rozloženie častíc a ich náhodnosť v pohybe je veľmi vysoká pravdepodobnosť nájdenia optimálneho riešenia v niekoľkých iteráciách, pričom sa vyhneme lokálnym optimám. Ďalší vývoj takýchto algoritmov je kľúčom k novým technológiám pre optimalizáciu a vývoj vo všeobecnosti. Zoznam použitých zdrojov 1. Uljanov M.V., Šeptunov M.V. Matematická logika a teória algoritmov, časť 2: Teória algoritmov. - M.: MGAPI, 2003. - 80 s. 2. Abstrakt prednášok z disciplíny "Matematická logika a teória algoritmov". 3. Globálne optimalizačné algoritmy – teória a aplikácia. 4. http://ru.wikipedia.org Hostené na Allbest.ru Vlastnosti úloh lineárneho programovania. Simplexná metóda riešenia úloh lineárneho programovania. Odôvodnenie výberu jazyka, programovacích nástrojov, zoznamu identifikátorov a vývojového diagramu algoritmu. Logická schéma programu. práca, pridané 13.08.2011 Vývoj knižnice, ktorá vám umožní simulovať dynamiku častíc v trojrozmernej grafike. Výber prostriedkov a metód rozvoja. Možnosti modelovania časticových systémov. Modelovanie na vertex shader. Diagramy triedy Particle System a PSBehavior. ročníková práca, pridaná 02.07.2016 Základné analytické vzťahy. Bloková schéma a algoritmus riešenia problému. Manuálna kontrola výkonu algoritmu. Variabilná identifikačná tabuľka. Formy vstupnej a výstupnej tlače. Vývoj a ladenie programu. Návod na prácu s programom. ročníková práca, pridaná 13.02.2012 Koncept lineárneho programovania a optimalizácie. Základy práce v systéme MathCAD. Používateľské rozhranie, vstupný jazyk a typ údajov. Etapy počítačového matematického modelovania. Príklad riešenia optimalizačného problému pomocou programu MathCAD. ročníková práca, pridaná 16.10.2011 Vytvorenie programu v programovacom prostredí MatLab na riešenie úlohy jednorozmernej optimalizácie (hľadanie minima a maxima daných funkcií) metódou zlatého rezu, zostrojenie vývojového diagramu algoritmu a grafické znázornenie študovaných funkcií. abstrakt, pridaný 14.06.2010 Programovací systém Delphi, jeho vlastnosti. Základné požiadavky na tréningový program. Zostavenie blokového diagramu algoritmu programu "Matematika. Stupeň 1". Typy úloh, ktoré sa majú riešiť v tréningovom programe. Popis činnosti systému, pokyny k nemu. semestrálna práca, pridaná 17.06.2015 Optimalizácia riešenia problému pomocou algoritmu žíhania. Analýza teórie optimalizácie ako objektívnej funkcie. Gradientná metóda zostupu. Premenné a popis žíhacieho algoritmu. Znázornenie problému obchodného cestujúceho prostredníctvom grafu. Redukcia problému na premenné a riešenie. ročníková práca, pridaná 21.05.2015 Zostrojenie matematického modelu pohybu nabitých častíc, implementácia v algoritmickom jazyku pomocou počítača. Popis predmetnej oblasti. Simulácia interakcie dvoch opačne nabitých častíc. Výsledky programu, používateľská príručka. ročníková práca, pridaná 26.02.2015 Maticová transformácia sústavy lineárnych algebraických rovníc (SLAE) pomocou Gaussovho algoritmu. Riešenie úlohy metódou jednoduchej iterácie. Vytvorenie blokovej schémy a textu programu na riešenie SLAE, realizovaného v programovacom jazyku Turbo Pascal. ročníková práca, pridaná 15.06.2013 Pascal ako profesionálny programovací jazyk, ktorý je pomenovaný po francúzskom matematikovi a filozofovi Blaise Pascalovi, histórii jeho vývoja a funkčných vlastnostiach. Problém s použitím dvojrozmerného poľa, zostavenie vývojového diagramu riešenia. Nechaj f: ℝ
n→ ℝ - objektívna funkcia, ktorá sa má minimalizovať, S- počet častíc v roji, z ktorých každá je spojená so súradnicou X i ∈ ℝ n v priestore a rýchlosti riešenia v i ∈ ℝ n. Nechajte tiež p i je najznámejšia poloha častice i, a g je najznámejším stavom roja ako celku. Potom je všeobecná forma metódy roja častíc nasledovná. Parametre ω, φ p a φ g sú zvolené kalkulačkou a určujú správanie a účinnosť metódy ako celku. Tieto parametre sú predmetom mnohých štúdií. (Pozri nižšie). Výber optimálnych parametrov pre metódu roja častíc je predmetom značného počtu výskumných prác, pozri napríklad Shi a Eberhart, Carlisle a Dozer, van den Berg, Clerk a Kennedy, Trelea, Bratton a Blackwell a Evers. Pedersen a ďalší autori navrhli jednoduchý a efektívny spôsob výberu parametrov metódy. Uskutočnili tiež numerické experimenty s rôznymi optimalizačnými problémami a parametrami. Technika výberu týchto parametrov sa nazýva meta-optimalizácia, pretože na „ladenie“ parametrov MFR sa používa ďalší optimalizačný algoritmus. Vstupné parametre MFM s najlepším výkonom sa ukázali byť v rozpore s hlavnými princípmi opísanými v literatúre a často poskytujú uspokojivé výsledky optimalizácie pre jednoduché prípady MFM. Ich implementáciu nájdete v open source knižnici SwarmOps. Neustále sa navrhujú nové varianty algoritmu roja častíc na zlepšenie výkonu metódy. V týchto štúdiách je viacero trendov, z ktorých jeden navrhuje vytvoriť hybridnú optimalizačnú metódu využívajúcu MFR v kombinácii s inými algoritmami, viď napr. Ďalším trendom je nejakým spôsobom zrýchliť metódu, napríklad krokom späť alebo zmenou poradia pohybu častíc (pozri o tom). Existujú aj pokusy prispôsobiť parametre správania MFR počas procesu optimalizácie. MFR optimalizuje funkciu udržiavaním populácie možných riešení nazývaných častice a pohybom týchto častíc v priestore roztoku podľa jednoduchého vzorca. Pohyby podliehajú princípu najlepšej polohy nájdenej v tomto priestore, ktorá sa neustále mení, keď častice nájdu priaznivejšie polohy. Nechaj f: ℝ
n→ ℝ - objektívna funkcia, ktorá sa má minimalizovať, S- počet častíc v roji, z ktorých každá je spojená so súradnicou X i ∈ ℝ n v priestore a rýchlosti riešenia v i ∈ ℝ n. Nechajte tiež p i je najznámejšia poloha častice i, a g je najznámejším stavom roja ako celku. Potom je všeobecná forma metódy roja častíc nasledovná. Parametre ω, φ p a φ g sú zvolené kalkulačkou a určujú správanie a účinnosť metódy ako celku. Tieto parametre sú predmetom mnohých štúdií. (Pozri nižšie). Výber optimálnych parametrov pre metódu roja častíc je predmetom značného počtu výskumných prác, pozri napríklad Shi a Eberhart, Carlisle a Dozer, van den Berg, Clerk a Kennedy, Trelea, Bratton a Blackwell a Evers. Pedersen a ďalší autori navrhli jednoduchý a efektívny spôsob výberu parametrov metódy. Uskutočnili tiež numerické experimenty s rôznymi optimalizačnými problémami a parametrami. Technika výberu týchto parametrov sa nazýva meta-optimalizácia, pretože na "ladenie" parametrov MFR sa používa iný optimalizačný algoritmus. Vstupné parametre MFM s najlepším výkonom sa ukázali byť v rozpore s hlavnými princípmi opísanými v literatúre a často poskytujú uspokojivé výsledky optimalizácie pre jednoduché prípady MFM. Ich implementáciu nájdete v open source knižnici SwarmOps. Neustále sa navrhujú nové varianty algoritmu roja častíc na zlepšenie výkonu metódy. V týchto štúdiách je viacero trendov, z ktorých jeden navrhuje vytvoriť hybridnú optimalizačnú metódu využívajúcu MFR v kombinácii s inými algoritmami, viď napr. Ďalším trendom je nejakým spôsobom zrýchliť metódu, napríklad krokom späť alebo zmenou poradia pohybu častíc (pozri o tom). Existujú aj pokusy prispôsobiť parametre správania MFR počas procesu optimalizácie. Večer toho istého dňa prebiehal v Denisovovom byte medzi dôstojníkmi letky živý rozhovor. Podobné dokumenty
Algoritmus
Výber parametrov
Možnosti algoritmu
pozri tiež
Poznámky
Odkazy
Optimalizačné metódy
Jednorozmerný
Algoritmus
Výber parametrov
Možnosti algoritmu
Napíšte recenziu na článok "Metóda roja častíc"
Poznámky
Odkazy
Jednorozmerný
Priame metódy
Prvá objednávka
druhá objednávka
Stochastické
Lineárne metódy
programovanie
Nelineárne metódy
programovanie
Výňatok charakterizujúci Particle Swarm Method
- Áno, - povedal Rostov, ako keby to vysloviť toto slovo vyžadovalo veľa úsilia, a sadol si k vedľajšiemu stolu.
Obaja mlčali; v miestnosti sedeli dvaja Nemci a jeden ruský dôstojník. Všetci mlčali a bolo počuť zvuky nožov na tanieroch a poručíkovo champovanie. Keď Telyanin dojedol raňajky, vytiahol z vrecka dvojitú kabelku, roztiahol prstene s malými bielymi prstami ohnutými nahor, vytiahol zlatý a zdvihol obočie a dal peniaze sluhovi.
"Prosím, ponáhľaj sa," povedal.
Zlato bolo nové. Rostov vstal a prešiel k Telyaninovi.
„Ukáž mi kabelku,“ povedal tichým, sotva počuteľným hlasom.
Telyanin s premenlivými očami, no stále zdvihnutým obočím, podal kabelku.
„Áno, pekná kabelka... Áno... áno...“ povedal a zrazu zbledol. "Pozri, mladý muž," dodal.
Rostov vzal peňaženku do rúk a pozrel sa na ňu, na peniaze, ktoré v nej boli, a na Telyanina. Poručík sa poobzeral okolo seba, ako bolo jeho zvykom, a zdalo sa, že je zrazu veľmi veselý.
„Ak budeme vo Viedni, všetko tam nechám a v týchto mizerných mestečkách už nie je kam ísť,“ povedal. - Poď, mladý muž, pôjdem.
Rostov mlčal.
- A čo ty? aj raňajky? Sú slušne kŕmené,“ pokračoval Telyanin. - Poď.
Natiahol ruku a chytil peňaženku. Rostov ho prepustil. Telyanin vzal kabelku a začal si ju vkladať do vrecka nohavíc, obočie mu ležérne nadvihlo a ústa sa mu mierne otvorili, akoby hovoril: „Áno, áno, strčil som si kabelku do vrecka a je to veľmi jednoduché a nikoho to nezaujíma“.
- No čo, mladý muž? povedal, povzdychol si a spod jeho zdvihnutého obočia pozrel do Rostovových očí. Akési svetlo z očí rýchlosťou elektrickej iskry prešlo z Telyaninových očí do Rostovových očí a späť, späť a späť, všetko v okamihu.
"Poď sem," povedal Rostov a chytil Telyanina za ruku. Takmer ho odtiahol k oknu. - Toto sú Denisovove peniaze, zobral si ich... - zašepkal mu do ucha.
"Čo?... Čo?... Ako sa opovažuješ?" Čo? ... - povedal Telyanin.
Ale tieto slová zneli ako žalostný, zúfalý výkrik a prosba o odpustenie. Len čo Rostov začul tento zvuk hlasu, z jeho duše spadol obrovský kameň pochybností. Pocítil radosť a zároveň mu bolo ľúto nešťastníka, ktorý stál pred ním; ale bolo potrebné dokončiť začaté práce.
"Tu ľudia, boh vie, čo si môžu myslieť," zamrmlal Telyanin, schmatol čiapku a zamieril do malej prázdnej miestnosti, "musíme si to vysvetliť...
"Viem to a dokážem to," povedal Rostov.
- Ja…
Telyaninova vystrašená bledá tvár sa začala triasť všetkými svalmi; jeho oči stále behali, ale niekde nižšie, nestúpajúc k Rostovovej tvári, a bolo počuť vzlyky.
- Gróf! ... nezruinujte mladého muža ... tu sú tieto nešťastné peniaze, vezmite si ich ... - hodil ich na stôl. - Môj otec je starý muž, moja matka! ...
Rostov vzal peniaze, vyhýbal sa Telyaninovmu pohľadu a bez slova odišiel z miestnosti. Ale pri dverách sa zastavil a otočil sa späť. „Bože môj,“ povedal so slzami v očiach, „ako si to mohol urobiť?
"Počítaj," povedal Telyanin a pristúpil ku kadetovi.
"Nedotýkaj sa ma," povedal Rostov a odtiahol sa. Ak to potrebujete, vezmite si tieto peniaze. Hodil po ňom peňaženku a vybehol z hostinca.
"A ja ti hovorím, Rostov, že sa musíš ospravedlniť veliteľovi pluku," povedal vysoký štábny kapitán so šedivými vlasmi, obrovskými fúzmi a veľkými črtami vrásčitej tváre na adresu karmínovo červeného rozrušeného Rostova.
Štábna kapitánka Kirsten bola za čestné skutky dvakrát degradovaná na vojakov a dvakrát vyliečená.
"Nedovolím, aby ti niekto povedal, že klamem!" zvolal Rostov. Povedal mi, že klamem a ja som mu povedal, že klame. A tak to aj zostane. Môžu ma dať do služby aj každý deň a zatknúť ma, ale nikto ma neprinúti ospravedlniť sa, pretože ak sa ako veliteľ pluku považuje za nehodného poskytnúť mi zadosťučinenie, potom ...
- Áno, počkaj, otec; ty ma počúvaj, - prerušil kapitán basovým hlasom personál a pokojne si uhladil dlhé fúzy. - Pred ostatnými dôstojníkmi poviete veliteľovi pluku, že dôstojník ukradol ...
- Nie je moja chyba, že sa rozhovor začal pred inými dôstojníkmi. Možno som pred nimi nemal hovoriť, ale nie som diplomat. Potom som sa pridal k husárom a išiel som, mysliac si, že tu nie sú potrebné jemnosti, ale on mi povedal, že klamem ... tak nech mi dá zadosťučinenie ...
- To je v poriadku, nikto si nemyslí, že si zbabelec, ale o to nejde. Opýtajte sa Denisova, vyzerá to ako niečo, čo by kadet požadoval zadosťučinenie od veliteľa pluku?
Denisov, hrýzol si fúzy, počúval rozhovor s pochmúrnym pohľadom, zrejme do neho nechcel zasahovať. Na otázku kapitánskeho štábu negatívne pokrútil hlavou.
"Hovoríte s veliteľom pluku o tomto špinavom triku pred dôstojníkmi," pokračoval kapitán veliteľstva. - Bogdanich (Bogdanich bol nazývaný veliteľom pluku) vás obkľúčil.
- Neobliehal, ale povedal, že klamem.
- Áno, povedal si mu nejakú hlúposť a musíš sa ospravedlniť.
- Nikdy! zakričal Rostov.
„Nemyslel som si, že to bolo od vás,“ povedal kapitán veliteľstva vážne a stroho. - Nechceš sa ospravedlniť a ty, otec, nielen pred ním, ale pred celým plukom, pred nami všetkými, si na vine dookola. A takto: keby ste len rozmýšľali a radili sa, ako sa s touto vecou vysporiadať, inak by ste priamo, ale pred dôstojníkmi a búchali. Čo má teraz robiť veliteľ pluku? Máme postaviť toho dôstojníka pred súd a pokaziť celý pluk? Hanba celému pluku kvôli jednému zloduchovi? Tak čo si myslíte? Ale podľa nášho názoru nie je. A dobre, Bogdanich, povedal ti, že nehovoríš pravdu. Je to nepríjemné, ale čo robiť, otec, sami sa s tým stretli. A teraz, keď chcú vec umlčať, tak sa ty kvôli nejakej fanabérii nechceš ospravedlniť, ale chceš všetko povedať. Ste urazení, že ste v službe, ale prečo by ste sa mali ospravedlňovať starému a čestnému dôstojníkovi! Nech je Bogdanich akýkoľvek, ale všetci čestní a statoční, starý plukovník, ste taký urazený; a pokazit regiment ti ide v pohode? - začal sa triasť hlas kapitánskej palice. - Ty, otec, si v pluku týždeň bez roka; dnes tu, zajtra sa niekam presťahovali k adjutantom; je vám fuk, čo povedia: "Medzi pavlogradskými dôstojníkmi sú zlodeji!" A je nám to jedno. Tak čo, Denisov? Nie všetky rovnaké?
Denisov zostal ticho a ani sa nepohol, občas hľadel svojimi žiarivými čiernymi očami na Rostova.
„Vaša fanabéria je vám drahá, nechcete sa ospravedlniť,“ pokračoval kapitán veliteľstva, „ale my starí ľudia, ako sme vyrástli, a ak Boh dá, zomrieme v pluku, takže česť pluku je je nám drahý a Bogdanich to vie. Ó, aký drahý, otec! A to nie je dobré, nie dobré! Urazte sa tam alebo nie, ale ja vždy poviem pravdu do maternice. Nie dobré!
A kapitánsky štáb vstal a odvrátil sa od Rostova.
- Pg "avda, chog" ber to! zakričal Denisov a vyskočil. - No, G "kostra! No!
Rostov, začervenaný a zblednutý, pozrel najprv na jedného dôstojníka, potom na druhého.
- Nie, páni, nie ... nemyslite si ... veľmi dobre rozumiem, nemali by ste si to o mne myslieť ... ja ... pre mňa ... som za česť pluku. ale čo? Ukážem to v praxi a pre mňa česť transparentu ... no, je to úplne rovnaké, naozaj, je to moja chyba! .. - V očiach sa mu objavili slzy. - Môžem za to ja, všetko okolo! ... No, čo ešte chceš? ...
„To je ono, počítaj,“ zakričal kapitán, otočil sa a udrel ho veľkou rukou po pleci.
„Hovorím ti,“ zakričal Denisov, „je to pekné dieťa.
"Takto je to lepšie, počítaj," zopakoval kapitán, akoby ho pre uznanie začínal nazývať titulom. - Choďte a ospravedlnte sa, Vaša Excelencia, áno s.
"Páni, urobím všetko, nikto odo mňa nebude počuť ani slovo," povedal Rostov prosebným hlasom, "ale nemôžem sa ospravedlniť, preboha, nemôžem, ako si želáte!" Ako sa ospravedlním, ako malý, aby som požiadal o odpustenie?
Denisov sa zasmial.
- Pre teba je to horšie. Bogdanych je pomstychtivý, zaplať za svoju tvrdohlavosť, - povedala Kirsten.
- Preboha, nie tvrdohlavosť! Neviem vám opísať ten pocit, nedokážem...