is0 y1 F# g# j2 D+ X# `
local links,rechts : integer;
6 W+ j9 w+ _, [5 g( X- @. u) Qdo
8 ?2 [+ `# A' u2 Q% L* X Z if @.standort.nf(1).nf(1).voll( A7 {% `5 ]+ W2 C' z
and @.standort.nf(2).nf(1).voll8 b7 P: O' I% V/ W% z' g5 ^
and @.standort.nf(3).nf(1).voll3 y9 F. m; H G! ?% ]' w# c0 a
then
- b% U" p- X) z blockier_merker := TRUE;
5 U7 t9 [0 f1 x# u else
+ W5 B/ [/ |+ a9 H w7 K3 u, E0 V if @.standort.nf(1).nf(1).leer0 f6 h6 G/ F4 O- l+ ?. y
then- {5 l0 D- G1 @$ r- [! P0 I
@.ziel := "ap4_C";
- `: r' ?+ B; t" E: n @.umlagern(@.standort.nf(1));5 M" V" ]0 v) E$ V) R# \
else" g2 |6 z6 J0 c1 O
links := current.standort.stichE.AnzahlBEs + current.standort.stichD.AnzahlBEs
& c, j$ R0 x- N5 H, {: S+ q: o! A% U + current.standort.zuf_E.AnzahlBEs + current.standort.zuf_D.AnzahlBEs
4 a+ P& u$ \; `* Q3 i/ m: m& s; t$ x4 A + current.standort.ap4_E.AnzahlBEs + current.standort.ap4_D.AnzahlBEs;2 e6 s ^( P. P# q4 }
rechts := current.standort.stichB.AnzahlBEs + current.standort.stichA.AnzahlBEs
" x2 V" V2 t8 n8 g& t + current.standort.zuf_B.AnzahlBEs + current.standort.zuf_A.AnzahlBEs ) S1 n, ^6 m- W/ o6 z+ D9 Z5 J, O
+ current.standort.ap4_B.AnzahlBEs + current.standort.ap4_A.AnzahlBEs;
) Z, |% E0 U5 P, U if links > rechts
! t- \! j; n$ D& ], X then/ I2 F# g6 g0 F3 B0 a# A, z- g
if @.standort.nf(3).nf(1).leer
9 D3 W2 K, ~( V* a1 i/ _ then7 g& g1 O+ g) x5 u4 F
@.umlagern(@.standort.nf(3)); / ?- k# q0 E% g
else
6 ^! D% k6 H+ p if @.standort.nf(2).nf(1).leer( @ @% W, h0 _) F) D
then
! h- p+ R6 d& o o) M @.umlagern(@.standort.nf(2));# h/ w- R2 v4 C! R% ^
else
% `; ]( G, T* @. K" q2 D2 D @.umlagern(@.standort.nf(1));
0 V9 [5 ] d8 f$ q end;
9 }/ {- K+ O% I" H1 X# C* W end;% u- S6 D/ Z- Y2 l* l$ u
else
8 C7 e* H$ W+ g! g$ k( b: ~8 l if @.standort.nf(2).nf(1).leer
' _+ \( ~" G: e' M4 T then; n9 z2 U% @: s- ]
@.umlagern(@.standort.nf(2)); ! p/ w( r& J7 z1 k! U1 Y
else
' x9 g) m# I, A if @.standort.nf(3).nf(1).leer
3 p8 C7 G* V9 I; P9 } a1 D then
P3 x& P$ l" ^* H: l @.umlagern(@.standort.nf(3));! I5 u# a2 L# W3 q+ ~
else9 J' H r# _+ f" D
@.umlagern(@.standort.nf(1));
+ q5 J9 l( J9 d end;
. k' I H$ s! O' G3 P- v! C end;
4 d8 G: b9 q5 @, e. _4 Z end;
! d' K9 ~; u# z0 M* V) A end;
4 H% p4 n% ^: Q, i% n% K end;
7 E( B! w6 L/ l# y2 {if ?.leer, n% n. C/ J$ N0 o. q
then
% {2 b4 @' X3 F8 x6 k blockier_merker := false;1 d1 M8 e1 I! R, F7 e
end;, w1 @4 f* e0 o: i U' J
end;' C+ f/ e" u) V5 b2 h5 _5 Z$ X7 a9 N+ Y
大家帮忙看看上面的程序是怎样实现分配的,好像用了一个遗传算法的。 |