электроджунгли. новый конкурс по программированию на Java

E-Book Overview

Автор рассказывает о состязании в игровом формате, которое нацелено на создание участниками алгоритмически нетривиальных программ, борющихся друг с другом за ограниченный ресурс в особом мире со строгими законами.

E-Book Content

Ýëåêòðîäæóíãëè. Íîâûé êîíêóðñ ïî ïðîãðàììèðîâàíèþ íà ßâà Ïàíüãèí Àíäðåé Àëåêñàíäðîâè÷ ÝËÅÊÒÐÎÄÆÓÍÃËÈ. ÍÎÂÛÉ ÊÎÍÊÓÐÑ ÏÎ ÏÐÎÃÐÀÌÌÈÐÎÂÀÍÈÞ ÍÀ JAVA Òðàäèöèîííûå ñîðåâíîâàíèÿ äëÿ ïðîãðàììèñòîâ, êîòîðûå ðåãóëÿðíî ïðîâîäÿòñÿ â áîëüøîì êîëè÷åñòâå ðàçëè÷íûìè îðãàíèçàöèÿìè, îáû÷íî õàðàêòåðèçóþòñÿ òðåáîâàíèÿìè òî÷íî ðåøèòü ðÿä ïðåäëîæåííûõ çàäà÷ çà êîðîòêèé ïðîìåæóòîê âðåìåíè. Äðóãîé òèï êîíêóðñîâ ïðåäïîëàãàåò îöåíèâàíèå àâòîðñêèõ ïðîåêòîâ íà çàäàííóþ èëè ñâîáîäíóþ òåìàòèêó. «Ýëåêòðè÷åñêèå Äæóíãëè» – ýòî íîâûé êîíêóðñ îò Sun Microsystems, ñîçäàòåëåé ÿçûêà Java, êîòîðûé ïðåäëàãàåò àìáèöèîçíûì ïðîãðàììèñòàì, à òàêæå òåì, êòî òîëüêî íà÷èíàåò ïîñòèãàòü àçû ýòîãî ðåìåñëà, ïî-íîâîìó âçãëÿíóòü è ïîäîéòè ê ðåøåíèþ íàñóùíûõ æèçíåííî-àêòóàëüíûõ çàäà÷. Óâëåêàòåëüíîå ñîñòÿçàíèå â èãðîâîì ôîðìàòå íàöåëåíî íà ñîçäàíèå ó÷àñòíèêàìè àëãîðèòìè÷åñêè íåòðèâèàëüíûõ ïðîãðàìì, áîðþùèõñÿ äðóã ñ äðóãîì çà îãðàíè÷åííûé ðåñóðñ â îñîáîì ìèðå ñî ñòðîãèìè çàêîíàìè. Äæóíãëè – ïîòîìó ÷òî äèêàÿ ïðèðîäà ñ æåñòîêîé áîðüáîé çà ñóùåñòâîâàíèå, à ýëåêòðè÷åñêèå – ïîñêîëüêó îñíîâîé æèçíè ÿâëÿåòñÿ ýíåðãèÿ. Ìèð íàñåëåí âèðòóàëüíûìè ñóùåñòâàìè, êîòîðûå óìåþò ïèòàòüñÿ, ïåðåäâèãàòüñÿ, îáùàòüñÿ, ðàçìíîæàòüñÿ è ñðàæàòüñÿ ñ äðóãèìè ñóùåñòâàìè. Ãëàâíîé öåëüþ â Ýëåêòðè÷åñêèõ Äæóíãëÿõ ÿâëÿåòñÿ ìàêñèìàëüíàÿ âèäîâàÿ ýêñïàíñèÿ. Ó÷àñòíèêè êîíêóðñà ñîçäàþò àëãîðèòìû ïîâåäåíèÿ âèðòóàëüíûõ ñóùåñòâ òàêèì îáðàçîì, ÷òîáû èõ âèä êàê öåëîå äîáèëñÿ ìàêñèìàëüíîãî ðåçóëüòàòà. Íàèáîëåå óñïåøíûì ïðèçíàåòñÿ òîò âèä, êîòîðûé çà îòâåäåííîå âðåìÿ äîñòèãíåò ìàêñèìàëüíîé áèîìàññû, òî åñòü ñóììàðíàÿ ìàññà âñåõ îñîáåé êîòîðîãî áóäåò íàèáîëüøåé. Ïðîñòðàíñòâî â Ýëåêòðè÷åñêèõ Äæóíãëÿõ óñòðîåíî êàê òîð – äâóìåðíîå êëåòî÷È Â ØÓÒÊÓ È ÂÑÅÐÜÅÇ íîå ïîëå, çàêîëüöîâàííîå ïî êðàÿì. Âðåìÿ äèñêðåòíî: çà êàæäûé õîä âñåì ñóùåñòâàì äàåòñÿ âîçìîæíîñòü ñîâåðøèòü îäíî äåéñòâèå. Êàæäîå ñóùåñòâî èìååò äâå íåèçìåííûå áàçîâûå õàðàêòåðèñòèêè: ìàññó è ñêîðîñòü, à òàêæå îáëàäàåò ïåðåìåííûì ýíåðãåòè÷åñêèì óðîâíåì. Êîãäà ýíåðãèÿ ñóùåñòâà îïóñêàåòñÿ íèæå çàäàííîãî ïðåäåëà, îíî ïîãèáàåò, îñòàâëÿÿ ÷àñòü ñâîåé ýíåðãèè íà ïîëå. Ìàññà âëèÿåò íà ýíåðãîåìêîñòü, ýíåðãîïîòðåáëåíèå è ñèëó ñóùåñòâà â áîþ. Êðîìå òîãî, ñóììàðíàÿ ìàññà âèäà îïðåäåëÿåò ïîáåäèòåëÿ èãðû. Ñêîðîñòü îãðàíè÷èâàåò ìàêñèìàëüíîå ðàññòîÿíèå, êîòîðîå ñóùåñòâî ìîæåò ïðåîäîëåòü çà îäèí õîä, íî ÷åì áîëüøå ñêîðîñòü, òåì áîëüøå ýíåðãèè òðàòèòñÿ íà ïåðåäâèæåíèå. Ýíåðãèÿ ÿâëÿåòñÿ îñíîâîé ñóùåñòâîâàíèÿ â Ýëåêòðè÷åñêèõ Äæóíãëÿõ. Êàæäîå äåéñòâèå (äàæå ïðîñòî ïîääåðæàíèå æèçíè) ðàñõîäóåò íåêîòîðîå êîëè÷åñòâî ýíåðãèè, ïðîïîðöèîíàëüíîå ìàññå. ×åðïàþò ñóùåñòâà ýíåðãèþ èç èñòî÷íèêîâ, ñëó÷àéíûì îáðàçîì ðàçáðîñàííûõ ïî ïîëþ, ïðè÷åì âîçîáíîâëÿþòñÿ èñòî÷íèêè ñ ðàçëè÷íîé ñêîðîñòüþ. Âñòðå÷àþòñÿ è îñîáåííûå «çîëîòûå» èñòî÷íèêè, îòëè÷àþùèåñÿ âåñüìà áîëüøèì ïðèðîñòîì ýíåðãèè, ÷òî äåëàåò èõ îñîáî ïðèâëåêàòåëüíîé öåëüþ áîðüáû. Ñóùåñòâà ìîãóò âèäåòü, êàêèå âðàãè èëè èñòî÷íèêè ýíåðãèè íàõîäÿòñÿ ïîáëèçîñòè. Ïåðåäâèãàÿñü ñ êëåòêè íà êëåòêó, îíè ïîëó÷àþò áîëüøå èíôîðìàöèè îá îêðóæàþùåì ìèðå. Îêàçàâøèñü íà îäíîé êëåòêå, ñóùåñòâà ìîãóò âñòóïèòü â áîé. Ïðè àòàêå ñóùåñòâî ðàñõîäóåò áîëüøå ýíåðãèè, íàíîñÿ ïðè ýòîì óðîí âðàãó ïðîïîðöèîíàëüíî ñâîåé ìàññå. Íàêîíåö, êîãäà óðîâåíü ýíåðãèè áëèçîê ê ìàêñèìóìó, ñóùåñòâî ìîæåò ïîðîäèòü 85 Ïàíüãèí À.À. ïîòîìêà, îòäàâ åìó ïîëîâèíó ñâîåé ýíåðãèè. Âàæíîé îñîáåííîñòüþ ÿâëÿåòñÿ òî, ÷òî ìàññà è ñêîðîñòü ïîòîìêà ìîæåò îòëè÷àòüñÿ îò áàçîâûõ õàðàêòåðèñòèê ðîäèòåëÿ, íî íå áîëåå ÷åì íà 20%. Òàêèì îáðàçîì, èç ïîêîëåíèÿ â ïîêîëåíèå âèä ìîæåò ýâîëþöèîíèðîâàòü, çàìåùàÿ, íàïðèìåð, áûñòðûõ ìåëêèõ îñîáåé êðóïíûìè íåòîðîïëèâûìè èëè íàîáîðîò. Âîîáùå ãîâîðÿ, ïðåäëîæåííàÿ ìîäåëü ýêîñèñòåìû ïîçâîëÿåò ïîñòàâèòü íåñêîëüêî ðàçëè÷íûõ
You might also like

Algorithms For Programmers: Ideas And Source Code
Authors: Arndt J.    250    0


Introduction To Algorithms
Authors: Thomas H. Cormen , Charles E. Leiserson , Ronald L. Rivest , Clifford Stein    205    0



Pattern Classification
Authors: Richard O. Duda , Peter E. Hart , David G. Stork    156    0


Object-oriented Programming Via Fortran 90-95
Authors: Ed Akin    147    0


Rigid Body Dynamics Algorithms
Authors: Roy Featherstone    103    0


Essential Maple 7: An Introduction For Scientific Programmers
Authors: Robert M. Corless    158    0


Tex By Topic: A Texnician's Reference
Authors: Victor Eijkhout    127    0


The Komascript User's Guide
Authors: Kohm , Morawski.    133    0


The Mathematica Book, Fifth Edition
Authors: Stephen Wolfram    167    0