1 7 2 7 ÈÍÔÎÐÌÀÒÈÊÀ ÓÄÊ 616.65-006 Â. Ñ. Àãàáàáîâ O âûáîðe îïòèìàëüíîé ñòðóêòóðû äàííûõ äëÿ ïðåäñòàâëåíèÿ îïóõîëè ïðè ìîäåëèðîâàíèè in vitro ðàêîâûõ çàáîëåâàíèé (Ïðåäñòàâëåíî àêàäåìèêîì Ñ. À. Àìáàðöóìÿíîì 31/III 2007) Êëþ÷åâûå ñëîâà: ñòðóêòóðû äàííûõ, àëãîðèòìû, ìîäåëèðîâàíèå, ðàê, áèîëîãèÿ, áèîèíôîðìàòèêà 1. Ââåäåíèå. Öåëüþ ñòàòüè ÿâëÿåòñÿ âûáîð ñòðóêòóðû äàííûõ, êîòîðàÿ íàèáîëåå îïòèìàëüíî ïîäîéäåò ê çàäà÷å ìîäåëèðîâàíèÿ ðîñòà, ñæàòèÿ, à òàêæå ëå÷åíèÿ ðàêîâîé îïóõîëè. Îñîáîå âíèìàíèå óäåëÿåòñÿ ñâîáîäíîìó ðîñòó îïóõîëè è åå îòâåòíîé ðåàêöèè íà ðàäèîòåðàïèþ, ðàäèîòåðàïèþ è ãèïåðòåðìèþ, à òàêæå öèòîêèíåòè÷åñêîé ìîäåëè. Ïðè èññëåäîâàíèè ìîäåëåé in vitro îïóõîëü ðàññìàòðèâàåòñÿ íà óðîâíå îòäåëüíûõ êëåòîê, à êîãäà îïóõîëü äîñòèãàåò ìàêðîñêîïè÷åñêèõ ðàçìåðîâ, òî ïðèìåíÿåòñÿ ìîäåëü in vivo, â êîòîðîé ìîäåëèðîâàíèå îïóõîëè íà óðîâíå îòäåëüíûõ êëåòîê óæå âûõîäèò çà ðàìêè âîçìîæíîñòåé ñîâðåìåííûõ êîìïüþòåðîâ. Áîëüøèíñòâî àâòîðîâ ðàññìàòðèâàþò âñåãî òðè ñîñòîÿíèÿ êëåòêè: àêòèâíîå, ñïÿùåå è íåêðîòè÷åñêîå.  íàøåé ðàáîòå ðàçäåëåíèå áîëåå äåòàëüíîå, äàþùåå âîçìîæíîñòü ìîäåëèðîâàòü ðîñò è ñæàòèå îïóõîëè áîëåå òî÷íî è ñîîòâåòñòâåííî ïðîöåññàì, ïðîèñõîäÿùèì â îðãàíèçìå, è ïîçâîëÿåò ïîëó÷èòü áîëåå êîððåêòíûå ðåçóëüòàòû. 2. Êðàòêîå îïèñàíèå êëåòî÷íîé ìîäåëè ðàêîâîé îïóõîëè. Äëÿ ýôôåêòèâíîãî è òî÷íîãî ìîäåëèðîâàíèÿ ðàêîâîé îïóõîëè íåîáõîäèìî èìåòü ñîîòâåòñòâóþùóþ ìîäåëü îòäåëüíûõ êëåòîê.  ñòàòüå ðàññìàòðèâàåòñÿ öèòîêèíåòè÷åñêàÿ ìîäåëü, îáëàäàþùàÿ ñëåäóþùèìè ñâîéñòâàìè: 1. ìîäåëü ÿâëÿåòñÿ äåòåðìèíèðîâàííîé, ñ òî÷êè çðåíèÿ ïîñëåäîâàòåëüíîñòè ïåðåõîäîâ èç îäíîãî ñîñòîÿíèÿ â äðóãîå; 2. ìîäåëü ÿâëÿåòñÿ íåäåòåðìèíèðîâàííîé (ñëó÷àéíîé), ñ òî÷êè çðåíèÿ 1 5 2 ïðîäîëæèòåëüíîñòè âðåìåíè, êîòîðîå êëåòêà ïðîâîäèò â êàæäîì èç ñîñòîÿíèé.  äàííîé ðàáîòå ïðèìåíÿåòñÿ íîðìàëüíîå ðàñïðåäåëåíèå. Ñëåäóåò ó÷åñòü, ÷òî äëÿ ðàçíûõ òèïîâ îïóõîëåé ñðåäíåå âðåìÿ ïðîâîæäåíèÿ êëåòîê â êàæäîì èç ñîñòîÿíèé ðàçíîå, ÷òî ÿâëÿåòñÿ îäíèì èç ïàðàìåòðîâ ìîäåëèðîâàíèÿ; 3. âûáîð ñëåäóþùåãî ñîñòîÿíèÿ êëåòêè çàâèñèò ïîìèìî ñîñòîÿíèÿ ñàìîé êëåòêè è ñîñòîÿíèÿ êëåòîê, íàõîäÿùèõñÿ ïî ñîñåäñòâó, òàêæå îò ãåîìåòðè÷åñêîãî ïîëîæåíèÿ êëåòêè â îïóõîëè. Êëåòêè, êîòîðûå ìîäåëèðóþòñÿ â ñîîòâåòñòâèè ñ äàííîé ìîäåëüþ, èìåþò ñëåäóþùèå ôàçû: 1. G0 (Gap 0) - ãèïîêñè÷íîå ñïÿùåå ñîñòîÿíèå. Êëåòêà ïîïàäàåò â äàííîå ñîñòîÿíèå ïîñëå ìèòîçà, åñëè ïèòàíèÿ íåäîñòàòî÷íî äëÿ ïîñëåäóþùåãî äåëåíèÿ; 2. G1 (Gap 1) - ñïÿùåå ñîñòîÿíèå, â êîòîðîå êëåòêà ïîïàäàåò ïîñëå ìèòîçà, åñëè ïèòàíèÿ õâàòàåò äëÿ ñëåäóþùåãî öèêëà äåëåíèÿ; 3. S (Synthesis)- ôàçà ñèíòåçà ÄÍÊ, â ðåçóëüòàòå êîòîðîãî â êàæäîé õðîìîñîìå ïîÿâëÿþòñÿ äâå èäåíòè÷íûå ìîëåêóëû ÄÍÊ. Ïîâðåæäåíèÿ è ìóòàöèè â ÄÍÊ îáû÷íî áûâàþò èìåííî âî âðåìÿ ýòîãî ñîñòîÿíèÿ; 4. G2 (Gap 2) - ñïÿùåå ñîñòîÿíèå, â êîòîðîå êëåòêà ïîïàäàåò ïîñëå ñèíòåçà ÄÍÊ, ïåðåä ìèòîçîì; 5. M (Mitosis) - ìèòîç èëè äåëåíèå êëåòêè; 6. N (Necrosis) - íåêðîç. Ìåðòâîå ñîñòîÿíèå, â êîòîðîå ïîïàäàþò êëåòêè ïîñëå ëå÷åíèÿ. Îñíîâíîå îòëè÷èå îò àïîïòîçà (À) îïðåäåëÿåòñÿ èíòåðâàëîì âðåìåíè, êîòîðîå íåîáõîäèìî îðãàíèçìó íà ýëèìèíàöèþ ïîãèáøåé êëåòêè èç îðãàíèçìà.  ñëó÷àå íåêðîçà ýòî âðåìÿ â íåñêîëüêî ðàç áîëüøå, ÷òî ÿâëÿåòñÿ îäíèì èç ïàðàìåòðîâ ìîäåëè; 7. A (Apoptosis) - àïîïòîç. Ýòî ñîñòîÿíèå, â êîòîðîå êëåòêè ïîïàäàþò, êîãäà óìèðàþò â ðåçóëüòàòå ïðîãðàììèðóåìîé ãèáåëè. Îáû÷íî â äàííîì ñëó÷àå ïðîöåññ ëèçèñà (óäàëåíèÿ êëåòêè èç îðãàíèçìà) ïðîèñõîäèò äîñòàòî÷íî áûñòðî. Ñîñòîÿíèÿ G1, S è G2 ïðèíàäëåæàò òàê íàçûâàåìîé èíòåðôàçå è â áîëüøèíñòâå ðàáîò ðàññìàòðèâàþòñÿ êàê îäíî ñîñòîÿíèå. Àâòîìàò, îïèñûâàþùèé ñîñòîÿíèÿ êëåòîê è âîçìîæíûå ïåðåõîäû èç ñîñòîÿíèÿ â ñîñòîÿíèå ïîêàçàí, íà ðèñ. 1. Øòðèõîâàííûìè ëèíèÿìè ïîêàçàíû ïåðåõîäû â ðåçóëüòàòå ïðèìåíåíèÿ òåðàïèè.  öèòîêèíåòè÷åñêîé ìîäåëè ìû èñõîäèì èç ñëåäóþùèõ äîïóùåíèé: 1. Äëÿ òîãî, ÷òîáû êëåòêà ïîñëå ìèòîçà ïåðåøëà â î÷åðåäíîé öèêë äåëåíèÿ, íåîáõîäèìû ïèòàíèå è êèñëîðîä. Äîñòàòî÷íîñòü ïèòàíèÿ è êèñëîðîäà ðàññ÷èòûâàåòñÿ èñõîäÿ èç ðàññòîÿíèÿ îò òî÷êè íàõîæäåíèÿ êëåòêè äî 1 5 3 áëèæàéøåé êðîìêè îïóõîëè. Äëÿ ðàçíûõ òèïîâ îïóõîëåé ýòîò ïàðàìåòð ÿâëÿåòñÿ ðàçíûì è ïðåäñòàâëÿåòñÿ êàê âõîäíîé ïàðàìåòð ìîäåëè. Ñòîèò ïîÿñíèòü, ÷òî ïèòàíèå è êèñëîðîä äîñòàâëÿþòñÿ êëåòêàì ïî êðîâåíîñíûì ñîñóäàì, êîòîðûå, îäíàêî, ñêâîçü îïóõîëè íå ïðîðàñòàþò, èëè èìåþò õàîòè÷åñêóþ ñòðóêòóðó è èìåþò ìíîæåñòâî òóïèêîâ, èëè ”ïðîòåêàþò”, âñëåäñòâèå ÷åãî öåíòðàëüíûå ÷àñòè îïóõîëè âñåãäà ”ãîëîäàþò”. Ðèñ.1. 2. ×óâñòâèòåëüíîñòü êëåòêè ê ðàçëè÷íûì ñïîñîáàì ëå÷åíèÿ çàâèñèò îò òåêóùåãî ñîñòîÿíèÿ êëåòêè. Íàïðèìåð, ïðè ðàäèîòåðàïèè êëåòêè â ñîñòîÿíèè G0 ÿâëÿþòñÿ íàèáîëåå ðåçèñòåíòíûìè, â òî âðåìÿ êàê â ñëó÷àå ãèïåðòåðìèè èìååò ìåñòî îáðàòíûé ýôôåêò. 3.  ëþáîé çàäàííûé ìîìåíò âðåìåíè êàæäàÿ èç êëåòîê ìîæåò ïîãèáíóòü ñ îïðåäåëåííîé âåðîÿòíîñòüþ â ðåçóëüòàòå ïðîãðàììèðóåìîé ñìåðòè, ñòàðåíèÿ è ò.ä. 4. Ìàòåðèíñêàÿ è äî÷åðíÿÿ êëåòêè ïîñëå ìèòîçà ñ÷èòàþòñÿ àáñîëþòíî èäåíòè÷íûìè. 5. Êàæäàÿ êëåòêà îáëàäàåò ñîáñòâåííûìè ÷àñàìè äëÿ îòñ÷åòà âðåìåíè äî ñëåäóþùåãî ñîñòîÿíèÿ. Èñõîäÿ èç âûøå ïåðå÷èñëåííûõ äîïóùåíèé è ïîñòóëàòîâ ìû ìîæåì ñôîðìóëèðîâàòü ñëåäóþùèå òðåáîâàíèÿ ê ñòðóêòóðå äàííûõ ñ òî÷êè çðåíèÿ êëåòî÷íîé ìîäåëè: 1. âîçìîæíîñòü ïîñëåäîâàòåëüíîãî äîñòóïà êî âñåì êëåòêàì äëÿ îïpåäeëåíèÿ ñîñòîÿíèÿ êëåòêè; 2. âîçìîæíîñòü óäàëåíèÿ è äîáàâëåíèÿ êëåòêè ê îïóõîëè; 3. âîçìîæíîñòü ðàñ÷åòà ðàññòîÿíèÿ îò òî÷êè íàõîæäåíèÿ êëåòêè äî áëèæàéøåãî êðàÿ îïóõîëè, ÷òî íåîáõîäèìî äëÿ îïðåäåëåíèÿ ñëåäóþùåãî ñîñòîÿíèÿ êëåòêè ïîñëå ìèòîçà. 1 5 4 Ïðèìåíåííàÿ òåðàïèÿ â íàøåé ìîäåëè ïðåäñòàâëÿåò èç ñåáÿ âû÷èñëåíèå, êîòîðîå ïðîèçâîäèòñÿ íà îñíîâå òåêóùåãî ñîñòîÿíèÿ êëåòêè, à òàêæå åå ãåîìåòðè÷åñêîãî ïîëîæåíèÿ.  ðåçóëüòàòå âû÷èñëåíèÿ èçìåíÿåòñÿ âíóòðåííåå ñîñòîÿíèå êëåòêè. Íàïðèìåð, îíà ïîìå÷àåòñÿ êàê îáëó÷åííàÿ. Äëÿ ðåàëèçàöèè äàííîãî ïðîöåññà íàì îïÿòü æå íåîáõîäèì ïîñëåäîâàòåëüíûé äîñòóï ê êëåòêàì. Äîïîëíèòåëüíûìè òðåáîâàíèÿìè ÿâëÿþòñÿ âîçìîæíîñòü ñîõðàíåíèÿ ñòðóêòóðû äàííûõ â ïîñòîÿííîé ïàìÿòè äëÿ äàëüíåéøåãî àíàëèçà, à òàêæå âîçìîæíîñòü èñïîëüçîâàíèÿ ñòðóêòóðû äëÿ âèçóàëèçàöèè äàííûõ. 3. Àíàëèç ðàçëè÷íûõ ñòðóêòóð äàííûõ äëÿ ìîäåëèðîâàíèÿ ðàêîâûõ îïóõîëåé. Èñõîäÿ èç ïðèâåäåííûõ òðåáîâàíèé âûáîð ñòðóêòóðû äàííûõ îãðàíè÷èâàåòñÿ ñëåäóþùèìè âîçìîæíîñòÿìè: 1. ñâÿçàííûé ñïèñîê; 2. òðåõìåðíûé ñòàòè÷åñêèé ìàññèâ; 3. òðåõìåðíûé äèíàìè÷åñêèé ìàññèâ. Ðàññìîòðèì ïîñëåäîâàòåëüíî ïîëîæèòåëüíûå è îòðèöàòåëüíûå ñòîðîíû êàæäîé èç ïåðå÷èñëåííûõ ñòðóêòóð.  àíàëèçå ó÷òåíû ñëåäóþùèå ïàðàìåòðû: à) íåîáõîäèìàÿ ïàìÿòü, á) ìàêñèìàëüíî âîçìîæíûé ðàçìåð îïóõîëè, â) ñêîðîñòü àëãîðèòìîâ îáõîäà, ñæàòèÿ è ðàñøèðåíèÿ ã) ñêîðîñòü àëãîðèòìîâ îöåíêè ãåîìåòðè÷åñêîãî ïîëîæåíèÿ êëåòêè, ä) óäîáñòâî äëÿ ñîõðàíåíèÿ íà âíåøíèé íîñèòåëü ïàìÿòè è âèçóàëèçàöèè. Äîïóñêàåòñÿ, ÷òî îïóõîëü èìååò êóáè÷åñêóþ ôîðìó. 3.1. Ñâÿçàííûå ñïèñêè. Ïåðâîé èç âîçìîæíîñòåé ÿâëÿåòñÿ èñïîëüçîâàíèå ìîäèôèöèðîâàííîãî ñâÿçàííîãî ñïèñêà, êîòîðûé èìåë áû 6 óêàçàòåëåé íà ñâîèõ ñîñåäåé. Ýòà ñòðóêòóðà äàííûõ èìååò òî ïðåèìóùåñòâî, ÷òî îíà íå èñïîëüçóåò äîïîëíèòåëüíîé ïàìÿòè äëÿ íåñóùåñòâóþùèõ êëåòîê, íî ïðîáëåìîé ÿâëÿåòñÿ òî, ÷òî ïðè ðîñòå îïóõîëè êîëè÷åñòâî íåîáõîäèìîé ïàìÿòè äëÿ õðàíåíèÿ ñâÿçåé, à èìåííî ðàñõîä ïàìÿòè íà öåëè, íàïðÿìóþ íå ñâÿçàííûõ ñ ìîäåëèðîâàíèåì îïóõîëè, òàêæå ðàñòåò ïðîïîðöèîíàëüíî. Íàïðèìåð, â íàøåé ðåàëèçàöèè ïàìÿòü, íåîáõîäèìàÿ äëÿ êëåòêè, ñîñòàâëÿåò 18 áàéò ïàìÿòè (òóò è äàëüøå ïðåäïîëàãàåòñÿ ðåàëèçàöèÿ íà êîìïüþòåðàõ ñ àðõèòåêòóðîé IA-32).  òî æå âðåìÿ äëÿ õðàíåíèÿ 6 óêàçàòåëåé íàì ïîòðåáóåòñÿ 24 áàéòà ïàìÿòè, â ðåçóëüòàòå ïîëó÷àåòñÿ, ÷òî ìû òðàòèì áîëüøå ïàìÿòè íà óêàçàòåëè, ÷åì íà ôàêòè÷åñêèå äàííûå. Èòàê, íàì ïîíàäîáèòñÿ 42 áàéòà äëÿ õðàíåíèÿ îäíîé êëåòêè â ïàìÿòè.  òîé æå àðõèòåêòóðå IA32 ìû ìîæåì ïðåäîñòàâèòü 2 ãèãàáàéòà ïàìÿòè ïîä ïðîãðàììó (ïðè óñëîâèè, ÷òî ó íàñ åñòü ñòîëüêî ïàìÿòè), ÷òî ïîçâîëèò íàì îäíîâðåìåííî õðàíèòü â ïàìÿòè äî 50 ìèëëèîíîâ êëåòîê, ÷òî ïðåäñòàâëÿåò èç ñåáÿ êóá ñ ðåáðîì â 370 êëåòîê. Ó ñâÿçàííûõ ñïèñêîâ åñòü òàêæå îäíî ïðåèìóùåñòâî, êîòîðîå â òî 1 5 5 æå ñàìîå âðåìÿ ÿâëÿåòñÿ ñëàáûì ìåñòîì, - ýòî âîçìîæíîñòü ðàñïðåäåëåíèÿ êëåòîê ïî íåïîñëåäîâàòåëüíûì àäðåñàì ïàìÿòè. Ïðåèìóùåñòâî çàêëþ÷àåòñÿ â òîì, ÷òî äëÿ ðàñøèðåíèÿ ñòðóêòóðû íåò íåîáõîäèìîñòè â ïîñëåäîâàòåëüíîì áîëüøîì êóñêå ïàìÿòè, ÷òî òðåáóeò ìàññèâû, à äîñòàòî÷íî âñåãî ëèøü 42 áàéòà. Îäíàêî âñïîìíèì, ÷òî îïåðàöèîííàÿ ñèñòåìà ïåðèîäè÷åñêè âûãðóæàåò ÷àñòü îïåðàòèâíîé ïàìÿòè íà æåñòêèé äèñê (swapping), â ðåçóëüòàòå ÷åãî ïîñëå äîñòàòî÷íî äîëãîãî ìîäåëèðîâàíèÿ óêàçàòåëè â óçëàõ ñâÿçàííîãî ñïèñêà áóäóò óêàçûâàòü íà ðàçíûå îáëàñòè ïàìÿòè, ÷òî ðåçêî ïîâûøàåò âîçìîæíîñòü òîãî, ÷òî ñòðàíèöà, íà êîòîðîé íàõîäèòñÿ ñîñåäíèé óçåë, íàõîäèòñÿ à) íà æåñòêîì äèñêå; á) â îñíîâíîé ïàìÿòè, íî îòñóòñòâóåò â êýø-ïàìÿòè ïðîöåññîðà. Äàííûå ïðîáëåìû ðåçêî çàìåäëÿþò âðåìÿ ðàáîòû àëãîðèòìîâ, êîòîðûì íåîáõîäèì ïîñëåäîâàòåëüíûé ïðîõîä ïî êëåòêàì îïóõîëè, à òàêæå òåx, êîòîðûå àíàëèçèðóþò ñîñåäñòâî è ãåîìåòðè÷åñêîå ïîëîæåíèå. Îäíàêî àëãîðèòìû âñòàâêè è óäàëåíèÿ êëåòîê áóäóò âûïîëíÿòüñÿ çà êîíñòàíòíîå O(1) âðåìÿ. Àëãîðèòìû ñîõðàíåíèÿ äàííûõ íà âíåøíåì íîñèòåëå ðåàëèçóþòñÿ áåç îñîáûõ çàòðóäíåíèé â ïðèâeäeííîé ñòðóêòóðå äàííûõ, îäíàêî íå âñå àëãîðèòìû âèçóàëèçàöèè âîçìîæíî ýôôåêòèâíî ðåàëèçîâàòü â äàííîé ñõåìå - òå àëãîðèòìû, êîòîðûå òðåáóþò ïðîèçâîëüíîãî äîñòóïà ê ýëåìåíòàì îïóõîëè (random access), âûïîëíÿþòñÿ íà ñâÿçàííûõ ñïèñêàõ çà âðåìÿ, ïðîïîðöèîíàëüíîå » O(N1=3 ), à èìåííî äëèíå ðåáðà êóáà. Íåáîëüøèì íåäîñòàòêîì òàêæå ÿâëÿåòñÿ òî, ÷òî ïðîãðàììèðîâàíèå ýòîé ñòðóêòóðû äàííûõ ÿâëÿåòñÿ íå ñàìûì òðèâèàëüíûì çàäàíèåì è äëÿ êîððåêòíîé ðåàëèçàöèè òðåáóåòñÿ çàòðàòèòü íåìàëî óñèëèé, ÷òîáû âñå àëãîðèòìû âñòàâêè, óäàëåíèÿ è òðàíñôîðìàöèè êîððåêòíî èçìåíÿëè óêàçàòåëè. Èñïîëüçîâàíèå ñâÿçàííûõ ñïèñêîâ òàêæå äåëàåò î÷åíü ñëîæíûì, åñëè íå ñêàçàòü íåâîçìîæíûì, ïðèìåíåíèå ðàñïðåäåëåííûõ ñèñòåì äëÿ ìîäåëèðîâàíèÿ îïóõîëè. Îïðåäåëåíèå ãåîìåòðè÷åñêîãî ïîëîæåíèÿ êëåòêè äåëàåòñÿ çà âðåìÿ, ïðîïîðöèîíàëüíîå O(N1=3 ), ãäå N êîëè÷åñòâî êëåòîê. 3.2. Ñòàòè÷åñêèé ìàññèâ äàííûõ. Âòîðîé ñòðóêòóðîé äàííûõ ÿâëÿåòñÿ ñòàòè÷åñêèé òðåõìåðíûé ìàññèâ. Ïîä ñòàòè÷åñêèì ìàññèâîì ïîäðàçóìåâàåì ïîñëåäîâàòåëüíóþ åäèíîæäû âûäåëÿåìóþ îáëàñòü ïàìÿòè, â êîòîðîé ðàçìåùàþòñÿ êëåòêè è ñóùåñòâóåò ôèêñèðîâàííûé àëãîðèòì àäðåñàöèè, ïîçâîëÿþùèé ïî èíäåêñó ýëåìåíòà ïîëó÷èòü åãî êîîðäèíàòó â òðåõìåðíîì ïðîñòðàíñòâå. Î÷åâèäíûì íåäîñòàòêîì ñòðóêòóðû ÿâëÿåòñÿ òî, ÷òî íåîáõîäèì ïîñëåäîâàòåëüíûé áîëüøîé êóñîê ïàìÿòè. ×àñòè÷íûì ðåøåíèåì ïðîáëåìû ÿâëÿåòñÿ âûäåëåíèå áîëüøîãî ìàññèâà â ñàìîì íà÷àëå ðàáîòû ïðîãðàììû, ïîêà àäðåñíîå ïðîñòðàíñòâî, îòâåäåííîå ïðîãðàììå, åùå íå ôðàãìåíòèðîâàíî, íî äàííîå ðåøåíèå ñèëüíî óìåíüøàåò ãèáêîñòü ïðîãðàììû, óâåëè÷èâàåò çàíèìàåìûé îáúåì â ïàìÿòè (footprint), íåðàöèîíàëüíî èñïîëüçóåò ïàìÿòü, 1 5 6 à òàêæå çàðàíåå ëèìèòèðóåò âîçìîæíûé ðàçìåð è ôîðìó îïóõîëè ïî âñåì íàïðàâëåíèÿì, ÷òî, íàïðèìåð, íå ÿâëÿåòñÿ ïðîáëåìîé â ñëó÷àå ñâÿçàííûõ ñïèñêîâ, òàê êàê òàì åñòü îãðàíè÷åíèå íà îáùåå êîëè÷åñòâî êëåòîê, íî íåò íèêàêèõ îãðàíè÷åíèé íà ðàñïðåäåëåíèå ýòèõ êëåòîê ïî íàïðàâëåíèÿì. Çàìåòíûì ïðåèìóùåñòâîì ïåðåä ñâÿçàííûìè ñïèñêàìè ÿâëÿåòñÿ òî, ÷òî ïðàêòè÷åñêè íåò äîïîëíèòåëüíûõ çàòðàò ïàìÿòè íà äàííûå, íàïðÿìóþ íå ñâÿçàííûå ñ ïðîöåññîì ìîäåëèðîâàíèÿ. Èñõîäÿ èç òåõ æå ïîñûëîê, ÷òî è â ïðåäûäóùåì ñëó÷àå, à òàêæå äåëàÿ äîïóùåíèå, ÷òî ñóùåñòâóåò ïîñëåäîâàòåëüíàÿ îáëàñòü ïàìÿòè â 2Gb, ïîëó÷àåì, ÷òî ìàêñèìàëüíî âîçìîæíàÿ îïóõîëü ìîæåò ñîñòîÿòü èç ïîðÿäêà 120 ìèëëèîíîâ êëåòîê, ÷òî ñîîòâåòñòâóåò êóáó ñ ðàçìåðîì ðåáðà â 490 êëåòîê. Äàííûé ïîäõîä ïîçâîëÿåò ìîäåëèðîâàòü îïóõîëè íà 135% áîëüøå, ÷åì â ïðåäûäóùåì ñëó÷àå. Äðóãèìè íåäîñòàòêàìè äàííîãî ïîäõîäà ÿâëÿþòñÿ àëãîðèòìû âñòàâêè è óäàëåíèÿ êëåòîê. Åñëè â ñëó÷àå ñâÿçàííûõ ñïèñêîâ äàííûå àëãîðèòìû òðåáîâàëè O(1) êîëè÷åñòâà îïåðàöèé, òî òóò ïîòðåáóåòñÿ O(N1=3 ) îïåðàöèé êîïèðîâàíèÿ, ãäå N - êîëè÷åñòâî ìîäåëèðóåìûõ êëåòîê. Òàêæå äàííûé ïîäõîä ïîçâîëÿåò èñïîëüçîâàòü ïàðàëëåëüíîå ìîäåëèðîâàíèå íà ñèñòåìàõ ñ ðàçäåëÿåìîé ïàìÿòüþ (SMP), ãäå êàæäîìó ïðîöåññîðó îòâîäèòñÿ ÷àñòü êóáà îïóõîëè; ïðàâäà, òðåáóåòñÿ îïðåäåëåííàÿ ñèíõðîíèçàöèÿ íà ãðàíèöàõ êóáîâ. Îïðåäåëåíèå ðàññòîÿíèÿ äî ãðàíè îïóõîëè, êàê è â ñëó÷àå ñî ñâÿçàííûìè ñïèñêàìè, çàéìåò âðåìÿ, ïðîïîðöèîíàëüíîå O(N1=3 ). Íàèáîëüøèì ïðåèìóùåñòâîì äàííîãî ïîäõîäà ÿâëÿåòñÿ òî, ÷òî ïðè àíàëèçå ñîñåäíèõ êëåòîê ìû ìîæåì áûòü óâåðåíû, ÷òî â áîëüøèíñòâå ñëó÷àåâ îíè áóäóò çàãðóæåíû â êýø-ïàìÿòü ïðîöåññîðà, ÷òî ìîæåò î÷åíü ñèëüíî ïîâëèÿòü íà âðåìÿ ìîäåëèðîâàíèÿ. Îòìåòèì, ÷òî â äàííîé ñòðóêòóðå îòñóòñòâóåò ïðîáëåìà ñ ïðîèçâîëüíûì äîñòóïîì ê êëåòêàì îïóõîëè, òàê êàê äàííàÿ îïåðàöèÿ ðåàëèçóåòñÿ çà êîíñòàíòíîå âðåìÿ. 3.3. Äèíàìè÷åñêèé ìàññèâ äàííûõ. Òðåòüåé ñòðóêòóðîé äàííûõ ÿâëÿåòñÿ äèíàìè÷åñêèé òðåõìåðíûé ìàññèâ. Ïîä ýòèì ìû ïîíèìàåì ñòðóêòóðó äàííûõ, êîòîðàÿ ÿâëÿåòñÿ ñïèñêîì óêàçàòåëåé íà óêàçàòåëè âûñøèõ ðàçìåðíîñòåé; ãîâîðÿ ÿçûêîì C, ìû èñïîëüçóåì òðîéíûå óêàçàòåëè. Äàííûé ìåòîä òàêæå ïîçâîëÿåò èñïîëüçîâàòü áîëåå ëîãè÷íûé ìåòîä äëÿ äîñòóïà ê ýëåìåíòàì ìàññèâà, ÷åðåç ñòàíäàðòíûé îïåðàòîð âçÿòèÿ èíäåêñà â ÿçûêàõ C/C++, â îòëè÷èå îò ïðåîáðàçóþùåé ôóíêöèè, íåîáõîäèìîé âî âòîðîì ìåòîäå, êîòîðàÿ èç òðåõ èíäåêñîâ ïîëó÷àëà îäèí èíäåêñ â ëèíåéíîì ìàññèâå. Èñïîëüçîâàíèå äèíàìè÷åñêèõ ìàññèâîâ ïîçâîëÿåò èçáàâèòüñÿ îò îïðåäåëåííûõ íåäîñòàòêîâ, ïðèñóùèõ ñòàòè÷åñêèì ìàññèâàì, òàêèõ êàê ôèêñèðîâàííûé ðàçìåð îïóõîëè ïî êàæäîìó èç íàïðàâëåíèé.  ýòîì ñëó÷àå ìû ìîæåì âûáèðàòü ðàçìåð äèíàìè÷åñêè, òàêæå íå òðåáóåòñÿ ðåçåðâèðîâàíèÿ 1 5 7 áîëüøîãî ëèíåéíîãî ìàññèâà. Çà ñ÷åò îïðåäåëåííûõ ïîòåðü â ïàìÿòè ìû îáõîäèìñÿ íàáîðîì êóäà áîëåå ìåíüøèõ ìàññèâîâ, ÷òî ñ îäíîé ñòîðîíû ÿâëÿåòñÿ òåõíè÷åñêè áîëåå òðóäíûì çàäàíèåì äëÿ ðåàëèçàöèè, ñ äðóãîé ïîçâîëÿåò èìåòü ôàêòè÷åñêè, à íå òîëüêî òåîðåòè÷åñêè áîëüøèå ðàçìåðû ìîäåëèðóåìûõ îïóõîëåé. Äëÿ íà÷àëà ðàññìîòðèì êîëè÷åñòâî äîïîëíèòåëüíîé, íåîáõîäèìîé äëÿ ïîääåðæàíèÿ ðàññìaòðèâaeìîé ñòðóêòóðû äàííûõ. Íå òåðÿÿ îáùíîñòè, ïðåäïîëîæèì, ÷òî îïóõîëü èìååò êóáè÷åñêóþ ôîðìó, îòêóäà ñëåäóåò, ÷òî íàì ïîòðåáóåòñÿ M = 2 £ N 1=3 £ 4 = 8 £ N 1=3 (1 ) áàéòà ïàìÿòè ïîä óêàçàòåëè, ãäå 4 - ðàçìåð óêàçàòåëÿ, 2 -êîëè÷åñòâî ðàçìåðíîñòåé, ïîä êîòîðûå íåîáõîäèìî îòâåñòè ïàìÿòü. Ýòî ÷èñëî âî ìíîãî ðàç ìåíüøå, ÷åì â ñëó÷àå ñâÿçàííûõ ñïèñêîâ, ãäå òðåáîâàëîñü ïî 24 áàéòà äîïîëíèòåëüíîé ïàìÿòè íà êàæäóþ èç êëåòîê. Èñõîäÿ èç ôîðìóëû (1) ìû ìîæåì íàéòè ìàêñèìàëüíûé ðàçìåð îïóõîëè â äàííîì ñëó÷àå èç ñëåäóþùåãî óðàâíåíèÿ: 1 8 £ N + 8 £ N 1=3 = M emAvail: (2 ) 18 - íåîáõîäèìàÿ ïàìÿòü äëÿ õðàíåíèÿ â ïàìÿòè îäíîé ìîäåëèðóåìîé êëåòêè, MemAvail - îáùåå êîëè÷åñòâî äîñòóïíîé ïàìÿòè.  íàøèõ ïðèìåðàõ ýòî ÷èñëî ðàâíî 2Gb. Ïîñëå ïðåîáðàçîâàíèÿ ïîëó÷àåì êóáè÷åñêîå óðàâíåíèå 4 x3 + x ¡ 1 1 9 3 0 4 6 4 7 = 0 : 9 (3 ) Ðåøàÿ óðàâíåíèå ìåòîäîì Êàðäàíî, ïîëó÷àåì îäèí äåéñòâèòåëüíûé êîðåíü, ðàâíûé ïîñëå îêðóãëåíèÿ 489, ÷òî íåóäèâèòåëüíî, òàê êàê â ïðåäûäóùåì ñëó÷àå, êîãäà ó íàñ áûëî 120 ìèëëèîíîâ êëåòîê, çàòðà÷åííàÿ ëèøíÿÿ ïàìÿòü ñîñòàâëÿëà 1 8 £ N 1=3 = 1 8 £ ( 1 2 0 £ 1 0 6 ) 1=3 = 1 8 £ 1 0 0 £ 4 :9 ¼ 4 ÊÁàéò; (4 ) ÷òî, êîíå÷íî, â äàííîì ñëó÷àå ÿâëÿåòñÿ íåñóùåñòâåííîé çàòðàòîé. Èòàê, òðåòèé ñëó÷àé èìååò âñå ïðåèìóùåñòâà âòîðîãî ìåòîäà, à èìåííî áûñòðûé äîñòóï ê ýëåìåíòàì ïî èíäåêñàì, ÷òî íåâîçìîæíî â ïåðâîì ñëó÷àå, áîëüøèå îáúåìû ìîäåëèðóåìûõ îïóõîëåé, îòíîñèòåëüíî ïðîñòóþ äëÿ ïðîãðàììèðîâàíèÿ è ìàíèïóëÿöèè ñòðóêòóðó äàííûõ, áîëåå áûñòðóþ èòåðàöèþ ïî âñåì êëåòêàì îïóõîëè (òàê êàê èíêðåìåíò èíäåêñà áûñòðåå ïåðåõîäà ïî óêàçàòåëþ), à òàêæå íåÿâíûå âûãîäû, âîçíèêàþùèå â ðåçóëüòàòå âîçìîæíîñòè ëó÷øåé îïòèìèçàöèè ñî ñòîðîíû êîìïèëÿòîðà â âèäå çàãðóçêè ñîñåäíèõ ýëåìåíòîâ â êýø-ïàìÿòü ïðîöåññîðà è ò.ï. Êðîìå òîãî ìû íå òåðÿåì âîçìîæíîñòåé äëÿ ðåàëèçàöèè ðàñïðåäåëåííîãî ìîäåëèðîâàíèÿ ñ ïîìîùüþ 1 5 8 ìåòîäà, îïèñàííîãî â 3.2. 4. Âûâîäû.  íàøåé ïðîãðàììíîé ðåàëèçàöèè èñïîëüçóåòñÿ òðåòèé ìåòîä, åäèíñòâåííûì ÿâíûì íåäîñòàòêîì êîòîðîãî ÿâëÿþòñÿ ìåäëåííûå îïåðàöèè âñòàâêè è óäàëåíèÿ íîâûõ/ïîãèáøèõ êëåòîê. Ýòîò íåäîñòàòîê âî ìíîãèõ ñëó÷àÿõ óäàåòñÿ èñïðàâèòü áëàãîäàðÿ áîëåå èíòåëëåêòóàëüíûì àëãîðèòìàì âñòàâêè è óäàëåíèÿ, ïðîñòåéøèì ïðèìåðîì êîòîðûõ ÿâëÿåòñÿ ñëåäóþùàÿ îïòèìèçàöèÿ: åñëè èñ÷åçàþò è äåëÿòñÿ ñîñåäíèå êëåòêè, òî íîâîðîæäåííàÿ êëåòêà ïîìåùàåòñÿ íà ìåñòî ïîãèáøåé. Êðîìå òîãî ýòîò ìåòîä ïîçâîëÿåò àíàëèçèðîâàòü è ìîäåëèðîâàòü îïóõîëè, ðàçìåð êîòîðûõ áîëüøå ÷åì â äâà ðàçà ïðåâûøàåò ìàêñèìàëüíûé ðàçìåð, êîòîðîãî ìîæíî äîáèòüñÿ â ñëó÷àå ñâÿçàííûõ ñïèñêîâ. Äëÿ áîëåå íàãëÿäíîãî àíàëèçà äàííûõ ìû ñâåëè èõ â òàáëèöó. N - êîëè÷åñòâî ìîäåëèðóåìûõ êëåòîê. Îöåíêè ðàçìåðà ïðèâîäÿòñÿ äëÿ êîëè÷åñòâà êëåòîê, à òàêæå äëèíû ðåáðà ñîîòâåòñòâóþùåãî êóáà è ðàäèóña ñôåðû ñôåðè÷åñêîé îïóõîëè. Ñðàâíèòåëüíûå õàðàêòåðèñòèêè ñòðóêòóð äàííûõ ÑÄ/ïàðàìåòð Âðåìÿ Âðåìÿ âñòàâêè yäàëåíèÿ O(1) O(1) Ñòàò. Î(N1/3), â Î(N1/3), â ìàññèâ èäåàëå O(1) èäåàëå O(1) Äèí. Î(N1/3), â ìàññèâ èäåàëå O(1) èäåàëå O(1) Ñïèñîê Î(N1/3), â Ïåðåáîð Èíäåêñè- Kýøè- Max ðàçìåð ðîâàíèå ðîâàíèå îïóõîëè O(1) O(N1/3) íåò O(1) O(1) äà O(1) O(1) äà » 50*106 » 120*106 » 115*106 370/228 490/305 489/301 Õîòÿ ïåðåáîð äàííûõ âî âñåõ ñëó÷àÿõ àïïðîêñèìèðóåòñÿ êîíñòàíòíîé ôóíêöèåé, íà ñàìîì äåëå ïåðåáîð âñåõ ýëåìåíòîâ ñ èñïîëüçîâàíèåì ñâÿçàííûõ ñïèñêîâ áóäåò âî ìíîãî ðàç ìåäëåííåå, ÷åì âî âòîðîì è òðåòüåì ñëó÷àå. Ãîñóäàðñòâåííûé èíæåíåðíûé óíèâåðñèòåò Àðìåíèè [email protected] ì. ê. ²Õ³µ³µáí ø³ÕóÏ»ÕÇ in vitro ÙṻɳíáñÙ³Ý Å³Ù³Ý³Ï áõéáõóùÇ Ý»ñϳ۳óÙ³Ý Ñ³Ù³ñ ûåïÇÙ³É ïíÛ³ÉÝ»ñÇ Ï³éáõóí³ÍùÇ ÁÝïñáõÃÛ³Ý Ù³ëÇÝ Ðá¹í³ÍáõÙ Ýϳñ³·ñíáõÙ »Ý ï³ñµ»ñ Ùáï»óáõÙÝ»ñ, áñáÝó Ýå³ï³ÏÝ ¿ ÁÝïñ»É ûåïÇÙ³É ïíÛ³ÉÝ»ñÇ Ï³éáõóí³Íùª ѳٳϳñ·ãÇ ÑÇßáÕáõÃÛ³Ý Ù»ç áõéáõóùÇ Ý»ñϳ۳óÙ³Ý Ñ³Ù³ñ: àõëáõÙݳëÇñáõÃÛ³Ý Å³Ù³Ý³Ï áõß³¹ñáõÃÛáõÝ ¿ ¹³ñÓí»É Ñ»ï¨Û³É ѳïϳÝÇßÝ»ñÇÝ. ½µ³Õ»óñ³Í ÑÇßáÕáõÃÛ³Ý Í³í³ÉÁ, ï³ññ»ñÇÝ ¹ÇÙ»Éáõ ųٳݳÏÁ ¨ µ³ñ¹áõÃÛáõÝÁ, ÇÝãå»ë 1 5 9 ݳ¨ ïíÛ³ÉÝ»ñÇ Ï³éáõóí³ÍùÇ Ù³ïã»ÉÇáõÃÛáõÝÁ ÙṻɳíáñáÕ ³É·áñÇÃÙÝ»ñÇ Ñ³Ù³ñ: ²é³ÝÓÇÝ ¹Çï³ñÏíáõÙ ¿ ½áõ·³Ñ»é ϳ٠µ³ßËí³Í ѳٳϳñ·»ñáõÙ áõéáõóùÝ»ñÇ ÙṻɳíáñÙ³Ý Ñ³ñóÁ: V. S. Agababov On the Optimal Data Structure Selection for Tumor Representation for in vitro Cancer Simulation The article describes different approaches aimed at data structure selection for optimal representation of a tumor in computer memory. During investigation the attention was paid to the following parameters such as memory consumption, element access complexity and suitability of the data structure for simulation algorithms. Suitability for parallel and distributed computing is also considered as one of the parameters. Ëèòåðàòóðà 1. Stamatakos G., Dionysiou D., Zacharaki E., Uzunoglu N. – Proceedings of the IEEE. 2002. V. 90. N. 11. P. 525-540. 2. Êîðí Ã., Êîðí T. – Ñïðàâî÷íèê ïî ìàòåìàòèêå. Ì. Íàóêà. 1973. 3. Êîðìåí T., Ëåéçåðñòîí ×., Ðèâåñò P., Øòåéí K. – Àëãîðèòìû: ïîñòðîåíèå è àíàëèç. Ì. Âèëüÿìñ. 2005. 1 6 0